Development
Source code repository and issue tracker at github.
At the moment:
One-man show using a MacBook with VS Code, mainly python 3.11, using some auto-formatting(black), linting (mypy,flake), testing (pytest)
Compatibility:
Python 3.7 … 3.12 on all CPython platforms.
Optional dependencies:
rich for fancy terminal output (display reason for matching)
Useful commands
For local development
Create a development environment:
mamba env create -f dev_environment.yml
conda activate dirmagic-dev-env
Change python version of the development enviroment:
mamba install -n dirmagic-dev-env "python=3.9"
Build documentation:
sphinx-build doc build/html
Build distribution:
python -m build
Reformat python files in-place:
python -m black dirmagic tests
Test and lint project:
python -m pytest --cov-report term-missing --cov=dirmagic tests
python -m mypy dirmagic tests
python -m flake dirmagic tests
python -m black --check dirmagic tests
Or use tox:
tox -f <what>
with <what> as one of test,lint,type,coverage,format.
Contributing
Add a criterion defining a project type
Advocate for a use case
Improve documentation
Extend the set of criteria to define project types
Improve the code (correctness, performance or capability)
What the project is not
An alternative to package data/resource locators for installed packages like
pkgutil.get_data.An in-depth validation of a project’s data.
Project Maturity
Inception state, answering the question: Will this resonate with a reasonably broad community?
Aim for a 0.1 release with a preliminary interface, continue towards 1.0 using semantic versioning.