Skip to content

Publishing a new release

Aaron Holmes edited this page Oct 25, 2024 · 8 revisions

The Ligare repository contains a workflow to automatically publish a PyPI package and a GitHub release when tags in a certain format are created.

To trigger the release of a new package, first:

  • Update the root version in src/init.py
  • Update the root CHANGELOG
  • Update any versions in the appropriate package's __init__.py file with the appropriate semantic version bump
  • Update each changed package's CHANGELOG

Once these changes are made (and an associated PR is merged into main), create a new tag for each changed page and the root package:

  • The tag must start with Ligare.
  • The tag must end with a -v followed by a semantic version, e.g., -v1.0.0
    • The version must reflect the same version in the package's __init__.py file. This is not enforced at the moment.
  • The name of the package must follow Ligare. and precede the version, e.g., Ligare.web-v1.0.0
  • The name of the package must be the equivalent of the directory name under the src/ directory for whichever package the tag is for
    • The package name for the root repository must be all

Ligare.all must be updated when another package changes.

It is suggested to push tags individually and wait for the publish workflow to finish for each one, as the workflow may not be triggered in parallel.

Release workflow

Existing packages can be found on @aholmes's PyPI profile; the packages are prefixed with Ligare. Once a package is published, you will find the new version in whichever project was published.

Please contact @aholmes with any access issues or requests to the PyPI packages.

Clone this wiki locally