Commit Graph
307 Commits
Author SHA1 Message Date
Dirk BäumerandGitHub 7e4e91cab4 Adapt to TypeScript 7 (#325757)
* Adapt TypeScript 7

* Ensure that we always call TS7 from spawnTsgo

* Fix package lock file

* tsc - tsc6

* More tsc -> tsc6

* More TSGO conversion

* More moves from tsgo -> tsc

* Fix tsgo resolving in extension folder

* Call TS7 compiler directly

* Update package-lock.json

* Remove tsc:version again
2026-07-14 12:34:04 +02:00
dileepyavanandGitHub ca425775e4 Revert "Optimize shared built-in extension dependencies (#318045)" (#319774)
This reverts commit 26e580781a.
2026-06-03 17:21:27 +00:00
Dmitriy VasyuraandGitHub 26e580781a Optimize shared built-in extension dependencies (#318045) 2026-06-03 08:49:40 +00:00
RoboandGitHub 8748be1f1a feat: update to Electron v42 (#316661)
* feat: update to Electron v42

* chore: drop support for arm 32-bit server

* chore: update types/node to v24.x

* chore: temporarily lock the target version for build/

* chore: update v8-source-location.patch

* chore: fix clippy

* chore: cleanup armhf server ci config

* fix: broken lock file

* fix: c++ version requirement for sysroot builds

* fix: msvc compilation of native modules

* fix: handle rejections for fire-and-forget loadurl

* fix: windows build

* ci: fix teardown of daemon process on windows

```
2026-05-15T20:55:09.7717127Z Assertion failed: !(handle->flags & UV_HANDLE_CLOSING), file src\win\async.c, line 76
```

* chore: update deb and rpm dependencies

* chore: update version info

* spec: improve reliablity of offscreencanvas tests

* spec: retry EPERM failures on teardown

* chore: update x86_64 rpm deps

* ci: exclude server binskim for armhf

* temp: bump distro

* test: ignore deprecation warnings treated as errors

* chore: update lockfile

* fix: externalize electron from auth extension bundles

 Error: Cannot find module 'c:\Users\cloudtest\AppData\Local\Temp\vscode-sanityQvCaze\vscode-server-win32-x64-web\extensions\github-authentication\dist\install.js'
     at Module._resolveFilename (node:internal/modules/cjs/loader:1476:15)
     at wrapResolveFilename (node:internal/modules/cjs/loader:1049:27)
     at defaultResolveImplForCJSLoading (node:internal/modules/cjs/loader:1073:10)
     at resolveForCJSWithHooks (node:internal/modules/cjs/loader:1094:12)
     at Module._load (node:internal/modules/cjs/loader:1262:25)
     at wrapModuleLoad (node:internal/modules/cjs/loader:255:19)
     at Module.executeUserEntryPoint [as runMain] (node:internal/modules/run_main:154:5)
     at node:internal/main/run_main_module:33:47 {
   code: 'MODULE_NOT_FOUND',
   requireStack: []
 }

 Node.js v24.15.0

* test: make wsl sanity tests reliable

* chore: bump electron@42.1.0

* temp: bump distro

* chore: bump electron@42.2.0

* chore: bump distro

* chore: update debian dependencies

* Revert "test: make wsl sanity tests reliable"

This reverts commit b3f2b63e83.

* test: do not fail for deprecation warnings

* chore: patch node24 server binary for wsl1

* chore: address review feedback

* chore: revert global navigation error handler in browserview

* chore: bump distro
2026-05-27 14:57:41 +02:00
vritant24 21478da75b fix(chat): add JSON schema type and validation for chatLanguageModels configuration 2026-05-21 16:01:24 -07:00
Raymond ZhaoandGitHub 628e477608 Revert "chore: bump octokit and engine versions" (#317402)
Revert "chore: bump octokit and engine versions (#317359)"

This reverts commit 6fe5e43b79.
2026-05-19 22:57:05 +00:00
Raymond ZhaoandGitHub 6fe5e43b79 chore: bump octokit and engine versions (#317359)
* chore: bump octokit and engine versions

* Add missing lockfile change
2026-05-19 13:56:35 -07:00
Matt Bierner cc10bc708e Enable incremental builds to speed up updates after first build 2026-02-19 14:14:37 -08:00
Matt BiernerandGitHub 631230f71b Merge pull request #295029 from microsoft/dev/mjbvz/esbuild-gunt
Adopt esbuild instead of webpack for a few more extensions
2026-02-12 16:52:22 -08:00
Raymond ZhaoandGitHub e987c5242e chore: bump extension versions (#295040) 2026-02-13 04:15:03 +05:00
Matt Bierner 2e81391ad3 Adopt esbuild instead of webpack for a few more extensions
Adopting for configuration-editing, emmet, grunt, jake, and npm
2026-02-12 12:31:13 -08:00
Matt Bierner ee01088b74 Update roots 2026-01-30 13:12:58 -08:00
Matt Bierner 0d9a2ef2b0 Add explicit rootDirs 2026-01-30 11:07:53 -08:00
Matt Bierner 98b069c041 Work towards getting isolated built-in extension compiles
For #271167

This makes it so our built-in extensions can mostly be built using `tsc` on the command line. Previously the extensions were picking up a lot of typing info from the root `node_modules` that meant they weren't truly independent
2025-10-13 11:03:20 -07:00
Matt Bierner ed71020bfc Convert extension webpack scripts to modules 2025-08-07 17:20:22 -07:00
Ladislau SzomoruandGitHub 4d7c56ee82 Engineering - Add GitHub action for pull requests (#254056)
* Test - handle running tests as part of a GitHub action

* Add GitHub action files
2025-07-04 08:21:56 +00:00
Christof Marti 969d35e8a5 Refer to MCP schema for "mcp" (microsoft/vscode-remote-release#11049) 2025-06-30 15:28:34 +02:00
Johannes RiekenandGitHub 2e59a77991 Add support for tool sets (#249448)
* observale map/set

* adds tool sets, let mcp contribute tool set, update commands

* add `languageModelToolSets` contribution point that allows extensions to define set of tools

* only homogenous tool sets hide the tools they contain (that is set and all its tools are from the same source)

* make sure checking/unchecking buckets works

* make it more clear that the action is about tool configuration (not selecting/attaching)

* simplify `IToolSet#tools`

* support `*.toolset.json` files

* one bucket for all MCP servers

* use mcp icon

* use `.toolsets.json` suffix

* [tools config-pick] keep parents, peek sort order

* * add "Configure Tool Sets" actions
* make it `toolsets.jsonc` and register schema etc pp
* fix some tools picker issues

* add tool sets validation

* * tools completions
* Add ToolDataSource.Internal constant

* add missing return

* make tool set a class

* allow a tool set to contain other tool sets

* use dynamic schema for `toolsets.jsonc` language features

* fix tests
2025-05-21 06:54:14 -07:00
12326f9906 chore: update to Electron 35 (#245423)
* chore: bump electron@35.0.1

* chore: update types/node@22.x

* chore: update web types for node v22.x

* chore: bump electron@35.1.2

* chore: update node.js build

* chore: update app.dock usage

Refs https://github.com/electron/electron/commit/71f3ff6bf289745c74d48cf54c254120a70804b4

* chore: bump electron@35.1.4

* chore: bump electron@35.1.5

* ci: bump sysroot to glibc 2.28 and gcc 10.5.0

* ci: enable timeout for smoketests

* chore: bump min glibcxx to 3.4.26 for server

* Revert "ci: enable timeout for smoketests"

This reverts commit afb637e85d.

* chore: update debian dependencies

* fix: workaround npm.ps1 argument parsing with powershell

* chore: update rpm dependencies

* test: partially revert changes from 242535

* test: remove redudant keybinding dispatch for selectTab

* test: fix test failure from running configured tasks

* test: focus settings editor for preferences.test.ts

* node - adopt compile cache (#246835)

* node - adopt compile cache

* adopt for utility process

* tweaks

* log state of compilation cache

* Revert "log state of compilation cache"

This reverts commit f3840387a583013834762e2c44f6e8424929297f.

* Revert "node - adopt compile cache (#246835)"

This reverts commit 673a00cab66c9bac87f3cd27b80efa41c80150f1.

* chore: update builds

* chore: bump electron@35.2.0

* chore: bump electron@35.2.1

* chore: bump electron@35.2.2

---------

Co-authored-by: Benjamin Pasero <benjamin.pasero@microsoft.com>
2025-05-09 19:03:36 +09:00
Rob LourensandGitHub 920fbe590b Add fileDirnameBasename variable to launch.json completions (#245752)
Fix #245626
2025-04-05 07:10:43 +02:00
Connor Peet 81775e7ade mcp: make discovery good
- There's an mcpDiscoveryRegistry that allows components to register in
  how they discover MCP servers.
- Config discovery is one of these. Figured out all the bits for a
  standalone file config shebang. Duplication there that could be
  cleaned up but it works.
- The others are remote and local filesystem discovery. I ended up
  making another message channel for the main process/remote server to
  get a couple environment variables we need since I didn't see anything
  generic for this already(?)

![](https://memes.peet.io/img/25-03-29927218-daa9-4206-8cef-29992850d9ba.mp4)
2025-03-10 23:06:29 -07:00
Megan RoggeandGitHub 73b48e98f5 provide activeEditorState setting completion (#242216)
fixes #241880
2025-02-27 19:27:36 +01:00
João MorenoandGitHub 61be0fdc47 bump deps (#241066) 2025-02-18 11:04:16 +01:00
Ladislau SzomoruandGitHub 8e1f20cbea Workspace trust - remove unused code (#235676) 2024-12-09 21:54:30 +01:00
RoboandGitHub 9494a89080 chore: add npmrc to extensions folder (#230214) 2024-10-01 12:43:01 +02:00
hjandGitHub 88d7b97c93 chore: rm unreached ignore items when build extensions. (#227906)
chore: rm unreached ignore items when compiling extensions.
2024-09-09 10:32:51 +00:00
RoboandGitHub b5a6aa14a8 feat: switch to npm as default package manager (#226927)
* feat: move from yarn to npm

* chore: skip yarn.lock files

* fix: playwright download

* chore: fix compile and hygiene

* chore: bump vsce@2.17.0

Refs https://github.com/microsoft/vscode-vsce/commit/8b49e9dfdf909ad3af2b9ec9c825f5b501f6d75e

* test: update results for bat and sh colorizer tests

* fix: add missing lock files for windows

* fix: switch to legacy-peer-deps

* chore: update markdown-it@14.1.0

Refs https://github.com/markdown-it/markdown-it/commit/737c95a12976357df99652e4b51d831cac4a75aa

esbuild step in extensions-ci-pr was previously using markdown-it
from root which had userland punycode and was able to compile successfully.

* ci: increase pr timeout for windows integration tests

* chore: fix product build

* build: ignore extension dev dependency for rcedit

* build: fix working directory inside container

* build: fix dependency generation

* npm: update dependencies

* ci: use global npmrc

* ci: update cache

* ci: setup global npmrc for private npm auth

* build: fix extension bundling

* chore: sync npm dependencies

* ci: debug env variables for container

* ci: fix win32 cli pipeline

* build: fix npmrc config usage for build/ and remote/ dirs

* fix: windows build

* fix: container builds

* fix: markdown-language-features tests and bundling

```
[03:58:22] Error: Command failed: /Users/demohan/.nvm/versions/node/v20.15.1/bin/node /Users/demohan/github/vscode/extensions/markdown-language-features/esbuild-notebook.js --outputRoot /Users/demohan/github/vscode/.build/extensions/markdown-language-features
✘ [ERROR] Could not resolve "punycode"

    extensions/markdown-language-features/node_modules/markdown-it/lib/index.js:14:27:
      14 │ var punycode     = require('punycode');
         ╵                            ~~~~~~~~~~

  The package "punycode" wasn't found on the file system but is built into node. Are you trying to bundle for node? You can use "platform: 'node'" to do that, which will remove this error.
```

Adds userland package based on https://github.com/markdown-it/markdown-it/commit/beed9aee2c1b44819afc25d485e86a6c699b6ef0

* fix: container builds for distro

* chore: update yarn occurrences

* fixup! chore: bump vsce@2.17.0

Uses the closest version to `main` branch that does not
include https://github.com/microsoft/vscode-vsce/commit/d3cc84cdec99b8e9f24be63d1a2a54abe908f68b
while still having the fix https://github.com/microsoft/vscode-vsce/commit/8b49e9dfdf909ad3af2b9ec9c825f5b501f6d75e

* chore: sync npm dependencies

* chore: sync npm dependencies

* chore: sync npm dependencies

* chore: throw error when yarn is used for installation

* chore: add review feedback

* chore: switch exec => run where needed

* chore: npm sync dependencies

* fix: markdown-language-features bundling

```
✘ [ERROR] Could not resolve "punycode"

    extensions/markdown-language-features/node_modules/markdown-it/lib/index.js:14:27:
      14 │ var punycode     = require('punycode');
         ╵                            ~~~~~~~~~~

  The package "punycode" wasn't found on the file system but is built into node. Are you trying to bundle for node? You can use "platform: 'node'" to do that, which will remove this error.
```

Adds missing userland package based on markdown-it/markdown-it@beed9ae,
can be removed once we update markdown-it >= 14.1.0

* ci: rename no-yarn-lock-changes.yml

* chore: sync npm dependencies

* ci: restore no-yarn-lock-changes.yml

We can disable it in a separate PR to keep the required
checks happy and also need workflow edit perms.

* chore: sync npm dependencies

* ci: rebuild cache

* ci: fix no-package-lock-changes.yml

* chore: bump distro

* chore: rm yarn.lock files

* chore: rm yarn.lock files without dependencies

* chore: add vscode-selfhost-import-aid to postinstall dirs

* chore: bump distro
2024-09-06 22:18:02 +09:00
Caleb BroseandGitHub d4d2ee31db Add customizations.codespaces.disableAutomaticConfiguration to the devcontainer schema (#223083) 2024-07-23 17:02:53 +02:00
Rob LourensandGitHub d40dff9ef9 Activate configuration-editing extension when jsonc files are opened (#214659)
Fix #182700
2024-06-08 02:13:08 +02:00
RoboandGitHub 5216c04428 chore: update to electron 29 (#209818)
* chore: update electron@29.1.0

* chore: update typings to 20.x

* chore: bump electron@29.1.5

* ci: fix crash in compiling extensions-ci

* chore: disable .d.ts check for build/

$ ../node_modules/.bin/tsc -p tsconfig.build.json
node_modules/@types/chokidar/index.d.ts:21:14 - error TS2420: Class 'import("/Users/demohan/github/vscode/build/node_modules/@types/chokidar/index").FSWatcher' incorrectly implements interface 'import("fs").FSWatcher'.
  Type 'FSWatcher' is missing the following properties from type 'FSWatcher': ref, unref

21 export class FSWatcher extends EventEmitter implements fs.FSWatcher {
                ~~~~~~~~~

node_modules/chokidar/types/index.d.ts:8:14 - error TS2420: Class 'import("/Users/demohan/github/vscode/build/node_modules/chokidar/types/index").FSWatcher' incorrectly implements interface 'import("fs").FSWatcher'.
  Type 'FSWatcher' is missing the following properties from type 'FSWatcher': ref, unref

8 export class FSWatcher extends EventEmitter implements fs.FSWatcher {
               ~~~~~~~~~

Found 2 errors in 2 files.

Errors  Files
     1  node_modules/@types/chokidar/index.d.ts:21
     1  node_modules/chokidar/types/index.d.ts:8

Refs https://github.com/paulmillr/chokidar/commit/a0f9e09f64ce7ae70cc6ae1f5615f65cb35f532f

* chore: update core types

* temp: fix layer validation

* chore: update nodejs checksums

* ci: use latest v20 LTS for missing node-gyp

Refs https://github.com/npm/cli/commit/eacec5f49060d3dfcdc3c7043115619e4bb22864

* ci: define LIBCPP_HARDENING_MODE

* ci: fix crash in vscode-web-min-ci

* chore: update rpm deps-list

* chore: bump tree-sitter-typescript@0.20.5

* chore: bump electron@29.3.0

* chore: bump electron@29.3.1

* chore: update rpm deps-list for x86_64

* ci: disable io_uring UV backend on linux

* ci: disable io_uring backend for oss as well

* chore: update typings to 20.x

* ci: add TODO for io_uring workaround

* chore: bump distro

* chore: update preinstall node version checks

* chore: update @types/gulp

Refs https://github.com/microsoft/vscode/issues/212442

* ci: disable io_uring in more test suites
2024-05-11 01:20:28 +09:00
0657184073 Custom Labels Enhancement (#208029)
* Custom Lables

* polish

* dirname(nth)

* fix test?

* cleanup and perf

* 💄

* 💄

* 💄

* expression is parsed when initialized

* readonly

* 💄

---------

Co-authored-by: Benjamin Pasero <benjamin.pasero@microsoft.com>
2024-03-20 14:33:58 +01:00
b05778eb90 Workbench - ability to contribute window title variables (#204538)
---------

Co-authored-by: Benjamin Pasero <benjamin.pasero@microsoft.com>
2024-02-07 12:41:17 -08:00
CharlyandGitHub 09f3bd5c0b Fix typo in configurationEditingMain.ts (#203970)
Removed the extra `an` in `The path where an an extension is installed`.
2024-02-01 16:24:18 +00:00
Alex RossandGitHub 86504b9c9c Add ${/} as a shorter alias for ${pathSeparator} predefined variable (#200750)
Fixes #180827
2023-12-13 17:04:54 +01:00
Megan RoggeandGitHub 16b50a9be2 Merge branch 'main' into feat/fileWorkspaceFolderBasename 2023-11-10 11:42:22 -08:00
Christof Marti 0bad0f615a Option to opt-out of extensions (microsoft/vscode-remote-release#9177) 2023-11-10 11:17:34 +01:00
Martin AeschlimannandGitHub 07fcfc80c3 update to latest jsonc-parser (#192872) 2023-09-12 14:58:01 +02:00
floge07andGitHub d0b14e8569 fix: allow underscore as a valid char in tunnel remote address (#190904)
adjust the regexes used to validate tunnel remote addresses, add underscore as a valid char.
2023-08-21 19:18:44 +00:00
ea490e5545 chore: update to Electron 25 (#188268)
* chore: update electron@25.3.0

* ci: update NodeTool version

* chore: update @types/node

* add more common types to layers checker

* chore: update debian dependencies

* chore: update rpm dependencies

* fix: use legacy dns result order of Node.js

* ci: remove deprecated always-auth npm config

Refs npm/cli@72a7eeb

* chore: update deb and rpm dependencies

* chore: update armhf rpm dependencies

* chore: update x64 debian dependencies

* chore: update x64 rpm dependencies

* chore: update electron@25.3.1

* chore: update electron@25.4.0

* chore: bump distro

* chore: bump distro

---------

Co-authored-by: Benjamin Pasero <benjamin.pasero@microsoft.com>
2023-08-07 21:46:27 +09:00
Alex RossandGitHub 5f9fc780c2 Add snippets as a language (#185017)
* Add snippets as a language

* Snippets -> Code Snippets

* Add tests

* json.snippets -> json.comments.snippets
2023-07-28 09:21:56 -07:00
Andrew Hlynskyi 868757048d feat: Add resolving of "fileWorkspaceFolderBasename" variable 2023-03-31 23:25:34 +03:00
yiliang114 4065a16a41 fix: typos 2023-03-10 20:02:01 +08:00
Joyce ErandGitHub affa0691f9 Remove redundant activation events (#172062) 2023-02-06 09:38:15 -08:00
Sandeep SomavarapuandGitHub 5b02e68e42 fix profile import/export in web (#171753)
- move it to configuration-editing extension
2023-01-19 15:13:23 -08:00
Christof Marti 5efa6f4e4f Allow @prerelease 2023-01-17 10:28:05 +01:00
Christof Marti b7f4d34134 Reference original schema (devcontainers/spec#93) 2023-01-12 14:34:43 +01:00
Martin AeschlimannandChristof Marti f76815d952 dev container schema: use unevaluatedProperties 2023-01-12 11:27:40 +01:00
Matt BiernerandGitHub 57dd298b47 Add typings for test runner scripts (#169196) 2022-12-15 02:19:24 +01:00
9d1c2920c0 Added ${rootNameShort} formatting (#165744)
* Added ${rootNameShort} formatting

* Add unit tests for label that use rootNameShort

* move `Verbose` interface to a better location

* more support

* 💄

* fix tests

Co-authored-by: Benjamin Pasero <benjamin.pasero@microsoft.com>
2022-12-07 14:51:38 +01:00
Josh AbernathyandGitHub c53f2bdb3d Add properties for parallel lifecycle scripts to devcontainer schema (#166973) 2022-11-28 19:03:20 +01:00