Skip to content

chore: move the package-validation baseline to 1.0.1 - #35

Merged
StuartMeeks merged 1 commit into
mainfrom
chore/baseline-1.0.1
Aug 22, 2026
Merged

chore: move the package-validation baseline to 1.0.1#35
StuartMeeks merged 1 commit into
mainfrom
chore/baseline-1.0.1

Conversation

@StuartMeeks

Copy link
Copy Markdown
Owner

1.0.1 is published, so it is now the last shipped release and the correct surface for EnablePackageValidation to compare against.

Why it matters

The baseline was 0.3.1, which was correct while 1.0.1 was unpublished. It no longer is — leaving it there means an accidental break in the public surface would be measured against a pre-1.0 release, where breaking changes were expected. Against 1.0.1 a break fails the build, which is what makes "a break requires 2.0.0" an enforced rule rather than a judgement call.

There is no 1.0.0 to baseline against: it was merged but never tagged, so it was never published.

Ordering constraint, hit for real

PackageValidationBaselineVersion makes the build restore that package, so it can only point at a version the feed can actually serve. This failed twice before it worked, both verified rather than assumed:

  1. Immediately after the tag run, nuget.org had not finished indexing:
    error NU1102: Unable to find package NextIteration.SpectreConsole.SelfUpdate with version (= 1.0.1)
                  - Found 13 version(s) in nuget.org [ Nearest version: 0.3.1 ]
    
  2. After indexing completed, it still failed from a stale local NuGet http-cache, until that was cleared.

Committing this blind would have passed on a warm cache and failed CI on a clean runner.

Verification

Release build: 0 warnings, 0 errors, with package validation resolving and comparing against the published 1.0.1. dotnet test --configuration Release: 410 passed, 0 failed (205 × net8.0/net10.0).

No version bump and no source change — <Version> stays 1.0.1; this only moves what the build validates against.

🤖 Generated with Claude Code

1.0.1 is published, so it is now the last shipped release and the correct
surface to validate against. From here an accidental public-API break fails
the build against the first stable release rather than against 0.3.1, which
makes a break a 2.0.0 rather than a judgement call.

There is no 1.0.0 to baseline against: it was merged but never tagged, so it
was never published.

This could not land until nuget.org finished indexing. The baseline makes the
build RESTORE that package, so pointing it at a version the feed cannot serve
fails with NU1102 — verified: the first attempt failed with
"Nearest version: 0.3.1" before indexing completed, and again afterwards from
a stale local http-cache until it was cleared.

Release build: 0 warnings, validation green against the published 1.0.1.
410 tests (205 × net8.0/net10.0) pass.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@StuartMeeks
StuartMeeks merged commit 7e8f207 into main Aug 22, 2026
9 checks passed
@StuartMeeks
StuartMeeks deleted the chore/baseline-1.0.1 branch August 22, 2026 02:17
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