Skip to content

Maintainer Guides

Mikaël Simard edited this page Apr 15, 2026 · 2 revisions

Publishing a Release

Publishing a release is a mostly automated process that only requires three steps:

  1. Update the version number in _version.py to reflect the new python package version. It is recommended that this remains in lockstep with the release numbering.

  2. The details of the information uploaded to PyPI are populated from setup.cfg - update the relevant fields of this file such as descriptions, python versions, and requirements for the new release.

  3. Create the new release. From the main page, press the release link on the right hand side of the page, then proceed with the draft a new release button.

Step 3 triggers a GitHub action Upload Python Package that performs the release, and result in an updated version of the package on PyPI.

Updating MLflow Version

The version of MLflow that is used will need to be updated when necessary, it is important that the following steps are completed to ensure that the version is consistent across all our processes.

  • The version of MLflow used by the mlflow_server is determined in this requirements file. This will need to be updated. Following making the change, any current mlflow_server instances (for example on the headnode or locally) will need to be brought down and then rebuilt using the updated version.

  • The version of MLflow should also be updated in the main requirements.txt file for consistency.

  • Additionally, the MLflow version used by the csc-mlops python package will need to be updated. This can be updated in setup.cfg, and then the release process can be followed. Ensure that following these changes your code is using the latest version of the csc-mlops package.

Clone this wiki locally