5.11. How to release new version of Open Interfaces¶
[ ] Bump version in the following files:
CMakeLists.txtpyproject.tomlversion.pyconf.py
[ ] Run pre-commit
[ ] Make a pull request and make sure it passes all the checks
[ ] Merge the pull request to
main[ ] Go to the GitHub page of the repository and press “Releases”
[ ] Press “Draft a new release”
[ ] Create a new tag “vX.Y.Z” (e.g. “v0.1.0”) for the
mainbranch[ ] Press publish release
[ ] In local working copy of the repository, switch to
main:git checkout main
[ ] Fetch changes from the remote repository (from your fork):
git fetch origin
[ ] Fetch tags from the upstream repository:
git fetch --tags upstream
[ ] Make sure that
mainis on the tagged commit:git logmust report that HEAD,main,origin/main, andupstream/mainare all the same; besides, it must have the tag from the above[ ] Build the Python package
make build-python-package[ ] Check that the package is build correctly by uploading to TestPyPI:
make upload-package-python-test[ ] Install in a separate virtual environment:
python -m pip install \ --index-url https://test.pypi.org/simple/ \ --extra-index-url https://pypi.org/simple/ \ openinterfaces
[ ] Check that the package is installed correctly and functional in IPython:
from openinterfaces.examples import call_ivp_from_python call_ivp_from_python.main()
[ ] Upload the package to PyPI:
make upload-package-python[ ] Drink a coffee/tee/a glass of water/a glass of wine 🍻.