From 90a6d6c2eabf0b601213452783561aa558195184 Mon Sep 17 00:00:00 2001 From: ansh808s Date: Mon, 1 Sep 2025 02:38:10 +0530 Subject: [PATCH] feat: add vscode extension packaging blog --- .../header.png | Bin 0 -> 62684 bytes .../index.md | 103 ++++++++++++++++++ 2 files changed, 103 insertions(+) create mode 100644 pages/blog/packaging-a-vs-code-extension-using-pnpm-and-vsce/header.png create mode 100644 pages/blog/packaging-a-vs-code-extension-using-pnpm-and-vsce/index.md diff --git a/pages/blog/packaging-a-vs-code-extension-using-pnpm-and-vsce/header.png b/pages/blog/packaging-a-vs-code-extension-using-pnpm-and-vsce/header.png new file mode 100644 index 0000000000000000000000000000000000000000..b6fe431fd0e5307661f4afd4070ea6998be9412a GIT binary patch literal 62684 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 literal 0 HcmV?d00001 diff --git a/pages/blog/packaging-a-vs-code-extension-using-pnpm-and-vsce/index.md b/pages/blog/packaging-a-vs-code-extension-using-pnpm-and-vsce/index.md new file mode 100644 index 00000000..9933b6d4 --- /dev/null +++ b/pages/blog/packaging-a-vs-code-extension-using-pnpm-and-vsce/index.md @@ -0,0 +1,103 @@ +--- +title: "Packaging a VS Code Extension Using pnpm and VSCE" +slug: "packaging-a-vs-code-extension-using-pnpm-and-vsce" +date: 2025-08-31 +authors: ["Ansh Arora"] +tags: ["Makim", "Automation", "VSCode", "pnpm", "esbuild"] +categories: ["Packaging", "Node", "Extensions"] +description: | + A step-by-step guide to packaging and publishing VS Code extensions with pnpm and vsce, + covering how to avoid dependency resolution issues. +thumbnail: "/header.png" +template: "blog-post.html" +--- + +# Packaging a VS Code Extension Using pnpm and VSCE + +VS Code’s `vsce` tool doesn't play nicely with `pnpm` out of the box; here’s a +proven workaround using bundling and the `--no-dependencies` flag to get things +running smoothly. + +--- + +## Why pnpm + vsce can be problematic + +`vsce` relies on `npm list --production --parseable --depth=99999`, which fails +under pnpm's symlink-based dependency management, often throwing +`npm ERR! missing:` errors. +([github.com](https://github.com/microsoft/vscode-vsce/issues/421), +[daydreamer-riri.me](https://daydreamer-riri.me/posts/compatibility-issues-between-vsce-and-pnpm/)) + +--- + +## Solution Overview + +1. **Bundle your extension** using a bundler such as **esbuild** or **Webpack** +2. **Use `--no-dependencies`** when running `vsce package` and `vsce publish` + +Because all dependencies are bundled, `vsce` no longer needs to resolve them +from `node_modules`. + +--- + +## Step-by-Step Setup + +### 1. Install Tools + +```bash +pnpm add -D @vscode/vsce esbuild +``` + +@vscode/vsce` is the CLI for packaging and publishing VSCode extensions. Recent +versions (e.g., v3.6.0) support npm (≥6) and Yarn (1.x), but don't officially +support pnpm. + +### 2\. Configure `package.json` + +Scripts Add build and packaging commands: jsonc Copy code + +```json +{ + "scripts": { + "vscode:prepublish": "pnpm run bundle", + "bundle": "esbuild ./src/extension.ts --bundle --outfile=out/main.js --external:vscode --format=cjs --platform=node --minify", + "package": "pnpm vsce package --no-dependencies", + "publish": "pnpm vsce publish --no-dependencies" + } +} +``` + +- `vscode:prepublish`: runs before packaging; bundles source using esbuild +- `bundle`: compiles `extension.ts` into `out/main.js` and excludes the `vscode` + module +- `package` / `publish`: calls VSCE via pnpm, skipping dependency resolution + +### 3\. Why It Works + +By bundling dependencies manually, `vsce` doesn’t need to resolve them during +packaging or publishing. The `--no-dependencies` option avoids pnpm’s symlink +issues entirely. + +## Sample `package.json` Snippet + +```json +{ + "devDependencies": { + "@vscode/vsce": "^3.6.0", + "esbuild": "^0.XX.X" + }, + "scripts": { + "vscode:prepublish": "pnpm run bundle", + "bundle": "esbuild ./src/extension.ts --bundle --outfile=out/main.js --external:vscode --format=cjs --platform=node --minify", + "package": "pnpm vsce package --no-dependencies", + "publish": "pnpm vsce publish --no-dependencies" + } +} +``` + +### **Wrap-Up** + +Using **pnpm** with VS Code extensions involves a few extra steps because `vsce` +doesn’t support pnpm’s dependency structure directly. The ideal workflow: _ +**Bundle your extension first**, then _ **Use `--no-dependencies`** to package +and publish safely.