Repository navigation
Give the node and Flutter packages the version they are published at - #31
Merged
Merged
Conversation
…d at Both carried a number from several releases back: packages/node/package.json said 1.1.14 and packages/flutter/pubspec.yaml 1.2.3, while the extension was at 1.4.1. The release job writes the real version into the working copy before publishing but never committed it, so the repository went on showing whatever was last committed. For the node package that was not only confusing. Its optionalDependencies pinned the seven platform packages to 1.1.14 as well, so an npm install in packages/node fetched binaries from long before the current source: no memory limit, no interrupt handler, none of the stack work. The published package was always right, since the release job rewrites all eight versions with jq before npm publish; only the repository was wrong. Both files now say 1.4.2, which is what is published, and the release job commits them from now on, in the same [auto-update] commit as the Package.swift checksum. The Flutter pubspec is rewritten there too, since flutter-package.yml only rewrites it after the tag; its sed stays as the safety net it is. The commit message keeps [auto-update], which is what keeps the build job from running again for it. Checked that all seven platform packages exist at 1.4.2 on the registry, so the pinned version resolves. Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
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.
packages/node/package.jsonsaid 1.1.14 andpackages/flutter/pubspec.yamlsaid 1.2.3, while the extension was at 1.4.1. The release job writes the real version into the working copy before publishing, but never committed it, so the repository went on showing whatever was last committed. The published packages were always right; only the repository was wrong.Why this is more than cosmetic
The node package's
optionalDependenciespinned all seven platform packages to 1.1.14 too:So an
npm installinpackages/nodefetched binaries from long before the current source — no memory limit, no interrupt handler, none of the stack work — while the TypeScript next to them was from today. Anyone running the package's own tests locally was testing against those.The change
Both files now say 1.4.2, which is what is published, and the release job commits them from now on, in the same
[auto-update]commit as thePackage.swiftchecksum:package.jsonis already rewritten by the publish step above it, so it only needed adding to the commit. The Flutter pubspec is rewritten there too, becauseflutter-package.ymlonly rewrites it after the tag; its ownsedbecomes a no-op and stays as the safety net it is.The commit message keeps
[auto-update], which is what thebuildjob'siflooks for to avoid running again for that commit.Checked
All seven platform packages exist at 1.4.2 on the registry, so the pinned version resolves rather than failing an install:
The workflow parses, the edited step keeps its
ifand its[auto-update]message, andpackage.jsonis still valid JSON with one distinct version across all eight entries.Note this cannot be fully exercised until the next release, since the committing part only runs in the
releasejob. What it does is add three paths to agit addthat already worked.🤖 Generated with Claude Code