The basic procedure for releasing a new version of pyCoilGen consists of:
- Running the unit tests.
- Checking the documentation
- Create a tag and update the change log
- Build and Publish the project
Run the unit tests from the project top level directory:
pytest
Build and check the documentation:
cd docs
make clean html
Load the docs/build/html/index.html
.
pyCoilGen uses semantic versioning. Update the version number in pyCoilGen/init.py according to changes since the previous tag.
Create a tag with only the current number, e.g. 0.0.9
.
git tag 0.0.9
pyCoilGen uses auto-changelog
to parse git commit messages and generate the CHANGELOG.md
.
auto-changelog
git add CHANGELOG.md
git commit -m "Updating CHANGELOG"
git push
git push --tags
The sources are published as two packages using flit
to build and publish the artifacts.
The project details are defined in the pyproject.toml
files. The version and description are defined in the top-level __init__.py
file for each package.
This project uses semantic versioning.
Build and publish the main artifact:
$ flit build
$ flit publish
Build and publish the data artifact if it has changed:
$ cd data
$ flit build
$ flit publish
Go to the GitHub project administration page and publish a release using the tag created, above.
Update the release
branch:
git checkout release
git rebase master
git push