* Introduces IObservableWithChange so that typescript does not show the default type for TChange in hovers.
This should make it easier to understand types when observables (potentially nested) are involved.
* Fixes monaco editor
* Check for cyclic dependencies during compile
Changes gulp-tsb to check the emitted JS code for cyclic dependencies. Historically we never cared about cycles between TS files as long as they dissappeared after compile (e.g type-dependencies, not runtime dependencies)
https://github.com/microsoft/vscode-internalbacklog/issues/5271
* fix cycling dependencies
fyi @aeschli @aiday-mar
* remove cyclic dependency with unused `BasedTextEdit` fyi @hediet
* remove cycle between chatEditService and chatEditingSession
fyi @alexdima
* remove cyclic dependency between chatSetup and chatViewPane
fyi @roblourens
* better cycle detection
* don't check cycles when not needed
* clear graph when reprocessing file dependencies
* remove cycle between with `notebookChatEditController` fyi @DonJayamanne
* modernize and cleanup tsb/utils
* #84756 Support object type policy
* add new policy object for array and object
* add new policy object type
* checkin policies.js file
* review
* fix warning
---------
Co-authored-by: João Moreno <joao.moreno@microsoft.com>
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
* 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
When executing `npm run gulp vscode-win32-x64` on the Windows platform, the `bundle-vscode` task is triggered. However, this task does not handle the path issues well, resulting in the contents of the `bootstrap-window.js` file not being injected into `workbench.js` and `processExplorer.js`.
The reason why VSCode does not encounter this issue is that the code compilation (compile-build) is performed on a Linux machine, while the Windows machine only executes the application build (vscode-win32-x64-ci will not trigger `bundle-vscode`).
Signed-off-by: Kevin Cui <bh@bugs.cc>
* badge wip
* badge wip
* testing: try out new 'badges' UI for test failures
I'm exploring some UI to make tests look better in already-busy
scenarios, like Copilot edits. We've long had these big inline message
decorations which get very noisy quickly, especially with word wrap on.
I'm exploring these smaller 'badge' type indicators. These are shown in
at most one place per test and their content length is very limited.
Clicking on them opens the traditional test error peek. Because I feel
like they are easier to see and more inviting to click, I turned off the
default behavior of opening the error peek. Making any edits in the test
case will dismiss the badge.
Closes#233028
* * make inline chat filter empty in-progress items
* show ellipses progress on request
* make inline zone animate its frame during request
* allow to resize inline chat zone
fixes https://github.com/microsoft/vscode/issues/230784