Skip to content

Add extensionPack#4738

Merged
gcampbell-msft merged 3 commits intomainfrom
dev/gcampbell/devtools
Feb 18, 2026
Merged

Add extensionPack#4738
gcampbell-msft merged 3 commits intomainfrom
dev/gcampbell/devtools

Conversation

@gcampbell-msft
Copy link
Copy Markdown
Collaborator

This change addresses item #[[put issue number here to generate a link]]

This changes [[visible behavior/performance/documentation/etc.]]

The following changes are proposed:

The purpose of this change

Other Notes/Information

@gcampbell-msft gcampbell-msft merged commit cf6168f into main Feb 18, 2026
4 checks passed
@gcampbell-msft gcampbell-msft deleted the dev/gcampbell/devtools branch February 18, 2026 16:26
@VGRSTM
Copy link
Copy Markdown

VGRSTM commented Feb 23, 2026

May I ask the rationale and/or vision behind this contribution?
Thank you.

@sinemakinci1
Copy link
Copy Markdown
Contributor

@VGRSTM

The C/C++ Dev Tools extension includes experiences that build on existing C/C++ extensions to improve the end-to-end C++ workflow in VS Code. GitHub Copilot is installed by default in VS Code, and our goal is to ensure C++ developers get consistent, high quality C++ experiences out of the box. To do so, the C/C++ DevTools extension adds workflow enhancements that rely on services implemented by our other C++ extensions.
Declaring this dependency ensures that everything required for those features is automatically present, works together, and provides the optimal default C++ experience across VS Code.

@VGRSTM
Copy link
Copy Markdown

VGRSTM commented Feb 25, 2026

@VGRSTM

The C/C++ Dev Tools extension includes experiences that build on existing C/C++ extensions to improve the end-to-end C++ workflow in VS Code. GitHub Copilot is installed by default in VS Code, and our goal is to ensure C++ developers get consistent, high quality C++ experiences out of the box. To do so, the C/C++ DevTools extension adds workflow enhancements that rely on services implemented by our other C++ extensions. Declaring this dependency ensures that everything required for those features is automatically present, works together, and provides the optimal default C++ experience across VS Code.

@sinemakinci1 Thanks for answer.
At a high level, I like the idea.
In detail, having an extension forced on the end user (pulled when asking for the CMake Tools extension), while this extension has no publicly shared code base, is an issue for me. CMake Tools source code is exposed, but this one does not. (If I am wrong, please correct me; a source code hyperlink would be very welcome.)

@VGRSTM
Copy link
Copy Markdown

VGRSTM commented Feb 25, 2026

@sinemakinci1 & @gcampbell-msft

From a technical and policy standpoint, I consider this contribution quite unusual. Here, we have an extension acting as an extension pack.
In my opinion, the purpose of an extension pack is to bundle separate extensions together so they can be easily installed at one time, according to your own documentation extension-marketplace.

I would welcome a new extension pack or an enhancement to an existing one like ms-vscode.cpptools, which bundles ms-vscode.cmake-tools and the new ms-vscode.cpp-devtools.

@sinemakinci1
Copy link
Copy Markdown
Contributor

@VGRSTM Our goal was to provide the best default experience for our users, since this new extension is a companion to the CMake tools extension, which is why we chose this dependency pattern. If you decide this setup doesn't work for you, you can uninstall the C++ devtools extension at any point and your existing CMake and C/C++ tooling will continue to work as before.

Thanks for raising this, feedback like this is helpful as we iterate on the technical approach and the way we communicate these changes.

@halflifefan
Copy link
Copy Markdown

@sinemakinci1 & @gcampbell-msft

I agree with you @VGRSTM, thanks for linking my issue here.

This extension is already part of the C/C++ Extension Pack, so users who want the full C++ experience already get it. Adding it as an extension pack entry in CMake Tools means it gets silently installed on users who deliberately chose CMake Tools alone rather than the full pack.

The marketplace desc saying "Enhanced development tools for C++" also undersells that it's a Copilot integration. You only find that out in the Overview. Users who don't use Copilot end up with an extra closed-source extension that does nothing for them.

Would it be possible to keep this dependency only in the C/C++ Extension Pack where it already lives, or at the very least have it respect chat.disableAIFeatures so it doesn't activate for users who've opted out of AI tooling?

@halflifefan
Copy link
Copy Markdown

I've opened a PR to revert this change: #4800

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants