Commit Graph

95 Commits

Author SHA1 Message Date
Robo
5e8f6f2bb4 chore: use node-gyp from build dir for the project (#250981)
* chore: bump node-gyp on windows to 11.2.0

improves reliability of builds on windows

includes https://github.com/nodejs/node-gyp/pull/3113 and https://github.com/nodejs/node-gyp/pull/3112

* use preinstalled node-gyp

* use bundled node-gyp for subdirs too

* chore: revert changes to package-lock.json

* chore: rebuild package-lock.json

* ci: rebuild cache

---------

Co-authored-by: Aman Karmani <aman@tmm1.net>
2025-06-09 17:53:41 +09: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
Robo
7933f52914 fix: clang variable for native module installs from build dir (#242601) 2025-03-04 21:19:05 +01:00
Benjamin Pasero
679a9f1ace 🆙 @parcel/watcher@2.5.0 (#235710) 2024-12-11 09:19:48 +01:00
Robo
804f450ca9 fix: remote folder compilation on macOS with node.js v20.18.0 (#231928)
* fix: remote folder compilation on macOS with node.js v20.18.0

* chore: update debian deps

* chore: update rpm deps
2024-10-22 15:26:13 +02:00
Robo
e178455531 ci: check for clean git state in npm validation (#230479) 2024-10-04 11:04:18 -07:00
Robo
8422282f04 chore: update to Electron 32 (#218245)
* chore: update electron@31.0.1

* chore: bump electron@31.1.0

* chore: update sysroot download url

* chore: bump electron@31.3.0

* chore: update rpm deps for arm64

* chore: bump electron@31.4.0

* chore: bump electron@32.0.0

* fix: compile stage

* fix: install on windows

* fix: override node-addon-api to support c++20 with gcc-11

Brings in fed13534c5
to support compilation with gcc>=11

* ci: use gnu++2a for gcc <=9

* ci: fix sdl pipeline

* ci: web stage

* ci: fix alpine stage

* ci: fix legacy server stage

* fix: node-addon-api resolution for remote

* ci: fix legacy arm stage

* chore: sync npm dependencies

* chore: bump electron@32.0.1

* ci: fix monaco editor checks

* ci: fix legacy server stage

* ci: possible concurrent execution

* ci: use foreground scripts on windows

* chore: bump electron@32.0.2

* fix: compilation

Refs 204011c3f2

* Revert "wco - hardcode devtools location on Linux (#227084)"

This reverts commit dfb96d11d3.

* chore: bump electron@32.1.2

* ci: remove workaround for missing c++20 flags

* ci: use gnu++2a for gcc <=9

* chore: bump distro

* ci: use gnu++17 for legacy arm servers

* fixup! override node-addon-api to support c++20 with gcc-11

Scope to only the affected package versions

* chore: bump @vscode/policy-watcher

* chore: bump @vscode/sqlite3

* chore: bump node.js v20.17.0

* chore: bump distro

* chore: update @vscode/windows-ca-certs

* chore: update builds for electron@32.1.2

* chore: bump distro

* chore: bump dependencies

* ci: fix arm legacy servers
2024-10-04 19:19:06 +09: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
9b29e85e0c fix: install scripts for windows arm64 target (#225629) 2024-08-14 18:17:39 -07:00
Robo
cab98a1ca8 fix: bump minimum glibcxx version for armhf remote server (#221259) 2024-07-10 08:04:46 +09:00
Dirk Baeumer
24d4616d5e Make VS Code compile on Windows with NodeJS >=20 2024-05-13 11:37:37 +02:00
Robo
cf7ddbb51d fix: use legacy server as default with additional warnings (#204377)
* ci: switch to glibc 2.17 remote server

* chore: signal user about unsupported connection

* chore: address review comments

* chore: update nodejs build

* chore: bump distro

* chore: lower the minimum requirements

* fix: glibc version check

* chore: remove explicit connection disposal
2024-02-06 11:25:58 +01:00
Robo
e7b5076dd7 refactor: use sysroots on linux prod pipeline (#192513)
* ci: use sysroots on linux prod pipeline to build native modules

* ci: rebuild after electron update
2023-12-12 11:39:00 +01:00
Ladislau Szomoru
f0fad066a3 Engineering - Rename .git-blame-ignore to .git-blame-ignore-revs (#196816) 2023-10-27 12:34:22 +02:00
Robo
00039b0fcf refactor: linux pipeline to use containers only for yarn step (#188383)
* ci: use container only in yarn step

* chore: invalidate cache

* chore: install missing deps for packaging

* chore: remove duplicate package installations

* fix: oss build

* chore: separate deb and rpm package preparation

* chore: mount out folder when packaging

* ci: switch to official docker image
2023-07-20 21:02:56 -07:00
João Moreno
aac80c3f0a Adopt new distro format (#178689)
* Simplify distro

Also a ton of drive-by fixing around builds:
- simplified many oneliners
- fixed missing custom npm registry call setups
- remove unnecessary and duplicate work during builds
- many many fixes
2023-04-02 09:35:39 +02:00
João Moreno
5854ef865c Generate policies again (#149322)
* Generate ADMX/ADML policy declaration files from static analysis

Fixes: #148941

* fix build

* move to optional dependencies
2022-05-12 09:16:03 +02:00
Joyce Er
ba8ced85c5 Revert "Generate ADMX/ADML policy declaration files from static analysis" (#149194)
This reverts commit dcfe6b3b84.
2022-05-10 16:30:34 -07:00
João Moreno
dcfe6b3b84 Generate ADMX/ADML policy declaration files from static analysis
Fixes: #148941
2022-05-10 13:17:05 +02:00
Joao Moreno
29ef778b1c fixes #145397 2022-03-18 13:54:12 +01:00
Alex Dima
bd9d4d5b51 Add support for arm64 for server builds 2022-03-14 16:22:54 +01: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
Matt Bierner
37f3aa632f Adding jsconfig for npm scripts 2022-02-28 15:06:43 -08:00
Matt Bierner
d6d2122c50 Enable type checking in more js build files 2022-02-28 14:41:26 -08:00
Alex Dima
6289768fc2 Force using x64 when running yarn on the remote folder on macOS 2022-02-28 18:12:04 +01: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
Robo
b7712c07fa refactor: build x64 remote modules with same toolchain as binary (#142023)
* refactor: build x64 remote modules with same toolchain as binary

Refs https://github.com/nodejs/node/blob/master/BUILDING.md#official-binary-platforms-and-toolchains
Fixes https://github.com/microsoft/vscode/issues/137659

* chore: split client and server stages for x64

* chore: add build dependencies

* Revert "chore: add build dependencies"

This reverts commit f9077c9ebd6017bd973db9366dc3d7f336293742.

* chore: build step requires root dependencies

* chore: only perform module installation in separate stage

* chore: fix target path

* chore: run server stage in parallel to compile

* chore: fix dependency chain

* chore: declare parallel dependecy

* chore: fix artifact name

* chore: publish as archive to preserve file types

* chore: fix target directory for extraction

* chore: update postinstall script
2022-02-03 07:56:21 -08:00
Logan Ramos
8079e0b721 Move webNodePaths to run on compile since we rimraf out 2021-08-10 16:56:23 -04:00
Logan Ramos
6533d46465 Fix case where out/vs doesn't exist 2021-08-10 15:13:27 -04:00
Logan Ramos
82e4bc85cd Dynamically generate web package paths 2021-08-10 14:44:58 -04:00
Robo
4fee848f2f fix: CXXABI requirements for older distros (#129360)
* fix: use clang and libcxx from chromium

* chore: add flags for Link-Time Optimization

libcxx builds from upstream are built with LTO, avoiding these
flags will cause miscompiles

* chore: add lto flags to compilation units
2021-08-06 08:48:45 -07:00
João Moreno
7c1e41b091 introduce git-blame-ignore 2021-07-06 20:30:21 +02:00
João Moreno
6fed85aaf9 pull.rebase merges 2021-06-22 19:55:13 +02:00
Alexandru Dima
76c974bfeb Have a clear list of directories where yarn should be executed 2020-12-23 11:28:32 +01:00
Alexandru Dima
90f9a7de88 Execute yarn --ignore-engines for extensions 2020-12-18 10:26:13 +01:00
Alexandru Dima
1141224b80 Remove debug console log 2020-12-18 10:26:13 +01:00
João Moreno
fd85ae4f4a Avoid recompiling remote native node modules (#112644)
* avoid recompiling remote native node modules

fixes #112320

* fix build

* update cache

* empty

* chore: remove rebuild step

* chore: update salt

* product compile should use same CC CXX

Co-authored-by: deepak1556 <hop2deep@gmail.com>
2020-12-17 02:16:32 -08:00
João Moreno
908503ee89 ignore remote and web when yarn in arm64 2020-07-13 15:23:54 +02:00
João Moreno
6968ef84a0 force rebase when pulling 2020-07-01 20:34:22 +02:00
João Moreno
04be06ff6f fix skip remote 2020-05-20 15:23:10 +02:00
João Moreno
d424ff23ca skip remote for win32 arm64 2020-05-20 15:18:21 +02:00
Joao Moreno
56cd2882a1 fix env in postinstall 2020-02-21 16:39:59 +01:00
Benjamin Pasero
4be3cc8846 test - convert web integration to TS 2020-02-07 12:41:12 +01:00
Rachel Macfarlane
06a48362f3 Replace typings file for windows-process-tree with @types module 2019-11-12 16:00:33 -08:00
Rob Lourens
1b5a3ac156 Delete module version check that is now redundant with similar check in hygiene 2019-10-24 09:23:53 -07:00
Joao Moreno
b53811e67e fix npm postinstall step, remove xterm from version matching 2019-10-24 08:20:25 +02:00
Jason Ginchereau
3d08742789 Add automation to root postinstall script 2019-09-09 09:30:34 -07:00
Johannes Rieken
2b46fe4c30 adopt gulp-tsb 4.0.0, remove postinstall hacks 2019-09-06 17:21:36 +02:00
Matt Bierner
cf446b9233 Build VS Code using TS 3.6
Fixes #80079

Updates our build to use TS 3.6. Fixes a few changes to dom apis and adds a monkey patch for the node typings break in 3.6
2019-09-02 21:27:52 -06:00