chore: release v0.8.0 #223
No reviewers
Labels
No labels
breaking-change
bug
documentation
duplicate
enhancement
good first issue
help wanted
performance
question
wontfix
No milestone
No project
No assignees
5 participants
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
Grandiras/ATProto.NET!223
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "issue-222-release-0.8"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Closes #222.
Release preparation for v0.8.0. No tag is created or pushed here: tagging
v0.8.0publishes the packages, so the maintainer does it after this merges (checklist at the end).Changes
Directory.Build.props:<Version>goes from 0.7.0 to 0.8.0.## [Unreleased]is now## [0.8.0] - 2026-10-05, under a fresh empty## [Unreleased].## [0.7.0]and older are untouched.src/tag/v0.8.0/docs/migrating-to-0.8.md), because the section becomes the Forgejo release body.Migration:.ATProtoNet(185 added, 18 removed),ATProtoNet.Server(52/27) andATProtoNet.Server.EntityFrameworkCore(23/3) are folded intoPublicAPI.Shipped.txt, in each file's existing order. The Unshipped files are back to#nullable enable, and the analyzer is quiet.docs/getting-started.mdlinks the 0.8 guide; README anddocs/index.mdalready did.docs/migrating-to-0.8.mdhas an entry for each Breaking bullet (checked by keyword).Verified
dotnet packproducesATProtoNet.0.8.0.nupkg.After merge (maintainer)
git switch main && git pullgit tag v0.8.0 && git push origin v0.8.0.release.ymlbuilds, tests and packs, pushes to the Forgejo feed and nuget.org, and creates the release from the## [0.8.0]section.🤖 Generated with Claude Code
🤖 Reviewing this PR — the review will link the full session transcript.
📜 Live transcript — updating every ~5 minutes while the review runs.
🤖 Reviewing this PR — follow along in the action run; the reply will link the full session transcript.
📜 Live transcript — updating every ~5 minutes while the task runs.
✅ Verdict: approve — no blocking issues found.
This is a mechanical release-prep PR, and it looks correct.
Directory.Build.propsis bumped to 0.8.0, and no stale 0.7.0 references remain in project, props or workflow files.*REMOVED*lines are applied: the DPoP types,ProofLifetimeandPublicBaseUrl, and the old signatures are replaced by the new ones. The Unshipped files are back to just#nullable enable.[0.8.0]under a fresh empty[Unreleased]. All six breaking bullets carryMigration:.docs/migrating-to-0.8.mdexists and has a heading for each breaking change, including the Lexicon methods, repoRev/spaceRev, spaceType, HTTP signatures, credential lifetime and revocation.docs/getting-started.mdnow links the 0.8 guide.Two small nits that don't block the merge:
src/tag/v0.8.0/..., which only resolves once the maintainer pushes the tag. That is expected given the tag-after-merge flow, but the release body links would 404 if the tag name differs.I did not rebuild or rerun the tests; the PR description reports a clean Release build and 5146 passing unit tests.
🧠 claude-sonnet-5-5 · ⏱ 0m 13s · 3 turns · tokens: 93.9k in / 1.1k out (+117.8k cache-read)
📜 Full session transcript
✅ Verdict: approve — no blocking issues found.
Release prep for 0.8.0 verified in place; good to merge.
Directory.Build.propsis at<Version>0.8.0</Version>, and.forgejo/workflows/release.ymlbuilds/packs the tag-extracted version — the "maintainer tags after merge" flow matches how the workflow actually works (tagv0.8.0→ version0.8.0, and the release body is taken from the## [0.8.0]section ofCHANGELOG.md, which is exactly the new section).## [Unreleased]sits above## [0.8.0] - 2026-10-05; the 0.7.0 section and everything older are untouched. The 0.8.0 section opens with the intro and absolute tag link (src/tag/v0.8.0/docs/migrating-to-0.8.md), same pattern as the 0.7.0 release's link. All 6 Breaking bullets carry aMigration:sentence, Lexicons-then-Spaces ordering is as described, and every original issue ref survives — I grepped for each of #193, #194, #195, #196, #197, #200, #204, #207, #210, #211, #212, #213, #214 and #219 and all are present. No leftover link-reference definitions at the file's foot to update.PublicAPI.Unshipped.txtfiles are back to a lone#nullable enable; the folded additions are present in eachPublicAPI.Shipped.txtin order (spot-checkedSpaceCredentialRevoker,SpaceWriteSequence,HostsAccountAsync,NotifyCredentialRevoked,NotifyWriteInBackground,SpaceHttpSignature,ConfirmationKeyId,HandleCacheTtl,MaxCredentialLifetime), and the removed DPoP surface (DPoPProof*,ProofLifetime,PublicBaseUrl,ConfirmationThumbprint,dpopThumbprint) is absent from Shipped. Shipped-only additions are visible in the diff, so nothing was silently dropped in the truncated region.docs/migrating-to-0.8.mdexists on main and covers each Breaking bullet — the lexicon parameter-order table (timeline/list-feedsince, quotessort,recommendedLabels,LiveStats),spaceTyperename with before/after snippets, HTTP message signatures replacing DPoP, the ten-minute credential lifetime,repoRev/spaceRevsequencing with the EF/migration notes, andHostsAccountAsyncfor revocation.docs/getting-started.mdnow links it, matching README/index. Falling back to release build/tests as the PR attests them — nothing here alters runtime code.⏱ 1m 52s · 21 steps · $0.0510 · tokens: 131.6k in / 1.5k out (+989.7k cache-read) · Go: 5h 4% · wk 2% · mo 92%
📜 Full session transcript