Skip to content

[Release] 2.0.0: version bump, changelog, release notes, README incremental-sessions section - #31

Merged
DongyuZhao merged 7 commits into
mainfrom
feature/v2-m5-release-prep
Jul 20, 2026
Merged

[Release] 2.0.0: version bump, changelog, release notes, README incremental-sessions section#31
DongyuZhao merged 7 commits into
mainfrom
feature/v2-m5-release-prep

Conversation

@DongyuZhao

Copy link
Copy Markdown
Contributor

Release preparation for 2.0.0 per docs/releasing.md — a normal PR into main; publishing happens afterwards by pushing the signed protected tag v2.0.0 on the merged commit.

What changed

  • VERSION and every pinned version reference move to 2.0.0: the C version header (MARKDOWN_CORE_VERSION 2<<16, version string), root and package READMEs, the npm manifest, the Kotlin consumer fixtures, and the Maven consumer POM. pnpm release:check-version passes.
  • CHANGELOG.md gains the 2.0.0 section and docs/releases/2.0.0.md carries the curated notes — consumer-visible only: incremental sessions on every platform, snapshots with structural sharing, deltas over stable MarkupIDs, dump-equality with one-shot parses, session footnote queries, transactional commits, no process-global parser state, and the sessions-and-deltas contract.
  • The root README gains an Incremental sessions section (Swift and ECMAScript examples, identity/equivalence summary, pointer to docs/specs/sessions-and-deltas.md) — 2.0.0's headline feature was otherwise undocumented there.

The CHANGELOG/notes date is 2026-07-19; if the tag lands on a later day, the date should be touched up before tagging.

Preparation evidence

Full host release dry run passed locally on this change (version contract, C staging, Swift source archive, npm staging, Maven staging + ephemeral signing + all Gradle/Maven consumers, publication audit, checksums), and the branch now sits on main with #29 + #30 merged. The tag-triggered release workflow re-runs the complete suite from its own snapshot.

🤖 Generated with Claude Code

…mental-sessions section.

VERSION and every pinned version reference move to 2.0.0; CHANGELOG and
docs/releases/2.0.0.md record the incremental-sessions release; the root
README gains an Incremental sessions section with Swift and ECMAScript
examples and a pointer to the sessions-and-deltas contract.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@DongyuZhao
DongyuZhao requested a review from a team July 19, 2026 23:06
@DongyuZhao
DongyuZhao enabled auto-merge July 19, 2026 23:06
The usage section shows Document.parse on every platform; the session
section now does the same — Kotlin (AutoCloseable use) and C (borrowed
committed view, caller-owned delta) join the Swift and ECMAScript
examples.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@github-actions

github-actions Bot commented Jul 19, 2026

Copy link
Copy Markdown

PR performance and binary-size diff

Benchmark execution is required; hosted-runner timing, memory, and size deltas are informational only.

Baseline unavailable for exact PR base 39bed4eda815; current values are shown without a diff.

Performance

Runtime Workload Median Perf diff Memory Memory diff
c representative_large 4.542 ms n/a 8,692 KiB n/a
es deep_nesting 0.335 ms n/a 148,308 KiB n/a
es large_document 37.070 ms n/a 148,308 KiB n/a
kotlin deep_nesting 0.256 ms n/a 115,060 KiB n/a
kotlin large_document 29.751 ms n/a 109,492 KiB n/a
swift deep_nesting 0.080 ms n/a 26,144 KiB n/a
swift large_document 11.630 ms n/a 26,048 KiB n/a

Binary size

Artifact Bytes KiB Size diff
c-shared-library 501,888 490.1 n/a
es-wasm 288,573 281.8 n/a
kotlin-jvm-jar 312,972 305.6 n/a

Head CI run

Size deltas are deterministic for identical build inputs. Performance deltas compare separate hosted runners and should be treated as directional evidence, not a pass/fail threshold.

@chatgpt-codex-connector chatgpt-codex-connector 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.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: f41eadc7a4

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread README.md Outdated
Comment thread README.md Outdated
DongyuZhao and others added 5 commits July 19, 2026 18:16
…erate-shape bounds.

Review finding: README/notes claimed per-commit cost "independent of
document size" unconditionally, stronger than the contract's degraded
cases. Measured at 4x size steps against Document.parse of the same
text: unclosed-fence edits are linear at ~1.06x a one-shot parse;
one-enormous-paragraph edits are linear at 2-8 MiB (~3-4x a one-shot
parse; the 7x at 256KiB->1MiB is a cache-tier transition, not
asymptotic); definition churn re-resolving every reference is linear at
~3x. All three are O(document) per commit — the constant over a bare
parse is adoption, delta recording, and table upkeep over the reparsed
material.

README, CHANGELOG, and the 2.0.0 notes now say "proportional to the
damaged region — for typical documents, independent of total document
size" with the degraded shapes named and bounded by a small multiple of
one full parse; the contract's cost-model bullet states the
small-constant-multiple bound explicitly instead of a literal "one full
parse". Measurements recorded in the plan doc.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Review finding: README, CHANGELOG, and the 2.0.0 notes described the
delta as added/removed/changed only, but the contract exposes a fourth
disjoint array — ancestors whose revision bubbled because a descendant
changed. A mirror built from the three-set overview keeps stale
ancestor revisions after descendant-only edits, so every overview now
names bubbled and states the four-set mirror recipe.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
…roadmap.

Forced-full-path measurements on the degenerate shapes: routing
whole-document restarts through commit_full saves 5% (enormous
paragraph) to 31% (definition churn); the dominant term in both paths
is adoption pairing — the inherent cost of keeping node identity
across a whole-document reparse. Roadmap: label-scoped dependent
narrowing, fused splice walks, inline-level damage.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
# Conflicts:
#	docs/migration/2026-07-15-v2-incremental-sessions-plan.md
Merges main with #32-#35 (postings narrowing, whole-document routing,
the reflow rename, the inline seam); the plan doc reconciles the
pre-release measurement record with the delivered state, and the
CHANGELOG date moves to the tag day.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@DongyuZhao

Copy link
Copy Markdown
Contributor Author

Refreshed over the merged optimization chain (#32#35) in bb3b7fa: main merged in (plan doc reconciled — the pre-release measurement record now reflects that all three degenerate-cost items shipped as release blockers), CHANGELOG dated to the tag day, pnpm release:check-version green.

Full host release dry run passed on this head: version contract, C staging, Swift source archive + consumer, npm staging with the packed consumer, Maven staging + ephemeral signing + every Gradle/Maven consumer, publication audit, and checksums. Correctness (104) green locally. After merge: git tag -s v2.0.0 && git push origin v2.0.0 on the merge commit triggers the formal release workflow.

@DongyuZhao
DongyuZhao disabled auto-merge July 20, 2026 05:17
@DongyuZhao
DongyuZhao merged commit 3f8bf97 into main Jul 20, 2026
87 checks passed
@DongyuZhao
DongyuZhao deleted the feature/v2-m5-release-prep branch July 20, 2026 05:35
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant