Skip to content

Release 0.12.0.0: reclaim-nars, and a narinfo refused without its NAR - #86

Merged
aoinoikaz merged 1 commit into
mainfrom
release/0.12.0.0
Nov 1, 2026
Merged

aoinoikaz merged 1 commit into
mainfrom
release/0.12.0.0

Conversation

@aoinoikaz

Copy link
Copy Markdown
Contributor

Cuts 0.12.0.0 from main: the two changelog.d/ fragments are assembled under a dated version heading and removed, and nova-cache.cabal moves to 0.12.0.0. The publish workflow refuses to upload unless the top section of CHANGELOG.md is that version, dated.

Why a major version

The exports only grow: NovaCache.Reclaim is new, and NovaCache.Server and NovaCache.Store gain names without losing any. But cacheApp now answers 400 where it answered 200, for a narinfo with no stored NAR, with no FileSize or FileHash, or with a URL not under nar/. The PVP's numbered rules speak to types, and its FAQ treats compatibility as semantic, so this is a major bump. nova-nix does not import NovaCache.Server; its < 0.12 bound rises in its own repository.

Changelog corrections

Each fragment was written when its PR merged. Checked against upstream at 2.24.9 and against warp's changelog:

  • "A correct client is never refused" and "the next push sends both again" held only for nova-nix. Upstream's addToStoreCommon skips a NAR whose file exists (if (repair || !fileExists(narInfo->url))), so a wrong file under that name goes on refusing the narinfo. The entry now says so.
  • The refusal of a URL not under nar/ was implied. It is now stated, with upstream's reader accepting one and its BinaryCacheStore never writing one.
  • The Warp sentence is scoped to before 3.4.17, which fixed the truncated chunked body.

Checks

  • CHANGELOG.md, the version and the fragments are all this PR changes. CI runs the code as merged at 3758ca1, which also passes on main.
  • ASCII: no non-ASCII bytes in CHANGELOG.md or nova-cache.cabal.

Dates the changelog section, removes its fragments and bumps the version.
Major bump: the exports only grow, but cacheApp now refuses a narinfo it used
to accept (no stored NAR, no FileHash or FileSize, or a URL not under nar/).
@aoinoikaz
aoinoikaz merged commit 4a88a27 into main Nov 1, 2026
12 checks passed
@aoinoikaz
aoinoikaz deleted the release/0.12.0.0 branch November 1, 2026 14:13
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