Merge from vscode 2c306f762bf9c3db82dc06c7afaa56ef46d72f79 (#14050)

* Merge from vscode 2c306f762bf9c3db82dc06c7afaa56ef46d72f79

* Fix breaks

* Extension management fixes

* Fix breaks in windows bundling

* Fix/skip failing tests

* Update distro

* Add clear to nuget.config

* Add hygiene task

* Bump distro

* Fix hygiene issue

* Add build to hygiene exclusion

* Update distro

* Update hygiene

* Hygiene exclusions

* Update tsconfig

* Bump distro for server breaks

* Update build config

* Update darwin path

* Add done calls to notebook tests

* Skip failing tests

* Disable smoke tests
This commit is contained in:
Karl Burtram
2021-02-09 16:15:05 -08:00
committed by GitHub
parent 6f192f9af5
commit ce612a3d96
1929 changed files with 68012 additions and 34564 deletions

View File

@@ -10,6 +10,7 @@ import { URI } from 'vs/base/common/uri';
import { RequireInterceptor } from 'vs/workbench/api/common/extHostRequireInterceptor';
import { IExtensionDescription } from 'vs/platform/extensions/common/extensions';
import { ExtensionRuntime } from 'vs/workbench/api/common/extHostTypes';
import { timeout } from 'vs/base/common/async';
class WorkerRequireInterceptor extends RequireInterceptor {
@@ -41,6 +42,7 @@ export class ExtHostExtensionService extends AbstractExtHostExtensionService {
const apiFactory = this._instaService.invokeFunction(createApiFactoryAndRegisterActors);
this._fakeModules = this._instaService.createInstance(WorkerRequireInterceptor, apiFactory, this._registry);
await this._fakeModules.install();
await this._waitForDebuggerAttachment();
}
protected _getEntryPoint(extensionDescription: IExtensionDescription): string | undefined {
@@ -86,6 +88,18 @@ export class ExtHostExtensionService extends AbstractExtHostExtensionService {
async $setRemoteEnvironment(_env: { [key: string]: string | null }): Promise<void> {
throw new Error('Not supported');
}
private async _waitForDebuggerAttachment(waitTimeout = 5000) {
// debugger attaches async, waiting for it fixes #106698 and #99222
if (!this._initData.environment.isExtensionDevelopmentDebug) {
return;
}
const deadline = Date.now() + waitTimeout;
while (Date.now() < deadline && !('__jsDebugIsReady' in globalThis)) {
await timeout(10);
}
}
}
function ensureSuffix(path: string, suffix: string): string {