Skip to main content

Glotter2

Makefile CI Coverage PyPI version Python Versions Python wheel

Glotter2 logo

The programming language icons were downloaded from pngegg.com

This is a fork of the original Glotter repository, which appears to be unmaintained.

Glotter2 is an execution library for collections of single file scripts. It uses Docker to be able to build, run, and optionally test scripts in any language without having to install a local sdk or development environment.

For getting started with Glotter2, refer to our documentation.

Contributing

If you'd like to contribute to Glotter2, read our contributing guidelines.

Changelog

Glotter2 releases

  • 0.17.0
    • Add ability to repeat specified tests a specified number of times
  • 0.16.0
    • Drop support for python 3.9
    • Update to pytest 9.x
  • 0.15.0
    • Remove Singleton class. This affects the Settings and ContainerFactory classes:
      • Instead of Settings(), use get_settings()
      • Instead of ContainerFactory(), use get_container_factory()
    • Use glotter2-core for the following:
      • Parse settings (CoreSettingsParser)
      • Provide common source information (CoreSource)
      • Provide common project mixin (CoreProjectMixin)
    • TestInfo class is no part of glotter2-core. This adds the following:
      • Language display name (e.g., PHP, C++, etc.)
      • Allow for untestable languages by allowing container to be empty
      • Add notes for a language
  • 0.14.0:
    • Add support for common test strings to reduce duplication in tests
  • 0.13.0:
    • Add support for python 3.14
  • 0.12.1:
    • Fix crash in serial download command
  • 0.12.0:
    • Convert to use uv instead of poetry
    • Convert to use ruff instead of pylint and black
    • Use ruff format instead of black to format generated tests
    • Update to pydantic v2
    • Update Development Status to Production/Stable
  • 0.11.0
    • Modified self expected output to be more strict so the actual code and generated code can only be different by a single newline
  • 0.10.2
    • Fix bug where double quotes at the end of a string that is enclosed in """ for a test value were not being escaped
  • 0.10.1
    • Run docker container with no entrypoint to allow docker images that specify ENTRYPOINT can be used
  • 0.10.0
    • Update poetry from 1.8.3 to 2.1.1
    • Remove python 3.8 support
  • 0.9.0:
    • Add check command
  • 0.8.2:
    • Update to docker 7.1.0
  • 0.8.1:
    • Update to black 24.4.0
  • 0.8.0:
    • Add ability to split lines on the expected value
  • 0.7.2:
    • Make sure temporary directory used for docker is world accessible
  • 0.7.1:
    • Remove work-in-progress from changelog
  • 0.7.0:
    • Add try/finally to auto-generated project fixture to make sure docker container is cleaned up
    • Add try/finally to run command to make sure docker container is cleaned up
    • Add batch command
  • 0.6.1:
    • Update docker dependency to 6.1.0 to support urllib3 2.x
  • 0.6.0:
    • Add test documentation generation
  • 0.5.0:
    • Add test generation
    • Add pydantic dependency
  • 0.4.5:
    • Add link to documentation
  • 0.4.4:
    • Fix bug that would indicate "No tests were found" when filtering tests
  • 0.4.2:
    • Remove call to time.sleep when pulling image
  • 0.4.1:
    • Bump version since wrong version pushed to pypi
  • 0.4.0:
    • Change test ID from <filename> to <language>/<filename>
    • Speed up test collection by about 1 min and total test time by about 5 min in sample-programs by caching list of sources
    • Modify download, run, and test commands so that -p, -l, and -s are no longer mutually exclusive
    • Add --parallel to download command to parallelize image downloads
    • Add --parallel to test command to parallelize tests
  • 0.3.0:
    • Fix crash when running tests for sample-programs with glotter 0.2.x
    • Upgrade dependencies to latest version:
      • docker >=6.0.1, <7
      • Jinja >=3.1.2, <4
      • pytest >=7.2.1, <8
      • PyYAML >=6.0, <7
    • Upgrade python to 3.8 or above

Original Glotter releases

  • 0.2.x: Add reporting verb to output discovered sources as a table in stdout or to a csv
  • 0.1.x: Initial release of working code.

Release files for glotter2 0.17.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for glotter2 0.17.0
File Size Uploaded
glotter2-0.17.0.tar.gz 19.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for glotter2 0.17.0
File Interpreter ABI Platform
glotter2-0.17.0-py3-none-any.whl Python 3 none any Details

Total release size: 44.1 kB

Release files / glotter2-0.17.0.tar.gz

Download URL glotter2-0.17.0.tar.gz
Size 19.1 kB
Tags Source
SHA-256 checksum
How to use checksums
93c6114fa287adbe00918f77f315c4d9e645994d64ff7cfbc0032c6609a11387
BLAKE2b-256 checksum
How to use checksums
ba5f8fa5c5181a8443d2d29ce4552961f624853fe7e025f980c63e650af3d8e4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.11.12 {"installer":{"name":"uv","version":"0.11.12","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release files / glotter2-0.17.0-py3-none-any.whl

Download URL glotter2-0.17.0-py3-none-any.whl
Size 25.0 kB
Tags Python 3
SHA-256 checksum
How to use checksums
bce41f2169a3deef30b2ff1adfd61836edacbd4ab2ebc90c0e64f53bc50f9f98
BLAKE2b-256 checksum
How to use checksums
bf5e91a0d7832e13b0b3a2bbfcf20dc67ae9f1eec6933f1cc8dae8aab50fe6c3
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.11.12 {"installer":{"name":"uv","version":"0.11.12","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

Release history Release notifications | RSS feed

This release

0.17.0 This release

2 release files

0.16.0

2 release files

0.14.0

2 release files

0.12.1

2 release files

0.12.0

2 release files

0.11.0

2 release files

0.10.3

2 release files

0.10.2

2 release files

0.10.1

2 release files

0.10.0

2 release files

0.9.0

2 release files

0.8.2

2 release files

0.8.1

2 release files

0.8.0

2 release files

0.7.2

2 release files

0.7.1

2 release files

0.7.0

2 release files

0.6.1

2 release files

0.6.0

2 release files

0.5.0

2 release files

0.4.5

2 release files

0.4.4

2 release files

0.4.2

2 release files

0.4.1

2 release files

0.4.0

2 release files

0.3.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page