Contributing
Python 3.9+ is required.
python -m venv .venv
source .venv/bin/activate
pip install -e ".[dev]"
make test
make lint
- Tests live in
test/and run with pytest. - ruff: max line length 100, max complexity 15 (
make lint). - mypy is run on
filerepack/andtest/. - Do not unlink user files before a successful rewrite; packers must write to a temp path and
os.replace. - New formats go through the
_PACKERSregistry andSTANDALONE_EXTS(orARCHIVE_EXTS).
Documentation
The site is Docusaurus under docs/.
Source pages live in docs/docs/.
cd docs
npm install
npm start
From the repository root: make docs-serve (dev server) or make docs (production build). Broken links fail npm run build.
CLI behaviour is documented in CLI reference. Per-format tools and nested walking: Formats. External binaries: External tools. Update those pages when adding a format or flag.
See also CONTRIBUTING.md in the repository root.