Skip to content

chore(deps): replace deprecated vsce with @vscode/vsce - #22

Merged
julien-deramond merged 1 commit into
mainfrom
maintenance-updates
Oct 11, 2026
Merged

julien-deramond merged 1 commit into
mainfrom
maintenance-updates

Conversation

@julien-deramond

Copy link
Copy Markdown
Member

Moves the extension packaging tool from vsce, which was renamed and is deprecated, to @vscode/vsce 4.0.0, the same CLI under its current name. The vsce command stays the same, so npm run package and the publish workflow need no change. @vscode/vsce no longer accepts both a .vscodeignore and a files field in package.json, so .vscodeignore is removed and the files list (already the npm package's contents) now decides what goes into the .vsix too.

What was done

  • package.json: vsce ^2.15.0 → @vscode/vsce ^4.0.0 (latest stable, out since 2026-09-14, so past the repo's 7-day Dependabot cooldown). It needs Node 22 or later; CI and the publish workflow already run Node 22.
  • package-lock.json: regenerated by npm uninstall vsce and npm install -D @vscode/vsce@^4.0.0. Every changed package is in the packaging tool's own tree (or shared with nodemon, which still resolves within its ranges); all from registry.npmjs.org.
  • .vscodeignore removed. With 4.0.0 vsce package stops with "Both a .vscodeignore file and a "files" property in package.json were found". Keeping .vscodeignore would mean dropping files, which is the npm package's API, so files stays. The .vsix now holds package.json, index.js, index.d.ts, themes/*.json, icon.png, README.md and LICENSE.md (12 entries, 186 KB). Before, it also carried src/, tsconfig.json, DISPLAY-P3.md and color-comparison.html (20 entries, 205 KB), none of which the extension reads. The README's images are already absolute URLs, so the Marketplace page renders the same.
  • Checks, on Node 22.22 (npm 10, as in CI) and Node 23: npm ci, npx tsc --noEmit, npm test and npm run package all pass; the generated themes/*.json are unchanged.
  • Not verified: vsce publish itself (needs the Marketplace token). --pat is still a documented option of vsce publish in 4.0.0, and so is the VSCE_PAT variable.

How to review

  • Try it: npm ci && npm run build && npm run package, then unzip -l bootstrap-vscode-theme-0.0.10.vsix: 12 entries, with themes/ and icon.png.
  • Check by hand: the next release is the first publish with the new tool; check that the "Publish to VS Marketplace" run goes green and the Marketplace page looks as before.

🤖 Generated with Claude Code

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@julien-deramond julien-deramond added the dependencies Pull requests that update a dependency file label Oct 10, 2026
@julien-deramond
julien-deramond merged commit 4e855f4 into main Oct 11, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant