Commit Graph

195 Commits

Author SHA1 Message Date
Matt Bierner
bf04914d59
Make sure js files still follow eslint semicolon rules 2025-11-12 13:54:56 -08:00
Benjamin Pasero
898436fbe6
Clean up code layering suppressions (fix #272777) (#272834)
* Clean up code layering suppressions (fix #272777)

* Update test/unit/electron/index.js

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-10-23 09:28:38 +02:00
Aman Karmani
934593aeb1
fix some typos (#259747) 2025-08-06 11:49:35 +00:00
Matt Bierner
a0e680dc71 Make sure inline chat math wrapped in parens is rendered
Syntax like `a ($x$) b` is generated fairly often
2025-07-11 00:03:47 -07:00
Aman Karmani
7deabf42e7
[engineering] add testSplit option to unit-test runner (#253049)
helpful to run tests in parallel
2025-07-07 20:34:30 +00:00
Ladislau Szomoru
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
Benjamin Pasero
cdf404ff47
debt - restore old layer name (#250928) 2025-06-09 07:08:43 +00:00
Samuel Rigaud
e975fc9be8
test: fix typos (#247259)
Co-authored-by: Samuel Rigaud <rigaud@gmail.com>
2025-04-23 23:38:49 +00:00
Benjamin Pasero
7d2083ed1d
tests - allow to run our tests in chrome or msedge (#244969) 2025-03-28 08:17:16 -07:00
João Moreno
ae43cc72b6
make unit tests faster (#241847) 2025-02-25 15:18:20 +01:00
Johannes
d96ee375ea
fix tests 2025-01-24 08:46:16 +01:00
Johannes Rieken
17f6bcb7d2
chore - modernise test runner (#235511)
async/wait, remove AMD/ESM split, cleanup
2024-12-06 18:53:29 +01:00
Johannes Rieken
1994ebabef
tweak inline chat hint (#234821)
* make editor readonly and disable squiggle while inline chat shows reply

https://github.com/microsoft/vscode/issues/226160

* tweak inline chat hint

only show on intented empty lines, hide when command run

* fix tests (only disable squiggle, not readonlyness)
2024-11-28 12:58:47 +01:00
Johannes Rieken
e45ebc6d59
fail tests when having unhandled errors (#234673) 2024-11-26 08:32:08 -08:00
Benjamin Pasero
c5b6ef14e6
esm - more cleanup (#230285)
Some checks are pending
Monaco Editor checks / Monaco Editor checks (push) Waiting to run
2024-10-02 11:55:17 +02:00
Benjamin Pasero
f09184ceb7
esm - set type: module top level (#230210) 2024-10-01 20:48:56 +02:00
Benjamin Pasero
3b68a06818
esm - removal of CSS loader (#230206)
Some checks are pending
Monaco Editor checks / Monaco Editor checks (push) Waiting to run
2024-10-01 19:24:18 +02:00
Benjamin Pasero
332b89f198
esm - remove AMD build scripts, tests and variables 2024-09-27 08:04:01 +02:00
Robo
b5a6aa14a8
feat: switch to npm as default package manager (#226927)
Some checks are pending
Monaco Editor checks / Monaco Editor checks (push) Waiting to run
* 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 8b49e9dfdf

* 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 737c95a129

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 beed9aee2c

* 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 d3cc84cdec
while still having the fix 8b49e9dfdf

* 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
Sandeep Somavarapu
ebc02af2d8
rename electron-node to electron-utility (#227672) 2024-09-05 00:49:23 -07:00
Sandeep Somavarapu
01fcf004a6
Use electron net directly in shared process (#227553)
* Use electron net directly in shared process

* add built file

* introduce shared electron-node layer

* remove electron-utility layer

* fix (overlook): move back cli files to node
2024-09-04 07:26:43 -07:00
Connor Peet
f9877b1978
eng: re-add coverage support post-ESM (#227459)
Fixes #227432
2024-09-03 20:33:56 +02:00
Benjamin Pasero
d60295dc0e
ESM: revisit need for _VSCODE_NODE_MODULES (fix #226453) (#227427) 2024-09-03 15:18:08 +02:00
Benjamin Pasero
ca42f649a7
Allow to build an AMD version of VS Code (#227240) 2024-09-02 09:36:19 +02:00
Benjamin Pasero
f0417069c6
esm - restore lost changes in tests from migration (#227225) 2024-08-30 09:12:48 -07:00
Benjamin Pasero
6b924c5152
ESM merge to main (#227184)
Co-authored-by: Johannes Rieken <jrieken@microsoft.com>
Co-authored-by: Alexandru Dima <alexdima@microsoft.com>
2024-08-30 10:31:46 +02:00
Benjamin Pasero
9f04aaf6f4
tests - depend on a test preload.js (#226588) 2024-08-26 10:14:27 +02:00
Benjamin Pasero
48bf32d320
esm - fix browser tests to run (#225791) 2024-08-16 17:13:07 +02:00
Benjamin Pasero
02fcc994ac
esm - port over unit test changes (#225711) 2024-08-15 19:58:52 +02:00
Connor Peet
7dde0a7943
eng: fix --run path in electron tests not working (#225422)
I assume this broke with some of the ESM work, but I have no idea how it was working before. This should be a better fix.
2024-08-12 18:58:54 +02:00
Benjamin Pasero
4c1b0e9ff1
esm - reduce diff (#224919)
* esm - reduce diff

* .

* .

* .

* .

* .
2024-08-06 17:32:43 +03:00
Alex Ross
eb4633fe7f
Re-merge introduction of tree sitter (#223474)
* Make space for tree sitter

* Add the tree sitter wasm file

* Very naive tree-sitter syntax highlighting for html, with a layer breaker

* Update tree when content changes

* WIP for making abstract tokens class

* Handle theme changes

* Replace entire text model value with parse callback

* Perf improvements

* Add tree-sitter-typescript

* Add typescript + better initial parsing

* Refactor into tree parsing service and fix flaw in parse callback

* Remove things that aren't the parser service

* Add yielding

* Remove changes that aren't required for PR

* Remove more file changes

* Reduce yield to 50 ms

* Fix incremental parsing

* Try update node-abi

* Revert "Try update node-abi"

This reverts commit df28801e31.

* Update text buffer chunk api

* fix build

* Remove tree-sitter dependency

* Adopt new, as yet unpublished, `@vscode/tree-sitter-wasm` package

* Use published `@vscode/tree-sitter-wasm` package

* Break `TreeSitterTree` and `TreeSitterParserService` into better pieces
and:
- document the order of editor changes
- use service injection where `TextModel` is constructed

* Fix tests

* Remove unneeded import

* Fix missing tree-sitter-wasm in web and remote

* Make package.jsons match

* Add @vscode/tree-sitter-wasm to web loader config

* Try using importAMDNodeModule

* PR feedback

* Add race condition test for changing language while loading language

* Use same timeout

* Queue content changes

* Remove override dispose

* Move queue into TreeSitterTree

---------

Co-authored-by: Peng Lyu <penn.lv@gmail.com>
2024-07-29 11:31:28 +02:00
Alex Ross
7ed4cdc56d
Revert "Add telemtry for how long it takes to parse files with tree-sitter" (#223317)
Revert "Add telemtry for how long it takes to parse files with tree-sitter (#…"

This reverts commit 6c15586994.
2024-07-24 08:47:51 +02:00
Alex Ross
6c15586994
Add telemtry for how long it takes to parse files with tree-sitter (#213565)
* Make space for tree sitter

* Add the tree sitter wasm file

* Very naive tree-sitter syntax highlighting for html, with a layer breaker

* Update tree when content changes

* WIP for making abstract tokens class

* Handle theme changes

* Replace entire text model value with parse callback

* Perf improvements

* Add tree-sitter-typescript

* Add typescript + better initial parsing

* Refactor into tree parsing service and fix flaw in parse callback

* Remove things that aren't the parser service

* Add yielding

* Remove changes that aren't required for PR

* Remove more file changes

* Reduce yield to 50 ms

* Fix incremental parsing

* Try update node-abi

* Revert "Try update node-abi"

This reverts commit df28801e31.

* Update text buffer chunk api

* fix build

* Remove tree-sitter dependency

* Adopt new, as yet unpublished, `@vscode/tree-sitter-wasm` package

* Use published `@vscode/tree-sitter-wasm` package

* Break `TreeSitterTree` and `TreeSitterParserService` into better pieces
and:
- document the order of editor changes
- use service injection where `TextModel` is constructed

* Fix tests

* Remove unneeded import

* Fix missing tree-sitter-wasm in web and remote

* Make package.jsons match

* Add @vscode/tree-sitter-wasm to web loader config

* Try using importAMDNodeModule

* PR feedback

* Add race condition test for changing language while loading language

* Use same timeout

* Queue content changes

* Remove override dispose

* Move queue into TreeSitterTree

---------

Co-authored-by: Peng Lyu <penn.lv@gmail.com>
2024-07-23 14:59:04 +02:00
Benjamin Pasero
f6f90e0163
Implement NLS without AMD loader (#214588) 2024-06-28 11:55:48 +02:00
Johannes Rieken
88d860624c
Inline chat UI overhaul (#215927)
* don't dimiss inline chat content widget when already having typed something

https://github.com/microsoft/vscode-copilot/issues/6067

* extract `TextOnlyMenuEntryActionViewItem` for reuse

* remove unused variables

* * show chat input below request/response pairs
* setting for text-only buttons
* more dynamic buttons
* always show the first request, don't repopulate input with last message
* keep progress bar hidden, rely on "Generating..."
* no more special background color

* add `minimal` renderer style for chat renderings

* tweak font-size for details when render mode is minimal

* stable scroll position for inline chat, don't push down the lines chat is editing but push the inline chat upwards

* more buttons more compact, tweak labels

* * add missing service dependency
* repopulate input for some unit test

* allow output from `InteractiveChatController` suite
2024-06-17 11:26:21 +02:00
Johannes
35faacda93
print loader error 2024-06-04 08:23:17 +02:00
Johannes
09981a84af
configure esModuleInterop: true, change some star-imports 2024-06-03 16:50:28 +02:00
Johannes Rieken
2d97803568
add ListenerRefusalError and ListenerLeakError which get logged when listener thresholds are exceeded. (#212900)
* add `ListenerRefusalError` and `ListenerLeakError` which get logged when listener thresholds are exceeded.

The `stack` property of these errors will point towards the most frequent listener and how often it is used. If that's a high number there is a leak (same listener is added over and over again), if that's a low number there might be a conceptual flaw that an emitter is simply too prominent.

* rightfully don't use Error.captureStackTrace (v8/nodejs only)
2024-05-16 08:29:17 -07:00
Connor Peet
358a3a65d3
fix incomplete coverage reports on macos (#212639)
* eng: fix incomplete coverage reports on macos

Wait for stdout to drain before exiting

* better fix
2024-05-13 15:27:00 -07:00
Connor Peet
41f6f5ad6e
yea actually that doesn't work 2024-05-08 20:57:52 -07:00
Connor Peet
2aa1079dbb
just use v8-to-istanbul 2024-05-08 15:42:43 -07:00
Johannes Rieken
880eee6a96
print warning about reused action ids, fix view action duplication (#202000)
* print warning about reused action ids, fix view action duplication

* remove debug code

* make tests happy-ish
2024-01-08 16:27:32 +01:00
Connor Peet
0385382382
testing: more out-of-editor refinements (#201834)
- Som more tweaks to our own runner scripts to allow asking for the
  generated coverage formats.
- Add actions alongside debug/run for executing coverage profiles
- Finish with displaying function coverage stats in Coverage view,
  allow changing its sort order.

Fixes #200529
Fixes #199380
2024-01-04 21:22:46 +01:00
Connor Peet
c016ce64fb
testing: misc work on test coverage (#201758)
- Allow coverage bar color thresholds to be configurable as the Java
  folks requested.
- Update some of our scripts for integration into
  the selfhost test runner.
- Initial parts of showing function coverage in the Test Coverage view.
  (Still a work in progress, more tomorrow)
2024-01-04 08:42:22 +01:00
Connor Peet
b964ed995a
eng: fix waitServer not working in unit test debug (#201334)
Fixes #182341
2023-12-20 14:09:46 -08:00
Connor Peet
027aa0ff19
testing: avoid console log in unit tests (#201141)
Fixes #192468
2023-12-18 18:39:13 +01:00
Johannes Rieken
a5698e8857
Joh/rainy-mollusk (#200976)
* snippet completions should also check with the completion model

this will allow to return "more" from the snippet completion item provider and rely on the completions model to do some filtering

* when debugging tests allow to use console.log

* fix https://github.com/microsoft/vscode/issues/191070
2023-12-15 16:07:56 +01:00
Johannes Rieken
3056f52f92
add failing/skipped test for https://github.com/microsoft/vscode/issues/191070 (#200125)
* fix --dev option of unit tests fyi @joaomoreno

* fix timing issue when getting line, add failing/skipped test for https://github.com/microsoft/vscode/issues/191070
2023-12-06 12:16:49 +01:00
Logan Ramos
e5e9a6556e
Remove extra console.log (#199985) 2023-12-04 22:23:08 +01:00