Commit Graph

104 Commits

Author SHA1 Message Date
Ladislau Szomoru
dd65f0c5ef Engineering - switch from npm-run-all to npm-run-all2 (#284087)
* Introduce compilation error

* Engineering - limit the tasks that we run

* Limit available memory to simulate an OOM

* Try to update the task

* Remove the use of npm-run-all

* Fix script

* Another try

* Try npm-run-all2

* Restore tasks, keep npm-run-all2

* Switch from npm-run-all to npm-run-all2

* Revert changes that were used for testing
2026-01-05 15:49:42 +01:00
Benjamin Pasero
55377133de Smoke-test failure: directory not empty (fix #260110) (#260121) 2025-08-06 16:00:13 +00:00
Benjamin Pasero
27c10fba46 [chore] bump @types/mocha to match mocha (#260034) 2025-08-06 11:54:24 +00:00
Robo
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 71f3ff6bf2

* 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
João Moreno
6151dca574 remove watch module (#243208) 2025-03-11 16:21:23 +00:00
Benjamin Pasero
789c320a1c Replace mkdirp with fs.mkdirSync(path, { recursive: true }) (#228017)
* Replace mkdirp with fs.mkdirSync(path, { recursive: true })
(fix #227931)

* compile
2024-09-09 22:43:29 -07:00
Robo
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 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
Robo
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 a0f9e09f64

* chore: update core types

* temp: fix layer validation

* chore: update nodejs checksums

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

Refs eacec5f490

* 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
Connor Peet
c2a6932e9e eng: onboard to the extension test runner (#195570)
* eng: onboard to the extension test runner

Adds a `.vscode-test.js` file that uses the new extension test CLI to
run tests. Also, onboards the markdown-language-features as the first
built-in extension to use it.

With the `ms-vscode.extension-test-runner` extension installed, the
markdown-language-features' tests can be run and debugged easily in
the UI :)

* fixup
2023-10-13 13:11:05 -07:00
Robo
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
Connor Peet
2138622b04 build: add watch/compile tasks for CLI (#182344)
* build: add watch/compile tasks for CLI

I spent time this morning working on the 'developer experience' of the
CLI in vscode, mainly getting the CLI to cross-compile chasing our
initial idea of having it auto-build in a devcontainer.

After some effort and disabling tunnels connections (to avoid having to
pull in OpenSSL which is a huge pain to cross compile), I was able to
get it to cross-compile from Linux to Windows, using the mingw linker.
I could probably figure out how to get macOS working as well with more
effort. However, I'm not a big fan of this, effectively it's one more
'platform' of build we need to support and test.

I think a better approach is downloading the latest compiled CLI from
the update server instead, as needed. That's what this PR does. It just
places the CLI where it _would_ normally get compiled to by cargo; so
far we don't need to do anything special outside of that.
A notice is shown to users if this fallback happens.

* update from review
2023-06-20 14:34:11 -07:00
Connor Peet
812ef50afe smoke: adopt new vscode test version (#168373)
Has timeout logic that fixes #166092
2022-12-08 01:14:41 +01:00
Connor Peet
0f29ffbfe1 test: update vscode-test for error handling (#151698) 2022-06-10 08:35:16 +00:00
Benjamin Pasero
c6bd448948 debt - bring @types/mocha up to date with version 9.x 2022-05-02 08:30:27 +02:00
Robo
32d40cf44e chore: update to electron 17 (#143223)
* chore: bump electron@17.0.0

* Revert "chore: revert to electron@13 (#143851)"

This reverts commit df645f1450.

* chore: bump electron@17.1.0

* Revert "ci: fix build with latest node-gyp"

This reverts commit c3e948aa30.

* chore: revert ci changes for node v16

* chore: update yarn.lock

* chore: bump electron@17.1.1
2022-03-11 00:51:37 +09:00
Robo
df645f1450 chore: revert to electron@13 (#143851)
* Revert "chore: update to electron 16 (#137241)"

This reverts commit 01df559c18.
This reverts commit 46301339b7

* ci: fix remote compiler for sdl-scan

* chore: fix remote/.yarnrc

* chore: fix build/npm/postinstall.js

* chore: rm crash reporter from shared process

* chore: rm crash reporter from ext host

* chore: fix build/lib/layersChecker.ts

* :chore: preserve some more changes

* fix tests

Co-authored-by: Benjamin Pasero <benjamin.pasero@microsoft.com>
2022-02-24 17:49:49 +01:00
Robo
01df559c18 chore: update to electron 16 (#137241)
* chore: bump electron@15.3.0

* chore: bump node@16.x

* chore: enable render process reuse

* Revert "watcher - use `type` property for crash reporter location"

This reverts commit bfa488dd8f.

* Revert "watcher - enable crash reports on linux (#136264)"

This reverts commit af261488f8.

* chore: enable crashpad on linux

* chore: bump electron@15.3.1

* chore: update api changes

* chore: bump @vscode/sqlite3@5.0.3

* spec: skip non-context aware module unittests

* chore: fix perf hook integration with node environment

* fix: adopt fs api changes

* chore: fix integration tests

* chore: bump electron@15.3.2

* chore: bump electron@16.0.0

* temp(macOS): kill test instances in OSS

* Revert "temp(macOS): kill test instances in OSS"

This reverts commit b0d796c8d64227a5ec012c060bbbee7d9da27568.

* chore: update chromium version for clang downloader

* some 💄 changes

* align with changes

* adopt more fs.rm

* 💄

* chore: bump @vscode/sqlite3@5.0.4

* fix layers check to account for duplicated types from node.js

* update todo for type casts

* smoke - fix compile issue

* chore: update module cache

* watcher - fix unhandled rejection (fix #137416)

* ci: update node version

* enable stack dumping

* update electron types to 16.x

* chore: bump @vscode/sqlite3@5.0.5

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

* fix layer issue

* add `AbortSignal` to core types

* chore: update linux compile flags

Refs 797723ec83

* ci: fix linux build

* ci: update github ci cache

* ci: fix remote build in github ci

* ci: better fix for remote build

* chore: bump azure cache

* chore: fix merge conflict

* :chore: update to electron@16.0.2

* chore: bump @vscode/sqlite3@5.0.7

* ci: update to gcc-4.9 for remote

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

* ci: switch to buster for linux arm

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

* ci: fix build on linux arm64

* ci: fix arm client compiler toolchain

Refs #137927

* chore: bump electron@16.0.3

* ci: fix compile flags for the c toolchain

* chore: bump electron@16.0.4

* Add experimental dark mode flag (#139109)

* Add experimental dark mode flag

* Apply PR feedback

* chore: bump electron@16.0.6

* chore: bump electron@16.0.7

Fixes https://github.com/microsoft/vscode/issues/138792
Fixes https://github.com/microsoft/vscode/issues/139300

* chore: experimental highlight API

* smoke - fix compile issue

* FIXME: custom ELECTRON_RUN_AS_NODE with node worker

* Revert "chore: bump electron@16.0.7"

This reverts commit 5fd01cf37c.

* Revert "Revert "chore: bump electron@16.0.7""

This reverts commit a7f1b73951.

* chore: fix github linux workflow

* chore: address review feedback

* chore: bump electron@16.0.8

* ci: revert to stretch distro for linux arm

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

* ci: force build

* chore: update yarn.lock

* address feedback

* Revert "FIXME: custom ELECTRON_RUN_AS_NODE with node worker"

This reverts commit 7b48fa3732.

* ci: fix remote folder build

* chore: fix github linux ci

* 🆙 `versionSpec`

Co-authored-by: Benjamin Pasero <benjamin.pasero@microsoft.com>
Co-authored-by: Raymond Zhao <raymondzhao@microsoft.com>
2022-02-08 20:09:00 +01:00
SteVen Batten
a48c94c91f bump node-fetch version in smoke tests 2022-02-01 11:40:45 -08:00
Connor Peet
904c63debd smoketests: use new extractSync option 2022-01-20 11:04:36 -08:00
Benjamin Pasero
365fea1d61 fix #141060 2022-01-20 13:59:47 +01:00
Benjamin Pasero
158cd6da42 smoke - log code download (#140769)
* smoke - log progress/errors of vscode download

//cc @connor4312

* reduce spam
2022-01-15 11:31:13 +01:00
Benjamin Pasero
9be2757019 🆙 playwright@1.18 (#140767)
* tests - use `@playwright/test@1.18.0-rc1`

* fix bad dependency

* clear more weird ts dependencies
2022-01-15 09:35:39 +01:00
Benjamin Pasero
7b6c1065c7 smoke - temporary bring back timeout 2021-11-30 11:04:39 +01:00
Benjamin Pasero
5bb653374f smoke - diagnose failing backup test 2021-11-29 09:56:19 +01:00
Benjamin Pasero
a5efd80ee0 Revert "smoke - print task list when deleting workspace path fails"
This reverts commit 368154bd0b.
2021-11-29 08:46:35 +01:00
Benjamin Pasero
368154bd0b smoke - print task list when deleting workspace path fails 2021-11-29 08:04:30 +01:00
Benjamin Pasero
e71b28a444 Smoke test lifecycle changes (#137969)
* rewrite teardown

* 💄

* avoid spam errors

* 💄

* split spawning browser from electron

* await copyExtension

* cleanup

* refactor methods

* cleanup

* cleanup

* cleanup

* 🆙 deps
2021-11-28 10:30:52 +01:00
João Moreno
1788b8afd8 chore: 🔧 clean smoketest dependencies 2021-11-08 14:58:17 +01:00
Benjamin Pasero
b96644b15f smoke tests - drop 'tmp' and try to deal with tmp path ourself (#130102) 2021-08-05 10:04:00 +02:00
João Moreno
132e3783d0 smoke: fix vscode-test cache location 2021-07-16 15:23:48 +02:00
Benjamin Pasero
d85bc647ef smoke tests - automatically test against stable build (#127799)
* smoke tests - automatically test against stable build

* fix path on Linux/Windows

* 💄

* retry migration tests

* smoke: always download latest previous stable

* hm

Co-authored-by: João Moreno <joao.moreno@microsoft.com>
2021-07-12 05:44:50 -07:00
João Moreno
85a36ae074 enable smoketest on linux 2021-06-11 12:19:17 +02:00
Robo
bce4d71f64 chore: bump node@14.x in devDependencies (#122905) 2021-05-04 10:04:13 +02:00
Ladislau Szomoru
335bc0196c Remove unused dependency 2021-03-31 10:11:35 +02:00
Ladislau Szomoru
7c498ec3a8 Update tests to use consistent version of mkdirp 2021-03-30 14:00:37 +02:00
Alexandru Dima
8ad08b04f5 Do not compile /test/ and /build/ scripts during postinstall, the scripts get compiled explicitly during CI 2021-01-07 16:47:11 +01:00
Alexandru Dima
f74ad9692f Align @types/* dev dependencies (#112718) 2020-12-18 13:28:39 +01:00
Alexandru Dima
aa2864d53f Remove most of the yarn license warnings 2020-12-18 10:26:14 +01:00
Alexandru Dima
ed19f6082f Share mocha related node modules (#112718) 2020-12-17 11:03:49 +01:00
Alexandru Dima
bb157721fb /build/ and /test/ should only have devDependencies 2020-12-17 10:27:39 +01:00
João Moreno
7743d971b1 concurrently -> run-run-all 2020-12-15 15:21:24 +01:00
Benjamin Pasero
ec41f20c40 Web - run smoke tests using playwright (#89918)
* playwright - initial version

* browser - use existing page and not create new context

* macOS: document how to remove the security flag

* smoke test - allow to run against server build with --build option

* do not rely on args

* fix path for windows

* smoke test - smoke 💄 and -ci option
2020-02-04 17:23:27 +01:00
Benjamin Pasero
ca22de4b17 debt - bump node.d.ts dependency in extensions to 12.x (part of #82514) 2019-10-28 08:11:47 +01:00
Martin Aeschlimann
74ac7b8520 smoke: update mocha 2019-09-30 22:58:57 +02:00
Daniel Imms
a5b58dc5b8 Link directly to automation from smoke 2019-09-12 21:32:41 -07:00
Daniel Imms
c3459acf6d Remove vscode-automation from pckage.json 2019-09-11 14:44:35 -07:00
Daniel Imms
a0fc3ba877 Relink automation dep before compile
Just always relink to avoid issues with the build cache not restoring
links.

Fixes #80729
2019-09-11 11:20:11 -07:00
Jason Ginchereau
3d08742789 Add automation to root postinstall script 2019-09-09 09:30:34 -07:00
Daniel Imms
883bf518a9 Use --preserveWatchOutput in tsc watch, update yarn deps 2019-09-06 09:10:53 -07:00
Jason Ginchereau
8b8ef3e2ee Fix some package dependencies 2019-09-05 09:30:38 -07:00