a1af9e2a56
* Move integration types into code-server This will be easier to maintain than to have it as a patch. * Disable connection token Using a flag means we will not need to patch it out. I think this is new from 1.64? * Add product.json to build process This way we do not have to patch it. * Ship with remote agent package.json Instead of the root one. This contains fewer dependencies. * Let Code handle errors This way we will not have to patch Code to make this work and I think it makes sense to let Code handle the request. If we do want to handle errors we can do it cleanly by patching their error handler to throw instead. * Move manifest override into code-server This way we will not have to patch it. * Move to patches - Switch submodule to track upstream - Add quilt to the process - Add patches The node-* ignore was ignoring one of the diffs so I removed it. This was added when we were curling Node as node-v{version}-darwin-x64 for the macOS build but this no longer happens (we use the Node action to install a specific version now so we just use the system-wide Node). * Use pre-packaged Code
37 lines
2.1 KiB
Diff
37 lines
2.1 KiB
Diff
Unconditionally enable the proposed API
|
|
|
|
To test run an extension that uses the proposed API.
|
|
|
|
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
|
|
@@ -1134,7 +1134,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
|
|
@@ -135,10 +135,7 @@ export interface IExtensionHost {
|
|
}
|
|
|
|
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 {
|