Adds folding markers for //#region and //#endregion to the json/jsonc
language configuration so that the minimap section headers feature
(editor.minimap.showRegionSectionHeaders) recognizes them and renders
the corresponding section labels.
vscode-json-languageservice already provides folding ranges for these
markers in jsonc, but the minimap section headers contribution reads
folding markers from the language configuration only, which is why the
labels were missing.
Fixes#219561
* 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
NDJSON is a specification that is essentially the same thing as JSON
lines. The spec can be found on https://github.com/ndjson/ndjson-spec.
The NDJSON website is down. The project seems pretty much dead. The
status is best described by this comment:
https://github.com/ndjson/ndjson-spec/issues/35#issuecomment-1285673417
However, this doesn’t mean there aren’t any `.ndjson` files out there.
This changes adds `.ndjson` to the list of `jsonl` file extensions.
Bun added support for a new lockfile format using the jsonc language. It
uses an unconventional file extension, but it would be nice if VSCode
understands it by default anyway.
See https://github.com/oven-sh/bun/pull/15705
* add decrease and increase indent patterns for cpp
* adding new line with line comment on next line from within languages that use double slash for line comment
* 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