Skip to content

Commit

Permalink
clarify what the release docs page is for
Browse files Browse the repository at this point in the history
  • Loading branch information
dgtized committed Jan 21, 2024
1 parent 23413c5 commit 071f7b4
Showing 1 changed file with 19 additions and 13 deletions.
32 changes: 19 additions & 13 deletions docs/release.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,11 @@
# Release

See also [release-process](https://github.com/quil/quil/wiki/Dev-notes#release-process).
Process notes and explanation on how to release a new version of Quil using the automated tooling.

1. Verify the build is ready
2. Release!

Adapted from the [release-process](https://github.com/quil/quil/wiki/Dev-notes#release-process) notes.

## Verification

Expand Down Expand Up @@ -72,25 +77,26 @@ As they use bindings that verify that JOGL is bundled correctly.
## Release Steps

1. Create a new branch for release
2. Update `RELEASE-NOTES.md`, to reflect all the changes which went into the current release (including this PR!)
3. (optional) Consider doing a [snapshot release](https://github.com/quil/quil/actions/workflows/clojars_snapshot_release.yaml), selecting "Run workflow" from branch "master". This will push a snapshot jar to Clojars that can be tested with other projects.
4. Calculate the build version, which incorporates the number of commits to the `master` branch. Either read it from the github UI showing the latest commit, or use `git rev-list master --count` locally. Remember that since there are locally committed changes this number will likely be higher once the commits are pushed to github or the PR is merged, so adjust accordingly. The release should be in form of `v4.3.1234` where `4.3` tracks the upstream processing release version, and `1234` is the build number just calculated.
5. Update Quil version in the `README.md`, for `deps.edn` and Leiningen coordinates, and any other references. Update version in `project.clj`.
6. Push, review, and merge the release PR, making sure the version matches the build count of the merged PR.
7. [tag a release](https://github.com/quil/quil/releases/new) by creating a new tag matching the version above, ie `v4.3.1234`. Select the previous release and use generate release notes and adjust that text for the release. Leave `set as the latest release` checked.
8. Click `Publish release`. The [release action](https://github.com/quil/quil/actions/workflows/clojars_release.yaml) is configured to upload a JAR to Clojars whenever a tag is created starting with `v`. This will upload a jar to Clojars versioned as the release version ie `v4.3.1234`.
9. Monitor the [release action](https://github.com/quil/quil/actions/workflows/clojars_release.yaml) to ensure it completes correctly.
10. Update the lein and deps-new templates to reference the new Clojars release
2. Run all the manual verification steps above
3. Update `RELEASE-NOTES.md`, to reflect all the changes which went into the current release (including this PR!)
4. (optional) Consider doing a [snapshot release](https://github.com/quil/quil/actions/workflows/clojars_snapshot_release.yaml), selecting "Run workflow" from branch "master". This will push a snapshot jar to Clojars that can be tested with other projects.
5. Calculate the build version, which incorporates the number of commits to the `master` branch. Either read it from the github UI showing the latest commit, or use `git rev-list master --count` locally. Remember that since there are locally committed changes this number will likely be higher once the commits are pushed to github or the PR is merged, so adjust accordingly. The release should be in form of `v4.3.1234` where `4.3` tracks the upstream processing release version, and `1234` is the build number just calculated.
6. Update Quil version in the `README.md`, for `deps.edn` and Leiningen coordinates, and any other references. Update version in `project.clj`.
7. Push, review, and merge the release PR, making sure the version matches the build count of the merged PR.
8. [tag a release](https://github.com/quil/quil/releases/new) by creating a new tag matching the version above, ie `v4.3.1234`. Select the previous release and use generate release notes and adjust that text for the release. Leave `set as the latest release` checked.
9. Click `Publish release`. The [release action](https://github.com/quil/quil/actions/workflows/clojars_release.yaml) is configured to upload a JAR to Clojars whenever a tag is created starting with `v`. This will upload a jar to Clojars versioned as the release version ie `v4.3.1234`.
10. Monitor the [release action](https://github.com/quil/quil/actions/workflows/clojars_release.yaml) to ensure it completes correctly.
11. Update the lein and deps-new templates to reference the new Clojars release
* https://github.com/quil/quil-templates (requires separate release for clj template)
* https://github.com/quil/sketchbook-template
* https://github.com/quil/clj-sketch-template

11. Update external references to the release version
12. Update external references to the release version
* https://github.com/quil/quil-examples
* https://github.com/quil/quil/wiki/Runnable-jar

12. (optional) Update quil.info website. Use [generate docs](https://github.com/quil/quil/wiki/Snippets#generate-documention) steps, but requires permission to update the quil-site page.
13. Announce the Quil release on [Clojureverse](https://clojureverse.org/), [r/clojure](https://www.reddit.com/r/Clojure/), and the Clojurians slack (both in #announcements and in #quil). Previously this also included clj-processing and clojure google groups.
13. (optional) Update quil.info website. Use [generate docs](https://github.com/quil/quil/wiki/Snippets#generate-documention) steps, but requires permission to update the quil-site page.
14. Announce the Quil release on [Clojureverse](https://clojureverse.org/), [r/clojure](https://www.reddit.com/r/Clojure/), and the Clojurians slack (both in #announcements and in #quil). Previously this also included clj-processing and clojure google groups.

### Announcement Template

Expand Down

0 comments on commit 071f7b4

Please sign in to comment.