Skip to main content

An execution library for scripts written in any language. This is a fork of https://github.com/auroq/glotter

Project description

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.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.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

glotter2-0.14.0.tar.gz (20.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

glotter2-0.14.0-py3-none-any.whl (26.8 kB view details)

Uploaded Python 3

File details

Details for the file glotter2-0.14.0.tar.gz.

File metadata

  • Download URL: glotter2-0.14.0.tar.gz
  • Upload date:
  • Size: 20.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","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}

File hashes

Hashes for glotter2-0.14.0.tar.gz
Algorithm Hash digest
SHA256 87f608ac842552dcc52c8cff955518b3c72041fd36a55e3426eaa47e9491e75f
MD5 6eda4cadaf12fa6f6aaaec2bf3bac9cc
BLAKE2b-256 65383dacdb977ab912b63958159087f61d0cd69a22886845edff7fba558ecc76

See more details on using hashes here.

File details

Details for the file glotter2-0.14.0-py3-none-any.whl.

File metadata

  • Download URL: glotter2-0.14.0-py3-none-any.whl
  • Upload date:
  • Size: 26.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.9.26 {"installer":{"name":"uv","version":"0.9.26","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}

File hashes

Hashes for glotter2-0.14.0-py3-none-any.whl
Algorithm Hash digest
SHA256 746046a8c9610584134b6547597f2ddc01ccdc80e3d13f271f8bff6b8974642a
MD5 45dbaaff537606758d7dbfcf14f45f32
BLAKE2b-256 a446580b4eb09cae3ac203aca9a2b117543cff7975a3b60df09b1b88cc7254cf

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page