f9cc07926b
* Update Code to 1.76.1 - worker-src already contains blob so we can avoid patching that. - localeService moved. - Remaining changes were just line changes. * Make language extensions installable again Still might want to look into making the native language support work but for now it seems better not to break backwards compatibility since the native implementation is quite different. * Avoid "install in browser" for language packs It will not work. * Import correct locale service I believe before the contributions imported this but now we have to do it here.
38 lines
2.2 KiB
Diff
38 lines
2.2 KiB
Diff
Unconditionally enable the proposed API
|
|
|
|
To test run an extension that uses the proposed API (i.e.
|
|
https://github.com/microsoft/vscode-extension-samples/tree/ddae6c0c9ff203b4ed6f6b43bfacdd0834215f83/proposed-api-sample)
|
|
|
|
We also override isProposedApiEnabled in case an extension does not declare the
|
|
APIs it needs correctly (the Jupyter extension had this issue).
|
|
|
|
Index: code-server/lib/vscode/src/vs/workbench/services/extensions/common/abstractExtensionService.ts
|
|
===================================================================
|
|
--- code-server.orig/lib/vscode/src/vs/workbench/services/extensions/common/abstractExtensionService.ts
|
|
+++ code-server/lib/vscode/src/vs/workbench/services/extensions/common/abstractExtensionService.ts
|
|
@@ -1488,7 +1488,7 @@ class ProposedApiController {
|
|
|
|
this._envEnabledExtensions = new Set((_environmentService.extensionEnabledProposedApi ?? []).map(id => ExtensionIdentifier.toKey(id)));
|
|
|
|
- this._envEnablesProposedApiForAll =
|
|
+ this._envEnablesProposedApiForAll = true ||
|
|
!_environmentService.isBuilt || // always allow proposed API when running out of sources
|
|
(_environmentService.isExtensionDevelopment && productService.quality !== 'stable') || // do not allow proposed API against stable builds when developing an extension
|
|
(this._envEnabledExtensions.size === 0 && Array.isArray(_environmentService.extensionEnabledProposedApi)); // always allow proposed API if --enable-proposed-api is provided without extension ID
|
|
Index: code-server/lib/vscode/src/vs/workbench/services/extensions/common/extensions.ts
|
|
===================================================================
|
|
--- code-server.orig/lib/vscode/src/vs/workbench/services/extensions/common/extensions.ts
|
|
+++ code-server/lib/vscode/src/vs/workbench/services/extensions/common/extensions.ts
|
|
@@ -364,10 +364,7 @@ function extensionDescriptionArrayToMap(
|
|
}
|
|
|
|
export function isProposedApiEnabled(extension: IExtensionDescription, proposal: ApiProposalName): boolean {
|
|
- if (!extension.enabledApiProposals) {
|
|
- return false;
|
|
- }
|
|
- return extension.enabledApiProposals.includes(proposal);
|
|
+ return true
|
|
}
|
|
|
|
export function checkProposedApiEnabled(extension: IExtensionDescription, proposal: ApiProposalName): void {
|