Raygun for Python is published on PyPi as raygun4py.
This package follows semantic versioning,
Given a version number MAJOR.MINOR.PATCH (x.y.z), increment the:
- MAJOR version when you make incompatible changes
- MINOR version when you add functionality in a backward compatible manner
- PATCH version when you make backward compatible bug fixes
To learn more about semantic versioning check: https://semver.org/
Create a new branch named release/x.y.z
where x.y.z is the Major, Minor and Patch release numbers.
Update the __version__ in the python3/raygun4py/version.py file.
Add a new entry in the CHANGELOG.md file. Keep the release marked Unreleased while it is under review, then replace Unreleased with the publication date in the final release commit.
Obtain a list of changes using the following git command:
git log --pretty=format:"- %s (%as)"
Commit all the changes into a commit with the message chore: Release x.y.z where x.y.z is the Major, Minor and Patch release numbers.
Then push the branch and open a new PR, ask the team to review it.
Once the PR has been approved, you can publish the provider.
Before publishing, confirm that CI passes the unlocked Python compatibility matrix and the locked development job. If a test Raygun application is available, also run the functional tests described in CONTRIBUTING.MD.
- Install build tools:
pip install build - Build the package:
python -m build - Check that the files
dist/raygun4py-x.y.z.tar.gzanddist/raygun4py-x.y.z-py3-none-any.whlhave been created. - Install twine:
pip install twine - Check the package:
twine check dist/* - Upload to PyPi:
twine upload dist/* - Provide the API token when asked.
- Now the package is available for customers.
With the PR approved and the package published, squash and merge the PR into master.
Go to https://github.com/MindscapeHQ/raygun4py/releases and create a new Release.
GitHub will create a tag for you, you don't need to create the tag manually.
You can also generate the release notes automatically.