Merge pull request #69 from microsoft/upgrade-nuget-packages

upgraded out of date nuget packages
This commit is contained in:
Michael Larson 2022-05-02 13:05:31 -07:00 коммит произвёл GitHub
Родитель 5530e30b49 007f201d8b
Коммит 6c193dbb54
Не найден ключ, соответствующий данной подписи
Идентификатор ключа GPG: 4AEE18F83AFDEB23
28 изменённых файлов: 98 добавлений и 51 удалений

Просмотреть файл

@ -1,4 +1,4 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="vswhere" version="1.0.62" />
<package id="vswhere" version="2.8.4" />
</packages>

Просмотреть файл

@ -8,7 +8,7 @@ parameters:
Sign: false
steps:
- powershell: |
- pwsh: |
dotnet tool install --tool-path "${env:AGENT_TOOLSDIRECTORY}\nbgv" nbgv
$version = & "${env:AGENT_TOOLSDIRECTORY}\nbgv\nbgv.exe" get-version --variable SemVer1
& "${env:AGENT_TOOLSDIRECTORY}\nbgv\nbgv.exe" cloud --version $version
@ -22,12 +22,11 @@ steps:
- task: NuGetCommand@2
displayName: Restore nuget packages
- powershell: |
Install-PackageProvider -Name NuGet -MinimumVersion 2.8.5.201 -Force
- pwsh: |
Install-Module -Name platyPS -Repository PSGallery -SkipPublisherCheck -Force
displayName: Install PowerShell modules
- powershell: |
- pwsh: |
New-ExternalHelp -Path docs\VSSetup -OutputPath "src\VSSetup.PowerShell\bin\${env:CONFIGURATION}" -Force
displayName: Compile documentation
env:
@ -86,7 +85,7 @@ steps:
mergeTestResults: true
condition: succeededOrFailed()
- powershell: |
- pwsh: |
If (-Not (Test-Path -Path $env:OUTDIR -PathType Container)) { $null = New-Item -Path $env:OUTDIR -Type Directory }
Compress-Archive -Path LICENSE.txt, "${env:SRCDIR}\*.dll", "${env:SRCDIR}\*.dll-Help.xml", "${env:SRCDIR}\about_*.help.txt", "${env:SRCDIR}\VSSetup.*" -DestinationPath "${env:OUTDIR}\VSSetup.zip"
displayName: Archive output

Просмотреть файл

@ -5,6 +5,7 @@
# Based on latest image cached by Azure Pipelines: https://docs.microsoft.com/azure/devops/pipelines/agents/hosted#software
FROM mcr.microsoft.com/dotnet/framework/sdk:4.8-windowsservercore-ltsc2019
SHELL ["powershell.exe", "-ExecutionPolicy", "Bypass", "-Command"]
ENV INSTALLER_VERSION=1.14.190.31519 `

Просмотреть файл

@ -5,6 +5,7 @@
# Based on latest image cached by Azure Pipelines: https://docs.microsoft.com/azure/devops/pipelines/agents/hosted#software
FROM mcr.microsoft.com/dotnet/framework/sdk:4.8-windowsservercore-ltsc2019
SHELL ["powershell.exe", "-ExecutionPolicy", "Bypass", "-Command"]
ENV INSTALLER_VERSION=1.14.190.31519 `

Просмотреть файл

@ -7,7 +7,7 @@ namespace Microsoft.VisualStudio.Setup
{
using System.Collections.Generic;
using System.Collections.ObjectModel;
using Configuration;
using Microsoft.VisualStudio.Setup.Configuration;
/// <summary>
/// Represents errors that occurred during the last install operation.
@ -17,6 +17,10 @@ namespace Microsoft.VisualStudio.Setup
private readonly IList<FailedPackageReference> failedPackages;
private readonly IList<PackageReference> skippedPackages;
/// <summary>
/// Initializes a new instance of the <see cref="Errors"/> class, internal only.
/// </summary>
/// <param name="errors">errors to initialize with.</param>
internal Errors(ISetupErrorState errors)
{
Validate.NotNull(errors, nameof(errors));

Просмотреть файл

@ -5,7 +5,8 @@
namespace Microsoft.VisualStudio.Setup
{
using Configuration;
using System;
using Microsoft.VisualStudio.Setup.Configuration;
/// <summary>
/// Represents a failed package reference.

Просмотреть файл

@ -12,7 +12,7 @@ namespace Microsoft.VisualStudio.Setup
using System.Globalization;
using System.Linq;
using System.Reflection;
using Configuration;
using Microsoft.VisualStudio.Setup.Configuration;
/// <summary>
/// Represents an instance of an installed product.

Просмотреть файл

@ -23,6 +23,9 @@ namespace Microsoft.VisualStudio.Setup
this.handle = handle;
}
/// <summary>
/// Finalizes an instance of the <see cref="Module"/> class.
/// </summary>
~Module()
{
Dispose(false);

Просмотреть файл

@ -69,7 +69,7 @@ namespace Microsoft.VisualStudio.Setup
}
#pragma warning disable SA1201 // Elements must appear in the correct order
#pragma warning disable CS1574 // XML comment has cref attribute that could not be resolved
/// <summary>
/// Flags for <see cref="GetModuleHandleEx(GetModuleHandleExFlags, IntPtr, out SafeHandle)"/>.
/// </summary>
@ -81,6 +81,6 @@ namespace Microsoft.VisualStudio.Setup
/// </summary>
FromAddress = 4,
}
#pragma warning restore CS1574 // XML comment has cref attribute that could not be resolved
#pragma warning restore SA1201 // Elements must appear in the correct order
}

Просмотреть файл

@ -6,7 +6,7 @@
namespace Microsoft.VisualStudio.Setup
{
using System;
using Configuration;
using Microsoft.VisualStudio.Setup.Configuration;
/// <summary>
/// Represents a package reference.

Просмотреть файл

@ -5,7 +5,8 @@
namespace Microsoft.VisualStudio.Setup
{
using Configuration;
using System;
using Microsoft.VisualStudio.Setup.Configuration;
/// <summary>
/// Creates <see cref="PackageReference"/> or derivative classes.

Просмотреть файл

@ -10,8 +10,8 @@ namespace Microsoft.VisualStudio.Setup.PowerShell
using System.Linq;
using System.Management.Automation;
using System.Runtime.InteropServices;
using Configuration;
using Properties;
using Microsoft.VisualStudio.Setup.Configuration;
using Microsoft.VisualStudio.Setup.Properties;
/// <summary>
/// The Get-VSSetupInstance command.

Просмотреть файл

@ -10,7 +10,7 @@ namespace Microsoft.VisualStudio.Setup.PowerShell
using System.Linq;
using System.Management.Automation;
using System.Text.RegularExpressions;
using Configuration;
using Microsoft.VisualStudio.Setup.Configuration;
/// <summary>
/// The Select-VSSetupInstance command.

Просмотреть файл

@ -7,8 +7,11 @@ namespace Microsoft.VisualStudio.Setup
{
using System.IO;
using System.Runtime.InteropServices;
using Configuration;
using Microsoft.VisualStudio.Setup.Configuration;
/// <summary>
/// Factory class used to create instances of <see cref="ISetupConfiguration2"/>.
/// </summary>
internal static class QueryFactory
{
/// <summary>

Просмотреть файл

@ -52,6 +52,9 @@ namespace Microsoft.VisualStudio.Setup
/// </summary>
public ICollection<TValue> Values => dictionary.Values;
/// <summary>
/// Gets a value indicating whether collection is read only. Always returns true since this is a read only collection.
/// </summary>
bool ICollection<KeyValuePair<TKey, TValue>>.IsReadOnly => true;
/// <summary>
@ -66,30 +69,43 @@ namespace Microsoft.VisualStudio.Setup
set { throw new NotSupportedException(); }
}
/// <summary>
/// Unsupported, this is read only so this will always throw <see cref="NotSupportedException"/>.
/// </summary>
/// <param name="item">Item to add.</param>
/// <exception cref="NotSupportedException"> will always throw since this method is not supported.</exception>
void ICollection<KeyValuePair<TKey, TValue>>.Add(KeyValuePair<TKey, TValue> item)
{
throw new NotSupportedException();
}
/// <summary>
/// Unsupported, this is read only so this will always throw <see cref="NotSupportedException"/>.
/// </summary>
/// <param name="key">key of value to add.</param>
/// <param name="value">value to add with key.</param>
/// <exception cref="NotSupportedException"> will always throw since this method is not supported.</exception>
void IDictionary<TKey, TValue>.Add(TKey key, TValue value)
{
throw new NotSupportedException();
}
/// <summary>
/// Unsupported, this is read only so this will always throw <see cref="NotSupportedException"/>.
/// </summary>
/// <exception cref="NotSupportedException"> will always throw since this method is not supported.</exception>
void ICollection<KeyValuePair<TKey, TValue>>.Clear()
{
throw new NotSupportedException();
}
/// <inheritdoc/>
bool ICollection<KeyValuePair<TKey, TValue>>.Contains(KeyValuePair<TKey, TValue> item) => dictionary.Contains(item);
/// <summary>
/// Determines whether the dictionary contains an element that has the specified key.
/// </summary>
/// <param name="key">The key to locate in the dictionary.</param>
/// <returns>true if the dictionary contains an element that has the specified key; otherwise, false.</returns>
/// <inheritdoc/>
public bool ContainsKey(TKey key) => dictionary.ContainsKey(key);
/// <inheritdoc/>
void ICollection<KeyValuePair<TKey, TValue>>.CopyTo(KeyValuePair<TKey, TValue>[] array, int arrayIndex) => dictionary.CopyTo(array, arrayIndex);
/// <summary>
@ -98,11 +114,23 @@ namespace Microsoft.VisualStudio.Setup
/// <returns>An enumerator that can be used to iterate through the read-only dictionary.</returns>
public IEnumerator<KeyValuePair<TKey, TValue>> GetEnumerator() => dictionary.GetEnumerator();
/// <summary>
/// Unsupported, this is read only so this will always throw <see cref="NotSupportedException"/>.
/// </summary>
/// <param name="item">item to remove.</param>
/// <returns>false.</returns>
/// <exception cref="NotSupportedException"> will always throw since this method is not supported.</exception>
bool ICollection<KeyValuePair<TKey, TValue>>.Remove(KeyValuePair<TKey, TValue> item)
{
throw new NotSupportedException();
}
/// <summary>
/// Unsupported, this is read only so this will always throw <see cref="NotSupportedException"/>.
/// </summary>
/// <param name="key">key of value to remove.</param>
/// <returns>false.</returns>
/// <exception cref="NotSupportedException"> will always throw since this method is not supported.</exception>
bool IDictionary<TKey, TValue>.Remove(TKey key)
{
throw new NotSupportedException();
@ -116,6 +144,7 @@ namespace Microsoft.VisualStudio.Setup
/// <returns>true if the read-only dictionary contains an element with the specified key; otherwise, false.</returns>
public bool TryGetValue(TKey key, out TValue value) => dictionary.TryGetValue(key, out value);
/// <inheritdoc/>
IEnumerator IEnumerable.GetEnumerator()
{
return GetEnumerator();

Просмотреть файл

@ -2,6 +2,7 @@
// Copyright (C) Microsoft Corporation. All rights reserved.
// Licensed under the MIT license. See LICENSE.txt in the project root for license information.
// </copyright>
#pragma warning disable SA1314 // Type parameter names should begin with T
namespace Microsoft.VisualStudio.Setup
{
@ -10,7 +11,7 @@ namespace Microsoft.VisualStudio.Setup
using System.Collections.ObjectModel;
using System.Linq;
using System.Runtime.InteropServices;
using Configuration;
using Microsoft.VisualStudio.Setup.Configuration;
/// <summary>
/// Utility methods.
@ -160,3 +161,4 @@ namespace Microsoft.VisualStudio.Setup
}
}
}
#pragma warning restore SA1314 // Type parameter names should begin with T

Просмотреть файл

@ -26,6 +26,7 @@
<DefineConstants>DEBUG;TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<DocumentationFile>bin\Debug\Microsoft.VisualStudio.Setup.PowerShell.xml</DocumentationFile>
</PropertyGroup>
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
<DebugType>pdbonly</DebugType>
@ -34,6 +35,7 @@
<DefineConstants>TRACE</DefineConstants>
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<DocumentationFile>bin\Release\Microsoft.VisualStudio.Setup.PowerShell.xml</DocumentationFile>
</PropertyGroup>
<ItemGroup>
<Reference Include="Microsoft.VisualStudio.Setup.Configuration.Interop, Version=1.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
@ -100,8 +102,8 @@
</EmbeddedResource>
</ItemGroup>
<ItemGroup>
<Analyzer Include="..\..\packages\StyleCop.Analyzers.1.0.2\analyzers\dotnet\cs\StyleCop.Analyzers.CodeFixes.dll" />
<Analyzer Include="..\..\packages\StyleCop.Analyzers.1.0.2\analyzers\dotnet\cs\StyleCop.Analyzers.dll" />
<Analyzer Include="..\..\packages\StyleCop.Analyzers.1.1.118\analyzers\dotnet\cs\StyleCop.Analyzers.CodeFixes.dll" />
<Analyzer Include="..\..\packages\StyleCop.Analyzers.1.1.118\analyzers\dotnet\cs\StyleCop.Analyzers.dll" />
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<Import Project="..\..\build\Transform.targets" />
@ -112,7 +114,7 @@
</PropertyGroup>
<Error Condition="!Exists('..\..\packages\MicroBuild.Core.0.3.0\build\MicroBuild.Core.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\MicroBuild.Core.0.3.0\build\MicroBuild.Core.props'))" />
<Error Condition="!Exists('..\..\packages\MicroBuild.Core.0.3.0\build\MicroBuild.Core.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\MicroBuild.Core.0.3.0\build\MicroBuild.Core.targets'))" />
<Error Condition="!Exists('..\..\packages\Nerdbank.GitVersioning.2.3.38\build\Nerdbank.GitVersioning.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Nerdbank.GitVersioning.2.3.38\build\Nerdbank.GitVersioning.targets'))" />
<Error Condition="!Exists('..\..\packages\Nerdbank.GitVersioning.2.3.186\build\Nerdbank.GitVersioning.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Nerdbank.GitVersioning.2.3.186\build\Nerdbank.GitVersioning.targets'))" />
</Target>
<Target Name="PopulateFilesToSign" AfterTargets="AfterBuild" BeforeTargets="SignFiles">
<ItemGroup>
@ -125,5 +127,5 @@
</ItemGroup>
</Target>
<Import Project="..\..\packages\MicroBuild.Core.0.3.0\build\MicroBuild.Core.targets" Condition="Exists('..\..\packages\MicroBuild.Core.0.3.0\build\MicroBuild.Core.targets')" />
<Import Project="..\..\packages\Nerdbank.GitVersioning.2.3.38\build\Nerdbank.GitVersioning.targets" Condition="Exists('..\..\packages\Nerdbank.GitVersioning.2.3.38\build\Nerdbank.GitVersioning.targets')" />
</Project>
<Import Project="..\..\packages\Nerdbank.GitVersioning.2.3.186\build\Nerdbank.GitVersioning.targets" Condition="Exists('..\..\packages\Nerdbank.GitVersioning.2.3.186\build\Nerdbank.GitVersioning.targets')" />
</Project>

Просмотреть файл

@ -6,7 +6,7 @@
namespace Microsoft.VisualStudio.Setup
{
using System;
using Properties;
using Microsoft.VisualStudio.Setup.Properties;
/// <summary>
/// Argument validation utility methods.

Просмотреть файл

@ -3,6 +3,6 @@
<package id="MicroBuild.Core" version="0.3.0" targetFramework="net35" developmentDependency="true" />
<package id="Microsoft.PowerShell.2.ReferenceAssemblies" version="1.0.0" targetFramework="net35" />
<package id="Microsoft.VisualStudio.Setup.Configuration.Interop" version="1.11.2290" targetFramework="net35" developmentDependency="true" />
<package id="Nerdbank.GitVersioning" version="2.3.38" targetFramework="net35" developmentDependency="true" />
<package id="StyleCop.Analyzers" version="1.0.2" targetFramework="net35" developmentDependency="true" />
<package id="Nerdbank.GitVersioning" version="2.3.186" targetFramework="net35" developmentDependency="true" />
<package id="StyleCop.Analyzers" version="1.1.118" targetFramework="net35" developmentDependency="true" />
</packages>

Просмотреть файл

@ -7,7 +7,7 @@ namespace Microsoft.VisualStudio.Setup
{
using System;
using System.Runtime.InteropServices;
using Configuration;
using Microsoft.VisualStudio.Setup.Configuration;
using Moq;
using Xunit;

Просмотреть файл

@ -6,7 +6,7 @@
namespace Microsoft.VisualStudio.Setup
{
using System;
using Configuration;
using Microsoft.VisualStudio.Setup.Configuration;
using Moq;
using Xunit;

Просмотреть файл

@ -8,7 +8,7 @@ namespace Microsoft.VisualStudio.Setup
using System;
using System.Linq;
using System.Runtime.InteropServices;
using Configuration;
using Microsoft.VisualStudio.Setup.Configuration;
using Moq;
using Xunit;

Просмотреть файл

@ -6,7 +6,7 @@
namespace Microsoft.VisualStudio.Setup
{
using System;
using Configuration;
using Microsoft.VisualStudio.Setup.Configuration;
using Moq;
using Xunit;

Просмотреть файл

@ -7,7 +7,7 @@ namespace Microsoft.VisualStudio.Setup
{
using System;
using System.Runtime.InteropServices;
using Configuration;
using Microsoft.VisualStudio.Setup.Configuration;
using Moq;
using Xunit;

Просмотреть файл

@ -12,7 +12,7 @@ namespace Microsoft.VisualStudio.Setup.PowerShell
{
[Theory]
[InlineData("invalid", false)]
[InlineData("1", "false")]
[InlineData("1", false)]
[InlineData("1.0", true)]
[InlineData("1.20.300", true)]
[InlineData("1.20.300.4000", true)]

Просмотреть файл

@ -9,7 +9,7 @@ namespace Microsoft.VisualStudio.Setup
using System.Collections.Generic;
using System.Linq;
using System.Runtime.InteropServices;
using Configuration;
using Microsoft.VisualStudio.Setup.Configuration;
using Moq;
using Xunit;

Просмотреть файл

@ -11,7 +11,7 @@
<AppDesignerFolder>Properties</AppDesignerFolder>
<RootNamespace>Microsoft.VisualStudio.Setup</RootNamespace>
<AssemblyName>Microsoft.VisualStudio.Setup.PowerShell.Test</AssemblyName>
<TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
<TargetFrameworkVersion>v4.5.1</TargetFrameworkVersion>
<FileAlignment>512</FileAlignment>
<TargetFrameworkProfile>
</TargetFrameworkProfile>
@ -39,6 +39,7 @@
<ErrorReport>prompt</ErrorReport>
<WarningLevel>4</WarningLevel>
<Prefer32Bit>false</Prefer32Bit>
<DocumentationFile>bin\Release\Microsoft.VisualStudio.Setup.PowerShell.Test.xml</DocumentationFile>
</PropertyGroup>
<ItemGroup>
<Reference Include="Castle.Core, Version=3.3.0.0, Culture=neutral, PublicKeyToken=407dd0808d44fbdc, processorArchitecture=MSIL">
@ -114,8 +115,8 @@
<Service Include="{82A7F48D-3B50-4B1E-B82E-3ADA8210C358}" />
</ItemGroup>
<ItemGroup>
<Analyzer Include="..\..\packages\StyleCop.Analyzers.1.0.2\analyzers\dotnet\cs\StyleCop.Analyzers.CodeFixes.dll" />
<Analyzer Include="..\..\packages\StyleCop.Analyzers.1.0.2\analyzers\dotnet\cs\StyleCop.Analyzers.dll" />
<Analyzer Include="..\..\packages\StyleCop.Analyzers.1.1.118\analyzers\dotnet\cs\StyleCop.Analyzers.CodeFixes.dll" />
<Analyzer Include="..\..\packages\StyleCop.Analyzers.1.1.118\analyzers\dotnet\cs\StyleCop.Analyzers.dll" />
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.CSharp.targets" />
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
@ -123,7 +124,7 @@
<ErrorText>This project references NuGet package(s) that are missing on this computer. Use NuGet Package Restore to download them. For more information, see http://go.microsoft.com/fwlink/?LinkID=322105. The missing file is {0}.</ErrorText>
</PropertyGroup>
<Error Condition="!Exists('..\..\packages\xunit.runner.visualstudio.2.3.1\build\net20\xunit.runner.visualstudio.props')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\xunit.runner.visualstudio.2.3.1\build\net20\xunit.runner.visualstudio.props'))" />
<Error Condition="!Exists('..\..\packages\Nerdbank.GitVersioning.2.3.38\build\Nerdbank.GitVersioning.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Nerdbank.GitVersioning.2.3.38\build\Nerdbank.GitVersioning.targets'))" />
<Error Condition="!Exists('..\..\packages\Nerdbank.GitVersioning.2.3.186\build\Nerdbank.GitVersioning.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\..\packages\Nerdbank.GitVersioning.2.3.186\build\Nerdbank.GitVersioning.targets'))" />
</Target>
<Import Project="..\..\packages\Nerdbank.GitVersioning.2.3.38\build\Nerdbank.GitVersioning.targets" Condition="Exists('..\..\packages\Nerdbank.GitVersioning.2.3.38\build\Nerdbank.GitVersioning.targets')" />
<Import Project="..\..\packages\Nerdbank.GitVersioning.2.3.186\build\Nerdbank.GitVersioning.targets" Condition="Exists('..\..\packages\Nerdbank.GitVersioning.2.3.186\build\Nerdbank.GitVersioning.targets')" />
</Project>

Просмотреть файл

@ -1,16 +1,16 @@
<?xml version="1.0" encoding="utf-8"?>
<packages>
<package id="Castle.Core" version="3.3.3" targetFramework="net45" />
<package id="Castle.Core" version="3.3.3" targetFramework="net45" requireReinstallation="true" />
<package id="Microsoft.PowerShell.2.ReferenceAssemblies" version="1.0.0" targetFramework="net45" />
<package id="Microsoft.VisualStudio.Setup.Configuration.Interop" version="1.11.2290" targetFramework="net45" />
<package id="Moq" version="4.5.30" targetFramework="net45" />
<package id="Nerdbank.GitVersioning" version="2.3.38" targetFramework="net45" developmentDependency="true" />
<package id="StyleCop.Analyzers" version="1.0.2" targetFramework="net45" developmentDependency="true" />
<package id="Moq" version="4.5.30" targetFramework="net45" requireReinstallation="true" />
<package id="Nerdbank.GitVersioning" version="2.3.186" targetFramework="net451" developmentDependency="true" />
<package id="StyleCop.Analyzers" version="1.1.118" targetFramework="net451" developmentDependency="true" />
<package id="xunit" version="2.1.0" targetFramework="net45" />
<package id="xunit.abstractions" version="2.0.0" targetFramework="net45" />
<package id="xunit.assert" version="2.1.0" targetFramework="net45" />
<package id="xunit.core" version="2.1.0" targetFramework="net45" />
<package id="xunit.extensibility.core" version="2.1.0" targetFramework="net45" />
<package id="xunit.extensibility.execution" version="2.1.0" targetFramework="net45" />
<package id="xunit.assert" version="2.1.0" targetFramework="net45" requireReinstallation="true" />
<package id="xunit.core" version="2.1.0" targetFramework="net45" requireReinstallation="true" />
<package id="xunit.extensibility.core" version="2.1.0" targetFramework="net45" requireReinstallation="true" />
<package id="xunit.extensibility.execution" version="2.1.0" targetFramework="net45" requireReinstallation="true" />
<package id="xunit.runner.visualstudio" version="2.3.1" targetFramework="net45" developmentDependency="true" />
</packages>