Repository navigation
Conversation
EhabY
force-pushed
the
ci/vsc-20-pnpm-setup
branch
from
October 11, 2026 11:28
55651f1 to
1894fd4
Compare
EhabY
force-pushed
the
ci/vsc-20-pnpm-setup
branch
4 times, most recently
from
October 11, 2026 11:47
e4e59e2 to
7c38a2d
Compare
Replace pnpm/action-setup, actions/setup-node, and the install step with a single pnpm/setup step. It installs Node 22 through `pnpm runtime set`, runs a frozen install, and keeps the platform fallback for the store cache. Only the default branch saves the store. Add `pnpm clean` to delete installs, build output, and caches from an explicit list, and have `pnpm package` clean and reinstall first. Webviews build into `dist/webviews/<name>`, so a webview from another branch otherwise ships in the package. Closes #1119
The extension imports five files from coder/coder, but the git dependency downloads the whole 125 MB repository on every cold install. Add `pnpm sync:coder` to download the files into `vendor/coder` at a pinned release commit, and link the `coder` dependency to that folder so imports stay `coder/site/src/...`. The Lint job runs the sync and fails on any diff, so hand edits or a bumped commit without a resync can't merge. With no git dependencies left, drop the HTTPS rewrite from CI setup.
EhabY
force-pushed
the
ci/vsc-20-pnpm-setup
branch
from
October 11, 2026 12:00
7c38a2d to
cc75028
Compare
This branch has not been 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.
Closes #1119
Migrate to
pnpm/setupReplaces
pnpm/action-setup,actions/setup-node, and thepnpm install --frozen-lockfilestep in.github/actions/setup/action.ymlwith onepnpm/setupv3.1.1 step, pinned by SHA.pnpm/setuprestores with the keys[<prefix><lockfile hash>-, <prefix>], where the prefix ispnpm-cache-<os>-<arch>-<runtime hash>-. A dependency bump still falls back to the last store for the platform (seesrc/cache-restore/keys.ts).save-cachelimits saves tomain, matching the Chromium cache. PRs and release tags restore frommainwithout writing their own entries.require-lockfile: trueruns the install with--frozen-lockfileand fails if no lockfile exists.runtime: node@22keeps CI on Node 22.docs/TOOLING.mdnow lists this file among those to update when the minimum moves.pnpm runtime setinstalls awin32-arm64Node 22 build in thewindows-11-armjob.pnpm cleandeletes installs, build output, and caches from an explicit list inscripts/clean.mjs. Aprepackagescript cleans and reinstalls beforepnpm package. Webviews build intodist/webviews/<name>, so a webview left over from another branch otherwise ships in the package.publish-extension.yamlstill usesactions/setup-nodedirectly, since it doesn't go through the shared setup action.Vendor the Coder API client
The extension imports five files from
coder/coder(api.ts,errors.ts,typesGenerated.ts,OneWayWebSocket.ts, anddelay.ts), about 470 KB. The git dependency downloaded the whole repository, a 125 MB archive, on every cold install. On the Windows ARM64 job, that dominated the 2m14s install.pnpm sync:coderdownloads the five files intovendor/coder/siteat the release commit pinned invendor/coder/sync.mjs(v2.37.1). The committed files match the previous dependency byte for byte.pnpm sync:coderand fails on any diff, so hand edits or a bumped commit without a resync can't merge.coderis nowlink:vendor/coder, so everycoder/site/src/...import resolves unchanged..gitattributesmarks them as generated.import-x/external-module-foldersincludesvendor, soimport-x/orderkeepscoderin the external group.pnpm's
&path:/siteoption doesn't help here: it still downloads the full archive and installs the 75 dependencies insite/package.json.