Commit Graph

267 Commits

Author SHA1 Message Date
Ladislau Szomoru 7a92a7f53b Engineering - background codesign for Windows (#245885)
* Reapply "Engineering - background codesign for Windows stage (#245796)" (#245869)

This reverts commit 0bc678a5f4.

* Update version calculation

* Remove code that is not needed

* Add missing javascript file

* Fix server path

* Always publish artifacts
2025-04-07 18:04:30 +02:00
Ladislau Szomoru 0bc678a5f4 Revert "Engineering - background codesign for Windows stage (#245796)" (#245869)
This reverts commit e1ff10f3e2.
2025-04-07 13:05:04 +02:00
Ladislau Szomoru e1ff10f3e2 Engineering - background codesign for Windows stage (#245796)
* Add zx package

* Add stub task and script

* Add missing file

* Remove code

* Another try

* Fingers crossed

* Another try

* Add remaining steps

* Add back tasks

* Fix things

* Another try

* More fixes

* Use deemon

* Fixing things

* watcher - perf improvements for non-recursive watching (#245644)

* Feedback: before / after selectors not rendering correctly (#245645)

Fixes #244575

* Add highlights rule  for character escapes (#245647)

* ci: split gnu arm targets for cli stage (#245651)

* Fix inline edit acceptance on click (#245649)

fix clicking insertion does not accept

* Feedback: variables render differently in Insiders (#245650)

Fixes #244579

* !important different color (#245654)

Fixes #244632

* @property css different color (#245656)

Fixes #244634

* > different color (#245658)

Fixes #244631

* notifications - adopt more `NotificationPriority.OPTIONAL` (#245664)

* Adds more inline completion tests

* Fixes CI

* feat: enable gpu channel async from the runtime (#241640)

* Update WinGet configuration file location & extension (#242241)

* Update WinGet configuration file location & extension

* Remove prerelease: true & add securityContext

* High CPU on large workspace with many TypeScript watched folders (fix #245366) (#245670)

* High CPU on large workspace with many TypeScript watched folders (fix #245366)

* reduce throttle delay

* Moving away from `execCommand` for pasting (#239233)

* adding code to invetsigate the clipboard

* adding more code

* adding change

* adding logs

* adding notes

* making deubgging easier

* adding code to fix paste

* adding code to allow await before trigger paste

* removing all logs

* removing log

* refactoring

* removing change

* adding fix after call

* polishing

* fixing merge conflict

* polishing

* Fixing property initializiation order (#245673)

fixing property initializiation order

* voice - fix some leaks (#245676)

* update css service (#245688)

* Engineering - bump deemon (#245634)

* Engineering - bump deemon

* Bump deemon again

* Always run the Codesign post-job

* Another fix

* Try signing in parallel

* Clean up signing script

Update task name

Tweak script

Some more cleanup

Some more cleanup

More cleanup

* Attempt to run signing in parallel

---------

Co-authored-by: Benjamin Pasero <benjamin.pasero@microsoft.com>
Co-authored-by: Alex Ross <38270282+alexr00@users.noreply.github.com>
Co-authored-by: Robo <hop2deep@gmail.com>
Co-authored-by: Benjamin Christopher Simmonds <44439583+benibenj@users.noreply.github.com>
Co-authored-by: Henning Dieterichs <hdieterichs@microsoft.com>
Co-authored-by: Muhammad Danish <mdanishkhdev@gmail.com>
Co-authored-by: Aiday Marlen Kyzy <amarlenkyzy@microsoft.com>
Co-authored-by: Martin Aeschlimann <martinae@microsoft.com>
2025-04-06 09:17:52 -07:00
João Moreno b59ae26ad3 fix policy generation (#243429)
cc @justschen
2025-03-13 10:24:52 +01:00
dependabot[bot] 8b8ca3cc3a Bump esbuild from 0.23.0 to 0.25.0 in /build (#240433)
Bumps [esbuild](https://github.com/evanw/esbuild) from 0.23.0 to 0.25.0.
- [Release notes](https://github.com/evanw/esbuild/releases)
- [Changelog](https://github.com/evanw/esbuild/blob/main/CHANGELOG-2024.md)
- [Commits](https://github.com/evanw/esbuild/compare/v0.23.0...v0.25.0)

---
updated-dependencies:
- dependency-name: esbuild
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-02-17 11:16:30 +01:00
João Moreno d9069970f9 fix build (#238346) 2025-01-21 11:11:30 +01:00
João Moreno 681164aaaa Move to auth cert for Release service (#233841)
* wip

* move to auto provisioning, only cert based auth

* k

* missing compilation

* remove console logs

* extract get publish auth tokens, wait 5 seconds before polling for release
2024-11-15 11:54:43 +01:00
Alex Ross 3906f4cacc Make tree-sitter a required dependency for build (#231494) 2024-10-18 10:52:12 +02:00
Benjamin Pasero c025c19d14 eng - reduce some unused deps (#231221) 2024-10-13 12:38:11 +02:00
Benjamin Pasero dc265add0b esm - drop need for manual concat (#230571) 2024-10-06 14:12:20 +02: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 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
Robo a628b923ec chore: update vscode-universal-bundler@0.1.3 (#226411)
Refs https://github.com/deepak1556/universal/commit/298a872f5f7d67eabb01d25464eef68edab14cd2

Ignores attributes that are affected by build enviroments
when comparing Info.plist.
2024-08-26 11:50:06 +02:00
Benjamin Pasero 79f7411c88 esm - reduce diff (#225220)
* esm - reduce diff

* restore more

* ok

* undo

* .
2024-08-09 10:52:26 -07:00
Benjamin Pasero 284a605d61 NLS can get mixed up when stable overwrites insider metadata (fix #224385) (#224405) 2024-07-31 19:20:45 +02:00
Johannes Rieken 729b03d8d0 update esbuild (#221241) 2024-07-09 09:43:21 +02:00
Robo 2fe0527205 chore: update to electron 30 (#215406)
* chore: update electron@30.0.9

* chore: update rpm deps

* chore: bump electron@30.1.2

* fix: update kerberos for Node.js 20.x

Refs https://github.com/mongodb-js/kerberos/commit/c1f7acafb211d1b449086433578495d4ae0b869f

* fix: use shell when spawning .bat or .cmd files

Refs https://github.com/nodejs/node/commit/6627222409

* fix: update @vscode/test-electron@2.4.0

Refs https://github.com/microsoft/vscode-test/commit/3f7a3cc5c537957d55fa9e6aeab9d860f7a60078

* fixup! use shell when spawning .bat or .cmd files

* chore: bump nodejs@20.14.0 internal build

* ci: skip nodejsMirror for 20.14.0 due to missing builds

* fixup! use shell when spawning .bat or .cmd files

* chore: update debian deps

* fixup! skip nodejsMirror for 20.14.0 due to missing builds

* fix: universal build

- Updates vscode-universal-bundler to support x64ArchFiles option
- Kerberos starts building universal binaries which should now be
  skipped from lipo step via x64ArchFiles
- Skips bundling *.mk files

* chore: bump distro
2024-07-09 14:33:22 +09:00
dependabot[bot] 4ddcd5d230 Bump @azure/identity from 3.4.1 to 4.2.1 in /build (#214913)
Bumps [@azure/identity](https://github.com/Azure/azure-sdk-for-js) from 3.4.1 to 4.2.1.
- [Release notes](https://github.com/Azure/azure-sdk-for-js/releases)
- [Changelog](https://github.com/Azure/azure-sdk-for-js/blob/main/documentation/Changelog-for-next-generation.md)
- [Commits](https://github.com/Azure/azure-sdk-for-js/compare/@azure/identity_3.4.1...@azure/identity_4.2.1)

---
updated-dependencies:
- dependency-name: "@azure/identity"
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: João Moreno <joao.moreno@microsoft.com>
2024-06-13 18:26:11 +02:00
João Moreno 15bdea120d remove gulp-shell (#214211)
* remove gulp-shell

* fix tasks
2024-06-06 17:54:06 +02: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 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
Robo 0114696106 chore: bump tree-sitter-typescript@0.20.5 (#211941) 2024-05-03 15:50:09 +02:00
Tyler James Leonhardt f861341624 Revert "Use graceful-fs to buffer fs calls (#210696)" (#210786)
This reverts commit 2cc4b3d115.
2024-04-19 22:11:41 +02:00
Tyler James Leonhardt 2cc4b3d115 Use graceful-fs to buffer fs calls (#210696)
Fixes `EMFILE: too many open files` thrown in the localization pipeline

Co-authored-by: Tyler Leonhardt <tyleonha@microsoft.com>
2024-04-18 22:11:48 +02:00
Connor Peet 87780c04c8 eng: fix CSS tooling crashes watch task (#209278)
Get rid of the gulp-postcss plugin and just implement our own, I couldn't get it to work.

Fixes #207827
2024-04-01 20:15:25 +02:00
Benjamin Pasero a54c7531d0 🆙 esbuild@0.20.0 (#203626) 2024-02-02 11:47:17 +01:00
Connor Peet 0f323440e5 eng: allow css nesting via postcss plugin (#203726)
* eng: allow css nesting via postcss plugin

CSS nesting has landed in most browsers at this point, but we don't want
to break users who are still stuck on old browser (mainly older iOS
devices.) This PR adds a postcss plugin to the build process that
de-nests nested CSS.

The plugin required a newer version of postcss as well, so I have
updated that and a couple other modules to their latest versions.

* update build's package.json versions too
2024-01-29 11:19:37 -08:00
Raymond Zhao 80750ef3eb chore: bump electron/get to 2.0.3 (#203055)
chore: bump electron/get to ^2.0.0
2024-01-22 20:00:31 +01:00
João Moreno 87e7f8b5e1 replace node-fetch with native fetch (#198408)
* replace node-fetch with native fetch

* fix dep version

* handle terminated error from fetch

* more error handling
2023-11-16 17:29:35 +01:00
João Moreno 0b111a09a1 Publish to new CDN (#198154) 2023-11-16 07:19:59 +01:00
Raymond Zhao e20515c62e Bump dependencies for debug sub-dependency (#195513) 2023-10-13 09:01:12 -07:00
João Moreno a5d71aad39 Cleanup dependencies (#195026)
* move build dependencies to devDependencies

* build: bump tree-sitter

* dependencies cleanup

* remove leftover file
2023-10-09 09:34:15 +02: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 ef8b1483fc build: use new cli patch method (#187629) 2023-07-11 13:47:08 -07:00
Matt Bierner debcf16fcd Mangle exported symbols (#182935)
* Mangle exported functions

For #180461

This prototype tries to mangle exported functions, saving a further 440kb from the bundle size

* Fix missing call

* Also try mangling top level exported consts too

* Fixing errors

* Don't run on build files

* Skip a few more manglings and revert change to namespace

* Skip a few more monaco files

* Also mangle consts that shadow types

This increases savings up to 3325

* Also mangle exported classes

* Skip mangling more localization functions for now

* Opt out pfs

* Update build script

* Run find locations task in parallel

This should speed up compile

* Cleanup before close

* Limit workers to avoid hitting memory limit

* Limit pool size

* Skip one more mangling

* Exclude entrypoints from mangling

* Try to fix web build and clean up code

* Exempt a few more projects

* Exempt another file

* Also exempt html

* Skip mangling ext entrypoints

* Use prefix that can't be confused with rpc calls

* Fix max call stack error

* Switch prefixes

* Don't mangle ambient declarations

* Use correct way of checking modifier flags

* Workaround getCombinedModifierFlags not doing what I'd expect

Maybe needs the checker to be enabled too? Just check parent chain instead for now

* Clean up code and add logic showing how enum mangling could work

* Remove a few more skipMangles

Use entrypoints instead

* Fix entrypoint name
2023-06-13 08:18:05 +02:00
Connor Peet 42015fe01c build: support structured toml patches to reduce build breakage (#184201)
Currently the Cargo.toml patches are git patches, but these can break
easily when surrounding lines are changed. Instead this lets us make
"Cargo.patch.toml" which gets a structured merge.
2023-06-02 12:09:16 -07:00
Martin Aeschlimann f1258a5fbe replace 'got' with 'node-fetch' (#182629)
replace 'got' with 'node-fetch' (for #182624)
2023-05-17 06:20:31 +02:00
Martin Aeschlimann 899cdd5ace remove request dependency (#179149)
* remove request dependency

* replace gulp-remote-retry-src in build scripts

* fix retry delay & polish
2023-04-05 16:05:16 +02:00
Martin Aeschlimann e5c82ebdde update azure dependencies (#179141) 2023-04-05 10:59:59 +02:00
Benjamin Pasero f481836a89 🆙 esbuild@0.17.14 (#178664) 2023-04-04 12:43:16 +02:00
Martin Aeschlimann 59608d3aee Update webpack, css/file & style loaders (#179008) 2023-04-03 16:10:40 +02: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 c6fbb48ec4 Revert "Update webpack (#177265)"
This reverts commit e88eb65966.
2023-03-17 18:55:15 +01:00
Martin Aeschlimann e88eb65966 Update webpack (#177265)
* update webpack

* update `@types/webpack`

* update copy-webpack-plugin

* update @types/webpack in build

* fix compile error in @types/eslint
2023-03-17 15:07:05 +01:00
Connor Peet 314d7b6c47 debug: allow setting breakpoints in plain .js files (#168921)
* debug: allow setting breakpoints in plain .js files

Fixes #159684

* fixup! don't change sourceURLs in build
2023-01-06 09:22:46 +01:00
João Moreno 326876fa9e bump vsce (#168071)
* bump vsce

* remainder

* use latest vsce

* compile build output
2022-12-22 17:00:21 +01:00
Benjamin Pasero 2ba046482d bump esbuild@1.15.5 (#159533)
bump esbuild
2022-08-30 12:52:31 +02:00
Matt Bierner 5e92794be6 Re-enable running our eslint rules using ts-node (#159495)
Resubmission of #157532 with the following changes:

- Use `eslint-plugin-local` instead of `yarn` link to run our plugins
- Move our plugins to a top level `.eslintplugin` dir (as required by `eslint-plugin-local`)
- Update all names to `local/`
2022-08-30 08:40:04 +02:00
Logan Ramos d6114a70be Remove app insights (#154296)
* Remove app insights

* Update product service to remove asimovKey
2022-07-06 22:23:30 -04:00
dependabot[bot] 909f841785 Bump got from 11.8.1 to 11.8.5 in /build (#152788)
Bumps [got](https://github.com/sindresorhus/got) from 11.8.1 to 11.8.5.
- [Release notes](https://github.com/sindresorhus/got/releases)
- [Commits](https://github.com/sindresorhus/got/compare/v11.8.1...v11.8.5)

---
updated-dependencies:
- dependency-name: got
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: João Moreno <joao.moreno@microsoft.com>
2022-06-26 19:27:42 +00: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