From b4665079fe4c820056f931f66f0d334b81cb3f82 Mon Sep 17 00:00:00 2001 From: Freddy <100769900+FreddyFox892@users.noreply.github.com> Date: Wed, 18 Sep 2024 09:20:59 +0200 Subject: [PATCH] Move optional dependencies from `dev_requirements` to `pyproject.toml` (#449) * Update Yaml Config * f * fix? * mm * back to old * pip tools weg * Add SpellCheck --- .github/workflows/integrationtests.yml | 2 +- .github/workflows/pythonlint.yml | 2 +- .../requirements-build_executable.in | 2 - .../requirements-build_executable.txt | 20 ----- dev_requirements/requirements-coverage.in | 2 - dev_requirements/requirements-coverage.txt | 9 --- dev_requirements/requirements-docs.in | 3 - dev_requirements/requirements-docs.txt | 58 -------------- dev_requirements/requirements-formatting.in | 3 - dev_requirements/requirements-formatting.txt | 21 ----- .../requirements-integration_tests.in | 3 - .../requirements-integration_tests.txt | 19 ----- dev_requirements/requirements-json_schemas.in | 2 - .../requirements-json_schemas.txt | 13 --- dev_requirements/requirements-linting.in | 2 - dev_requirements/requirements-linting.txt | 21 ----- .../requirements-test_packaging.in | 3 - .../requirements-test_packaging.txt | 79 ------------------- dev_requirements/requirements-type_check.in | 4 - dev_requirements/requirements-type_check.txt | 15 ---- dev_requirements/requirements-unit_tests.in | 5 -- dev_requirements/requirements-unit_tests.txt | 26 ------ domain-specific-terms.txt | 5 ++ pyproject.toml | 52 ++++++++++++ requirements.txt | 4 +- src/maus/division_helper.py | 2 +- src/maus/models/edifact_components.py | 6 +- tox.ini | 37 ++++++--- 28 files changed, 90 insertions(+), 330 deletions(-) delete mode 100644 dev_requirements/requirements-build_executable.in delete mode 100644 dev_requirements/requirements-build_executable.txt delete mode 100644 dev_requirements/requirements-coverage.in delete mode 100644 dev_requirements/requirements-coverage.txt delete mode 100644 dev_requirements/requirements-docs.in delete mode 100644 dev_requirements/requirements-docs.txt delete mode 100644 dev_requirements/requirements-formatting.in delete mode 100644 dev_requirements/requirements-formatting.txt delete mode 100644 dev_requirements/requirements-integration_tests.in delete mode 100644 dev_requirements/requirements-integration_tests.txt delete mode 100644 dev_requirements/requirements-json_schemas.in delete mode 100644 dev_requirements/requirements-json_schemas.txt delete mode 100644 dev_requirements/requirements-linting.in delete mode 100644 dev_requirements/requirements-linting.txt delete mode 100644 dev_requirements/requirements-test_packaging.in delete mode 100644 dev_requirements/requirements-test_packaging.txt delete mode 100644 dev_requirements/requirements-type_check.in delete mode 100644 dev_requirements/requirements-type_check.txt delete mode 100644 dev_requirements/requirements-unit_tests.in delete mode 100644 dev_requirements/requirements-unit_tests.txt create mode 100644 domain-specific-terms.txt diff --git a/.github/workflows/integrationtests.yml b/.github/workflows/integrationtests.yml index ae4b6130..8db94c41 100644 --- a/.github/workflows/integrationtests.yml +++ b/.github/workflows/integrationtests.yml @@ -6,7 +6,7 @@ jobs: runs-on: ${{ matrix.os }} strategy: matrix: - python-version: [3.9, "3.10", "3.11", "3.12"] + python-version: ["3.9", "3.10", "3.11", "3.12"] os: [ubuntu-latest] steps: - uses: actions/checkout@v4 diff --git a/.github/workflows/pythonlint.yml b/.github/workflows/pythonlint.yml index 957b0098..39805e17 100644 --- a/.github/workflows/pythonlint.yml +++ b/.github/workflows/pythonlint.yml @@ -9,7 +9,7 @@ jobs: matrix: python-version: ["3.12"] os: [ubuntu-latest] - linter-env: ["linting", "type_check"] + linter-env: ["linting", "type_check", "spell_check"] steps: - uses: actions/checkout@v4 - name: Set up Python ${{ matrix.python-version }} diff --git a/dev_requirements/requirements-build_executable.in b/dev_requirements/requirements-build_executable.in deleted file mode 100644 index 3fbdc7d1..00000000 --- a/dev_requirements/requirements-build_executable.in +++ /dev/null @@ -1,2 +0,0 @@ -# specific requirements for the tox build_executable environment -pyinstaller \ No newline at end of file diff --git a/dev_requirements/requirements-build_executable.txt b/dev_requirements/requirements-build_executable.txt deleted file mode 100644 index 4120b427..00000000 --- a/dev_requirements/requirements-build_executable.txt +++ /dev/null @@ -1,20 +0,0 @@ -# SHA1:a75cd902b521bdce592b451b2288a7e7e89edbc7 -# -# This file is autogenerated by pip-compile-multi -# To update, run: -# -# pip-compile-multi -# -altgraph==0.17.4 - # via pyinstaller -packaging==24.0 - # via - # pyinstaller - # pyinstaller-hooks-contrib -pyinstaller==6.10.0 - # via -r dev_requirements/requirements-build_executable.in -pyinstaller-hooks-contrib==2024.8 - # via pyinstaller - -# The following packages are considered to be unsafe in a requirements file: -# setuptools diff --git a/dev_requirements/requirements-coverage.in b/dev_requirements/requirements-coverage.in deleted file mode 100644 index d1e1a809..00000000 --- a/dev_requirements/requirements-coverage.in +++ /dev/null @@ -1,2 +0,0 @@ -# specific requirements for the tox coverage env -coverage diff --git a/dev_requirements/requirements-coverage.txt b/dev_requirements/requirements-coverage.txt deleted file mode 100644 index c481beab..00000000 --- a/dev_requirements/requirements-coverage.txt +++ /dev/null @@ -1,9 +0,0 @@ -# SHA1:6dafbcf610e9f81897b65ee9142715ab2e793f9e -# -# This file is autogenerated by pip-compile-multi -# To update, run: -# -# pip-compile-multi -# -coverage==7.6.1 - # via -r dev_requirements/requirements-coverage.in diff --git a/dev_requirements/requirements-docs.in b/dev_requirements/requirements-docs.in deleted file mode 100644 index f796be5f..00000000 --- a/dev_requirements/requirements-docs.in +++ /dev/null @@ -1,3 +0,0 @@ -# specific requirements for the tox docs environment -Sphinx -sphinx_rtd_theme diff --git a/dev_requirements/requirements-docs.txt b/dev_requirements/requirements-docs.txt deleted file mode 100644 index 7158a5e1..00000000 --- a/dev_requirements/requirements-docs.txt +++ /dev/null @@ -1,58 +0,0 @@ -# SHA1:c8e7f810d1ef3d2747c05687c62856943f9e1faa -# -# This file is autogenerated by pip-compile-multi -# To update, run: -# -# pip-compile-multi -# -alabaster==0.7.16 - # via sphinx -babel==2.15.0 - # via sphinx -certifi==2024.7.4 - # via requests -charset-normalizer==3.3.2 - # via requests -docutils==0.20.1 - # via - # sphinx - # sphinx-rtd-theme -idna==3.7 - # via requests -imagesize==1.4.1 - # via sphinx -jinja2==3.1.4 - # via sphinx -markupsafe==2.1.5 - # via jinja2 -packaging==24.0 - # via sphinx -pygments==2.18.0 - # via sphinx -requests==2.32.2 - # via sphinx -snowballstemmer==2.2.0 - # via sphinx -sphinx==7.4.7 - # via - # -r requirements-docs.in - # sphinx-rtd-theme - # sphinxcontrib-jquery -sphinx-rtd-theme==2.0.0 - # via -r requirements-docs.in -sphinxcontrib-applehelp==1.0.8 - # via sphinx -sphinxcontrib-devhelp==1.0.6 - # via sphinx -sphinxcontrib-htmlhelp==2.0.5 - # via sphinx -sphinxcontrib-jquery==4.1 - # via sphinx-rtd-theme -sphinxcontrib-jsmath==1.0.1 - # via sphinx -sphinxcontrib-qthelp==1.0.7 - # via sphinx -sphinxcontrib-serializinghtml==1.1.10 - # via sphinx -urllib3==2.2.1 - # via requests diff --git a/dev_requirements/requirements-formatting.in b/dev_requirements/requirements-formatting.in deleted file mode 100644 index 41e6b86a..00000000 --- a/dev_requirements/requirements-formatting.in +++ /dev/null @@ -1,3 +0,0 @@ -# specific requirements for the formatting envs -black -isort diff --git a/dev_requirements/requirements-formatting.txt b/dev_requirements/requirements-formatting.txt deleted file mode 100644 index 782d849e..00000000 --- a/dev_requirements/requirements-formatting.txt +++ /dev/null @@ -1,21 +0,0 @@ -# SHA1:2c7ffcd29222de3114c7f7994911f1b69d06b6b3 -# -# This file is autogenerated by pip-compile-multi -# To update, run: -# -# pip-compile-multi -# -black==24.8.0 - # via -r dev_requirements/requirements-formatting.in -click==8.1.7 - # via black -isort==5.13.2 - # via -r dev_requirements/requirements-formatting.in -mypy-extensions==1.0.0 - # via black -packaging==24.0 - # via black -pathspec==0.12.1 - # via black -platformdirs==4.2.2 - # via black diff --git a/dev_requirements/requirements-integration_tests.in b/dev_requirements/requirements-integration_tests.in deleted file mode 100644 index d472bf5f..00000000 --- a/dev_requirements/requirements-integration_tests.in +++ /dev/null @@ -1,3 +0,0 @@ -# specific requirements for the tox integration_tests env -pytest -pytest-datafiles diff --git a/dev_requirements/requirements-integration_tests.txt b/dev_requirements/requirements-integration_tests.txt deleted file mode 100644 index 2e40d690..00000000 --- a/dev_requirements/requirements-integration_tests.txt +++ /dev/null @@ -1,19 +0,0 @@ -# SHA1:9a7908bf3a242580d708919410d51c88e978c1db -# -# This file is autogenerated by pip-compile-multi -# To update, run: -# -# pip-compile-multi -# -iniconfig==2.0.0 - # via pytest -packaging==24.0 - # via pytest -pluggy==1.5.0 - # via pytest -pytest==8.3.2 - # via - # -r dev_requirements/requirements-integration_tests.in - # pytest-datafiles -pytest-datafiles==3.0.0 - # via -r dev_requirements/requirements-integration_tests.in diff --git a/dev_requirements/requirements-json_schemas.in b/dev_requirements/requirements-json_schemas.in deleted file mode 100644 index 90d41d8e..00000000 --- a/dev_requirements/requirements-json_schemas.in +++ /dev/null @@ -1,2 +0,0 @@ -# specific requirements for the tox json_schemas environment -marshmallow_jsonschema diff --git a/dev_requirements/requirements-json_schemas.txt b/dev_requirements/requirements-json_schemas.txt deleted file mode 100644 index 126afe3c..00000000 --- a/dev_requirements/requirements-json_schemas.txt +++ /dev/null @@ -1,13 +0,0 @@ -# SHA1:9062d7262d59cedbfce598bf02e353c1bab0a987 -# -# This file is autogenerated by pip-compile-multi -# To update, run: -# -# pip-compile-multi -# -marshmallow==3.21.3 - # via marshmallow-jsonschema -marshmallow-jsonschema==0.13.0 - # via -r dev_requirements/requirements-json_schemas.in -packaging==24.0 - # via marshmallow diff --git a/dev_requirements/requirements-linting.in b/dev_requirements/requirements-linting.in deleted file mode 100644 index 787ac85b..00000000 --- a/dev_requirements/requirements-linting.in +++ /dev/null @@ -1,2 +0,0 @@ -# specific requirements for the tox linting env -pylint diff --git a/dev_requirements/requirements-linting.txt b/dev_requirements/requirements-linting.txt deleted file mode 100644 index 22d0c843..00000000 --- a/dev_requirements/requirements-linting.txt +++ /dev/null @@ -1,21 +0,0 @@ -# SHA1:0e15f8789b9d62fe90d1f1b0b6a7e32f13b99b19 -# -# This file is autogenerated by pip-compile-multi -# To update, run: -# -# pip-compile-multi -# -astroid==3.2.4 - # via pylint -dill==0.3.8 - # via pylint -isort==5.13.2 - # via pylint -mccabe==0.7.0 - # via pylint -platformdirs==4.2.2 - # via pylint -pylint==3.2.6 - # via -r dev_requirements/requirements-linting.in -tomlkit==0.12.5 - # via pylint diff --git a/dev_requirements/requirements-test_packaging.in b/dev_requirements/requirements-test_packaging.in deleted file mode 100644 index e1433b0a..00000000 --- a/dev_requirements/requirements-test_packaging.in +++ /dev/null @@ -1,3 +0,0 @@ -# specific requirements for the tox test_packaging environment -build -twine \ No newline at end of file diff --git a/dev_requirements/requirements-test_packaging.txt b/dev_requirements/requirements-test_packaging.txt deleted file mode 100644 index 9768ebac..00000000 --- a/dev_requirements/requirements-test_packaging.txt +++ /dev/null @@ -1,79 +0,0 @@ -# SHA1:93e4fbf2b6cce1574fe3d5315360512fa9927699 -# -# This file is autogenerated by pip-compile-multi -# To update, run: -# -# pip-compile-multi -# -build==1.2.1 - # via -r requirements-test_packaging.in -certifi==2024.7.4 - # via requests -cffi==1.16.0 - # via cryptography -charset-normalizer==3.3.2 - # via requests -cryptography==42.0.7 - # via secretstorage -docutils==0.21.2 - # via readme-renderer -idna==3.7 - # via requests -importlib-metadata==7.1.0 - # via twine -jaraco-classes==3.4.0 - # via keyring -jaraco-context==5.3.0 - # via keyring -jaraco-functools==4.0.1 - # via keyring -jeepney==0.8.0 - # via - # keyring - # secretstorage -keyring==25.2.1 - # via twine -markdown-it-py==3.0.0 - # via rich -mdurl==0.1.2 - # via markdown-it-py -more-itertools==10.3.0 - # via - # jaraco-classes - # jaraco-functools -nh3==0.2.17 - # via readme-renderer -packaging==24.0 - # via build -pkginfo==1.10.0 - # via twine -pycparser==2.22 - # via cffi -pygments==2.18.0 - # via - # readme-renderer - # rich -pyproject-hooks==1.1.0 - # via build -readme-renderer==43.0 - # via twine -requests==2.32.2 - # via - # requests-toolbelt - # twine -requests-toolbelt==1.0.0 - # via twine -rfc3986==2.0.0 - # via twine -rich==13.7.1 - # via twine -secretstorage==3.3.3 - # via keyring -twine==5.1.1 - # via -r requirements-test_packaging.in -urllib3==2.2.1 - # via - # requests - # twine -zipp==3.19.1 - # via importlib-metadata diff --git a/dev_requirements/requirements-type_check.in b/dev_requirements/requirements-type_check.in deleted file mode 100644 index 5a5ffe3d..00000000 --- a/dev_requirements/requirements-type_check.in +++ /dev/null @@ -1,4 +0,0 @@ -# specific requirements for the tox type_check environment -types-xmltodict -mypy - diff --git a/dev_requirements/requirements-type_check.txt b/dev_requirements/requirements-type_check.txt deleted file mode 100644 index 8a128733..00000000 --- a/dev_requirements/requirements-type_check.txt +++ /dev/null @@ -1,15 +0,0 @@ -# SHA1:da3e663746c4ba081481cd87909f5e74fcb5851a -# -# This file is autogenerated by pip-compile-multi -# To update, run: -# -# pip-compile-multi -# -mypy==1.11.1 - # via -r dev_requirements/requirements-type_check.in -mypy-extensions==1.0.0 - # via mypy -types-xmltodict==0.13.0.3 - # via -r dev_requirements/requirements-type_check.in -typing-extensions==4.11.0 - # via mypy diff --git a/dev_requirements/requirements-unit_tests.in b/dev_requirements/requirements-unit_tests.in deleted file mode 100644 index 5dbb8f6b..00000000 --- a/dev_requirements/requirements-unit_tests.in +++ /dev/null @@ -1,5 +0,0 @@ -# specific requirements for the tox unit_tests env -pytest -pytest-datafiles -jsonpath-ng -pytest-asyncio diff --git a/dev_requirements/requirements-unit_tests.txt b/dev_requirements/requirements-unit_tests.txt deleted file mode 100644 index ae25e0dd..00000000 --- a/dev_requirements/requirements-unit_tests.txt +++ /dev/null @@ -1,26 +0,0 @@ -# SHA1:a0cccddeadc81e9f98ff0eb366cdcc25f560e9f6 -# -# This file is autogenerated by pip-compile-multi -# To update, run: -# -# pip-compile-multi -# -iniconfig==2.0.0 - # via pytest -jsonpath-ng==1.6.1 - # via -r dev_requirements/requirements-unit_tests.in -packaging==24.0 - # via pytest -pluggy==1.5.0 - # via pytest -ply==3.11 - # via jsonpath-ng -pytest==8.3.2 - # via - # -r dev_requirements/requirements-unit_tests.in - # pytest-asyncio - # pytest-datafiles -pytest-asyncio==0.23.8 - # via -r dev_requirements/requirements-unit_tests.in -pytest-datafiles==3.0.0 - # via -r dev_requirements/requirements-unit_tests.in diff --git a/domain-specific-terms.txt b/domain-specific-terms.txt new file mode 100644 index 00000000..6f2117c3 --- /dev/null +++ b/domain-specific-terms.txt @@ -0,0 +1,5 @@ +# contains 1 lower case word per line which are ignored in the spell_check +beginn +TE +als +Dokument diff --git a/pyproject.toml b/pyproject.toml index 422e27f3..75ffea87 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -34,6 +34,58 @@ dependencies = [ dynamic = ["readme", "version"] [project.optional-dependencies] +unit_tests = [ + "pytest==8.3.2", + "pytest-datafiles==3.0.0", + "jsonpath-ng==1.6.1", + "pytest-asyncio==0.23.8" +] +integration_tests = [ + "pytest==8.3.2", + "pytest-datafiles==3.0.0" +] +linting = [ + "pylint==3.2.7" +] +type_check = [ + "mypy==1.11.2", + "types-xmltodict==0.13.0.3" +] +spell_check = [ + "codespell==2.3.0" +] +coverage = [ + "coverage==7.6.1" +] +formatting = [ + "black==24.8.0", + "isort==5.13.2" +] +packaging = [ + "build==1.2.2", + "twine==5.1.1" +] +build_executable = [ + "pyinstaller==6.10.0" +] +docs = [ + "Sphinx==7.4.7", + "sphinx-rtd-theme==2.0.0" +] +json_schema = [ + "marshmallow-jsonschema==0.13.0" +] +test_packaging = [ + "build==1.2.1", + "twine==5.1.1" +] +formating = [ + "black==24.8.0", + "isort==5.13.2" +] +dev = [ + "pip-tools" +] xml = ["lxml>=4.9.2", "xmltodict"] # for parsing the Hochfrequenz MIG templates tree = ["lark>=1.1.5"] # for parsing the Hochfrequenz .tree files cli = ["click"] # for the CLI tool (w/o python installer/executable) diff --git a/requirements.txt b/requirements.txt index 20b50e9a..921fb73f 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,5 +1,5 @@ # -# This file is autogenerated by pip-compile with Python 3.11 +# This file is autogenerated by pip-compile with Python 3.12 # by the following command: # # pip-compile requirements.in @@ -8,6 +8,8 @@ attrs==23.2.0 # via -r requirements.in click==8.1.7 # via -r requirements.in +colorama==0.4.6 + # via click efoli==1.1.0 # via -r requirements.in lark==1.2.2 diff --git a/src/maus/division_helper.py b/src/maus/division_helper.py index 80b2a350..2f921653 100644 --- a/src/maus/division_helper.py +++ b/src/maus/division_helper.py @@ -17,7 +17,7 @@ class Division(str, Enum): def get_division(field_name: Optional[str]) -> Optional[Division]: """ - returns a division if the field name is definitly from that division, None otherwise + returns a division if the field name is definitely from that division, None otherwise """ if not field_name: return None diff --git a/src/maus/models/edifact_components.py b/src/maus/models/edifact_components.py index 87559f80..c489b7be 100644 --- a/src/maus/models/edifact_components.py +++ b/src/maus/models/edifact_components.py @@ -1,7 +1,7 @@ # pylint:disable=too-few-public-methods """ EDIFACT components are data structures on different hierarchical levels inside an EDIFACT message. -Components contain not only EDIFACT composits but also segments and segment groups. +Components contain not only EDIFACT composites but also segments and segment groups. """ import re from abc import ABC @@ -374,7 +374,7 @@ class SegmentLevel(ABC): validator=attrs.validators.optional(attrs.validators.instance_of(int)), default=None ) """ - Allows sorting the segments depending on where they occured in the FlatAnwendungshandbuch. + Allows sorting the segments depending on where they occurred in the FlatAnwendungshandbuch. It won't be serialized though. """ @@ -407,7 +407,7 @@ class Segment(SegmentLevel): validator=attrs.validators.optional(attrs.validators.instance_of(str)), default=None ) """ - For the MIG matching it might be necessary to know the section in which the data element occured in the AHB. + For the MIG matching it might be necessary to know the section in which the data element occurred in the AHB. This might be necessary to e.g. distinguish gas and electricity fields which look the same otherwise. See e.g. UTILMD 'Geplante Turnusablesung des MSB (Strom)' vs. 'Geplante Turnusablesung des NB (Gas)' """ diff --git a/tox.ini b/tox.ini index 9ca7afa2..1cf3e3b3 100644 --- a/tox.ini +++ b/tox.ini @@ -17,7 +17,7 @@ changedir = tests/unit_tests setenv = PYTHONPATH = {toxinidir}/src deps = -r requirements.txt - -r dev_requirements/requirements-unit_tests.txt + .[unit_tests] commands = python -m pytest --basetemp={envtmpdir} {posargs} [testenv:integration_tests] @@ -26,14 +26,14 @@ changedir = tests/integration_tests setenv = PYTHONPATH = {toxinidir}/src deps = -r requirements.txt - -r dev_requirements/requirements-integration_tests.txt + .[integration_tests] commands = python -m pytest --basetemp={envtmpdir} {posargs} [testenv:linting] # the linting environment is called by the Github Action that runs the linter deps = - -r requirements.txt - -r dev_requirements/requirements-linting.txt + {[testenv:unit_tests]deps} + .[linting] # add your fixtures like e.g. pytest_datafiles here commands = pylint src/maus @@ -44,21 +44,32 @@ commands = usedevelop = True setenv = PYTHONPATH = {toxinidir}/src deps = - -rrequirements.txt - -r dev_requirements/requirements-type_check.txt + {[testenv:unit_tests]deps} + .[type_check] commands = mypy --show-error-codes src/maus mypy --show-error-codes tests/unit_tests mypy --show-error-codes tests/integration_tests # add single files (ending with .py) or packages here +[testenv:spell_check] +# the spellcheck environment checks the code for typos +setenv = PYTHONPATH = {toxinidir}/src +deps = + -r requirements.txt + .[spell_check] +commands = + codespell --ignore-words=domain-specific-terms.txt src + codespell --ignore-words=domain-specific-terms.txt README.md + # add single files (ending with .py) or packages here + [testenv:coverage] # the coverage environment is called by the Github Action that runs the coverage measurement changedir = tests/unit_tests setenv = PYTHONPATH = {toxinidir}/src deps = {[testenv:unit_tests]deps} - -r dev_requirements/requirements-coverage.txt + .[coverage] commands = coverage run -m pytest --basetemp={envtmpdir} {posargs} coverage html --omit .tox/*,unittests/* @@ -68,7 +79,7 @@ commands = setenv = PYTHONPATH = {toxinidir}/src deps = -r requirements.txt - -r dev_requirements/requirements-formatting.txt + .[formating] commands = black . --check isort . --check @@ -84,7 +95,7 @@ deps = {[testenv:coverage]deps} {[testenv:json_schemas]deps} {[testenv:formatting]deps} - pip-tools + {[testenv:spell_check]deps} pre-commit commands = python -m pip install --upgrade pip @@ -95,7 +106,7 @@ commands = [testenv:test_packaging] skip_install = true deps = - -r dev_requirements/requirements-test_packaging.txt + .[test_packaging] commands = python -m build twine check dist/* @@ -107,7 +118,7 @@ commands = skip_install = true deps = -r requirements.txt - -r dev_requirements/requirements-build_executable.txt + .[build_executable] commands = # to provide the name of the executable use the following command: # tox -e build_executable -- --name maus_cli_macos @@ -117,7 +128,7 @@ commands = usedevelop = True deps = -r requirements.txt - -r dev_requirements/requirements-docs.txt + .[docs] commands = sphinx-build -W -b html -d {envtmpdir}/doctrees docs {envtmpdir}/html sphinx-build -n -T -W -b doctest -d {envtmpdir}/doctrees docs docs/_build/html @@ -127,6 +138,6 @@ commands = usedevelop = True deps = -r requirements.txt - -r dev_requirements/requirements-json_schemas.txt + .[json_schema] commands = python json_schemas/generate_json_schemas.py