Contributing to bilby_pipe

Making releases

Note: releases should be made in coordination with other developers and, doing so requires certain permissions.

Versioning

We use semantic versioning when creating bilby releases and versions should have the format MAJOR.MINOR.PATCH. The version tag should also start with v e.g. v2.4.0.

bilby_pipe uses setuptools_scm to automatically set the version based on git tags. This means no manual changes are needed to the version number are required.

Updating the changelog

Before making a release, the changelog should be updated to include the changes since the last release. This should be done by a new pull request. We roughly follow the style proposed in keep a changelog

When making a changelog keep the following in mind:

  • Only document meaningful changes to the code. Changes to, e.g., the CI or test suite do not need to be included.

Making a release on GitLab

To make a new release of bilby_pipe, first ensure the changelog is up-to-date. Once this is done, follow these steps:

  1. Navigate to https://git.ligo.org/lscsoft/bilby_pipe/-/releases

  2. Click New release

  3. Specify the tag (e.g., v1.5.0). This should either be an existing tag or you can create new tag. If creating a new tag, ensure the master branch is selected.

  4. (Optional) Select the corresponding milestone

  5. Set the Release date as today

  6. Copy the changelog notes into the Release notes box

  7. Click Create release

Once step 7 is complete, the CI will trigger and the new release will be automatically uploaded to PyPI. Check that the CI workflow completed successfully. After this, you should see the new release on PyPI.

If you run into any issues, please contact Colm Talbot or Michael Williams.

Updating conda-forge

conda-forge is not automatically updated when a new release is made, but an pull request should be opened automatically on the bilby_pipe feedstock (this can take up to a day). Once it is open, follow the steps in the pull request to review and merge the changes.