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

0.9.0 Release #964

Closed
markmandel opened this issue May 23, 2024 · 9 comments · Fixed by #1003
Closed

0.9.0 Release #964

markmandel opened this issue May 23, 2024 · 9 comments · Fixed by #1003
Labels
kind/release Checklist for a release

Comments

@markmandel
Copy link
Member

I was holding off on setting up the 0.9.0 release, since there were several critical bug fixes in the pipeline.

Looks like that's all sorted now, so just checking if there's anything I should block on before kicking off this release?

@markmandel markmandel added the kind/release Checklist for a release label May 23, 2024
@markmandel markmandel pinned this issue May 23, 2024
@XAMPPRocky
Copy link
Collaborator

No, kick it off :)

@markmandel
Copy link
Member Author

Only thought I have - do we care that we don't have docs for HashedTokenRouter in our guides? Or is that more of an experiment that may eventually end up being the TokenRouter? In which case, better to leave it undocumented until testing is complete. I wasn't quite sure.

@markmandel
Copy link
Member Author

@Jake-Shadle with #965 merged, https://googleforgames.github.io/quilkin/main/book/services/xds.html#supported-apis is now out of date, yes?

Tracking documentation changes that will need to be made before a release can be cut.

@markmandel
Copy link
Member Author

Now #980 is merged, just waiting on #970 doc updates.

@markmandel
Copy link
Member Author

markmandel commented Jun 26, 2024

Need these two implemented/merged before release. Everthing above is done/obsolete.

@markmandel
Copy link
Member Author

Okay, we have everything that was blocking release merged now! Any final objections before I kick this off @XAMPPRocky @Jake-Shadle ?

@XAMPPRocky
Copy link
Collaborator

Nope

@Jake-Shadle
Copy link
Collaborator

No

@markmandel
Copy link
Member Author

markmandel commented Aug 14, 2024

Release 0.9.0

Prerequisites

  • Have at least Editor level access to quilkin Google Cloud project.
  • Local gcloud configuration is pointing at the quilkin Google Cloud project.
  • Local git remote upstream points at git@github.com:googleforgames/quilkin.git.

Steps

  • Review that closed issues have appropriate tags for the changelog.
  • Review that merged PRs have appropriate tags for the changelog.
  • Run git remote update && git checkout main && git reset --hard upstream/main to ensure your code is in line
    with upstream.
  • Update Cargo version for release
    • Edit the version field in ./Cargo.toml and remove the -dev suffix.
    • Edit the quilkin-macros dependency in ./Cargo.toml and remove the -dev suffix.
    • Edit the version field in ./macros/Cargo.toml and remove the -dev suffix.
  • cd to ./build/release and run make to submit the cloud build
  • Download all the artifacts from the cloud build.
  • Review license.html to ensure that there aren't any new MPL, or CDDL dependencies from the last
    release. If there are:
    • Add the dependencies to archive_dependencies.sh
      so that the source is archived in the container image.
    • Reset checklist back to "run make to submit the cloud build", and start from there again.
  • Run cd macros && cargo publish --dry-run --allow-dirty and ensure there are no issues.
  • Run cargo clippy in the root directory, and ensure there are no issues.
  • Add a release item to README.md "Documentation" > "Releases" list with related links in reverse chronological
    order.
  • Review any data-proofer-ignore attributes from links in the documentation in ./docs, and remove any no
    longer needed.
  • Create a draft Github release
    • Populate the tag with v0.9.0
    • Click Generate release notes to generate the change log for this release.
    • Copy the release notes from the draft release and paste it at the top of CHANGELOG.md.
    • Using the
      Github release template
      update the generated release notes with a description, and relevant changelog sections.
    • Attach all the cloud build artifacts to the draft GitHub release.
  • Submit these changes as a PR, and merge with approval.
  • Run git remote update && git checkout main && git reset --hard upstream/main to ensure your code is in line
    with upstream.
  • Run git checkout -b release-0.9.0 && git push upstream release-0.9.0 to create a release branch.
  • Publish to crates.io/crates/quilkin-macros: run cd macros && cargo publish
  • Publish to crates.io/crates/quilkin: run cargo publish
  • Submit the release.
  • Post announcemnts
  • Update Cargo version for development
    • Edit Cargo.toml and increment the minor version and apply the -dev suffix to the
      version.
    • Edit the quilkin-macros dependency in ./Cargo.toml and increment the minor version
      and apply the -dev suffix to the version.
    • Edit the version field in ./macros/Cargo.tomland increment the minor version
      and apply the -dev suffix to the version.
  • Submit this change as a PR, and merge with approval.

Congratulation! 🎉 You have successfully released Quilkin!

markmandel added a commit to markmandel/quilkin that referenced this issue Aug 14, 2024
* Changes for upcoming release
* Small tweaks to the release process

Work om googleforgames#964
markmandel added a commit to markmandel/quilkin that referenced this issue Aug 16, 2024
Working on the 0.9.0 release, and found a stack of files with missing
Apache headers. This fixes that!

Blocker omn googleforgames#964
XAMPPRocky pushed a commit that referenced this issue Aug 16, 2024
Working on the 0.9.0 release, and found a stack of files with missing
Apache headers. This fixes that!

Blocker omn #964
markmandel added a commit to markmandel/quilkin that referenced this issue Aug 18, 2024
* Changes for upcoming release
* Small tweaks to the release process

Work om googleforgames#964
markmandel added a commit that referenced this issue Aug 18, 2024
* Changes for upcoming release
* Small tweaks to the release process

Work om #964
markmandel added a commit to markmandel/quilkin that referenced this issue Aug 18, 2024
Got stuck with this release, as we have new crates that also need to be
published and I hadn't factored that into the new publishing steps.

This includes moving the `xds` crates to being `quilkin-xds` so there
was less concern with crate name collisions.

🤞🏻 hopefully this is it!

Work on googleforgames#964
markmandel added a commit that referenced this issue Aug 19, 2024
* Unstick release 0.9.0

Got stuck with this release, as we have new crates that also need to be
published and I hadn't factored that into the new publishing steps.

This includes moving the `xds` crates to being `quilkin-xds` so there
was less concern with crate name collisions.

🤞🏻 hopefully this is it!

Work on #964

* Fix for Github Action.
markmandel added a commit to markmandel/quilkin that referenced this issue Aug 19, 2024
Snuck in a small change to the changelog as well that didn't get
captured by the release process breaking.

Closes googleforgames#964
@markmandel markmandel unpinned this issue Aug 19, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
kind/release Checklist for a release
Projects
None yet
Development

Successfully merging a pull request may close this issue.

3 participants