This project uses Poetry for managing dependencies
and virtual environments. Once you've installed Poetry, simply run poetry install
in the root directory of this git repository.
Run the tests with poetry run pytest
. The CI runs the tests on all Python
versions that shakespearelang supports (currently 3.8+). To do the
same on your local machine, run poetry run tox
-- you must have all applicable
Python versions installed at the system level.
This project uses black to enforce consistent code formatting. Make sure to run this after making code changes.
If you make changes to shakespearelang/shakespeare.ebnf, you must run
./scripts/compile_grammar.sh
before the changes will be reflected in the AST.
That's because shakespearelang uses TatSu
to compile the EBNF to Python.