[build-system] requires = ["setuptools", "setuptools-scm", "wheel"] build-backend = "setuptools.build_meta" [project] name = "primaite" description = "PrimAITE (Primary-level AI Training Environment) is a simulation environment for training AI under the ARCD programme." authors = [{name="Defence Science and Technology Laboratory UK", email="oss@dstl.gov.uk"}] license = {file = "LICENSE"} requires-python = ">=3.9, <3.12" dynamic = ["version", "readme"] classifiers = [ "Development Status :: 5 - Production/Stable", "Operating System :: Microsoft :: Windows", "Operating System :: MacOS", "Operating System :: POSIX :: Linux", "Operating System :: Unix", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10", "Programming Language :: Python :: 3.11", "Programming Language :: Python :: 3 :: Only", ] dependencies = [ "gymnasium==0.28.1", "jupyterlab==3.6.1", "kaleido==0.2.1", "matplotlib==3.7.1", "networkx==3.1", "numpy==1.23.5", "platformdirs==3.5.1", "plotly==5.15.0", "polars==0.20.30", "prettytable==3.8.0", "PyYAML==6.0", "typer[all]==0.9.0", "pydantic==2.7.0", "ipywidgets", "deepdiff" ] [tool.setuptools.dynamic] version = {file = ["src/primaite/VERSION"]} readme = {file = ["README.md"]} [tool.setuptools] package-dir = {"" = "src"} include-package-data = true license-files = ["LICENSE"] [project.optional-dependencies] rl = [ "ray[rllib] >= 2.20.0, < 2.33", "tensorflow==2.12.0", "stable-baselines3[extra]==2.1.0", "sb3-contrib==2.1.0", ] dev = [ "build==0.10.0", "flake8==6.0.0", "flake8-annotations", "furo==2024.01.29", "gputil==1.4.0", "pip-licenses==4.3.0", "pre-commit==2.20.0", "pytest==7.2.0", "pytest-xdist==3.3.1", "pytest-cov==4.0.0", "pytest-flake8==1.1.1", "setuptools==66", "Sphinx==7.1.2", "sphinx-copybutton==0.5.2", "wheel==0.38.4", "nbsphinx==0.9.4", "nbmake==1.5.4", "pytest-xdist==3.3.1" ] [project.scripts] primaite = "primaite.cli:app" [tool.isort] profile = "black" line_length = 120 force_sort_within_sections = "False" order_by_type = "False" [tool.black] line-length = 120 [project.urls] Homepage = "https://github.com/{todo:fill in URL}/PrimAITE" Documentation = "https://{todo:fill in URL}.github.io/PrimAITE" Repository = "https://github.com/{todo:fill in URL}/PrimAITE" Changelog = "https://github.com/{todo:fill in URL}/PrimAITE/blob/main/CHANGELOG.md"