Skip to content

Commit f470286

Browse files
authored
NuGet VSIX uses hybrid VisualStudio.Extensibility SDK and VSSDK to fix F5 Debugging Flakiness (#6982)
1 parent 3cbc2d6 commit f470286

7 files changed

Lines changed: 38 additions & 1 deletion

File tree

Directory.Packages.props

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,8 @@
6969
<PackageVersion Include="Microsoft.VisualStudio.ProjectSystem" Version="17.4.221-pre" />
7070
<PackageVersion Include="Microsoft.VisualStudio.ProjectSystem.Managed.VS" Version="17.2.0-beta1-20502-01" />
7171
<PackageVersion Include="Microsoft.VisualStudio.ProjectSystem.VS" Version="17.4.221-pre" />
72+
<PackageVersion Include="Microsoft.VisualStudio.Extensibility.Sdk" Version="17.14.40177" />
73+
<PackageVersion Include="Microsoft.VisualStudio.Extensibility.Build" Version=" 17.14.40177" />
7274
<PackageVersion Include="Microsoft.VisualStudio.SDK" Version="18.0.2345-preview.1" />
7375
<PackageVersion Include="Microsoft.VisualStudio.Sdk.TestFramework.Xunit" Version="17.11.8" />
7476
<PackageVersion Include="Microsoft.VisualStudio.Setup.Configuration.Interop" Version="3.4.2244" />

NuGet.sln

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -351,6 +351,7 @@ Global
351351
GlobalSection(ProjectConfigurationPlatforms) = postSolution
352352
{3B96F91B-3B58-40ED-B06E-5CD133A79A63}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
353353
{3B96F91B-3B58-40ED-B06E-5CD133A79A63}.Debug|Any CPU.Build.0 = Debug|Any CPU
354+
{3B96F91B-3B58-40ED-B06E-5CD133A79A63}.Debug|Any CPU.Deploy.0 = Debug|Any CPU
354355
{3B96F91B-3B58-40ED-B06E-5CD133A79A63}.Release|Any CPU.ActiveCfg = Release|Any CPU
355356
{3B96F91B-3B58-40ED-B06E-5CD133A79A63}.Release|Any CPU.Build.0 = Release|Any CPU
356357
{ECEA066F-F40D-4397-B2CE-8CA24AC22638}.Debug|Any CPU.ActiveCfg = Debug|Any CPU

src/NuGet.Clients/NuGet.VisualStudio.Client/.vsixignore

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,13 @@ Microsoft.TeamFoundation.WorkItemTracking.Proxy.dll
7272
Microsoft.TeamFoundation.WorkItemTracking.Proxy.resources.dll
7373
Microsoft.TeamFoundation.WorkItemTracking.WebApi.dll
7474
Microsoft.VisualStudio.Debugger.UI.Interfaces.dll
75+
Microsoft.VisualStudio.Extensibility.dll
76+
Microsoft.VisualStudio.Extensibility.resources.dll
77+
Microsoft.VisualStudio.Extensibility.Contracts.dll
78+
Microsoft.VisualStudio.Extensibility.Contracts.resources.dll
7579
Microsoft.VisualStudio.Extensibility.Editor.Contracts.dll
80+
Microsoft.VisualStudio.Extensibility.Framework.dll
81+
Microsoft.VisualStudio.Extensibility.Framework.resources.dll
7682
Microsoft.VisualStudio.ExtensionEngineContract.dll
7783
Microsoft.VisualStudio.HotReload.Components.dll
7884
Microsoft.VisualStudio.Linux.ConnectionManager.Store.dll
@@ -92,9 +98,11 @@ Microsoft.VisualStudio.Shell.Styles.dll
9298
Microsoft.VisualStudio.Shell.Styles.resources.dll
9399
System.Drawing.Common.dll
94100
System.IdentityModel.Tokens.Jwt.dll
101+
System.IO.FileSystem.AccessControl.dll
95102
System.Management.Automation.dll
96103
System.Memory.Data.dll
97104
System.Net.Http.Formatting.dll
105+
System.Security.Cryptography.ProtectedData.dll
98106
System.Text.Encodings.Web.dll
99107
System.Web.Http.dll
100108

src/NuGet.Clients/NuGet.VisualStudio.Client/.vsixinclude

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,8 @@ NuGet.Versioning.dll
5858
NuGet.Versioning.resources.dll
5959

6060
# 3rd party dlls to keep
61+
Microsoft.Extensions.DependencyInjection.dll
62+
Microsoft.Extensions.DependencyInjection.Abstractions.dll
6163
Microsoft.Extensions.FileProviders.Abstractions.dll
6264
Microsoft.Extensions.FileSystemGlobbing.dll
6365
Microsoft.Extensions.Primitives.dll

src/NuGet.Clients/NuGet.VisualStudio.Client/NuGet.VisualStudio.Client.csproj

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@
2020
<ExtensionInstallationFolder>Microsoft\NuGet</ExtensionInstallationFolder>
2121
<NgenApplicationDefault>[INSTALLDIR]\Common7\IDE\vsn.exe</NgenApplicationDefault>
2222
<NgenPriorityDefault>3</NgenPriorityDefault>
23+
<VssdkCompatibleExtension>true</VssdkCompatibleExtension>
2324
</PropertyGroup>
2425

2526
<PropertyGroup Condition="'$(BuildingInsideVisualStudio)' == 'True'">
@@ -28,6 +29,7 @@
2829
<StartArguments>/rootsuffix Exp /log</StartArguments>
2930
<CreateVsixContainer>True</CreateVsixContainer>
3031
<DeployExtension>True</DeployExtension>
32+
<VsixDeployOnDebug>True</VsixDeployOnDebug>
3133
</PropertyGroup>
3234

3335
<ItemGroup>
@@ -289,6 +291,9 @@
289291
</ItemGroup>
290292

291293
<ItemGroup>
294+
<PackageReference Include="Microsoft.VisualStudio.Extensibility.Sdk" PrivateAssets="all" />
295+
<PackageReference Include="Microsoft.VisualStudio.Extensibility.Build" PrivateAssets="all" />
296+
292297
<!-- This is important because otherwise the VSSDK will include the unsigned version coming from the global packages folder instead of the in-place signed one from the bootstrapped packages folder -->
293298
<PackageReference Include="Lucene.Net" ExcludeAssets="all" GeneratePathProperty="true" />
294299
<!-- dependency of Lucene.net. Can delete when Lucene.net has an update with a newer dependency on sharpziplib -->
Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
// Copyright (c) .NET Foundation. All rights reserved.
2+
// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
3+
4+
using Microsoft.VisualStudio.Extensibility;
5+
6+
namespace NuGet.VisualStudio.Client
7+
{
8+
[VisualStudioContribution]
9+
public class NuGetExtension : Extension
10+
{
11+
public override ExtensionConfiguration ExtensionConfiguration => new()
12+
{
13+
RequiresInProcessHosting = true,
14+
};
15+
}
16+
}

src/NuGet.Clients/NuGet.VisualStudio.Client/source.extension.vsixmanifest

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,10 +7,13 @@
77
<PackageId>Microsoft.VisualStudio.NuGet.Core</PackageId>
88
<AllowClientRole>true</AllowClientRole>
99
</Metadata>
10+
<Dependencies>
11+
<Dependency Id="Microsoft.Framework.NDP" DisplayName="Microsoft .NET Framework" d:Source="Manual" Version="[4.5,)" />
12+
</Dependencies>
1013
<Prerequisites>
1114
<Prerequisite Id="Microsoft.VisualStudio.Component.CoreEditor" Version="[17.0,)" DisplayName="Visual Studio core editor" />
1215
</Prerequisites>
13-
<Installation SystemComponent="true" InstalledByMsi="false" AllUsers="true">
16+
<Installation ExtensionType="VSSDK+VisualStudio.Extensibility" SystemComponent="true" InstalledByMsi="false" AllUsers="true">
1417
<InstallationTarget Id="Microsoft.VisualStudio.Pro" Version="[17.0,)">
1518
<ProductArchitecture>amd64</ProductArchitecture>
1619
</InstallationTarget>

0 commit comments

Comments
 (0)