Remove API version concept#321391
Open
alexr00 wants to merge 2 commits into
Open
Conversation
Contributor
There was a problem hiding this comment.
Pull request overview
This PR removes the “API proposal version” mechanism from VS Code’s proposed-API pipeline, simplifying proposal metadata and eliminating version-based validation logic in extension scanning/installation.
Changes:
- Removes
// version: Nmarkers from proposedvscode.proposed.*.d.tsfiles and stripsversionmetadata from the generatedextensionsApiProposalsmap. - Deletes proposal-version compatibility checks in extension validation/scanning/installation flows and removes the related product configuration plumbing.
- Updates tooling/docs: adds a linter warning for
enabledApiProposalsentries containing@<version>, updates Copilot contributing guidance, and removes the CI workflow/instructions dedicated to proposal version checks.
Show a summary per file
| File | Description |
|---|---|
| src/vscode-dts/vscode.proposed.mcpServerDefinitions.d.ts | Removes proposal version marker comment. |
| src/vscode-dts/vscode.proposed.languageModelToolSupportsModel.d.ts | Removes proposal version marker comment. |
| src/vscode-dts/vscode.proposed.languageModelThinkingPart.d.ts | Removes proposal version marker comment. |
| src/vscode-dts/vscode.proposed.findFiles2.d.ts | Removes proposal version marker comment. |
| src/vscode-dts/vscode.proposed.defaultChatParticipant.d.ts | Removes proposal version marker comment. |
| src/vscode-dts/vscode.proposed.chatSessionsProvider.d.ts | Removes proposal version marker comment. |
| src/vscode-dts/vscode.proposed.chatProvider.d.ts | Removes proposal version marker comment. |
| src/vscode-dts/vscode.proposed.chatPromptFiles.d.ts | Removes proposal version marker comment. |
| src/vscode-dts/vscode.proposed.chatParticipantPrivate.d.ts | Removes proposal version marker comment. |
| src/vscode-dts/vscode.proposed.chatParticipantAdditions.d.ts | Removes proposal version marker comment. |
| src/vscode-dts/vscode.proposed.chatHooks.d.ts | Removes proposal version marker comment. |
| src/vscode-dts/vscode.proposed.chatDebug.d.ts | Removes proposal version marker comment. |
| src/vscode-dts/vscode.proposed.aiTextSearchProvider.d.ts | Removes proposal version marker comment. |
| src/vs/workbench/services/extensionManagement/electron-browser/remoteExtensionManagementService.ts | Drops install-time API-proposal-version incompatibility error path. |
| src/vs/workbench/services/extensionManagement/browser/webExtensionsScannerService.ts | Removes conditional API-version validation and always normalizes proposal names (strips @...). |
| src/vs/workbench/contrib/extensions/browser/extensionsWorkbenchService.ts | Removes API-proposal-version-related branch from “incompatible extensions” notification logic. |
| src/vs/server/node/webClientServer.ts | Removes server-side plumbing that injected extensionsEnabledWithApiProposalVersion via CLI args. |
| src/vs/platform/extensions/test/common/extensionValidator.test.ts | Removes unit tests for the deleted areApiProposalsCompatible helper. |
| src/vs/platform/extensions/common/extensionValidator.ts | Removes areApiProposalsCompatible and the validate-manifest API-version enforcement. |
| src/vs/platform/extensions/common/extensionsApiProposals.ts | Removes version entries from the generated proposals registry. |
| src/vs/platform/extensions/common/extensions.ts | Removes parseApiProposals helper; keeps name-only normalization. |
| src/vs/platform/extensionManagement/common/extensionsScannerService.ts | Removes product-gated API-version validation and always normalizes proposal names. |
| src/vs/platform/extensionManagement/common/extensionGalleryService.ts | Removes marketplace filtering based on API proposal versions. |
| src/vs/platform/extensionManagement/common/abstractExtensionManagementService.ts | Drops install-time API-proposal-version incompatibility error path. |
| src/vs/base/common/product.ts | Removes extensionsEnabledWithApiProposalVersion from product configuration schema. |
| extensions/extension-editing/src/extensionLinter.ts | Adds a warning diagnostic for enabledApiProposals values containing @<version>. |
| extensions/copilot/CONTRIBUTING.md | Updates guidance to rely on engines.vscode (date) rather than proposal versions. |
| build/lib/compilation.ts | Updates the proposal-names generator to stop extracting/printing proposal versions and updates the generated type shape. |
| .github/workflows/api-proposal-version-check.yml | Deletes the workflow that enforced/acknowledged proposal version bumps. |
| .github/instructions/api-version.instructions.md | Deletes contributor instructions about proposal version bumping. |
Copilot's findings
- Files reviewed: 17/30 changed files
- Comments generated: 1
dbaeumer
approved these changes
Jun 15, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
No description provided.