Commit Graph

28 Commits (227391785aa6f7bfb6bff11564d799ff8556a1e7)

Author SHA1 Message Date
Tyler James Leonhardt 305134296c
Adopt the MSAL broker to talk to the OS for Microsoft auth (#233739)
This adopts the `NativeBrokerPlugin` provided by `@azure/msal-node-extensions` to provide the ability to use auth state from the OS, and show native auth dialogs instead of going to the browser.

This has several pieces:
* The adoption of the broker in the microsoft-authentication extension:
  * Adding `NativeBrokerPlugin` to our PCAs
  * Using the proposed handle API to pass the native window handle down to MSAL calls (btw, this API will change in a follow up PR)
  * Adopting an AccountAccess layer to handle:
    * giving the user control of which accounts VS Code uses
    * an eventing layer so that auth state can be updated across multiple windows
* Getting the extension to build properly and only build what it really needs. This required several package.json/webpack hacks:
  * Use a fake keytar since we don't use the feature in `@azure/msal-node-extensions` that uses keytar
  * Use a fake dpapi layer since we don't use the feature in  `@azure/msal-node-extensions` that uses it
  * Ensure the msal runtime `.node` and `.dll` files are included in the bundle
* Get the VS Code build to allow a native node module in an extension: by having a list of native extensions that will be built in the "ci" part of the build - in other words when VS Code is building on the target platform

There are a couple of followups:
* Refactor the `handle` API to handle (heh) Auxiliary Windows https://github.com/microsoft/vscode/issues/233106
* Separate the call to `acquireTokenSilent` and `acquireTokenInteractive` and all the usage of this native node module into a separate process or maybe in Core... we'll see. Something to experiment with after we have something working. NEEDS FOLLOW UP ISSUE

Fixes https://github.com/microsoft/vscode/issues/229431
2024-11-15 20:53:28 +09:00
Robo 51cfc9ece4
ci: add checks to verify mach-o objects architecture (#230598) 2024-10-05 12:27:10 -07:00
deepak1556 7ba544f617 fix: universal build 2024-09-06 18:28:44 +09: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 0dea4804f4
esm - introduce VSCODE_BUILD_ESM variable (#225586) 2024-08-14 14:49:26 +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 c1f7acafb2

* 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 3f7a3cc5c5

* 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
Benjamin Pasero 82c54248fd
perf - inline `package.json` and `product.json` (#219841) 2024-07-04 07:59:10 +02:00
João Moreno e469272e45
remove inline sourcemaps from build files (#198842) 2023-11-22 14:05:46 +01:00
Matt Bierner 10d94ba0f3
Pick up latest TS nightly for building VS Code (#194631) 2023-10-02 19:40:35 +01:00
Matt Bierner 70139e827a
Pick up latest TS nightly for building VS Code (#193534)
Required fixing a real typing error
2023-09-19 17:25:11 -07:00
Tyler James Leonhardt 5134662139
Remove CredentialsService & keytar (#192224)
* Remove CredentialsService & keytar

ref https://github.com/microsoft/vscode/issues/115215
fixes https://github.com/microsoft/vscode/issues/143395

* compile

* remove imports

* rip the bandaid
2023-09-05 17:47:30 -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
Johannes 696c1cf199
build utils with source map to enable JS debug console 2022-11-10 15:05:47 +01:00
Matt Bierner 2a84b0fb6d
Enable alwaysStrict for build scripts (#152778)
Turns on `alwaysStrict` and removes `'use strict';` from our `.ts` files
2022-06-21 19:00:43 +00:00
Johannes 2c004b870f
recompile build folder with `const` over let 2022-06-09 10:59:11 +02:00
deepak1556 345f572e37 ci: fix universal build 2022-04-05 19:23:16 +09:00
Alex Dima cab9713422
Fixes #141994: Address eslint problems 2022-02-02 13:18:12 +01:00
deepak1556 48417434d6 chore: allow running universal build via rosetta
Fixes https://github.com/microsoft/vscode/issues/139319
2022-01-31 20:20:00 +09:00
deepak1556 d49d7e7fe1 chore: harder checks around universal build creation 2021-08-05 23:55:06 -07:00
deepak1556 934d280a9f chore: bump vscode-universal-bundler
Fixes https://github.com/microsoft/vscode/issues/115262
2021-08-02 22:14:02 -07:00
Matt Bierner 0762d23ae7
Build VS Code using TS 4.4 (#127823)
* Build VS Code using TS 4.4

* Remove usages of deprecated `ClientRectList`

* Add any casts for missing `caretRangeFromPoint`

* Add temporary any casts for `zoom` css propery

This non-standard css property no longer exists in lib.dom.d.ts

* MouseWheelEvent -> WheelEvent

* Pick up new TS nightly

Co-authored-by: Alexandru Dima <alexdima@microsoft.com>
2021-07-08 14:27:39 -07:00
Benjamin Pasero 15aca96cd5
build - unblock lauching 2021-06-03 07:21:15 +02:00
João Moreno 0a7a69f190
fix build compilation 2021-05-26 13:30:43 +02:00
deepak1556 5904b7b686 chore: info.plist => Info.plist 2021-04-08 10:33:02 -07:00
deepak1556 9a8d55525d fix: skip sha comparison for info.plist 2021-04-08 01:31:18 -07:00
Tyler James Leonhardt 8fefa6aff2
Speed up mac builds (#116984)
* ci: [mac] Unify tasks between different flavors

* take 3

* remove zip

* unzip in place

* logging

* log

* rm zip

* all the things

* remove thing to trigger another build

* publish server for x64 only and only start on non-arm

* delete commented out code

* remove unused sh script

* address main changes

* address feedback

* add a comment

* try slimming down yarn

* only compile createAsset

* install typescript

* move build to correct location

* change to 64

* add useful comments based on joao

Co-authored-by: deepak1556 <hop2deep@gmail.com>
2021-03-10 17:52:15 -08:00
Robo f73c011ae3
fix: disable rosetta option for universal build (#115280) 2021-01-27 20:34:19 -08:00
Robo 60bce0f628
feat: add macos universal build ci config (#114446)
* feat: add universal build ci config

* chore: skip .npmrc files added by terrapin

* ci: cleanup conditional vairables for universal

* ci: use publish variable instead of parameter
2021-01-25 10:29:02 -08:00