- Sep 10, 2024
-
-
Alexander Hess authored
- use pytest as the test suite and measure test coverage with coverage.py - add package for the test suite under tests/ - add nox session "test" to run the test suite for all supported Python versions - use flake8 to lint pytest for consistent style
-
Alexander Hess authored
- use flake8 as the main linting tool with the following plug-ins: + flake8-annotations + flake8-bandit + flake8-black + flake8-broken-line + flake8-bugbear + flake8-commas + flake8-comprehensions + flake8-debugger + flake8-docstrings + flake8-eradicate + flake8-isort + flake8-quotes + flake8-string-format + flake8-pyproject + pep8-naming + pydoclint - use mypy for static type checking - use ruff for linting for future compatibility - add nox session "lint" to run these tools - add `ruff check --fix ...` in nox session "format" - lint all source files => no errors found
-
Alexander Hess authored
- auto-format code with: + autoflake => * remove unused imports and variables * remove duplicate dict keys * expand star imports + black => enforce an uncompromising code style + isort => enforce a consistent import style compliant with Google's Python style guide - add nox session "format" to run these tools
-
Alexander Hess authored
- base configuration for all nox sessions to come - add infos about nox in the README file - ignore [py]cache folders in git
-
Alexander Hess authored
- describe how a local develop environment can be set up - we use poetry to manage the project => add pyproject.toml and poetry.lock files - add a package for the source code => "src" layout structure to ensure that pytest runs the tests against a packaged version installed in a virtual environment and not the *.py files in the project directory (Source: https://hynek.me/articles/testing-packaging/) - ignore poetry's artifacts in git
-
Alexander Hess authored
- describe the project's goals - contributions are welcome - mention the GitFlow branching model
-