-
Notifications
You must be signed in to change notification settings - Fork 2
Releasing Fab
Releases usually come in 3 different levels: Major, minor and patch. These are reflected by the numbers in the version identifier: x.y.z
.
Major releases change the x
value and are for API breaking changes.
Minor releases change the y
value and are for new features.
Patch releases change the z
value and are for bug fixes.
Obviously each level of release may also include features from lower levels. So a minor release may also include bug fixes and major releases may include new featues.
If this is a new major or minor release it will need a new branch of the form v#.#
. Patch
releases are made from the relevant existing branch. If a new branch is made, bump the version
number on trunk to v#.#.dev0
which is the next minor release after the new release.
On the release branch, update the version number to v#.#.#
which is the version you are about
to release. Then create the release tag with the same name.
Make a package and upload to PyPI. In due course an e-mail will arrive from Conda Forge inviting you to create a package for this new version.
Announce the new version in the announcements forum.
Finally, on trunk, update the version information to v#.#.dev0
which is the next minor release.
In order to create the release you will need the following Python packages installed:
- setuptools
- wheel
- twine
Change into a working copy and check out the relevant revision.
To create the package use python setup.py sdist bdist_wheel
. This will create dist
which contains both a tar-ball and a "wheel" archive.
Use python -m twine upload dist/*
to have these distribution files sent to PyPI.
- Future Release
- vn1.0 Release, March 2023
- 0.11 Beta Release, Jan 2023
- 0.10 Beta Release, Oct 2022
- 0.9 Alpha Release, June 2022
- Phase 2
- Phase 3
- Phase 4
- Repository Management
- Development Process
- Development Environment
- Releasing Fab
- Coding Conventions
- Glossary
- Concerning the Database
- Unit Test Coverage
- Issues With the System Testing Framework