Skip to content

Bump version to 0.12.0 - #556

Merged
jeremy merged 1 commit into
mainfrom
bump-v0.12.0
Aug 1, 2026
Merged

Bump version to 0.12.0#556
jeremy merged 1 commit into
mainfrom
bump-v0.12.0

Conversation

@jeremy

@jeremy jeremy commented Aug 1, 2026

Copy link
Copy Markdown
Member

Version bump for the v0.12.0 release (make bump VERSION=0.12.0 — 10 version files + 4 lockfiles).

Candidate since v0.11.0 (all non-breaking): the six new-surface absorptions (#520#526: bookmarks, my-drafts, my-note, calendar pair, todoset loose-todo create, everything filters), Up Next priority writes + repin (#528), Go wrapper completions (#534), Python max_items (#540), TS retry-under-middleware (#538), Kotlin network-error retry (#539), Kotlin uploads.download + download conformance (#554), java-kotlin CodeQL re-enable (#391), monotonic runner clocks (#530), labeler/docs/spec hygiene (#529, #535, #536), GetCalendar live canary + skip-marker replay contract (#542).

Release-notes label→section audit done across all 20 PRs (fixed: #520 +documentation, #391 −enhancement).

After merge: make release VERSION=0.12.0 (pushes main, tags, triggers all 7 workflows). Unblocks CLI Stage 2.

🤖 Authored with agent assistance by @jeremy.


Summary by cubic

Bumps all SDKs to version 0.12.0 and updates lockfiles to prepare the v0.12.0 release across Go, Kotlin, Python, Ruby, Swift, and TypeScript.

  • New Features

    • New surfaces and write ops: bookmarks, my-drafts/my-note, calendar pair, loose-todo create, “everything” filters; Up Next priority writes + repin.
    • Reliability/tooling: TS/Kotlin retry improvements, Kotlin downloads conformance, Go wrapper completions, Python max_items, monotonic clocks, CodeQL re-enabled.
  • Migration

    • Update to 0.12.0 (@37signals/basecamp, basecamp-sdk for Python/Ruby). No breaking changes expected.

Written for commit 742e30e. Summary will update on new commits.

Review in cubic

Copilot AI review requested due to automatic review settings August 1, 2026 00:44
@github-actions github-actions Bot added typescript Pull requests that update TypeScript code ruby Pull requests that update the Ruby SDK go kotlin swift conformance Conformance test suite python Pull requests that update the Python SDK labels Aug 1, 2026

Copilot AI left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copilot encountered an error and was unable to review this pull request. You can try again by re-requesting a review.

@cubic-dev-ai cubic-dev-ai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No issues found across 14 files

Re-trigger cubic

@jeremy
jeremy merged commit 7e2925d into main Aug 1, 2026
45 of 46 checks passed
@jeremy
jeremy deleted the bump-v0.12.0 branch August 1, 2026 00:57
jeremy added a commit that referenced this pull request Aug 4, 2026
Ten version constants and four lockfiles, via scripts/bump-version.sh.

Also corrects MIGRATING.md's release counts, which were measured with a
merge-timestamp filter. That filter has an off-by-one at the boundary:
#556's squash commit IS 7e2925d, the commit v0.12.0 tags, and its
mergedAt lands a moment after that commit's own timestamp — so a
`mergedAt > tag_time` comparison attributes a PR that shipped in v0.12.0
to this release.

Counting by ancestry instead, "in this release" is what the range
operator already means: reachable from HEAD, not reachable from v0.12.0.
That gives 56 merged PRs, not 55. Breaking stays 15 — #556 is not in
that roster, so only the total moved.

The baseline also moves from 2afc977 to 931c36a. The old baseline
predated this guide's own merge, so the document could not count itself;
931c36a IS that merge and is the last commit of release content. The
one remaining reference to 2afc977 is #664's merge SHA, a different
fact, and stays.

Both derivation commands in the document now use ancestry and were
verified to reproduce the numbers printed beside them.

Note for whoever bumps next: bump-version.sh syncs four lockfiles but six
record the SDK version — the conformance Ruby and Python runner lockfiles
go stale and `make check` then rewrites them. Converge them by hand until
that is fixed (#671, with #670 for the write itself).
jeremy added a commit that referenced this pull request Aug 5, 2026
#673 and #675 landed after the last measurement, so the guide's baseline
moves from 931c36a to 70d576b.

The counting method changes too, because the one committed here was
wrong. `git log v0.12.0..HEAD | wc -l` counts COMMITS, which equals PRs
only while every commit is a squash merge. The release-prep commit is
pushed straight to main and is not a PR, so from the moment the version
is bumped that count runs one high — it reported 59 where 58 PRs had
merged.

That is the third way this number has been wrong, each differently: a
lexicographic string compare on timestamps, then a temporal compare that
credited #556 to this release (its squash commit IS the commit v0.12.0
tags), and now a commit count meeting its first non-PR commit.

The rule that survives all three is the definition itself: reachable
from HEAD and not reachable from v0.12.0, applied to the merge commits
of PRs rather than to commits. Both derivations in the guide now use it,
and both were run to confirm they reproduce the numbers printed beside
them.

Committed directly rather than as a pull request, on purpose: a PR
carrying this number would increment the number it states. #642 shipped
wrong for exactly that reason — a document inside the release cannot
count itself.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

conformance Conformance test suite go kotlin python Pull requests that update the Python SDK ruby Pull requests that update the Ruby SDK swift typescript Pull requests that update TypeScript code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants