diff --git a/templates/config.yml b/templates/config.yml index 10381688..c6955a92 100644 --- a/templates/config.yml +++ b/templates/config.yml @@ -43,7 +43,13 @@ conda/infrastructure: # - src: templates/releases/RELEASE.md # dst: RELEASE.md # with: - # placeholder: YY.M + # canary-channel: https://anaconda.org/conda-canary + # # CalVer placeholders + # placeholder: YY.M.PATCH + # placeholder-x: YY.M.x + # # SemVer placeholders + # placeholder: MAJOR.MINOR.MINOR + # placeholder-x: MAJOR.MINOR.x # - src: templates/releases/rever.xsh # dst: rever.xsh # - src: templates/releases/TEMPLATE diff --git a/templates/releases/RELEASE.md b/templates/releases/RELEASE.md index 9d2c64ff..eec0c4fe 100644 --- a/templates/releases/RELEASE.md +++ b/templates/releases/RELEASE.md @@ -13,12 +13,12 @@ # Release Process > [!NOTE] -> Throughout this document are references to the version number as `[[ placeholder ]].[$patch_number]`, this should be replaced with the correct version number. Do **not** prefix the version with a lowercase `v`. +> Throughout this document are references to the version number as `[[ placeholder ]]`, this should be replaced with the correct version number. Do **not** prefix the version with a lowercase `v`. ## 1. Open the release issue and cut a release branch. (do this ~1 week prior to release) > [!NOTE] -> The new release branch should adhere to the naming convention of `[[ placeholder ]].x` (make sure to put the `.x` at the end!). In the case of patch/hotfix releases, however, do NOT cut a new release branch; instead, use the previously-cut release branch with the appropriate `[[ placeholder ]].x` version numbers. +> The new release branch should adhere to the naming convention of `[[ placeholder-x ]]` (note the difference to `[[ placeholder ]]`). In the case of patch/hotfix releases, however, do NOT cut a new release branch; instead, use the previously-cut `[[ placeholder-x ]]` release branch. Use the issue template below to create the release issue. After creating the release issue, pin it for easy access. @@ -28,7 +28,7 @@ Use the issue template below to create the release issue. After creating the rel ```markdown ### Summary -Placeholder for `[[ repo.name ]] [[ placeholder ]].x` release. +Placeholder for `[[ repo.name ]] [[ placeholder-x ]]` release. | Pilot | | |---|---| @@ -46,8 +46,8 @@ Placeholder for `[[ repo.name ]] [[ placeholder ]].x` release.

The week before release week

-- [ ] Create release branch (named `[[ placeholder ]].x`) -- [ ] Ensure release candidates are being successfully built (see `conda-canary/label/rc-[[ repo.name ]]-[[ placeholder ]].x`) +- [ ] Create release branch (named `[[ placeholder-x ]]`) +- [ ] Ensure release candidates are being successfully built (see `conda-canary/label/rc-[[ repo.name ]]-[[ placeholder-x ]]`) - [ ] [Complete outstanding PRs][milestone] - [ ] Test release candidates @@ -59,8 +59,8 @@ Placeholder for `[[ repo.name ]] [[ placeholder ]].x` release. - [ ] Create release PR (see [release process][process]) - [ ] [Publish release][releases] -- [ ] Merge `[[ placeholder ]].x` back into `main` -- [ ] Activate the `[[ placeholder ]].x` branch on [ReadTheDocs][ReadTheDocs] +- [ ] Merge `[[ placeholder-x ]]` back into `main` +- [ ] Activate the `[[ placeholder-x ]]` branch on [ReadTheDocs][ReadTheDocs] - [ ] Feedstocks - [ ] Bump version & update dependencies/tests in [Anaconda, Inc.'s feedstock][main] - [ ] Bump version & update dependencies/tests in [conda-forge feedstock][conda-forge] @@ -87,12 +87,12 @@ If a patch release is necessary, reopen the original release issue and append th ```markdown
-

Patch [[ placeholder ]].[$patch_number]

+

Patch [[ placeholder ]]

- [ ] - [ ] Create release PR (see [release process][process]) - [ ] [Publish release][releases] -- [ ] Merge `[[ placeholder ]].x` back into `main` +- [ ] Merge `[[ placeholder-x ]]` back into `main` - [ ] Feedstocks - [ ] Bump version & update dependencies/tests in [Anaconda, Inc.'s feedstock][main] - [ ] Bump version & update dependencies/tests in [conda-forge feedstock][conda-forge] @@ -106,6 +106,9 @@ If a patch release is necessary, reopen the original release issue and append th > [!NOTE] > The [epic template][epic template] is perfect for this; remember to remove the **`epic`** label. +> [!NOTE] +> A patch release is like a regular, i.e., follow the same steps in the process as you would for a regular release. Most patches are authored by existing contributors (most likely maintainers themselves) so running `rever ` may succeed on the first pass. + ## 2. Alert various parties of the upcoming release. (do this ~1 week prior to release) Let various interested parties know about the upcoming release; at minimum, conda-forge maintainers should be informed. For major features, a blog post describing the new features should be prepared and posted once the release is completed (see the announcements section of the release issue). @@ -114,7 +117,7 @@ Let various interested parties know about the upcoming release; at minimum, cond ### Canary Builds for Manual Testing -Once the release PRs are filed, successful canary builds will be available on `https://anaconda.org/conda-canary/conda/files?channel=rc-[[ repo.name ]]-[[ placeholder ]].x` for manual testing. +Once the release PRs are filed, successful canary builds will be available on `[[ canary-channel ]]/[[ repo.name ]]/files?channel=rc-[[ repo.name ]]-[[ placeholder-x ]]` for manual testing. > [!NOTE] > You do not need to apply the `build::review` label for release PRs; every commit to the release branch builds and uploads canary builds to the respective `rc-` label. @@ -147,13 +150,13 @@ Currently, there are only 2 activities we use rever for, (1) aggregating the aut ```bash (rever) $ git fetch upstream - (rever) $ git checkout [[ placeholder ]].x + (rever) $ git checkout [[ placeholder-x ]] ``` 2. Create a versioned branch, this is where rever will make its changes: ```bash - (rever) $ git checkout -b changelog-[[ placeholder ]].[$patch_number] + (rever) $ git checkout -b changelog-[[ placeholder ]] ``` 2. Run `rever --activities authors `: @@ -181,7 +184,7 @@ Currently, there are only 2 activities we use rever for, (1) aggregating the aut - Here's a sample run where we undo the commit made by rever in order to commit the changes to `.authors.yml` separately: ```bash - (rever) $ rever --activities authors --force [[ placeholder ]].[$patch_number] + (rever) $ rever --activities authors --force [[ placeholder ]] # changes were made to .authors.yml as per the prior bullet (rever) $ git diff --name-only HEAD HEAD~1 @@ -250,7 +253,7 @@ Currently, there are only 2 activities we use rever for, (1) aggregating the aut > * Add `win-arm64` as a known platform (subdir). (#11778) > ``` - - You can utilize [GitHub's compare view][compare] to review what changes are to be included in this release. Make sure you compare the current release branch against the previous one (e.g., `24.5.x` would be compared against `24.3.x`) + - You can utilize [GitHub's compare view][compare] to review what changes are to be included in this release. Make sure you compare the current release branch against the previous one - Add a new news snippet for any PRs of importance that are missing. @@ -310,8 +313,8 @@ Currently, there are only 2 activities we use rever for, (1) aggregating the aut + 86957814cf235879498ed7806029b8ff5f400034 Update .authors.yml + 3ec7491f2f58494a62f1491987d66f499f8113ad Update .mailmap + 432a9e1b41a3dec8f95a7556632f9a93fdf029fd Update news - + a5c0db938893d2c12cab12a1f7eb3e646ed80373 Update authorship for [[ placeholder ]].[$patch_number] - + 5e95169d0df4bcdc2da9a6ba4a2561d90e49f75d Update CHANGELOG for [[ placeholder ]].[$patch_number] + + a5c0db938893d2c12cab12a1f7eb3e646ed80373 Update authorship for [[ placeholder ]] + + 5e95169d0df4bcdc2da9a6ba4a2561d90e49f75d Update CHANGELOG for [[ placeholder ]] ``` 7. Since rever does not include stats on first-time contributors, we will need to add this manually. @@ -332,18 +335,18 @@ Currently, there are only 2 activities we use rever for, (1) aggregating the aut + 86957814cf235879498ed7806029b8ff5f400034 Update .authors.yml + 3ec7491f2f58494a62f1491987d66f499f8113ad Update .mailmap + 432a9e1b41a3dec8f95a7556632f9a93fdf029fd Update news - + a5c0db938893d2c12cab12a1f7eb3e646ed80373 Update authorship for [[ placeholder ]].[$patch_number] - + 5e95169d0df4bcdc2da9a6ba4a2561d90e49f75d Update CHANGELOG for [[ placeholder ]].[$patch_number] + + a5c0db938893d2c12cab12a1f7eb3e646ed80373 Update authorship for [[ placeholder ]] + + 5e95169d0df4bcdc2da9a6ba4a2561d90e49f75d Update CHANGELOG for [[ placeholder ]] + 93fdf029fd4cf235872c12cab12a1f7e8f95a755 Add first-time contributions ``` 8. Push this versioned branch. ```bash - (rever) $ git push -u upstream changelog-[[ placeholder ]].[$patch_number] + (rever) $ git push -u upstream changelog-[[ placeholder ]] ``` -9. Open the Release PR targing the `[[ placeholder ]].x` branch. +9. Open the Release PR targeting the `[[ placeholder-x ]]` branch.
GitHub PR Template @@ -367,8 +370,8 @@ Currently, there are only 2 activities we use rever for, (1) aggregating the aut | Field | Value | |---|---| - | Choose a tag | `[[ placeholder ]].[$patch_number]` | - | Target | `[[ placeholder ]].x` | + | Choose a tag | `[[ placeholder ]]` | + | Target | `[[ placeholder-x ]]` | | Body | copy/paste blurb from `CHANGELOG.md` |
@@ -389,14 +392,14 @@ To publish the release, go to the project's release page (e.g., https://github.c 1. From the main "< > Code" page of the repository, select the drop down menu next to the `main` branch button and then select "View all branches" at the very bottom. -2. Find the applicable `[[ placeholder ]].x` branch and click the "New pull request" button. +2. Find the applicable `[[ placeholder-x ]]` branch and click the "New pull request" button. -3. "Base" should point to `main` while "Compare" should point to `[[ placeholder ]].x`. +3. "Base" should point to `main` while "Compare" should point to `[[ placeholder-x ]]`. 4. Ensure that all of the commits being pulled in look accurate, then select "Create pull request". > [!NOTE] -> Make sure NOT to push the "Update Branch" button. If there are [merge conflicts][merge conflicts], create a temporary "connector branch" dedicated to fixing merge conflicts separately from the `[[ placeholder ]].x` and `main` branches. +> Make sure NOT to push the "Update Branch" button. If there are [merge conflicts][merge conflicts], create a temporary "connector branch" dedicated to fixing merge conflicts separately from the `[[ placeholder-x ]]` and `main` branches. 5. Review and merge the pull request the same as any code change pull request. @@ -405,7 +408,7 @@ To publish the release, go to the project's release page (e.g., https://github.c
-## 9. Open PRs to bump [Anaconda Recipes][Anaconda Recipes] and [conda-forge][conda-forge] feedstocks to use `[[ placeholder ]].[$patch_number]`. +## 9. Open PRs to bump [Anaconda Recipes][Anaconda Recipes] and [conda-forge][conda-forge] feedstocks to use `[[ placeholder ]]`. > [!NOTE] > Conda-forge's PRs will be auto-created via the `regro-cf-autotick-bot`. Follow the instructions below if any changes need to be made to the recipe that were not automatically added (these instructions are only necessary for anyone who is _not_ a conda-forge feedstock maintainer, since maintainers can push changes directly to the autotick branch):