Release v0.9.0 - #113
Merged
Merged
Conversation
Moves [Unreleased] into a dated 0.9.0 section and closes the gaps that made the section an inaccurate description of what ships. Minor rather than patch: dropping the bare `build-` restore-key changes default restore behaviour for consumers — an environment.yml change is now a genuine cache miss and a cold build, where it previously restored a _build produced by the superseded environment. Marked BREAKING with a migration note, per the 0.x policy in CONTRIBUTING. Two accuracy fixes were needed before this could be tagged honestly: The Anaconda 2026.06 migration had no entry at all, despite being live in `:latest` since 2026-07-08. Added under Changed. The #28 entry stated the baseline is `anaconda=2025.12`, which stopped being true when #95 landed in this same unreleased block. It now points forward to the migration entry rather than asserting a stale baseline. Also logs the dependabot bumps that reached the composite actions — actions/cache v5 to v6 in build-jupyter-cache, restore-jupyter-cache and setup-environment, and action-gh-release v3.0.1 in publish-gh-pages — which are consumer-facing and were previously unlogged. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Contributor
There was a problem hiding this comment.
Pull request overview
This PR prepares the v0.9.0 release by updating CHANGELOG.md only, consolidating and correcting release notes for changes that have already landed since v0.8.0.
Changes:
- Adds a new 0.9.0 (2026-07-23) section with Added/Changed/Fixed entries, including the Anaconda 2026.06 container baseline migration and consumer-facing action dependency bumps.
- Records the restore-jupyter-cache fixes and the
⚠️ BREAKING cache restore-key behavior change with a migration note. - Updates the “Version History” note about what
v0tracks.
Past-tense the #28 bullet: it asserted the 2025.12 baseline as current fact ('that every lecture repo builds against', 'already pins') while the same release records the move to 2026.06. The forward-pointer alone left two false present-tense claims ahead of it. Drop the version number from the Version History line rather than re-setting it. It was stale at v0.8.0, which is why this PR touched it, and it would have been briefly false again between this merge and the v0 tag move. The latest release is already the topmost dated section. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Step 1 of the CONTRIBUTING release process for v0.9.0. CHANGELOG only — no code changes.
Why minor, not patch
Dropping the bare⚠️ BREAKING with a migration note — no config change is needed, but the first build after an environment change will be slower, and that is intended.
build-restore-key (#104) changes default restore behaviour for consumers: anenvironment.ymlchange is now a genuine cache miss and therefore a cold build, where it previously restored a_buildproduced by the superseded environment. CONTRIBUTING lists "changing default behavior" as breaking, and during 0.x breaking changes increment the minor. MarkedTwo accuracy gaps this closes
Neither is new work; both would have shipped as false release notes.
The Anaconda 2026.06 migration (#95) had no entry at all. It has been live in
:latestsince 2026-07-08. Now recorded under Changed, with the caveat that it reaches consumers through the image tag rather than through this release.The #28 entry asserted a baseline that is no longer current. It stated the lean image pins
anaconda=2025.12— true when it was written, false once #95 landed in the same unreleased block. It now points forward to the migration entry instead of asserting a stale baseline. This is a slice of #106, taken because a release cannot describe the wrong baseline; the rest of the 2026.06 doc sweep stays with that issue.Also newly logged
The dependabot bumps that reached the composite actions, not just the workflows, and so are consumer-facing:
build-jupyter-cache,restore-jupyter-cache,setup-environmentactions/cache,.../restore,.../save—@v5→@v6(#90)publish-gh-pagessoftprops/action-gh-release→ v3.0.1 (#94)Coverage check
All nine commits since v0.8.0 are accounted for: #103 and #104 (five and two entries), #95, #90, #94, #28, and the kaleido pin. #91 and #93 are planning documents (
PLAN.md,PROJECT-OPTIMIZE-PREVIEWS.md) and carry no entry by design.After this merges
Remaining release steps, which I have not done — the tag and the
v0move are consumer-affecting and force-movingv0is hard to reverse:git tag -a v0.9.0on the merge commitgit tag -f v0 "v0.9.0^{}"and force-push — this is what actually delivers fix(restore-jupyter-cache): save-mode outputs and fail-on-miss are broken #104's fix to@v0consumers, and unblocks the Optimize preview builds: phased plan for the fastest PR previews (tracking) #92save-cacherolloutlecture-dppins@v0.8.0exactly, so it will need an explicit repin to pick this up;@v0consumers get it when step 2 lands.