Skip to content

NuGet VSIX uses hybrid VisualStudio.Extensibility SDK and VSSDK to fix F5 Debugging Flakiness - #6982

Merged
donnie-msft merged 6 commits into
devfrom
dev-donnie-msft-fixPmuiBuild
Dec 9, 2025
Merged

donnie-msft merged 6 commits into
devfrom
dev-donnie-msft-fixPmuiBuild

Conversation

@donnie-msft

@donnie-msft donnie-msft commented Dec 3, 2025

Copy link
Copy Markdown
Contributor

Bug

Fixes: NuGet/Home#14669

Description

SDK-style isn't fully supported for VS Extensibility by default. This PR moves us to a "hybrid" mode where we have both VSSDK and VisualStudio.Extensibility.

Once the 18.3 build tools are publicly available, NuGet.Client repo can move fully onto those.

In the meantime, I tested by changing a property in XAML, launching the VSIX in Experimental VS, and my change was available on the first try!

PR Checklist

  • Meaningful title, helpful description and a linked NuGet/Home issue
  • Added tests - manually built and looked for change in Experimental VS Instance
  • Link to an issue or pull request to update docs if this PR changes settings, environment variables, new feature, etc.

@donnie-msft
donnie-msft requested a review from a team as a code owner December 3, 2025 18:03
@donnie-msft
donnie-msft marked this pull request as draft December 4, 2025 00:35
@donnie-msft

Copy link
Copy Markdown
Contributor Author

Back to draft. Need to move these to the Client project.

@donnie-msft
donnie-msft force-pushed the dev-donnie-msft-fixPmuiBuild branch from 7bb679c to 01fe535 Compare December 9, 2025 01:31
@donnie-msft
donnie-msft marked this pull request as ready for review December 9, 2025 01:32

@martinrrm martinrrm left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for fixing! but how did you know what to add/change? Is there documentation?

@donnie-msft

Copy link
Copy Markdown
Contributor Author

Thanks for fixing! but how did you know what to add/change? Is there documentation?

I asked the VS Extensibility team, and they suggested I follow what the VisualStudio.Extensibility Extension with VSSDK Compatibility VS project template as a guide.

I did find a doc here if you'd like to reference it, https://learn.microsoft.com/en-us/visualstudio/extensibility/visualstudio.extensibility/get-started/in-proc-extensions?view=visualstudio

@donnie-msft donnie-msft changed the title NuGet VSIX uses hybrid VSSDK & VS Extensibility to fix F5 Debugging Flakiness NuGet VSIX uses hybrid VisualStudio.Extensibility SDK and VSSDK to fix F5 Debugging Flakiness Dec 9, 2025
@donnie-msft
donnie-msft merged commit f470286 into dev Dec 9, 2025
17 of 18 checks passed
@donnie-msft
donnie-msft deleted the dev-donnie-msft-fixPmuiBuild branch December 9, 2025 21:59
NuGet.Versioning.resources.dll

# 3rd party dlls to keep
Microsoft.Extensions.DependencyInjection.dll

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this something needed for the VSIX start-up or what?

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

When I check my VS install's PublicAssemblies directory, I see it in there. We don't need it for our msbuild tasks, so I believe we can remove it from our vsix to make the install size a bit smaller

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Good catch! #7007

I barely noticed a comment on this closed PR. In the future, please just message me directly if a post-merge question comes up. Thank you!

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.

Building locally is not always creating a VSIX or injecting into Experimental VS

4 participants