Skip to content

Bump Proc to 0.14.0, fix release-notes CLI invocation, harden tool restore - #44

Merged
Mpdreamz merged 2 commits into
masterfrom
fix/proc-version-and-release-notes-cli
Sep 3, 2026
Merged

Mpdreamz merged 2 commits into
masterfrom
fix/proc-version-and-release-notes-cli

Conversation

@Mpdreamz

@Mpdreamz Mpdreamz commented Sep 2, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Bumps the Proc build-script dependency from 0.9.1 to 0.14.0 (latest), matching the semantics (no shell expansion, throws on failure) already assumed elsewhere.
  • release-notes was ported to a new Argh-based CLI in 0.11.0 (bare invocation dropped, --label now takes a single key=value token). This repo's build script still called the old shape. Bumped the pin to 0.11.0 and fixed generatereleasenotes/createreleaseongithub to match - would have broken the next tagged release.
  • dotnet tool restore now retries once on failure: dotnet/sdk#53783 causes cold-cache restores of 2+ RID-specific tool packages (all of ours are, now) to misattribute one package's DotnetToolSettings.xml to another. A retry always succeeds since the cache is warm afterward.

Test plan

  • dotnet build build/scripts/scripts.fsproj -c Release succeeds.
  • ./build.sh generatereleasenotes -s true runs against the real release-notes 0.11.0 package and produces correct output.

Made with Cursor

Mpdreamz and others added 2 commits September 2, 2026 21:39
…store

Proc was pinned at 0.9.1; the build scripts assumed 0.14+ semantics elsewhere
(no shell expansion, throws on failure) so this just catches the pin up.

release-notes was recently ported to a new Argh-based CLI (0.11.0): bare
invocation is gone (needs an explicit `generate`/`create-release` command
first) and `--label` takes a single `key=value` token instead of two. The
build script still called the old CLI shape, which would have broken the
next tagged release. Bumped the pinned version and fixed both call sites to
match, verified against the real 0.11.0 package.

Also retries `dotnet tool restore` once on failure: dotnet/sdk#53783 causes
cold-cache restores of 2+ RID-specific tool packages (all of ours now are)
to misattribute one package's DotnetToolSettings.xml to another. A retry
always succeeds since the resolver cache is warm afterward.

Co-authored-by: Cursor <cursoragent@cursor.com>
The plain "assembly-differ" package id is a DotnetToolSettings.xml v2 shim
that maps RIDs to per-RID sub-packages (see generatePackages) - it ships no
managed assembly of its own, so diffing against it finds 0 assemblies. This
would have broken "Inspect public API changes" on the next release, the
same way it just did in release-notes:
https://github.com/nullean/release-notes/actions/runs/33674817669/job/100397363448

The portable, signed managed build lives in "assembly-differ.any" instead;
point previous-nuget at that.

Co-authored-by: Cursor <cursoragent@cursor.com>
@Mpdreamz

Mpdreamz commented Sep 3, 2026

Copy link
Copy Markdown
Contributor Author

Also fixed generateApiChanges: it was diffing against the plain assembly-differ package id, which is just a DotnetToolSettings.xml v2 shim with no managed assembly - found while chasing the same failure in release-notes's own PR CI (https://github.com/nullean/release-notes/actions/runs/33674817669/job/100397363448). Now points at assembly-differ.any, which has the real signed build.

@Mpdreamz
Mpdreamz merged commit ec7ac49 into master Sep 3, 2026
2 checks passed
@Mpdreamz
Mpdreamz deleted the fix/proc-version-and-release-notes-cli branch September 3, 2026 09:09
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