# -- Python bytecode and tool caches --
**/__pycache__*
.pytest_cache/
.ruff_cache/
.mypy_cache/

# -- Virtual environments --
.venv/
venv/

# -- Experiment output: data and figures regenerated by `examples/**` and `experiments/**` --
# A run's cached pickles are the only copy of that run (see `src/ppsds/experiment/cache.py`),
# so deleting this tree means recomputing thousands of cone programs.
**/data/
**/pic/
*.pkl
*.npy
*.npz
*.pdf
*.png
# ...except the release assets that ship with this site. The exclusion above is aimed at the
# regenerated plots and data under `examples/**`, which must never ship; these are committed on
# purpose. Without the negation the export to this repository would copy them and `git add -A`
# would not stage them -- a 404 with every gate green.
!docs/assets/*.png

# -- Build artifacts (python -m build / pip install -e .) --
dist/
build/
*.egg-info/

# -- Documentation build output (mkdocs build) --
site/
