I built Datary around a small promise: input remains inert, evidence stays local, and every result should be explainable. If you contribute, please help me keep that promise.
Use a supported Python version and install the development extras:
python -m pip install -e ".[dev]"
python -m pytest
python -m ruff check .
python -m ruff format --check .
python -m mypy
python -m buildBehavioural changes need deterministic tests. Mathematical changes need a definition, an ordered counterexample where relevant, and a statement of assumptions. Security changes need a regression test for the boundary: traversal, symlink, failed publication, malicious manifest, control sequence, or formula-like export data.
Please do not add telemetry, background networking, data execution, or an always-on database. Discuss session-format changes explicitly and keep older readers in mind.
- Bump
versioninpyproject.tomland__version__insrc/datary/__init__.py. - Update
CHANGELOG.mdand adddocs/releases/X.Y.Z.md. - Run the local checks above, then
python -m buildandpython scripts/build_checksums.py. - Publish GitHub Release
vX.Y.Zwith the wheel, sdist, andSHA256SUMS. - Verify install from the release URL and
datary --version.
The distribution package name remains datary-lab; the canonical repository path is
/Datary.