Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Document release process #1502

Open
whitequark opened this issue Sep 5, 2024 · 2 comments
Open

Document release process #1502

whitequark opened this issue Sep 5, 2024 · 2 comments

Comments

@whitequark
Copy link
Member

Right now it is only documented in my head, which is suboptimal.

@whitequark
Copy link
Member Author

whitequark commented Sep 5, 2024

To release a new stable point release:

  1. Ensure changelog is up to date. (This should normally be the case, but is always worth a secondary check. This can be done by looking through the commits to vMAJOR.MINOR.x stable branch since the latest tag.
  2. Create a new unannotated tag vMAJOR.MINOR.PATCH from the latest commit to vMAJOR.MINOR.x. Do not do this via GitHub's release interface. Do not create a GitHub release (a release will be created automatically by a CI workflow). An appropriate CLI command to do this is: git checkout vMAJOR.MINOR.x && git pull --no-merge && git tag vMAJOR.MINOR.PATCH.
  3. Push the tag vMAJOR.MINOR.PATCH to https://github.com/amaranth-lang/amaranth. This kicks off the automated test and release process via CI workflows.
  4. Verify that the built artifacts have been pushed to https://pypi.org/project/amaranth and that a GitHub release has been created at https://github.com/amaranth-lang/amaranth/releases.
  5. Check out https://github.com/amaranth-lang/playground and update src/config.ts with the URL of the built artifact for the newly released version.
  6. Verify that Version MAJOR.MINOR.PATCH appears in the version selector when running the playground locally (see the playground README for details).
  7. Push updated main branch of the playground and wait for CI to pass.
  8. Update live branch of the playground from the main branch, e.g. using git push origin main:live in the checkout used for the previous step.
  9. Done! 🎉

@whitequark
Copy link
Member Author

2. Create a new annotated tag vMAJOR.MINOR.PATCH from the latest commit to vMAJOR.MINOR.x.

This actually breaks our CI because of some horrific tag-related behavior: https://github.com/amaranth-lang/amaranth/actions/runs/10717897781/job/29718819926

Changing to use unannotated tags for now.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Development

No branches or pull requests

1 participant