Repository navigation
fix: ship a self-contained Chocolatey package (4.3.3) - #1079
Open
leoafarias wants to merge 3 commits into
Open
leoafarias wants to merge 3 commits into
leoafarias wants to merge 3 commits into
Conversation
cli_pkg's Chocolatey package compiles fvm.exe on the user's machine and pins `dart-sdk` to the exact build version, which blocks Dart SDK upgrades through Chocolatey (#1058). Package the prebuilt fvm.exe from the Windows x64 release archive instead, with no `dart-sdk` dependency: - release tool: stage tools/fvm.exe, LICENSE.txt, and a generated VERIFICATION.txt (release URL + SHA-256, required by the community feed for embedded binaries); add fvm-chocolatey-pack/-deploy tasks - release.yml / deploy_windows.yml: deploy with fvm-chocolatey-deploy - test.yml: build, install, and uninstall the nupkg on Windows in CI - fvm.nuspec: rewrite as a minimal spec with btwld URLs Ported from the fix/chocolatey-dart-sdk-constraint branch, without its unrelated SDK bump and conceptadev URL changes. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_011SmK6LGRTwTTAD1GQuMw4q
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
Codex Review SummaryThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
- Bump to 4.3.3 with a changelog entry for the Chocolatey fix. - Remove stageChocolateyPackage's unused outputDirectory parameter. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_011SmK6LGRTwTTAD1GQuMw4q
This branch was successfully deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Fixes #1058. Chocolatey users can't upgrade
dart-sdkbecause the FVM package pins it to the exact version it was built with.Root cause: cli_pkg's Chocolatey package compiles
fvm.exeon the user's machine at install time, so it declaresdart-sdkas an exact-version dependency. Its source says why: "we need the exact same Dart version as we built with, since we ship a snapshot which isn't cross-version compatible."Fix: package the prebuilt
fvm.exefrom the Windows x64 release archive instead. The package has nodart-sdkdependency, and nothing is compiled on install.fvm-chocolatey-pack/fvm-chocolatey-deploytasks stagetools/fvm.exe,tools/LICENSE.txt, and a generatedtools/VERIFICATION.txt(release download URL + SHA-256), then runchoco pack/choco push. The community feed requiresVERIFICATION.txtfor packages with embedded binaries. The API key is passed withProcess.start, so it never appears in the release log.release.ymlanddeploy_windows.ymldeploy withfvm-chocolatey-deploy. They already runpkg-github-windowsfirst in the same job, which leaves the zip inbuild/, and the job runs after the GitHub release exists, so the URL inVERIFICATION.txtresolves.Chocolatey packagejob onwindows-latestbuilds the zip and nupkg, installs it withchoco, checksfvm --version, that there's nodart-sdkdependency, and thatLICENSE.txt/VERIFICATION.txtare present, then uninstalls and checks thefvmshim is gone.fvm.nuspec: rewritten as a minimal spec withbtwldURLs.Ported from
fix/chocolatey-dart-sdk-constraint, without its unrelated parts: the Dart 3.13 / prepare-action default bump, the minimum-SDK CI jobs, and the outdatedconceptadevURL rewrite.Validation
dart analyze --fatal-infosis clean, and all 10 tests pass, including a newVERIFICATION.txttest.fvm.exeis byte-identical to the published one (d177f5af…),VERIFICATION.txthas the matching hash and a working download URL, and the package contains exactlyfvm.nuspec,tools/fvm.exe,tools/LICENSE.txt, andtools/VERIFICATION.txt.choco pack/install/uninstallon this PR.Not covered
fvmshim with the new one, but CI doesn't test this path because it would need the community feed. Worth one manualchoco upgrade fvmafter the first release.🤖 Generated with Claude Code
https://claude.ai/code/session_011SmK6LGRTwTTAD1GQuMw4q
Generated by Claude Code