Creating a new release

This is an advanced developer section that describes creation of a new release for fairops and deploying that release onto PyPi_

Note

THESE INSTRUCTIONS ARE FOR DOING A RELEASE ONLY AND NOT FOR REGULAR COMMITS

Warning

Releases should be done from main_ branch

Testing

Before deploy verify code is working by invoking:

make coverage

The above command runs the unit tests and calculates code coverage of the unit tests.

To just run tests:

make test

All tests should pass

make lint

Lint should not complain

Committing code

Before doing a release, the code must be assigned a new Versioning Scheme

First run git tag to find the latest version. Pick the next highest version number. The tags in github start with v because versions cannot start with numeric value.

git tag example:

$ git tag
v0.2.0
v0.3.0
v0.4.0

Note

Versions should adhere to this Versioning Scheme

Versions are auto-generated by build pipeline based on the git tag name.

Commit the above changes and push to main:

git commit -m 'message...' fairops/__init__.py
git push origin main

Tagging code

Now tag source with version:

git tag -a v0.4.0 -m 'Information describing release'

Push the tag to github:

git push origin v0.4.0