This is the overview for publishing.
- Create a branch named 0.0.3 or whatever.
- Set the version in envrac/__init__.py to match that.
- Ensure all your changes are committed, and that you have the latest changes from master (this gets checked anyway) because you don't want to publish something that doesn't match the source code that is tagged with that version.
- Publish to test.pypi with
./scripts/publish-test.sh
- Install in another virtualenv with
./scripts/install-from-test-pypi.sh
- Open a Python terminal and check version and functionality.
- Merge to main with
git merge --squash
- Publish to pypi and tag
./scripts/publish-live.sh
Everything is controlled by the scripts which generally run the checks.sh script first, which:
- Ensures your branch and version match
- You have no uncommitted changes.
- You have the latest changes from main.
- Tests pass.
- Quality checks have run.