A JAX library to compute control barrier functions related functionality
Requires the dynamaxsys library
pip install git+https://github.com/UW-CTRL/dynamaxsys.git
pip install git+https://github.com/UW-CTRL/cbfax.git
For editable mode:
git clone https://github.com/UW-CTRL/cbfax.git
cd cbfax
pip install -e .
Install pre-commit and set up the git hook:
pip install pre-commit
pre-commit installRun on all files:
pre-commit run --all-filesThis repo now uses setuptools-scm, so package versions are derived from Git tags.
Packaging and version metadata are managed in pyproject.toml.
No manual version= edits are needed.
Create a release tag:
git tag v0.0.2
git push origin v0.0.2Build with the computed version:
python -m buildNotes:
- Tagged commits build exactly that version (for example,
v0.0.2). - Untagged commits get an automatic development version.
Use the Makefile helpers to create the next version tag automatically:
make release-next # preview next patch tag (dry-run)
make release-patch # create next patch tag locally
make release-minor # create next minor tag locally
make release-major # create next major tag locallyCreate and push in one command:
make release-patch-push
make release-minor-push
make release-major-pushThen build:
make build