Skip to content

Developer release guide

New Version Release steps [developers only]

When you are ready to make a new release of pyemu, follow these steps using uv (https://docs.astral.sh/uv/) to manage versioning. 1) checkout main or release branch (or just develop).

2) update version number with uv: uv version --bump <BUMP> ('BUMP' is major, minor, patch, stable, alpha, beta, rc, post, dev)

3) update CITATION.cff with version number and date

4) commit version number change: git add pyproject.toml uv.lock CITATION.cff git commit -m"Bump version to <newversion>"

5) tag new version: git tag -a v<newversion> -m <version message> Note: the 'v' is v important!

6) push branch (e.g. main) and tags to remote: git push origin main git push origin v<newversion> If everything is setup on the CI (GitHub Actions) and PyPI, .github/workflows/release.yml should take care of the rest.

DEPLOYMENT MAY NEED TO BE APPROVED MANUALLY ON GITHUB!

7) (optional) bring develop or other branch up to date: git checkout develop git merge main git push origin develop

Check out example here: \ https://docs.astral.sh/uv/guides/integration/github/#publishing-to-pypi \ and here: \ https://docs.pypi.org/trusted-publishers/adding-a-publisher/