Merge pull request #1075 from aspnet/rybrande/MergeDevIntoRelease21

Merge dev into release21
This commit is contained in:
Ryan Brandenburg 2018-04-17 12:42:48 -07:00 committed by GitHub
commit a2b2c1810e
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
35 changed files with 1196 additions and 407 deletions

1
.gitignore vendored
View File

@ -24,3 +24,4 @@ node_modules
global.json
msbuild.ProjectImports.zip
.env
scripts/tmp/

2
.gitmodules vendored
View File

@ -193,4 +193,4 @@
[submodule "modules/WebHooks"]
path = modules/WebHooks
url = https://github.com/aspnet/WebHooks.git
branch = release/2.1
branch = release/2.1

View File

@ -55,6 +55,7 @@ Microsoft.AspNetCore | [![][metapackage-myget-badge]][metapackage-m
[win-x86-zip]: https://dotnetcli.blob.core.windows.net/dotnet/aspnetcore/Runtime/master/aspnetcore-runtime-latest-win-x86.zip
[win-x86-exe]: https://dotnetcli.blob.core.windows.net/dotnet/aspnetcore/Runtime/master/aspnetcore-runtime-latest-win-x86.exe
[linux-x64-tar]: https://dotnetcli.blob.core.windows.net/dotnet/aspnetcore/Runtime/master/aspnetcore-runtime-latest-linux-x64.tar.gz
[linux-arm-tar]: https://dotnetcli.blob.core.windows.net/dotnet/aspnetcore/Runtime/master/aspnetcore-runtime-latest-linux-arm.tar.gz
[osx-x64-tar]: https://dotnetcli.blob.core.windows.net/dotnet/aspnetcore/Runtime/master/aspnetcore-runtime-latest-osx-x64.tar.gz
[debian-x64-deb]: https://dotnetcli.blob.core.windows.net/dotnet/aspnetcore/Runtime/master/aspnetcore-runtime-latest-x64.deb
[redhat-x64-rpm]: https://dotnetcli.blob.core.windows.net/dotnet/aspnetcore/Runtime/master/aspnetcore-runtime-latest-x64.rpm
@ -77,6 +78,7 @@ Windows (x64) | [Installer (exe)][win-x64-exe]<br>[Archive (zip)][win-x6
Windows (x86) | [Installer (exe)][win-x86-exe]<br>[Archive (zip)][win-x86-zip] | [Installer (exe)][win-x86-exe-rel-21]<br>[Archive (zip)][win-x86-zip-rel-21]
macOS (x64) | [Archive (tar.gz)][osx-x64-tar] | [Archive (tar.gz)][osx-x64-tar-rel-21]
Linux (x64) | [Archive (tar.gz)][linux-x64-tar] | [Archive (tar.gz)][linux-x64-tar-rel-21]
Linux (arm32) | [Archive (tar.gz)][linux-arm-tar] | (not available yet)
Debian/Ubuntu (x64) | [Installer (deb)][debian-x64-deb] | [Installer (deb)][debian-x64-deb-rel-21]
RedHat/Fedora (x64) | [Installer (rpm)][redhat-x64-rpm] | [Installer (rpm)][redhat-x64-rpm-rel-21]
Alpine Linux 3.6 (x64)| [Archive (tar.gz)][alpine.3.6-x64-tar] | [Archive (tar.gz)][alpine.3.6-x64-tar-rel-21]

View File

@ -0,0 +1,17 @@
<!--
The targets in this file should not be executed from a CI build.
They are meant to be used by developers to update the ASP.NET Core configuration.
-->
<Project>
<!-- Generates a .dgml file representing the repo to repo graph of reach korebuild project -->
<Target Name="GenerateSubmoduleGraph" DependsOnTargets="ResolveRepoInfo;GeneratePropsFiles">
<RepoTasks.GenerateSubmoduleGraph
Solutions="@(Solution)"
Artifacts="@(ArtifactInfo)"
Repositories="@(Repository)"
RepositoryRoot="$(RepositoryRoot)"
Properties="Configuration=$(Configuration);BuildNumber=$(BuildNumber);DotNetPackageVersionPropsPath=$(GeneratedPackageVersionPropsPath)" />
</Target>
</Project>

View File

@ -151,7 +151,7 @@
<ItemGroup>
<PackageToPublish Include="%(_PackageArtifactInfoWithCategory.ArtifactPath)" Category="%(_PackageArtifactInfoWithCategory.Category)" />
<PackageToPublish Include="%(_PackageArtifactInfo.ArtifactPath)" Category="%(_PackageArtifactInfo.Category)" Condition="'%(_PackageArtifactInfo.Category)' != ''" />
<PackageToPublish Include="%(_SymbolsPackageArtifactInfo.ArtifactPath)" Category="symbols" />
<PackageToPublish Include="%(_SymbolsPackageArtifactInfo.ArtifactPath)" Category="symbols" IsSymbolsPackage="true" />
</ItemGroup>
<ItemGroup>
@ -174,21 +174,22 @@
Condition="'$(PublishToMyget)' == 'true'">
<Error Text="Missing required property: PublishMyGetFeedUrl" Condition=" '$(PublishMyGetFeedUrl)' == '' "/>
<Error Text="Missing required property: PublishMyGetSymbolsFeedUrl" Condition=" '$(PublishMyGetSymbolsFeedUrl)' == '' "/>
<Error Text="Missing required property: PublishMyGetNpmRegistryUrl" Condition=" '$(PublishMyGetNpmRegistryUrl)' == '' "/>
<Error Text="Missing required property: PublishMyGetFeedKey" Condition=" '$(PublishMyGetFeedKey)' == '' "/>
<!-- Contains the super set of packages that we'd like to publish to MyGet and Azure blob -->
<ItemGroup>
<PackageToPublishToMyGet Include="@(PackageToPublish)" />
</ItemGroup>
<Error Message="No packages found to publish" Condition="@(PackageToPublish->Count()) == 0" />
<Error Message="No packages found to publish" Condition="@(PackageToPublishToMyGet->Count()) == 0" />
<PushNuGetPackages
Packages="@(PackageToPublishToMyGet)"
<PushNuGetPackages Condition="'%(PackageToPublish.IsSymbolsPackage)' != 'true' AND @(PackageToPublish->Count()) != 0"
Packages="@(PackageToPublish)"
Feed="$(PublishMyGetFeedUrl)"
ApiKey="$(PublishMyGetFeedKey)" />
<PushNuGetPackages Condition="'%(PackageToPublish.IsSymbolsPackage)' == 'true' AND @(PackageToPublish->Count()) != 0"
Packages="@(PackageToPublish)"
Feed="$(PublishMyGetSymbolsFeedUrl)"
ApiKey="$(PublishMyGetFeedKey)" />
<PropertyGroup>
<AuthTokenSetting>$(PublishMyGetNpmRegistryUrl.Replace("https:", "")):_authToken</AuthTokenSetting>
</PropertyGroup>
@ -196,9 +197,11 @@
<Exec Command="npm config set &quot;$(AuthTokenSetting)&quot; $(PublishMyGetFeedKey)"
StandardOutputImportance="Normal" />
<Run FileName="npm"
Arguments="publish;--registry;$(PublishMyGetNpmRegistryUrl);%(NpmPackageToPublish.Identity)"
<!-- When you UseCommandProcessor FileName is ignored -->
<Run FileName="cmd"
Arguments="npm;publish;--registry;$(PublishMyGetNpmRegistryUrl);%(NpmPackageToPublish.Identity)"
MaxRetries="5"
UseCommandProcessor="true"
ContinueOnError="true">
<Output TaskParameter="ExitCode" ItemName="_NpmExitCodes" />
</Run>
@ -262,6 +265,7 @@
AccountKey="$(PublishBlobFeedKey)"
ItemsToPush="@(PackageToPublishToTransport)"
Overwrite="$(PushToBlobFeed_Overwrite)"
ManifestBranch="$(BuildBranch)"
ManifestBuildId="$(Version)"
ManifestBuildData="ProductVersion=$(PackageVersion);UniverseCommitHash=$(CommitHash)"
ManifestCommit="$(CommitHash)"
@ -274,6 +278,7 @@
ItemsToPush="@(FilesToPublishToTransport)"
PublishFlatContainer="true"
Overwrite="$(PushToBlobFeed_Overwrite)"
ManifestBranch="$(BuildBranch)"
ManifestBuildId="$(Version)"
ManifestBuildData="ProductVersion=$(PackageVersion);UniverseCommitHash=$(CommitHash)"
ManifestCommit="$(CommitHash)"

View File

@ -56,9 +56,10 @@
<ItemGroup>
<WindowsSharedFxRIDs Include="win-x64;win-x86"/>
<NonWindowsSharedFxRIDs Include="osx-x64" CrossgenSymbolsSupported="false" />
<NonWindowsSharedFxRIDs Include="linux-x64" />
<NonWindowsSharedFxRIDs Include="osx-x64" CrossgenSymbols="false" />
<NonWindowsSharedFxRIDs Include="alpine.3.6-x64" />
<NonWindowsSharedFxRIDs Include="linux-x64" />
<NonWindowsSharedFxRIDs Include="linux-arm" CrossGen="false" />
<AllSharedFxRIDs Include="@(WindowsSharedFxRIDs);@(NonWindowsSharedFxRIDs)"/>
</ItemGroup>
</Project>

View File

@ -25,7 +25,7 @@
<ItemGroup>
<!-- Cartesian products in MSBuild are fun :) -->
<_SharedFrameworkSymbolsPackage Include="@(SharedFrameworkName)" Condition="'%(AllSharedFxRIDs.CrossgenSymbolsSupported)' != 'false'">
<_SharedFrameworkSymbolsPackage Include="@(SharedFrameworkName)" Condition="'%(AllSharedFxRIDs.CrossgenSymbols)' != 'false' AND '%(AllSharedFxRIDs.Crossgen)' != 'false'">
<Rid>%(AllSharedFxRIDs.Identity)</Rid>
</_SharedFrameworkSymbolsPackage>
<_SharedFrameworkSymbolsPackage Update="@(_SharedFrameworkSymbolsPackage)" PackageId="runtime.%(Rid).%(Identity)" />
@ -117,6 +117,10 @@
<Target Name="DefineSharedFxPrerequisites">
<PropertyGroup>
<RIDIsAcceptable Condition="'%(AllSharedFxRIDs.Identity)' == '$(SharedFxRID)'">true</RIDIsAcceptable>
<CrossGenSharedFx>false</CrossGenSharedFx>
<CrossGenSharedFx Condition="'%(AllSharedFxRIDs.Identity)' == '$(SharedFxRID)' AND '%(AllSharedFxRIDs.Crossgen)' != 'false' ">true</CrossGenSharedFx>
<CrossGenSharedFxSymbols>false</CrossGenSharedFxSymbols>
<CrossGenSharedFxSymbols Condition="'$(CrossGenSharedFx)' != 'false' AND '%(AllSharedFxRIDs.Identity)' == '$(SharedFxRID)' AND '%(AllSharedFxRIDs.CrossgenSymbols)' != 'false' ">true</CrossGenSharedFxSymbols>
</PropertyGroup>
<Error Text="&quot;$(SharedFxRID)&quot; not acceptable as a SharedFxRID, please specify an acceptable value: {@(AllSharedFxRIDs)}." Condition="'$(RIDIsAcceptable)' != 'true'"/>
@ -366,11 +370,16 @@
<MakeDir Directories="$([System.IO.Path]::GetDirectoryName('%(AssembliesToCrossgen.Destination)'))" />
<WriteLinesToFile File="%(AssembliesToCrossgen.Rsp)" Lines="@(CrossGenArgs)" Overwrite="true" />
<Exec Command="$(SharedFxCrossGenToolDirectory)$(CrossGenTool) @%(AssembliesToCrossgen.Rsp)" EnvironmentVariables="COMPlus_PartialNGen=0" />
<Copy Condition="'$(CrossGenSharedFx)' == 'false'"
SourceFiles="%(AssembliesToCrossgen.Source)"
DestinationFiles="%(AssembliesToCrossgen.Destination)" />
<Exec Condition="'$(CrossGenSharedFx)' != 'false'"
Command="$(SharedFxCrossGenToolDirectory)$(CrossGenTool) @%(AssembliesToCrossgen.Rsp)"
EnvironmentVariables="COMPlus_PartialNGen=0" />
</Target>
<Target Name="CrossGenSymbols"
Condition="$([MSBuild]::IsOSPlatform('Linux')) OR $([MSBuild]::IsOSPlatform('Windows'))"
Condition=" '$(CrossGenSharedFxSymbols)' != 'false' "
DependsOnTargets="CrossGenAssemblies"
Inputs="@(AssembliesToCrossgen)"
Outputs="%(AssembliesToCrossgen.SymbolsRsp)">

View File

@ -28,12 +28,13 @@
<PackageArtifact Include="dotnet-watch" Category="shipoob" />
<PackageArtifact Include="Microsoft.AspNet.Identity.AspNetCoreCompat" Category="noship" />
<PackageArtifact Include="Microsoft.AspNetCore" Category="ship" AppMetapackage="true" AllMetapackage="true"/>
<PackageArtifact Include="Microsoft.AspNetCore.App" Category="ship" LZMA="true" />
<PackageArtifact Include="Microsoft.AspNetCore.App" Category="ship" />
<PackageArtifact Include="Microsoft.AspNetCore.All" Category="ship" LZMA="true" />
<PackageArtifact Include="Microsoft.AspNetCore.Analyzers" Category="shipoob" />
<PackageArtifact Include="Microsoft.AspNetCore.Antiforgery" Category="ship" AppMetapackage="true" AllMetapackage="true"/>
<PackageArtifact Include="Microsoft.AspNetCore.ApplicationInsights.HostingStartup" Category="ship" AllMetapackage="true" />
<PackageArtifact Include="Microsoft.AspNetCore.AspNetCoreModule" Category="noship" />
<PackageArtifact Include="Microsoft.AspNetCore.AspNetCoreModuleV1" Category="noship" />
<PackageArtifact Include="Microsoft.AspNetCore.Authentication" Category="ship" AppMetapackage="true" AllMetapackage="true"/>
<PackageArtifact Include="Microsoft.AspNetCore.Authentication.Abstractions" Category="ship" AppMetapackage="true" AllMetapackage="true"/>
<PackageArtifact Include="Microsoft.AspNetCore.Authentication.AzureAD.UI" Category="ship" LZMA="true" />
@ -156,19 +157,18 @@
<PackageArtifact Include="Microsoft.AspNetCore.SignalR" Category="ship" AppMetapackage="true" AllMetapackage="true"/>
<PackageArtifact Include="Microsoft.AspNetCore.SignalR.Common" Category="ship" AppMetapackage="true" AllMetapackage="true"/>
<PackageArtifact Include="Microsoft.AspNetCore.SignalR.Core" Category="ship" AppMetapackage="true" AllMetapackage="true"/>
<PackageArtifact Include="Microsoft.AspNetCore.SignalR.Protocols.Json" Category="ship" AppMetapackage="true" AllMetapackage="true"/>
<PackageArtifact Include="Microsoft.AspNetCore.Http.Connections.Common" Category="ship" AppMetapackage="true" AllMetapackage="true"/>
<PackageArtifact Include="Microsoft.AspNetCore.Http.Connections" Category="ship" AppMetapackage="true" AllMetapackage="true"/>
<!-- SignalR Redis support is not part of the .App meta-package -->
<PackageArtifact Include="Microsoft.AspNetCore.SignalR.Redis" Category="ship" AllMetapackage="true" />
<!-- SignalR Client and MsgPack Protocol support are not part of any meta-packages -->
<!-- SignalR Client and MessagePack Protocol support are not part of any meta-packages -->
<PackageArtifact Include="Microsoft.AspNetCore.SignalR.Client" Category="ship" />
<PackageArtifact Include="Microsoft.AspNetCore.SignalR.Client.Core" Category="ship" />
<PackageArtifact Include="Microsoft.AspNetCore.Http.Connections.Client" Category="ship" />
<PackageArtifact Include="Microsoft.AspNetCore.SignalR.Client.MsgPack" Category="ship" />
<PackageArtifact Include="Microsoft.AspNetCore.SignalR.Protocols.MsgPack" Category="ship" />
<PackageArtifact Include="Microsoft.AspNetCore.SignalR.MsgPack" Category="ship" />
<PackageArtifact Include="Microsoft.AspNetCore.SignalR.Protocols.MessagePack" Category="ship" />
<PackageArtifact Include="Microsoft.AspNetCore.SpaServices" Category="ship" AppMetapackage="true" AllMetapackage="true"/>
<PackageArtifact Include="Microsoft.AspNetCore.SpaServices.Extensions" Category="ship" AppMetapackage="true" AllMetapackage="true"/>
@ -255,7 +255,7 @@
<PackageArtifact Include="Microsoft.Extensions.Hosting.Abstractions" Category="ship" AppMetapackage="true" AllMetapackage="true" />
<PackageArtifact Include="Microsoft.Extensions.Hosting" Category="ship" AppMetapackage="true" AllMetapackage="true" />
<PackageArtifact Include="Microsoft.Extensions.Http" Category="ship" AppMetapackage="true" AllMetapackage="true" />
<PackageArtifact Include="Microsoft.Extensions.Http.Polly" Category="noship" />
<PackageArtifact Include="Microsoft.Extensions.Http.Polly" Category="ship" AppMetapackage="false" AllMetapackage="false" />
<PackageArtifact Include="Microsoft.Extensions.Identity.Core" Category="ship" AppMetapackage="true" AllMetapackage="true" />
<PackageArtifact Include="Microsoft.Extensions.Identity.Stores" Category="ship" AppMetapackage="true" AllMetapackage="true" />
<PackageArtifact Include="Microsoft.Extensions.Localization" Category="ship" AppMetapackage="true" AllMetapackage="true" />

View File

@ -1,90 +1,35 @@
<Project>
<!-- These package version may be overridden or updated by automation. -->
<PropertyGroup Label="Package Versions: Auto" Condition=" '$(DotNetPackageVersionPropsPath)' == '' ">
<MicrosoftCSharpPackageVersion>4.5.0-preview2-26406-04</MicrosoftCSharpPackageVersion>
<MicrosoftDotNetPlatformAbstractionsPackageVersion>2.1.0-preview2-26406-04</MicrosoftDotNetPlatformAbstractionsPackageVersion>
<MicrosoftExtensionsDependencyModelPackageVersion>2.1.0-preview2-26406-04</MicrosoftExtensionsDependencyModelPackageVersion>
<MicrosoftCSharpPackageVersion>4.5.0-preview3-26413-02</MicrosoftCSharpPackageVersion>
<MicrosoftExtensionsDependencyModelPackageVersion>2.1.0-preview3-26413-05</MicrosoftExtensionsDependencyModelPackageVersion>
<!-- MicrosoftNETCoreApp21PackageVersion is assigned at the bottom so it can automatically pick up MicrosoftNETCoreAppPackageVersion in an orchestrated build. -->
<MicrosoftNETCoreAppPackageVersion>2.1.0-preview2-26406-04</MicrosoftNETCoreAppPackageVersion>
<MicrosoftNETCoreDotNetAppHostPackageVersion>2.1.0-preview2-26406-04</MicrosoftNETCoreDotNetAppHostPackageVersion>
<MicrosoftNETCoreDotNetHostPolicyPackageVersion>2.1.0-preview2-26406-04</MicrosoftNETCoreDotNetHostPolicyPackageVersion>
<MicrosoftNETCoreDotNetHostResolverPackageVersion>2.1.0-preview2-26406-04</MicrosoftNETCoreDotNetHostResolverPackageVersion>
<MicrosoftNETCorePlatformsPackageVersion>2.1.0-preview2-26406-04</MicrosoftNETCorePlatformsPackageVersion>
<MicrosoftWin32RegistryPackageVersion>4.5.0-preview2-26406-04</MicrosoftWin32RegistryPackageVersion>
<MicrosoftNETCoreAppPackageVersion>2.1.0-preview3-26413-05</MicrosoftNETCoreAppPackageVersion>
<MicrosoftWin32RegistryPackageVersion>4.5.0-preview3-26413-02</MicrosoftWin32RegistryPackageVersion>
<NuGetFrameworksPackageVersion>4.7.0-preview4.5065</NuGetFrameworksPackageVersion>
<RuntimeAlpine36X64MicrosoftNETCoreAppPackageVersion>2.1.0-preview2-26406-04</RuntimeAlpine36X64MicrosoftNETCoreAppPackageVersion>
<RuntimeAlpine36X64MicrosoftNETCoreDotNetAppHostPackageVersion>2.1.0-preview2-26406-04</RuntimeAlpine36X64MicrosoftNETCoreDotNetAppHostPackageVersion>
<RuntimeAlpine36X64MicrosoftNETCoreDotNetHostPackageVersion>2.1.0-preview2-26406-04</RuntimeAlpine36X64MicrosoftNETCoreDotNetHostPackageVersion>
<RuntimeAlpine36X64MicrosoftNETCoreDotNetHostPolicyPackageVersion>2.1.0-preview2-26406-04</RuntimeAlpine36X64MicrosoftNETCoreDotNetHostPolicyPackageVersion>
<RuntimeAlpine36X64MicrosoftNETCoreDotNetHostResolverPackageVersion>2.1.0-preview2-26406-04</RuntimeAlpine36X64MicrosoftNETCoreDotNetHostResolverPackageVersion>
<RuntimeLinuxArmMicrosoftNETCoreAppPackageVersion>2.1.0-preview2-26406-04</RuntimeLinuxArmMicrosoftNETCoreAppPackageVersion>
<RuntimeLinuxArmMicrosoftNETCoreDotNetAppHostPackageVersion>2.1.0-preview2-26406-04</RuntimeLinuxArmMicrosoftNETCoreDotNetAppHostPackageVersion>
<RuntimeLinuxArmMicrosoftNETCoreDotNetHostPackageVersion>2.1.0-preview2-26406-04</RuntimeLinuxArmMicrosoftNETCoreDotNetHostPackageVersion>
<RuntimeLinuxArmMicrosoftNETCoreDotNetHostPolicyPackageVersion>2.1.0-preview2-26406-04</RuntimeLinuxArmMicrosoftNETCoreDotNetHostPolicyPackageVersion>
<RuntimeLinuxArmMicrosoftNETCoreDotNetHostResolverPackageVersion>2.1.0-preview2-26406-04</RuntimeLinuxArmMicrosoftNETCoreDotNetHostResolverPackageVersion>
<RuntimeLinuxX64MicrosoftNETCoreAppPackageVersion>2.1.0-preview2-26406-04</RuntimeLinuxX64MicrosoftNETCoreAppPackageVersion>
<RuntimeLinuxX64MicrosoftNETCoreDotNetAppHostPackageVersion>2.1.0-preview2-26406-04</RuntimeLinuxX64MicrosoftNETCoreDotNetAppHostPackageVersion>
<RuntimeLinuxX64MicrosoftNETCoreDotNetHostPackageVersion>2.1.0-preview2-26406-04</RuntimeLinuxX64MicrosoftNETCoreDotNetHostPackageVersion>
<RuntimeLinuxX64MicrosoftNETCoreDotNetHostPolicyPackageVersion>2.1.0-preview2-26406-04</RuntimeLinuxX64MicrosoftNETCoreDotNetHostPolicyPackageVersion>
<RuntimeLinuxX64MicrosoftNETCoreDotNetHostResolverPackageVersion>2.1.0-preview2-26406-04</RuntimeLinuxX64MicrosoftNETCoreDotNetHostResolverPackageVersion>
<RuntimeOsxX64MicrosoftNETCoreAppPackageVersion>2.1.0-preview2-26406-04</RuntimeOsxX64MicrosoftNETCoreAppPackageVersion>
<RuntimeOsxX64MicrosoftNETCoreDotNetAppHostPackageVersion>2.1.0-preview2-26406-04</RuntimeOsxX64MicrosoftNETCoreDotNetAppHostPackageVersion>
<RuntimeOsxX64MicrosoftNETCoreDotNetHostPackageVersion>2.1.0-preview2-26406-04</RuntimeOsxX64MicrosoftNETCoreDotNetHostPackageVersion>
<RuntimeOsxX64MicrosoftNETCoreDotNetHostPolicyPackageVersion>2.1.0-preview2-26406-04</RuntimeOsxX64MicrosoftNETCoreDotNetHostPolicyPackageVersion>
<RuntimeOsxX64MicrosoftNETCoreDotNetHostResolverPackageVersion>2.1.0-preview2-26406-04</RuntimeOsxX64MicrosoftNETCoreDotNetHostResolverPackageVersion>
<RuntimeWinX64MicrosoftNETCoreAppPackageVersion>2.1.0-preview2-26406-04</RuntimeWinX64MicrosoftNETCoreAppPackageVersion>
<RuntimeWinX64MicrosoftNETCoreDotNetAppHostPackageVersion>2.1.0-preview2-26406-04</RuntimeWinX64MicrosoftNETCoreDotNetAppHostPackageVersion>
<RuntimeWinX64MicrosoftNETCoreDotNetHostPackageVersion>2.1.0-preview2-26406-04</RuntimeWinX64MicrosoftNETCoreDotNetHostPackageVersion>
<RuntimeWinX64MicrosoftNETCoreDotNetHostPolicyPackageVersion>2.1.0-preview2-26406-04</RuntimeWinX64MicrosoftNETCoreDotNetHostPolicyPackageVersion>
<RuntimeWinX64MicrosoftNETCoreDotNetHostResolverPackageVersion>2.1.0-preview2-26406-04</RuntimeWinX64MicrosoftNETCoreDotNetHostResolverPackageVersion>
<RuntimeWinX86MicrosoftNETCoreAppPackageVersion>2.1.0-preview2-26406-04</RuntimeWinX86MicrosoftNETCoreAppPackageVersion>
<RuntimeWinX86MicrosoftNETCoreDotNetAppHostPackageVersion>2.1.0-preview2-26406-04</RuntimeWinX86MicrosoftNETCoreDotNetAppHostPackageVersion>
<RuntimeWinX86MicrosoftNETCoreDotNetHostPackageVersion>2.1.0-preview2-26406-04</RuntimeWinX86MicrosoftNETCoreDotNetHostPackageVersion>
<RuntimeWinX86MicrosoftNETCoreDotNetHostPolicyPackageVersion>2.1.0-preview2-26406-04</RuntimeWinX86MicrosoftNETCoreDotNetHostPolicyPackageVersion>
<RuntimeWinX86MicrosoftNETCoreDotNetHostResolverPackageVersion>2.1.0-preview2-26406-04</RuntimeWinX86MicrosoftNETCoreDotNetHostResolverPackageVersion>
<SystemBuffersPackageVersion>4.5.0-preview2-26406-04</SystemBuffersPackageVersion>
<SystemCodeDomPackageVersion>4.5.0-preview2-26406-04</SystemCodeDomPackageVersion>
<SystemCollectionsImmutablePackageVersion>1.5.0-preview2-26406-04</SystemCollectionsImmutablePackageVersion>
<SystemComponentModelAnnotationsPackageVersion>4.5.0-preview2-26406-04</SystemComponentModelAnnotationsPackageVersion>
<SystemCompositionAttributedModelPackageVersion>1.2.0-preview2-26406-04</SystemCompositionAttributedModelPackageVersion>
<SystemCompositionConventionPackageVersion>1.2.0-preview2-26406-04</SystemCompositionConventionPackageVersion>
<SystemCompositionHostingPackageVersion>1.2.0-preview2-26406-04</SystemCompositionHostingPackageVersion>
<SystemCompositionPackageVersion>1.2.0-preview2-26406-04</SystemCompositionPackageVersion>
<SystemCompositionRuntimePackageVersion>1.2.0-preview2-26406-04</SystemCompositionRuntimePackageVersion>
<SystemCompositionTypedPartsPackageVersion>1.2.0-preview2-26406-04</SystemCompositionTypedPartsPackageVersion>
<SystemConfigurationConfigurationManagerPackageVersion>4.5.0-preview2-26406-04</SystemConfigurationConfigurationManagerPackageVersion>
<SystemDataSqlClientPackageVersion>4.5.0-preview2-26406-04</SystemDataSqlClientPackageVersion>
<SystemDiagnosticsDiagnosticSourcePackageVersion>4.5.0-preview2-26406-04</SystemDiagnosticsDiagnosticSourcePackageVersion>
<SystemDiagnosticsEventLogPackageVersion>4.5.0-preview2-26406-04</SystemDiagnosticsEventLogPackageVersion>
<SystemIOFileSystemAccessControlPackageVersion>4.5.0-preview2-26406-04</SystemIOFileSystemAccessControlPackageVersion>
<SystemIOPackagingPackageVersion>4.5.0-preview2-26406-04</SystemIOPackagingPackageVersion>
<SystemIOPipesAccessControlPackageVersion>4.5.0-preview2-26406-04</SystemIOPipesAccessControlPackageVersion>
<SystemIOPipelinesPackageVersion>4.5.0-preview2-26406-04</SystemIOPipelinesPackageVersion>
<SystemIOPortsPackageVersion>4.5.0-preview2-26406-04</SystemIOPortsPackageVersion>
<SystemJsonPackageVersion>4.5.0-preview2-26406-04</SystemJsonPackageVersion>
<SystemMemoryPackageVersion>4.5.0-preview2-26406-04</SystemMemoryPackageVersion>
<SystemNetHttpWinHttpHandlerPackageVersion>4.5.0-preview2-26406-04</SystemNetHttpWinHttpHandlerPackageVersion>
<SystemNetWebSocketsWebSocketProtocolPackageVersion>4.5.0-preview2-26406-04</SystemNetWebSocketsWebSocketProtocolPackageVersion>
<SystemNumericsVectorsPackageVersion>4.5.0-preview2-26406-04</SystemNumericsVectorsPackageVersion>
<SystemReflectionDispatchProxyPackageVersion>4.5.0-preview2-26406-04</SystemReflectionDispatchProxyPackageVersion>
<SystemReflectionMetadataPackageVersion>1.6.0-preview2-26406-04</SystemReflectionMetadataPackageVersion>
<SystemReflectionTypeExtensionsPackageVersion>4.5.0-preview2-26406-04</SystemReflectionTypeExtensionsPackageVersion>
<SystemRuntimeCompilerServicesUnsafePackageVersion>4.5.0-preview2-26406-04</SystemRuntimeCompilerServicesUnsafePackageVersion>
<SystemSecurityAccessControlPackageVersion>4.5.0-preview2-26406-04</SystemSecurityAccessControlPackageVersion>
<SystemSecurityCryptographyCngPackageVersion>4.5.0-preview2-26406-04</SystemSecurityCryptographyCngPackageVersion>
<SystemSecurityCryptographyPkcsPackageVersion>4.5.0-preview2-26406-04</SystemSecurityCryptographyPkcsPackageVersion>
<SystemSecurityCryptographyProtectedDataPackageVersion>4.5.0-preview2-26406-04</SystemSecurityCryptographyProtectedDataPackageVersion>
<SystemSecurityCryptographyXmlPackageVersion>4.5.0-preview2-26406-04</SystemSecurityCryptographyXmlPackageVersion>
<SystemSecurityPermissionsPackageVersion>4.5.0-preview2-26406-04</SystemSecurityPermissionsPackageVersion>
<SystemSecurityPrincipalWindowsPackageVersion>4.5.0-preview2-26406-04</SystemSecurityPrincipalWindowsPackageVersion>
<SystemServiceProcessServiceControllerPackageVersion>4.5.0-preview2-26406-04</SystemServiceProcessServiceControllerPackageVersion>
<SystemTextEncodingCodePagesPackageVersion>4.5.0-preview2-26406-04</SystemTextEncodingCodePagesPackageVersion>
<SystemTextEncodingsWebPackageVersion>4.5.0-preview2-26406-04</SystemTextEncodingsWebPackageVersion>
<SystemThreadingAccessControlPackageVersion>4.5.0-preview2-26406-04</SystemThreadingAccessControlPackageVersion>
<SystemThreadingChannelsPackageVersion>4.5.0-preview2-26406-04</SystemThreadingChannelsPackageVersion>
<SystemThreadingTasksDataflowPackageVersion>4.9.0-preview2-26406-04</SystemThreadingTasksDataflowPackageVersion>
<SystemThreadingTasksExtensionsPackageVersion>4.5.0-preview2-26406-04</SystemThreadingTasksExtensionsPackageVersion>
<SystemValueTuplePackageVersion>4.5.0-preview2-26406-04</SystemValueTuplePackageVersion>
<SystemBuffersPackageVersion>4.5.0-preview3-26413-02</SystemBuffersPackageVersion>
<SystemCollectionsImmutablePackageVersion>1.5.0-preview3-26413-02</SystemCollectionsImmutablePackageVersion>
<SystemComponentModelAnnotationsPackageVersion>4.5.0-preview3-26413-02</SystemComponentModelAnnotationsPackageVersion>
<SystemDataSqlClientPackageVersion>4.5.0-preview3-26413-02</SystemDataSqlClientPackageVersion>
<SystemDiagnosticsDiagnosticSourcePackageVersion>4.5.0-preview3-26413-02</SystemDiagnosticsDiagnosticSourcePackageVersion>
<SystemDiagnosticsEventLogPackageVersion>4.5.0-preview3-26413-02</SystemDiagnosticsEventLogPackageVersion>
<SystemIOPipelinesPackageVersion>4.5.0-preview3-26413-02</SystemIOPipelinesPackageVersion>
<SystemMemoryPackageVersion>4.5.0-preview3-26413-02</SystemMemoryPackageVersion>
<SystemNetHttpWinHttpHandlerPackageVersion>4.5.0-preview3-26413-02</SystemNetHttpWinHttpHandlerPackageVersion>
<SystemNetWebSocketsWebSocketProtocolPackageVersion>4.5.0-preview3-26413-02</SystemNetWebSocketsWebSocketProtocolPackageVersion>
<SystemNumericsVectorsPackageVersion>4.5.0-preview3-26413-02</SystemNumericsVectorsPackageVersion>
<SystemReflectionMetadataPackageVersion>1.6.0-preview3-26413-02</SystemReflectionMetadataPackageVersion>
<SystemRuntimeCompilerServicesUnsafePackageVersion>4.5.0-preview3-26413-02</SystemRuntimeCompilerServicesUnsafePackageVersion>
<SystemSecurityCryptographyCngPackageVersion>4.5.0-preview3-26413-02</SystemSecurityCryptographyCngPackageVersion>
<SystemSecurityCryptographyXmlPackageVersion>4.5.0-preview3-26413-02</SystemSecurityCryptographyXmlPackageVersion>
<SystemSecurityPermissionsPackageVersion>4.5.0-preview3-26413-02</SystemSecurityPermissionsPackageVersion>
<SystemSecurityPrincipalWindowsPackageVersion>4.5.0-preview3-26413-02</SystemSecurityPrincipalWindowsPackageVersion>
<SystemServiceProcessServiceControllerPackageVersion>4.5.0-preview3-26413-02</SystemServiceProcessServiceControllerPackageVersion>
<SystemTextEncodingsWebPackageVersion>4.5.0-preview3-26413-02</SystemTextEncodingsWebPackageVersion>
<SystemThreadingChannelsPackageVersion>4.5.0-preview3-26413-02</SystemThreadingChannelsPackageVersion>
<SystemThreadingTasksDataflowPackageVersion>4.9.0-preview3-26413-02</SystemThreadingTasksDataflowPackageVersion>
<SystemThreadingTasksExtensionsPackageVersion>4.5.0-preview3-26413-02</SystemThreadingTasksExtensionsPackageVersion>
<SystemValueTuplePackageVersion>4.5.0-preview3-26413-02</SystemValueTuplePackageVersion>
</PropertyGroup>
<Import Project="$(DotNetPackageVersionPropsPath)" Condition="'$(DotNetPackageVersionPropsPath)' != ''" />
@ -96,20 +41,17 @@
<!-- Determined by build tools -->
<InternalAspNetCoreSdkPackageVersion>$(KoreBuildVersion)</InternalAspNetCoreSdkPackageVersion>
<InternalAspNetCoreSiteExtensionSdkPackageVersion>$(KoreBuildVersion)</InternalAspNetCoreSiteExtensionSdkPackageVersion>
<MicrosoftAspNetCoreBuildToolsApiCheckPackageVersion>$(KoreBuildVersion)</MicrosoftAspNetCoreBuildToolsApiCheckPackageVersion>
</PropertyGroup>
<!-- These are package versions that should not be overridden or updated by automation. -->
<PropertyGroup Label="Package Versions: Pinned">
<AngleSharpPackageVersion>0.9.9</AngleSharpPackageVersion>
<BenchmarkDotNetPackageVersion>0.10.13</BenchmarkDotNetPackageVersion>
<BuildBundlerMinifierPackageVersion>2.4.337</BuildBundlerMinifierPackageVersion>
<CastleCorePackageVersion>4.2.1</CastleCorePackageVersion>
<DevDependency_MicrosoftDotNetBuildTasksFeedPackageVersion>2.1.0-prerelease-02430-04</DevDependency_MicrosoftDotNetBuildTasksFeedPackageVersion>
<DevDependency_MicrosoftExtensionsDependencyModelPackageVersion>2.0.0</DevDependency_MicrosoftExtensionsDependencyModelPackageVersion>
<DevDependency_WindowsAzureStoragePackageVersion>8.7.0</DevDependency_WindowsAzureStoragePackageVersion>
<FSharpCorePackageVersion>4.2.1</FSharpCorePackageVersion>
<FSharpNETSdkPackageVersion>1.0.5</FSharpNETSdkPackageVersion>
<GoogleProtobufPackageVersion>3.1.0</GoogleProtobufPackageVersion>
<LibuvPackageVersion>1.10.0</LibuvPackageVersion>
<MicrosoftApplicationInsightsAspNetCorePackageVersion>2.1.1</MicrosoftApplicationInsightsAspNetCorePackageVersion>
@ -127,13 +69,6 @@
<MicrosoftCodeAnalysisCommonPackageVersion>2.6.1</MicrosoftCodeAnalysisCommonPackageVersion>
<MicrosoftCodeAnalysisCSharpPackageVersion>2.6.1</MicrosoftCodeAnalysisCSharpPackageVersion>
<MicrosoftCodeAnalysisCSharpWorkspacesPackageVersion>2.6.1</MicrosoftCodeAnalysisCSharpWorkspacesPackageVersion>
<MicrosoftCodeAnalysisEditorFeaturesPackageVersion>2.6.1</MicrosoftCodeAnalysisEditorFeaturesPackageVersion>
<MicrosoftCodeAnalysisEditorFeaturesTextPackageVersion>2.6.1</MicrosoftCodeAnalysisEditorFeaturesTextPackageVersion>
<MicrosoftCodeAnalysisFeaturesPackageVersion>2.6.1</MicrosoftCodeAnalysisFeaturesPackageVersion>
<MicrosoftCodeAnalysisPackageVersion>2.6.1</MicrosoftCodeAnalysisPackageVersion>
<MicrosoftCodeAnalysisVisualBasicPackageVersion>2.6.1</MicrosoftCodeAnalysisVisualBasicPackageVersion>
<MicrosoftCodeAnalysisVisualBasicWorkspacesPackageVersion>2.6.1</MicrosoftCodeAnalysisVisualBasicWorkspacesPackageVersion>
<MicrosoftCodeAnalysisWorkspacesCommonPackageVersion>2.6.1</MicrosoftCodeAnalysisWorkspacesCommonPackageVersion>
<MicrosoftDiaSymReaderNativePackageVersion>1.7.0</MicrosoftDiaSymReaderNativePackageVersion>
<MicrosoftDotNetArchivePackageVersion>0.2.0-beta-62606-02</MicrosoftDotNetArchivePackageVersion>
<MicrosoftDotNetProjectModelPackageVersion>1.0.0-rc3-003121</MicrosoftDotNetProjectModelPackageVersion>
@ -146,15 +81,12 @@
<MicrosoftNETCoreApp20PackageVersion>2.0.0</MicrosoftNETCoreApp20PackageVersion>
<MicrosoftNETCoreWindowsApiSetsPackageVersion>1.0.1</MicrosoftNETCoreWindowsApiSetsPackageVersion>
<MicrosoftNETTestSdkPackageVersion>15.6.1</MicrosoftNETTestSdkPackageVersion>
<MicrosoftOwinPackageVersion>3.0.1</MicrosoftOwinPackageVersion>
<MicrosoftOwinSecurityCookiesPackageVersion>3.0.1</MicrosoftOwinSecurityCookiesPackageVersion>
<MicrosoftOwinSecurityPackageVersion>3.0.1</MicrosoftOwinSecurityPackageVersion>
<MicrosoftOwinTestingPackageVersion>3.0.1</MicrosoftOwinTestingPackageVersion>
<MicrosoftVisualStudioComponentModelHostPackageVersion>15.0.26606</MicrosoftVisualStudioComponentModelHostPackageVersion>
<MicrosoftVisualStudioCoreUtilityPackageVersion>15.6.161-preview</MicrosoftVisualStudioCoreUtilityPackageVersion>
<MicrosoftVisualStudioEditorPackageVersion>15.6.161-preview</MicrosoftVisualStudioEditorPackageVersion>
<MicrosoftVisualStudioLanguageIntellisensePackageVersion>15.6.161-preview</MicrosoftVisualStudioLanguageIntellisensePackageVersion>
<MicrosoftVisualStudioLanguageServicesPackageVersion>2.6.1</MicrosoftVisualStudioLanguageServicesPackageVersion>
<MicrosoftVisualStudioOLEInteropPackageVersion>7.10.6070</MicrosoftVisualStudioOLEInteropPackageVersion>
<MicrosoftVisualStudioProjectSystemAnalyzersPackageVersion>15.3.224</MicrosoftVisualStudioProjectSystemAnalyzersPackageVersion>
<MicrosoftVisualStudioProjectSystemManagedVSPackageVersion>2.0.6142705</MicrosoftVisualStudioProjectSystemManagedVSPackageVersion>
@ -166,23 +98,19 @@
<MicrosoftVisualStudioShellInterop80PackageVersion>8.0.50727</MicrosoftVisualStudioShellInterop80PackageVersion>
<MicrosoftVisualStudioShellInterop90PackageVersion>9.0.30729</MicrosoftVisualStudioShellInterop90PackageVersion>
<MicrosoftVisualStudioShellInteropPackageVersion>7.10.6071</MicrosoftVisualStudioShellInteropPackageVersion>
<MicrosoftVisualStudioTextDataPackageVersion>15.6.161-preview</MicrosoftVisualStudioTextDataPackageVersion>
<MicrosoftVisualStudioTextLogicPackageVersion>15.6.161-preview</MicrosoftVisualStudioTextLogicPackageVersion>
<MicrosoftVisualStudioTextUIPackageVersion>15.6.161-preview</MicrosoftVisualStudioTextUIPackageVersion>
<MicrosoftVisualStudioTextUIWpfPackageVersion>15.6.161-preview</MicrosoftVisualStudioTextUIWpfPackageVersion>
<MicrosoftWebAdministrationPackageVersion>7.0.0</MicrosoftWebAdministrationPackageVersion>
<MicrosoftWebXdtPackageVersion>1.4.0</MicrosoftWebXdtPackageVersion>
<MonoAddinsPackageVersion>1.3.8</MonoAddinsPackageVersion>
<MonoDevelopSdkPackageVersion>1.0.1</MonoDevelopSdkPackageVersion>
<MoqPackageVersion>4.7.49</MoqPackageVersion>
<MsgPackCliPackageVersion>1.0.0-rc</MsgPackCliPackageVersion>
<MessagePackPackageVersion>1.7.3.4</MessagePackPackageVersion>
<NETStandard16PackageVersion>1.6.1</NETStandard16PackageVersion>
<NETStandardLibrary20PackageVersion>2.0.1</NETStandardLibrary20PackageVersion>
<NewtonsoftJsonBsonPackageVersion>1.0.1</NewtonsoftJsonBsonPackageVersion>
<NewtonsoftJsonPackageVersion>11.0.2</NewtonsoftJsonPackageVersion>
<OracleManagedDataAccessPackageVersion>12.2.1100</OracleManagedDataAccessPackageVersion>
<PollySignedPackageVersion>5.8.0</PollySignedPackageVersion>
<PollyExtensionsHttpSignedPackageVersion>1.0.0-preview2</PollyExtensionsHttpSignedPackageVersion>
<PollySignedPackageVersion>5.9.0</PollySignedPackageVersion>
<PollyExtensionsHttpSignedPackageVersion>1.0.2-rc1</PollyExtensionsHttpSignedPackageVersion>
<RemotionLinqPackageVersion>2.2.0</RemotionLinqPackageVersion>
<SerilogExtensionsLoggingPackageVersion>1.4.0</SerilogExtensionsLoggingPackageVersion>
<SerilogSinksFilePackageVersion>3.2.0</SerilogSinksFilePackageVersion>
@ -194,22 +122,18 @@
<StyleCopAnalyzersPackageVersion>1.0.0</StyleCopAnalyzersPackageVersion>
<SystemIdentityModelTokensJwtPackageVersion>5.2.0</SystemIdentityModelTokensJwtPackageVersion>
<SystemInteractiveAsyncPackageVersion>3.1.1</SystemInteractiveAsyncPackageVersion>
<SystemManagementAutomationPackageVersion>6.1.7601.17515</SystemManagementAutomationPackageVersion>
<SystemNetHttpPackageVersion>4.3.2</SystemNetHttpPackageVersion>
<SystemReactiveLinqPackageVersion>3.1.1</SystemReactiveLinqPackageVersion>
<SystemReflectionEmitPackageVersion>4.3.0</SystemReflectionEmitPackageVersion>
<SystemRuntimeInteropServicesRuntimeInformationPackageVersion>4.3.0</SystemRuntimeInteropServicesRuntimeInformationPackageVersion>
<Utf8JsonPackageVersion>1.3.7</Utf8JsonPackageVersion>
<VisualStudio_NewtonsoftJsonPackageVersion>9.0.1</VisualStudio_NewtonsoftJsonPackageVersion>
<VSIX_MicrosoftCodeAnalysisCommonPackageVersion>2.7.0-beta3-62512-06</VSIX_MicrosoftCodeAnalysisCommonPackageVersion>
<VSIX_MicrosoftCodeAnalysisCSharpFeaturesPackageVersion>2.7.0-beta3-62512-06</VSIX_MicrosoftCodeAnalysisCSharpFeaturesPackageVersion>
<VSIX_MicrosoftCodeAnalysisCSharpPackageVersion>2.7.0-beta3-62512-06</VSIX_MicrosoftCodeAnalysisCSharpPackageVersion>
<VSIX_MicrosoftCodeAnalysisCSharpWorkspacesPackageVersion>2.7.0-beta3-62512-06</VSIX_MicrosoftCodeAnalysisCSharpWorkspacesPackageVersion>
<VSIX_MicrosoftCodeAnalysisEditorFeaturesTextPackageVersion>2.7.0-beta3-62512-06</VSIX_MicrosoftCodeAnalysisEditorFeaturesTextPackageVersion>
<VSIX_MicrosoftCodeAnalysisFeaturesPackageVersion>2.7.0-beta3-62512-06</VSIX_MicrosoftCodeAnalysisFeaturesPackageVersion>
<VSIX_MicrosoftCodeAnalysisPackageVersion>2.7.0-beta3-62512-06</VSIX_MicrosoftCodeAnalysisPackageVersion>
<VSIX_MicrosoftCodeAnalysisRemoteRazorServiceHubPackageVersion>2.7.0-beta3-62512-06</VSIX_MicrosoftCodeAnalysisRemoteRazorServiceHubPackageVersion>
<VSIX_MicrosoftCodeAnalysisRemoteWorkspacesPackageVersion>2.7.0-beta3-62512-06</VSIX_MicrosoftCodeAnalysisRemoteWorkspacesPackageVersion>
<VSIX_MicrosoftCodeAnalysisVisualBasicPackageVersion>2.7.0-beta3-62512-06</VSIX_MicrosoftCodeAnalysisVisualBasicPackageVersion>
<VSIX_MicrosoftCodeAnalysisVisualBasicWorkspacesPackageVersion>2.7.0-beta3-62512-06</VSIX_MicrosoftCodeAnalysisVisualBasicWorkspacesPackageVersion>
<VSIX_MicrosoftCodeAnalysisWorkspacesCommonPackageVersion>2.7.0-beta3-62512-06</VSIX_MicrosoftCodeAnalysisWorkspacesCommonPackageVersion>
<VSIX_MicrosoftVisualStudioLanguageServicesPackageVersion>2.7.0-beta3-62512-06</VSIX_MicrosoftVisualStudioLanguageServicesPackageVersion>
@ -220,6 +144,7 @@
<XunitAssertPackageVersion>2.3.1</XunitAssertPackageVersion>
<XunitCorePackageVersion>2.3.1</XunitCorePackageVersion>
<XunitExtensibilityCorePackageVersion>2.3.1</XunitExtensibilityCorePackageVersion>
<XunitExtensibilityExecutionPackageVersion>2.3.1</XunitExtensibilityExecutionPackageVersion>
<XunitPackageVersion>2.3.1</XunitPackageVersion>
<XunitRunnerVisualstudioPackageVersion>2.4.0-beta.1.build3945</XunitRunnerVisualstudioPackageVersion>
</PropertyGroup>

View File

@ -1,4 +1,4 @@
FROM microsoft/dotnet:2.1-runtime-deps-alpine
FROM microsoft/dotnet:2.1.0-preview1-runtime-deps-alpine
ARG USER
ARG USER_ID
ARG GROUP_ID

View File

@ -19,10 +19,8 @@
<ItemGroup>
<ExternalDependency Include="AngleSharp" Version="$(AngleSharpPackageVersion)" Private="true" />
<ExternalDependency Include="BenchmarkDotNet" Version="$(BenchmarkDotNetPackageVersion)" Private="true" />
<ExternalDependency Include="BuildBundlerMinifier" Version="$(BuildBundlerMinifierPackageVersion)" Private="true" />
<ExternalDependency Include="Castle.Core" Version="$(CastleCorePackageVersion)" />
<ExternalDependency Include="FSharp.Core" Version="$(FSharpCorePackageVersion)" Private="true" />
<ExternalDependency Include="FSharp.NET.Sdk" Version="$(FSharpNETSdkPackageVersion)" Private="true" />
<ExternalDependency Include="Google.Protobuf" Version="$(GoogleProtobufPackageVersion)" Private="true" />
<ExternalDependency Include="Internal.AspNetCore.Sdk" Version="$(InternalAspNetCoreSdkPackageVersion)" Private="true" />
<ExternalDependency Include="Internal.AspNetCore.SiteExtension.Sdk" Version="$(InternalAspNetCoreSiteExtensionSdkPackageVersion)" Private="true" />
@ -30,7 +28,6 @@
<ExternalDependency Include="Microsoft.ApplicationInsights.AspNetCore" Version="$(MicrosoftApplicationInsightsAspNetCorePackageVersion)" />
<ExternalDependency Include="Microsoft.AspNet.Identity.EntityFramework" Version="$(MicrosoftAspNetIdentityEntityFrameworkPackageVersion)" />
<ExternalDependency Include="Microsoft.AspNet.WebApi.Client" Version="$(MicrosoftAspNetWebApiClientPackageVersion)" AppMetapackage="true" AllMetapackage="true"/>
<ExternalDependency Include="Microsoft.AspNetCore.BuildTools.ApiCheck" Version="$(MicrosoftAspNetCoreBuildToolsApiCheckPackageVersion)" Private="true" />
<ExternalDependency Include="Microsoft.Azure.DocumentDB.Core" Version="$(MicrosoftAzureDocumentDBCorePackageVersion)" />
<ExternalDependency Include="Microsoft.Azure.KeyVault" Version="$(MicrosoftAzureKeyVaultPackageVersion)" />
<ExternalDependency Include="Microsoft.Azure.Management.Fluent" Version="$(MicrosoftAzureManagementFluentPackageVersion)" />
@ -42,8 +39,6 @@
<ExternalDependency Include="Microsoft.Build.Utilities.Core" Version="$(MicrosoftBuildUtilitiesCorePackageVersion)" />
<!-- Razor uses a custom version of roslyn packages -->
<ExternalDependency Include="Microsoft.CodeAnalysis" Version="$(MicrosoftCodeAnalysisPackageVersion)" />
<ExternalDependency Include="Microsoft.CodeAnalysis" Version="$(VSIX_MicrosoftCodeAnalysisPackageVersion)" Private="true" VariableName="VSIX_MicrosoftCodeAnalysisPackageVersion" />
<ExternalDependency Include="Microsoft.CodeAnalysis.Common" Version="$(MicrosoftCodeAnalysisCommonPackageVersion)" />
<ExternalDependency Include="Microsoft.CodeAnalysis.Common" Version="$(VSIX_MicrosoftCodeAnalysisCommonPackageVersion)" Private="true" VariableName="VSIX_MicrosoftCodeAnalysisCommonPackageVersion" />
<ExternalDependency Include="Microsoft.CodeAnalysis.CSharp" Version="$(MicrosoftCodeAnalysisCSharpPackageVersion)" />
@ -51,26 +46,15 @@
<ExternalDependency Include="Microsoft.CodeAnalysis.CSharp.Features" Version="$(VSIX_MicrosoftCodeAnalysisCSharpFeaturesPackageVersion)" Private="true" VariableName="VSIX_MicrosoftCodeAnalysisCSharpFeaturesPackageVersion" />
<ExternalDependency Include="Microsoft.CodeAnalysis.CSharp.Workspaces" Version="$(MicrosoftCodeAnalysisCSharpWorkspacesPackageVersion)" />
<ExternalDependency Include="Microsoft.CodeAnalysis.CSharp.Workspaces" Version="$(VSIX_MicrosoftCodeAnalysisCSharpWorkspacesPackageVersion)" Private="true" VariableName="VSIX_MicrosoftCodeAnalysisCSharpWorkspacesPackageVersion" />
<ExternalDependency Include="Microsoft.CodeAnalysis.EditorFeatures" Version="$(MicrosoftCodeAnalysisEditorFeaturesPackageVersion)" />
<ExternalDependency Include="Microsoft.CodeAnalysis.EditorFeatures.Text" Version="$(MicrosoftCodeAnalysisEditorFeaturesTextPackageVersion)" />
<ExternalDependency Include="Microsoft.CodeAnalysis.EditorFeatures.Text" Version="$(VSIX_MicrosoftCodeAnalysisEditorFeaturesTextPackageVersion)" Private="true" VariableName="VSIX_MicrosoftCodeAnalysisEditorFeaturesTextPackageVersion" />
<ExternalDependency Include="Microsoft.CodeAnalysis.Features" Version="$(MicrosoftCodeAnalysisFeaturesPackageVersion)" />
<ExternalDependency Include="Microsoft.CodeAnalysis.Features" Version="$(VSIX_MicrosoftCodeAnalysisFeaturesPackageVersion)" Private="true" VariableName="VSIX_MicrosoftCodeAnalysisFeaturesPackageVersion" />
<ExternalDependency Include="Microsoft.CodeAnalysis.Remote.Razor.ServiceHub" Version="$(VSIX_MicrosoftCodeAnalysisRemoteRazorServiceHubPackageVersion)" Private="true" VariableName="VSIX_MicrosoftCodeAnalysisRemoteRazorServiceHubPackageVersion" />
<ExternalDependency Include="Microsoft.CodeAnalysis.Remote.Workspaces" Version="$(VSIX_MicrosoftCodeAnalysisRemoteWorkspacesPackageVersion)" Private="true" VariableName="VSIX_MicrosoftCodeAnalysisRemoteWorkspacesPackageVersion" />
<ExternalDependency Include="Microsoft.CodeAnalysis.VisualBasic" Version="$(MicrosoftCodeAnalysisVisualBasicPackageVersion)" />
<ExternalDependency Include="Microsoft.CodeAnalysis.VisualBasic" Version="$(VSIX_MicrosoftCodeAnalysisVisualBasicPackageVersion)" Private="true" VariableName="VSIX_MicrosoftCodeAnalysisVisualBasicPackageVersion" />
<ExternalDependency Include="Microsoft.CodeAnalysis.VisualBasic.Workspaces" Version="$(MicrosoftCodeAnalysisVisualBasicWorkspacesPackageVersion)" />
<ExternalDependency Include="Microsoft.CodeAnalysis.VisualBasic.Workspaces" Version="$(VSIX_MicrosoftCodeAnalysisVisualBasicWorkspacesPackageVersion)" Private="true" VariableName="VSIX_MicrosoftCodeAnalysisVisualBasicWorkspacesPackageVersion" />
<ExternalDependency Include="Microsoft.CodeAnalysis.Workspaces.Common" Version="$(MicrosoftCodeAnalysisWorkspacesCommonPackageVersion)" />
<ExternalDependency Include="Microsoft.CodeAnalysis.Workspaces.Common" Version="$(VSIX_MicrosoftCodeAnalysisWorkspacesCommonPackageVersion)" Private="true" VariableName="VSIX_MicrosoftCodeAnalysisWorkspacesCommonPackageVersion" />
<ExternalDependency Include="Microsoft.CSharp" Version="$(MicrosoftCSharpPackageVersion)" />
<ExternalDependency Include="Microsoft.DotNet.PlatformAbstractions" Version="$(MicrosoftDotNetPlatformAbstractionsPackageVersion)" />
<ExternalDependency Include="Microsoft.DotNet.ProjectModel" Version="$(MicrosoftDotNetProjectModelPackageVersion)" Private="true" />
<ExternalDependency Include="Microsoft.DiaSymReader.Native" Version="$(MicrosoftDiaSymReaderNativePackageVersion)" />
<ExternalDependency Include="Microsoft.Extensions.DependencyModel" Version="$(MicrosoftExtensionsDependencyModelPackageVersion)" />
<ExternalDependency Include="Microsoft.Extensions.PlatformAbstractions" Version="$(MicrosoftExtensionsPlatformAbstractionsPackageVersion)" />
<ExternalDependency Include="Microsoft.IdentityModel.Clients.ActiveDirectory" Version="$(MicrosoftIdentityModelClientsActiveDirectoryPackageVersion)" />
<ExternalDependency Include="Microsoft.IdentityModel.Protocols.OpenIdConnect" Version="$(MicrosoftIdentityModelProtocolsOpenIdConnectPackageVersion)" />
<ExternalDependency Include="Microsoft.IdentityModel.Protocols.WsFederation" Version="$(MicrosoftIdentityModelProtocolsWsFederationPackageVersion)" />
@ -82,20 +66,13 @@
<ExternalDependency Include="Microsoft.NETCore.App" Version="$(MicrosoftNETCoreApp20PackageVersion)" VariableName="MicrosoftNETCoreApp20PackageVersion" />
<ExternalDependency Include="Microsoft.NETCore.App" Version="$(MicrosoftNETCoreApp21PackageVersion)" VariableName="MicrosoftNETCoreApp21PackageVersion" />
<ExternalDependency Include="Microsoft.NETCore.DotNetAppHost" Version="$(MicrosoftNETCoreDotNetAppHostPackageVersion)" />
<ExternalDependency Include="Microsoft.NETCore.DotNetHostPolicy" Version="$(MicrosoftNETCoreDotNetHostPolicyPackageVersion)" />
<ExternalDependency Include="Microsoft.NETCore.DotNetHostResolver" Version="$(MicrosoftNETCoreDotNetHostResolverPackageVersion)" />
<ExternalDependency Include="Microsoft.NETCore.Platforms" Version="$(MicrosoftNETCorePlatformsPackageVersion)" />
<ExternalDependency Include="Microsoft.NETCore.Windows.ApiSets" Version="$(MicrosoftNETCoreWindowsApiSetsPackageVersion)" />
<ExternalDependency Include="Microsoft.Owin" Version="$(MicrosoftOwinPackageVersion)" />
<ExternalDependency Include="Microsoft.Owin.Security" Version="$(MicrosoftOwinSecurityPackageVersion)" />
<ExternalDependency Include="Microsoft.Owin.Security.Cookies" Version="$(MicrosoftOwinSecurityCookiesPackageVersion)" />
<ExternalDependency Include="Microsoft.Owin.Testing" Version="$(MicrosoftOwinTestingPackageVersion)" Private="true" />
<ExternalDependency Include="Microsoft.VisualStudio.ComponentModelHost" Version="$(MicrosoftVisualStudioComponentModelHostPackageVersion)" Private="true" />
<ExternalDependency Include="Microsoft.VisualStudio.CoreUtility" Version="$(MicrosoftVisualStudioCoreUtilityPackageVersion)" Private="true" />
<ExternalDependency Include="Microsoft.VisualStudio.Editor" Version="$(MicrosoftVisualStudioEditorPackageVersion)" Private="true" />
<ExternalDependency Include="Microsoft.VisualStudio.Language.Intellisense" Version="$(MicrosoftVisualStudioLanguageIntellisensePackageVersion)" Private="true" />
<ExternalDependency Include="Microsoft.VisualStudio.LanguageServices" Version="$(MicrosoftVisualStudioLanguageServicesPackageVersion)" Private="true" />
<ExternalDependency Include="Microsoft.VisualStudio.LanguageServices" Version="$(VSIX_MicrosoftVisualStudioLanguageServicesPackageVersion)" Private="true" VariableName="VSIX_MicrosoftVisualStudioLanguageServicesPackageVersion" />
<ExternalDependency Include="Microsoft.VisualStudio.LanguageServices.Razor.RemoteClient" Version="$(VSIX_MicrosoftVisualStudioLanguageServicesRazorRemoteClientPackageVersion)" Private="true" VariableName="VSIX_MicrosoftVisualStudioLanguageServicesRazorRemoteClientPackageVersion" />
<ExternalDependency Include="Microsoft.VisualStudio.OLE.Interop" Version="$(MicrosoftVisualStudioOLEInteropPackageVersion)" Private="true" />
@ -109,17 +86,13 @@
<ExternalDependency Include="Microsoft.VisualStudio.Shell.Interop.12.0" Version="$(MicrosoftVisualStudioShellInterop120PackageVersion)" Private="true" />
<ExternalDependency Include="Microsoft.VisualStudio.Shell.Interop.8.0" Version="$(MicrosoftVisualStudioShellInterop80PackageVersion)" Private="true" />
<ExternalDependency Include="Microsoft.VisualStudio.Shell.Interop.9.0" Version="$(MicrosoftVisualStudioShellInterop90PackageVersion)" Private="true" />
<ExternalDependency Include="Microsoft.VisualStudio.Text.Data" Version="$(MicrosoftVisualStudioTextDataPackageVersion)" Private="true" />
<ExternalDependency Include="Microsoft.VisualStudio.Text.Logic" Version="$(MicrosoftVisualStudioTextLogicPackageVersion)" Private="true" />
<ExternalDependency Include="Microsoft.VisualStudio.Text.UI" Version="$(MicrosoftVisualStudioTextUIPackageVersion)" Private="true" />
<ExternalDependency Include="Microsoft.VisualStudio.Text.UI.Wpf" Version="$(MicrosoftVisualStudioTextUIWpfPackageVersion)" Private="true" />
<ExternalDependency Include="Microsoft.Web.Administration" Version="$(MicrosoftWebAdministrationPackageVersion)" />
<ExternalDependency Include="Microsoft.Web.Xdt" Version="$(MicrosoftWebXdtPackageVersion)" />
<ExternalDependency Include="Microsoft.Win32.Registry" Version="$(MicrosoftWin32RegistryPackageVersion)" />
<ExternalDependency Include="Mono.Addins" Version="$(MonoAddinsPackageVersion)" Private="true" />
<ExternalDependency Include="MonoDevelop.Sdk" Version="$(MonoDevelopSdkPackageVersion)" Private="true" />
<ExternalDependency Include="Moq" Version="$(MoqPackageVersion)" Private="true" />
<ExternalDependency Include="MsgPack.Cli" Version="$(MsgPackCliPackageVersion)" />
<ExternalDependency Include="MessagePack" Version="$(MessagePackPackageVersion)" />
<!-- netstandard1.x -->
<ExternalDependency Include="NETStandard.Library" Version="$(NETStandard16PackageVersion)" VariableName="NETStandard16PackageVersion" />
@ -137,36 +110,6 @@
<ExternalDependency Include="Polly-Signed" Version="$(PollySignedPackageVersion)" />
<ExternalDependency Include="Polly.Extensions.Http-Signed" Version="$(PollyExtensionsHttpSignedPackageVersion)" />
<ExternalDependency Include="Remotion.Linq" Version="$(RemotionLinqPackageVersion)" />
<ExternalDependency Include="runtime.alpine.3.6-x64.Microsoft.NETCore.App" Version="$(RuntimeAlpine36X64MicrosoftNETCoreAppPackageVersion)" />
<ExternalDependency Include="runtime.alpine.3.6-x64.Microsoft.NETCore.DotNetAppHost" Version="$(RuntimeAlpine36X64MicrosoftNETCoreDotNetAppHostPackageVersion)" />
<ExternalDependency Include="runtime.alpine.3.6-x64.Microsoft.NETCore.DotNetHost" Version="$(RuntimeAlpine36X64MicrosoftNETCoreDotNetHostPackageVersion)" />
<ExternalDependency Include="runtime.alpine.3.6-x64.Microsoft.NETCore.DotNetHostPolicy" Version="$(RuntimeAlpine36X64MicrosoftNETCoreDotNetHostPolicyPackageVersion)" />
<ExternalDependency Include="runtime.alpine.3.6-x64.Microsoft.NETCore.DotNetHostResolver" Version="$(RuntimeAlpine36X64MicrosoftNETCoreDotNetHostResolverPackageVersion)" />
<ExternalDependency Include="runtime.linux-arm.Microsoft.NETCore.App" Version="$(RuntimeLinuxArmMicrosoftNETCoreAppPackageVersion)" />
<ExternalDependency Include="runtime.linux-arm.Microsoft.NETCore.DotNetAppHost" Version="$(RuntimeLinuxArmMicrosoftNETCoreDotNetAppHostPackageVersion)" />
<ExternalDependency Include="runtime.linux-arm.Microsoft.NETCore.DotNetHost" Version="$(RuntimeLinuxArmMicrosoftNETCoreDotNetHostPackageVersion)" />
<ExternalDependency Include="runtime.linux-arm.Microsoft.NETCore.DotNetHostPolicy" Version="$(RuntimeLinuxArmMicrosoftNETCoreDotNetHostPolicyPackageVersion)" />
<ExternalDependency Include="runtime.linux-arm.Microsoft.NETCore.DotNetHostResolver" Version="$(RuntimeLinuxArmMicrosoftNETCoreDotNetHostResolverPackageVersion)" />
<ExternalDependency Include="runtime.linux-x64.Microsoft.NETCore.App" Version="$(RuntimeLinuxX64MicrosoftNETCoreAppPackageVersion)" />
<ExternalDependency Include="runtime.linux-x64.Microsoft.NETCore.DotNetAppHost" Version="$(RuntimeLinuxX64MicrosoftNETCoreDotNetAppHostPackageVersion)" />
<ExternalDependency Include="runtime.linux-x64.Microsoft.NETCore.DotNetHost" Version="$(RuntimeLinuxX64MicrosoftNETCoreDotNetHostPackageVersion)" />
<ExternalDependency Include="runtime.linux-x64.Microsoft.NETCore.DotNetHostPolicy" Version="$(RuntimeLinuxX64MicrosoftNETCoreDotNetHostPolicyPackageVersion)" />
<ExternalDependency Include="runtime.linux-x64.Microsoft.NETCore.DotNetHostResolver" Version="$(RuntimeLinuxX64MicrosoftNETCoreDotNetHostResolverPackageVersion)" />
<ExternalDependency Include="runtime.osx-x64.Microsoft.NETCore.App" Version="$(RuntimeOsxX64MicrosoftNETCoreAppPackageVersion)" />
<ExternalDependency Include="runtime.osx-x64.Microsoft.NETCore.DotNetAppHost" Version="$(RuntimeOsxX64MicrosoftNETCoreDotNetAppHostPackageVersion)" />
<ExternalDependency Include="runtime.osx-x64.Microsoft.NETCore.DotNetHost" Version="$(RuntimeOsxX64MicrosoftNETCoreDotNetHostPackageVersion)" />
<ExternalDependency Include="runtime.osx-x64.Microsoft.NETCore.DotNetHostPolicy" Version="$(RuntimeOsxX64MicrosoftNETCoreDotNetHostPolicyPackageVersion)" />
<ExternalDependency Include="runtime.osx-x64.Microsoft.NETCore.DotNetHostResolver" Version="$(RuntimeOsxX64MicrosoftNETCoreDotNetHostResolverPackageVersion)" />
<ExternalDependency Include="runtime.win-x64.Microsoft.NETCore.App" Version="$(RuntimeWinX64MicrosoftNETCoreAppPackageVersion)" />
<ExternalDependency Include="runtime.win-x64.Microsoft.NETCore.DotNetAppHost" Version="$(RuntimeWinX64MicrosoftNETCoreDotNetAppHostPackageVersion)" />
<ExternalDependency Include="runtime.win-x64.Microsoft.NETCore.DotNetHost" Version="$(RuntimeWinX64MicrosoftNETCoreDotNetHostPackageVersion)" />
<ExternalDependency Include="runtime.win-x64.Microsoft.NETCore.DotNetHostPolicy" Version="$(RuntimeWinX64MicrosoftNETCoreDotNetHostPolicyPackageVersion)" />
<ExternalDependency Include="runtime.win-x64.Microsoft.NETCore.DotNetHostResolver" Version="$(RuntimeWinX64MicrosoftNETCoreDotNetHostResolverPackageVersion)" />
<ExternalDependency Include="runtime.win-x86.Microsoft.NETCore.App" Version="$(RuntimeWinX86MicrosoftNETCoreAppPackageVersion)" />
<ExternalDependency Include="runtime.win-x86.Microsoft.NETCore.DotNetAppHost" Version="$(RuntimeWinX86MicrosoftNETCoreDotNetAppHostPackageVersion)" />
<ExternalDependency Include="runtime.win-x86.Microsoft.NETCore.DotNetHost" Version="$(RuntimeWinX86MicrosoftNETCoreDotNetHostPackageVersion)" />
<ExternalDependency Include="runtime.win-x86.Microsoft.NETCore.DotNetHostPolicy" Version="$(RuntimeWinX86MicrosoftNETCoreDotNetHostPolicyPackageVersion)" />
<ExternalDependency Include="runtime.win-x86.Microsoft.NETCore.DotNetHostResolver" Version="$(RuntimeWinX86MicrosoftNETCoreDotNetHostResolverPackageVersion)" />
<ExternalDependency Include="Serilog.Extensions.Logging" Version="$(SerilogExtensionsLoggingPackageVersion)" />
<ExternalDependency Include="Serilog.Sinks.File" Version="$(SerilogSinksFilePackageVersion)" />
<ExternalDependency Include="SQLitePCLRaw.bundle_green" Version="$(SQLitePCLRawBundleGreenPackageVersion)" />
@ -176,55 +119,35 @@
<ExternalDependency Include="StreamJsonRpc" Version="$(StreamJsonRpcPackageVersion)" />
<ExternalDependency Include="StyleCop.Analyzers" Version="$(StyleCopAnalyzersPackageVersion)" Private="true" />
<ExternalDependency Include="System.Buffers" Version="$(SystemBuffersPackageVersion)" />
<ExternalDependency Include="System.CodeDom" Version="$(SystemCodeDomPackageVersion)" />
<ExternalDependency Include="System.Collections.Immutable" Version="$(SystemCollectionsImmutablePackageVersion)" />
<ExternalDependency Include="System.ComponentModel.Annotations" Version="$(SystemComponentModelAnnotationsPackageVersion)" />
<ExternalDependency Include="System.Composition" Version="$(SystemCompositionPackageVersion)" />
<ExternalDependency Include="System.Composition.AttributedModel" Version="$(SystemCompositionAttributedModelPackageVersion)" />
<ExternalDependency Include="System.Composition.Convention" Version="$(SystemCompositionConventionPackageVersion)" />
<ExternalDependency Include="System.Composition.Hosting" Version="$(SystemCompositionHostingPackageVersion)" />
<ExternalDependency Include="System.Composition.Runtime" Version="$(SystemCompositionRuntimePackageVersion)" />
<ExternalDependency Include="System.Composition.TypedParts" Version="$(SystemCompositionTypedPartsPackageVersion)" />
<ExternalDependency Include="System.Configuration.ConfigurationManager" Version="$(SystemConfigurationConfigurationManagerPackageVersion)" />
<ExternalDependency Include="System.Data.SqlClient" Version="$(SystemDataSqlClientPackageVersion)" />
<ExternalDependency Include="System.Diagnostics.DiagnosticSource" Version="$(SystemDiagnosticsDiagnosticSourcePackageVersion)" />
<ExternalDependency Include="System.Diagnostics.EventLog" Version="$(SystemDiagnosticsEventLogPackageVersion)" />
<ExternalDependency Include="System.IdentityModel.Tokens.Jwt" Version="$(SystemIdentityModelTokensJwtPackageVersion)" />
<ExternalDependency Include="System.Interactive.Async" Version="$(SystemInteractiveAsyncPackageVersion)" />
<ExternalDependency Include="System.IO.FileSystem.AccessControl" Version="$(SystemIOFileSystemAccessControlPackageVersion)" />
<ExternalDependency Include="System.IO.Packaging" Version="$(SystemIOPackagingPackageVersion)" />
<ExternalDependency Include="System.IO.Pipelines" Version="$(SystemIOPipelinesPackageVersion)" />
<ExternalDependency Include="System.IO.Pipes.AccessControl" Version="$(SystemIOPipesAccessControlPackageVersion)" />
<ExternalDependency Include="System.IO.Ports" Version="$(SystemIOPortsPackageVersion)" />
<ExternalDependency Include="System.Json" Version="$(SystemJsonPackageVersion)" />
<ExternalDependency Include="System.Management.Automation" Version="$(SystemManagementAutomationPackageVersion)" />
<ExternalDependency Include="System.Memory" Version="$(SystemMemoryPackageVersion)" />
<ExternalDependency Include="System.Net.Http" Version="$(SystemNetHttpPackageVersion)" />
<ExternalDependency Include="System.Net.Http.WinHttpHandler" Version="$(SystemNetHttpWinHttpHandlerPackageVersion)" />
<ExternalDependency Include="System.Net.WebSockets.WebSocketProtocol" Version="$(SystemNetWebSocketsWebSocketProtocolPackageVersion)" />
<ExternalDependency Include="System.Numerics.Vectors" Version="$(SystemNumericsVectorsPackageVersion)" />
<ExternalDependency Include="System.Reactive.Linq" Version="$(SystemReactiveLinqPackageVersion)" />
<ExternalDependency Include="System.Reflection.DispatchProxy" Version="$(SystemReflectionDispatchProxyPackageVersion)" />
<ExternalDependency Include="System.Reflection.Emit" Version="$(SystemReflectionEmitPackageVersion)" />
<ExternalDependency Include="System.Reflection.Metadata" Version="$(SystemReflectionMetadataPackageVersion)" />
<ExternalDependency Include="System.Reflection.TypeExtensions" Version="$(SystemReflectionTypeExtensionsPackageVersion)" />
<ExternalDependency Include="System.Runtime.CompilerServices.Unsafe" Version="$(SystemRuntimeCompilerServicesUnsafePackageVersion)" />
<ExternalDependency Include="System.Runtime.InteropServices.RuntimeInformation" Version="$(SystemRuntimeInteropServicesRuntimeInformationPackageVersion)" />
<ExternalDependency Include="System.Security.AccessControl" Version="$(SystemSecurityAccessControlPackageVersion)" />
<ExternalDependency Include="System.Security.Cryptography.Cng" Version="$(SystemSecurityCryptographyCngPackageVersion)" />
<ExternalDependency Include="System.Security.Cryptography.Pkcs" Version="$(SystemSecurityCryptographyPkcsPackageVersion)" />
<ExternalDependency Include="System.Security.Cryptography.ProtectedData" Version="$(SystemSecurityCryptographyProtectedDataPackageVersion)" />
<ExternalDependency Include="System.Security.Cryptography.Xml" Version="$(SystemSecurityCryptographyXmlPackageVersion)" />
<ExternalDependency Include="System.Security.Permissions" Version="$(SystemSecurityPermissionsPackageVersion)" />
<ExternalDependency Include="System.Security.Principal.Windows" Version="$(SystemSecurityPrincipalWindowsPackageVersion)" />
<ExternalDependency Include="System.ServiceProcess.ServiceController" Version="$(SystemServiceProcessServiceControllerPackageVersion)" />
<ExternalDependency Include="System.Text.Encoding.CodePages" Version="$(SystemTextEncodingCodePagesPackageVersion)" />
<ExternalDependency Include="System.Text.Encodings.Web" Version="$(SystemTextEncodingsWebPackageVersion)" />
<ExternalDependency Include="System.Threading.AccessControl" Version="$(SystemThreadingAccessControlPackageVersion)" />
<ExternalDependency Include="System.Threading.Channels" Version="$(SystemThreadingChannelsPackageVersion)" />
<ExternalDependency Include="System.Threading.Tasks.Dataflow" Version="$(SystemThreadingTasksDataflowPackageVersion)" />
<ExternalDependency Include="System.Threading.Tasks.Extensions" Version="$(SystemThreadingTasksExtensionsPackageVersion)" />
<ExternalDependency Include="System.ValueTuple" Version="$(SystemValueTuplePackageVersion)" />
<ExternalDependency Include="Utf8Json" Version="$(Utf8JsonPackageVersion)" />
<ExternalDependency Include="WindowsAzure.Storage" Version="$(WindowsAzureStoragePackageVersion)" />
<ExternalDependency Include="xunit" Version="$(XunitPackageVersion)" />
<ExternalDependency Include="xunit.abstractions" Version="$(XunitAbstractionsPackageVersion)" />
@ -232,6 +155,7 @@
<ExternalDependency Include="xunit.assert" Version="$(XunitAssertPackageVersion)" />
<ExternalDependency Include="xunit.core" Version="$(XunitCorePackageVersion)" />
<ExternalDependency Include="xunit.extensibility.core" Version="$(XunitExtensibilityCorePackageVersion)" />
<ExternalDependency Include="xunit.extensibility.execution" Version="$(XunitExtensibilityExecutionPackageVersion)" />
<ExternalDependency Include="xunit.runner.visualstudio" Version="$(XunitRunnerVisualstudioPackageVersion)" Private="true" />
</ItemGroup>
</Project>

View File

@ -22,6 +22,7 @@
<IntermediateInstaller Include="win-x64" FileExt=".wixlib" />
<IntermediateInstaller Include="osx-x64" FileExt=".tar.gz" />
<IntermediateInstaller Include="linux-x64" FileExt=".tar.gz" />
<IntermediateInstaller Include="linux-arm" FileExt=".tar.gz" />
<IntermediateInstaller Include="alpine.3.6-x64" FileExt=".tar.gz" />
<NativeInstaller Include="win-x86" FileExt=".exe" />
@ -30,6 +31,7 @@
<NativeInstaller Include="win-x64" FileExt=".zip" />
<NativeInstaller Include="osx-x64" FileExt=".tar.gz" />
<NativeInstaller Include="linux-x64" FileExt=".tar.gz" />
<NativeInstaller Include="linux-arm" FileExt=".tar.gz" />
<NativeInstaller Include="alpine.3.6-x64" FileExt=".tar.gz" />
<NativeInstaller Include="x64" FileExt=".deb" />
<NativeInstaller Include="x64" FileExt=".rpm" />

View File

@ -6,6 +6,7 @@
<Import Project="SharedFx.targets" />
<Import Project="SharedFxInstaller.targets" />
<Import Project="Publish.targets" />
<Import Project="GenerateCode.targets" />
<!-- Workaround for #1014 -->
<Import Project="buildorder.props" Condition="$([MSBuild]::IsOSUnixLike())" />

View File

@ -93,15 +93,19 @@ namespace RepoTasks
{
// ensure versions cascade
var buildPackageMap = packages.ToDictionary(p => p.PackageInfo.Id, p => p, StringComparer.OrdinalIgnoreCase);
var dependencyMap = new Dictionary<string, List<string>>(StringComparer.OrdinalIgnoreCase);
var dependencyMap = new Dictionary<string, List<ExternalDependency>>(StringComparer.OrdinalIgnoreCase);
foreach (var dep in Dependencies)
{
if (!dependencyMap.TryGetValue(dep.ItemSpec, out var versions))
{
dependencyMap[dep.ItemSpec] = versions = new List<string>();
dependencyMap[dep.ItemSpec] = versions = new List<ExternalDependency>();
}
versions.Add(dep.GetMetadata("Version"));
versions.Add(new ExternalDependency
{
PackageId = dep.ItemSpec,
Version = dep.GetMetadata("Version"),
});
}
var inconsistentVersions = new List<VersionMismatch>();
@ -115,15 +119,21 @@ namespace RepoTasks
{
if (!buildPackageMap.TryGetValue(dependency.Key, out var package))
{
var idx = -1;
// This dependency is not one of the packages that will be compiled by this run of Universe.
if (!dependencyMap.TryGetValue(dependency.Key, out var externalVersions)
|| !externalVersions.Contains(dependency.Value.Version))
|| (idx = externalVersions.FindIndex(0, externalVersions.Count, i => i.Version == dependency.Value.Version)) < 0)
{
Log.LogKoreBuildError(
project.FullPath,
KoreBuildErrors.UndefinedExternalDependency,
message: $"Undefined external dependency on {dependency.Key}/{dependency.Value.Version}");
}
if (idx >= 0)
{
externalVersions[idx].IsReferenced = true;
}
continue;
}
@ -174,6 +184,15 @@ namespace RepoTasks
Log.LogError("Package versions are inconsistent. See build log for details.");
}
foreach (var versions in dependencyMap.Values)
{
foreach (var item in versions.Where(i => !i.IsReferenced))
{
// See https://github.com/aspnet/Universe/wiki/Build-warning-and-error-codes#potentially-unused-external-dependency for details
Log.LogMessage(MessageImportance.Normal, $"Potentially unused external dependency: {item.PackageId}/{item.Version}. See https://github.com/aspnet/Universe/wiki/Build-warning-and-error-codes for details.");
}
}
foreach (var repo in reposThatShouldPatch)
{
Log.LogError($"{repo} should not be a 'ShippedRepository'. Version changes in other repositories mean it should be patched to perserve cascading version upgrades.");
@ -211,13 +230,13 @@ namespace RepoTasks
projectGroup.Add(new Project(proj.PackageId)
{
Repository = repo,
PackageReferences = new HashSet<string>(proj
{
Repository = repo,
PackageReferences = new HashSet<string>(proj
.Frameworks
.SelectMany(f => f.Dependencies.Keys)
.Concat(proj.Tools.Select(t => t.Id)), StringComparer.OrdinalIgnoreCase),
});
});
}
foreach (var packageId in packages.Keys)

View File

@ -0,0 +1,12 @@
// Copyright (c) .NET Foundation. All rights reserved.
// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
namespace RepoTools.BuildGraph
{
internal class ExternalDependency
{
public string PackageId { get; set; }
public string Version { get; set; }
public bool IsReferenced { get; set; }
}
}

View File

@ -0,0 +1,42 @@
// Copyright (c) .NET Foundation. All rights reserved.
// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
using System.Xml.Linq;
namespace RepoTasks.CodeGen
{
class DirectedGraphXml
{
private readonly XNamespace _ns = "http://schemas.microsoft.com/vs/2009/dgml";
private readonly XDocument _doc;
private readonly XElement _nodes;
private readonly XElement _links;
public DirectedGraphXml()
{
_doc = new XDocument(new XElement(_ns + "DirectedGraph"));
_nodes = new XElement(_ns + "Nodes");
_links = new XElement(_ns + "Links");
_doc.Root.Add(_nodes);
_doc.Root.Add(_links);
}
public void AddNode(string id)
{
_nodes.Add(new XElement(_ns + "Node", new XAttribute("Id", id), new XAttribute("Label", id)));
}
public void AddLink(string source, string target)
{
_links.Add(new XElement(_ns + "Link",
new XAttribute("Source", source),
new XAttribute("Target", target)));
}
public void Save(string path)
{
_doc.Save(path);
}
}
}

View File

@ -0,0 +1,226 @@
// Copyright (c) .NET Foundation. All rights reserved.
// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.IO;
using System.Text;
using System.Threading;
using Microsoft.Build.Framework;
using Microsoft.Build.Utilities;
using NuGet.Frameworks;
using NuGet.Versioning;
using RepoTools.BuildGraph;
using RepoTasks.ProjectModel;
using RepoTasks.Utilities;
using RepoTasks.CodeGen;
using NuGet.Packaging.Core;
namespace RepoTasks
{
public class GenerateSubmoduleGraph : Task, ICancelableTask
{
private readonly CancellationTokenSource _cts = new CancellationTokenSource();
/// <summary>
/// Repositories that we are building new versions of.
/// </summary>
[Required]
public ITaskItem[] Solutions { get; set; }
[Required]
public ITaskItem[] Artifacts { get; set; }
[Required]
public ITaskItem[] Repositories { get; set; }
[Required]
public string RepositoryRoot { get; set; }
[Required]
public string Properties { get; set; }
public void Cancel()
{
_cts.Cancel();
}
public override bool Execute()
{
var packageArtifacts = Artifacts.Select(ArtifactInfo.Parse)
.OfType<ArtifactInfo.Package>()
.Where(p => !p.IsSymbolsArtifact)
.ToDictionary(p => p.PackageInfo.Id, p => p, StringComparer.OrdinalIgnoreCase);
var factory = new SolutionInfoFactory(Log, BuildEngine5);
var props = MSBuildListSplitter.GetNamedProperties(Properties);
Log.LogMessage(MessageImportance.High, $"Beginning cross-repo analysis on {Solutions.Length} solutions. Hang tight...");
if (!props.TryGetValue("Configuration", out var defaultConfig))
{
defaultConfig = "Debug";
}
var solutions = factory.Create(Solutions, props, defaultConfig, _cts.Token).OrderBy(f => f.Directory).ToList();
Log.LogMessage($"Found {solutions.Count} and {solutions.Sum(p => p.Projects.Count)} projects");
if (_cts.IsCancellationRequested)
{
return false;
}
return GenerateGraph(packageArtifacts, solutions);
}
private bool GenerateGraph(IDictionary<string, ArtifactInfo.Package> packageArtifacts, IReadOnlyList<SolutionInfo> solutions)
{
var repoGraph = new AdjacencyMatrix(solutions.Count);
var packageToProjectMap = new Dictionary<PackageIdentity, ProjectInfo>();
for (var i = 0; i < solutions.Count; i++)
{
var sln = repoGraph[i] = solutions[i];
foreach (var proj in sln.Projects)
{
if (!proj.IsPackable || proj.FullPath.Contains("samples"))
{
continue;
}
var id = new PackageIdentity(proj.PackageId, new NuGetVersion(proj.PackageVersion));
if (packageToProjectMap.TryGetValue(id, out var otherProj))
{
Log.LogError($"Both {proj.FullPath} and {otherProj.FullPath} produce {id}");
continue;
}
packageToProjectMap.Add(id, proj);
}
var sharedSrc = Path.Combine(sln.Directory, "shared");
if (Directory.Exists(sharedSrc))
{
foreach (var dir in Directory.GetDirectories(sharedSrc, "*.Sources"))
{
var id = Path.GetFileName(dir);
var artifactInfo = packageArtifacts[id];
var sharedSrcProj = new ProjectInfo(dir,
Array.Empty<ProjectFrameworkInfo>(),
Array.Empty<DotNetCliReferenceInfo>(),
true,
artifactInfo.PackageInfo.Id,
artifactInfo.PackageInfo.Version.ToNormalizedString());
sharedSrcProj.SolutionInfo = sln;
var identity = new PackageIdentity(artifactInfo.PackageInfo.Id, artifactInfo.PackageInfo.Version);
packageToProjectMap.Add(identity, sharedSrcProj);
}
}
}
if (Log.HasLoggedErrors)
{
return false;
}
for (var i = 0; i < solutions.Count; i++)
{
var sln = repoGraph[i];
var deps = from proj in sln.Projects
from tfm in proj.Frameworks
from dep in tfm.Dependencies.Values
select dep;
foreach (var dep in deps)
{
if (packageToProjectMap.TryGetValue(new PackageIdentity(dep.Id, new NuGetVersion(dep.Version)), out var target))
{
var j = repoGraph.FindIndex(target.SolutionInfo);
repoGraph.SetLink(i, j);
}
}
var toolDeps = from proj in sln.Projects
from tool in proj.Tools
select tool;
foreach (var toolDep in toolDeps)
{
if (packageToProjectMap.TryGetValue(new PackageIdentity(toolDep.Id, new NuGetVersion(toolDep.Version)), out var target))
{
var j = repoGraph.FindIndex(target.SolutionInfo);
repoGraph.SetLink(i, j);
}
}
}
CreateDgml(repoGraph);
return !Log.HasLoggedErrors;
}
private void CreateDgml(AdjacencyMatrix repoGraph)
{
var dgml = new DirectedGraphXml();
for (var i = 0; i < repoGraph.Count; i++)
{
var node = repoGraph[i];
var nodeName = Path.GetFileName(node.Directory);
dgml.AddNode(nodeName);
for (var j = 0; j < repoGraph.Count; j++)
{
if (j == i) continue;
if (repoGraph.HasLink(i, j))
{
var target = repoGraph[j];
var targetName = Path.GetFileName(target.Directory);
dgml.AddLink(nodeName, targetName);
}
}
}
dgml.Save(Path.Combine(RepositoryRoot, "modules", "SubmoduleGraph.dgml"));
}
private class AdjacencyMatrix
{
private readonly bool[,] _matrix;
private readonly SolutionInfo[] _items;
public AdjacencyMatrix(int size)
{
_matrix = new bool[size, size];
_items = new SolutionInfo[size];
Count = size;
}
public SolutionInfo this[int idx]
{
get => _items[idx];
set => _items[idx] = value;
}
public int FindIndex(SolutionInfo item)
{
return Array.FindIndex(_items, t => t.Equals(item));
}
public int Count { get; }
public bool HasLink(int source, int target) => _matrix[source, target];
public void SetLink(int source, int target)
{
_matrix[source, target] = true;
}
}
}
}

View File

@ -0,0 +1,46 @@
// Copyright (c) .NET Foundation. All rights reserved.
// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
using System;
using System.IO;
using System.Text;
using Microsoft.Build.Construction;
using Microsoft.Build.Evaluation;
namespace RepoTasks.CodeGen
{
class RepositoryProject
{
private readonly ProjectRootElement _doc;
public RepositoryProject(string repositoryRoot)
{
_doc = ProjectRootElement.Create(NewProjectFileOptions.None);
var import = _doc.CreateImportElement(@"$(MSBuildExtensionsPath)\$(MSBuildToolsVersion)\Microsoft.Common.props");
var propGroup = _doc.AddPropertyGroup();
if (repositoryRoot[repositoryRoot.Length - 1] != '\\')
{
repositoryRoot += '\\';
}
propGroup.AddProperty("RepositoryRoot", repositoryRoot);
_doc.AddItemGroup();
_doc.PrependChild(import);
_doc.AddImport(@"$(MSBuildToolsPath)\Microsoft.Common.targets");
}
public void AddProjectReference(string path)
{
_doc.AddItem("ProjectReference", path);
}
public void AddProperty(string name, string value)
{
_doc.AddProperty(name, value);
}
public void Save(string filePath)
{
_doc.Save(filePath, Encoding.UTF8);
}
}
}

View File

@ -10,7 +10,6 @@ namespace RepoTasks.ProjectModel
internal class ProjectInfo
{
public ProjectInfo(string fullPath,
string projectExtensionsPath,
IReadOnlyList<ProjectFrameworkInfo> frameworks,
IReadOnlyList<DotNetCliReferenceInfo> tools,
bool isPackable,
@ -28,7 +27,6 @@ namespace RepoTasks.ProjectModel
FullPath = fullPath;
FileName = Path.GetFileName(fullPath);
Directory = Path.GetDirectoryName(FullPath);
ProjectExtensionsPath = projectExtensionsPath ?? Path.Combine(Directory, "obj");
IsPackable = isPackable;
PackageId = packageId;
PackageVersion = packageVersion;
@ -36,12 +34,13 @@ namespace RepoTasks.ProjectModel
public string FullPath { get; }
public string FileName { get; }
public string ProjectExtensionsPath { get; }
public string Directory { get; }
public string PackageId { get; }
public string PackageVersion { get; }
public bool IsPackable { get; }
public SolutionInfo SolutionInfo { get; set; }
public IReadOnlyList<ProjectFrameworkInfo> Frameworks { get; }
public IReadOnlyList<DotNetCliReferenceInfo> Tools { get; }
}

View File

@ -27,7 +27,6 @@ namespace RepoTasks.ProjectModel
{
var project = GetProject(path, projectCollection);
var instance = project.CreateProjectInstance(ProjectInstanceSettings.ImmutableWithFastItemLookup);
var projExtPath = instance.GetPropertyValue("MSBuildProjectExtensionsPath");
var targetFrameworks = instance.GetPropertyValue("TargetFrameworks");
var targetFramework = instance.GetPropertyValue("TargetFramework");
@ -63,7 +62,6 @@ namespace RepoTasks.ProjectModel
var packageVersion = instance.GetPropertyValue("PackageVersion");
return new ProjectInfo(path,
projExtPath,
frameworks,
tools,
isPackable,

View File

@ -3,6 +3,7 @@
using System;
using System.Collections.Generic;
using System.IO;
namespace RepoTasks.ProjectModel
{
@ -21,13 +22,20 @@ namespace RepoTasks.ProjectModel
}
FullPath = fullPath;
Directory = Path.GetDirectoryName(fullPath);
ConfigName = configName;
Projects = projects ?? throw new ArgumentNullException(nameof(projects));
ShouldBuild = shouldBuild;
Shipped = shipped;
foreach (var proj in Projects)
{
proj.SolutionInfo = this;
}
}
public string FullPath { get; }
public string Directory { get; }
public string ConfigName { get; }
public IReadOnlyList<ProjectInfo> Projects { get; }
public bool ShouldBuild { get; }

View File

@ -4,7 +4,7 @@
<Import Project="..\sources.props" />
<PropertyGroup>
<TargetFramework>netstandard2.0</TargetFramework>
<TargetFramework>netcoreapp2.0</TargetFramework>
</PropertyGroup>
<ItemGroup>

View File

@ -9,6 +9,7 @@
<UsingTask TaskName="RepoTasks.CheckExpectedPackagesExist" AssemblyFile="$(_RepoTaskAssembly)" />
<UsingTask TaskName="RepoTasks.CreateLzma" AssemblyFile="$(_RepoTaskAssembly)" />
<UsingTask TaskName="RepoTasks.GenerateRestoreSourcesPropsFile" AssemblyFile="$(_RepoTaskAssembly)" />
<UsingTask TaskName="RepoTasks.GenerateSubmoduleGraph" AssemblyFile="$(_RepoTaskAssembly)" />
<UsingTask TaskName="RepoTasks.JoinItems" AssemblyFile="$(_RepoTaskAssembly)" />
<UsingTask TaskName="RepoTasks.OrderBy" AssemblyFile="$(_RepoTaskAssembly)" />
<UsingTask TaskName="RepoTasks.ProcessSharedFrameworkDeps" AssemblyFile="$(_RepoTaskAssembly)" />

34
build/tasks/tasks.sln Normal file
View File

@ -0,0 +1,34 @@

Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio 15
VisualStudioVersion = 15.0.26124.0
MinimumVisualStudioVersion = 15.0.26124.0
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "RepoTasks", "RepoTasks.csproj", "{A114791F-35B7-4E5B-8E5B-9A91E0B6E4AE}"
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Debug|x64 = Debug|x64
Debug|x86 = Debug|x86
Release|Any CPU = Release|Any CPU
Release|x64 = Release|x64
Release|x86 = Release|x86
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
EndGlobalSection
GlobalSection(ProjectConfigurationPlatforms) = postSolution
{A114791F-35B7-4E5B-8E5B-9A91E0B6E4AE}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{A114791F-35B7-4E5B-8E5B-9A91E0B6E4AE}.Debug|Any CPU.Build.0 = Debug|Any CPU
{A114791F-35B7-4E5B-8E5B-9A91E0B6E4AE}.Debug|x64.ActiveCfg = Debug|Any CPU
{A114791F-35B7-4E5B-8E5B-9A91E0B6E4AE}.Debug|x64.Build.0 = Debug|Any CPU
{A114791F-35B7-4E5B-8E5B-9A91E0B6E4AE}.Debug|x86.ActiveCfg = Debug|Any CPU
{A114791F-35B7-4E5B-8E5B-9A91E0B6E4AE}.Debug|x86.Build.0 = Debug|Any CPU
{A114791F-35B7-4E5B-8E5B-9A91E0B6E4AE}.Release|Any CPU.ActiveCfg = Release|Any CPU
{A114791F-35B7-4E5B-8E5B-9A91E0B6E4AE}.Release|Any CPU.Build.0 = Release|Any CPU
{A114791F-35B7-4E5B-8E5B-9A91E0B6E4AE}.Release|x64.ActiveCfg = Release|Any CPU
{A114791F-35B7-4E5B-8E5B-9A91E0B6E4AE}.Release|x64.Build.0 = Release|Any CPU
{A114791F-35B7-4E5B-8E5B-9A91E0B6E4AE}.Release|x86.ActiveCfg = Release|Any CPU
{A114791F-35B7-4E5B-8E5B-9A91E0B6E4AE}.Release|x86.Build.0 = Release|Any CPU
EndGlobalSection
EndGlobal

View File

@ -1,2 +1,2 @@
version:2.1.0-preview2-15769
commithash:6481a3a15bebd69f28edfce53f655b1bef6048a8
version:2.1.0-rc1-15770
commithash:a2abdc6fa0e8a1a465e830100950f1ecc698ab28

421
modules/SubmoduleGraph.dgml Normal file
View File

@ -0,0 +1,421 @@
<?xml version="1.0" encoding="utf-8"?>
<DirectedGraph xmlns="http://schemas.microsoft.com/vs/2009/dgml">
<Nodes>
<Node Id="AADIntegration" Label="AADIntegration" />
<Node Id="Antiforgery" Label="Antiforgery" />
<Node Id="AuthSamples" Label="AuthSamples" />
<Node Id="AzureIntegration" Label="AzureIntegration" />
<Node Id="BasicMiddleware" Label="BasicMiddleware" />
<Node Id="BrowserLink" Label="BrowserLink" />
<Node Id="Caching" Label="Caching" />
<Node Id="Common" Label="Common" />
<Node Id="Configuration" Label="Configuration" />
<Node Id="CORS" Label="CORS" />
<Node Id="DataProtection" Label="DataProtection" />
<Node Id="DependencyInjection" Label="DependencyInjection" />
<Node Id="Diagnostics" Label="Diagnostics" />
<Node Id="DotNetTools" Label="DotNetTools" />
<Node Id="EntityFrameworkCore" Label="EntityFrameworkCore" />
<Node Id="EventNotification" Label="EventNotification" />
<Node Id="FileSystem" Label="FileSystem" />
<Node Id="Hosting" Label="Hosting" />
<Node Id="HtmlAbstractions" Label="HtmlAbstractions" />
<Node Id="HttpAbstractions" Label="HttpAbstractions" />
<Node Id="HttpClientFactory" Label="HttpClientFactory" />
<Node Id="HttpSysServer" Label="HttpSysServer" />
<Node Id="Identity" Label="Identity" />
<Node Id="IISIntegration" Label="IISIntegration" />
<Node Id="JavaScriptServices" Label="JavaScriptServices" />
<Node Id="JsonPatch" Label="JsonPatch" />
<Node Id="KestrelHttpServer" Label="KestrelHttpServer" />
<Node Id="Localization" Label="Localization" />
<Node Id="Logging" Label="Logging" />
<Node Id="MetaPackages" Label="MetaPackages" />
<Node Id="Microsoft.Data.Sqlite" Label="Microsoft.Data.Sqlite" />
<Node Id="MusicStore" Label="MusicStore" />
<Node Id="Mvc" Label="Mvc" />
<Node Id="MvcPrecompilation" Label="MvcPrecompilation" />
<Node Id="Options" Label="Options" />
<Node Id="Proxy" Label="Proxy" />
<Node Id="Razor" Label="Razor" />
<Node Id="ResponseCaching" Label="ResponseCaching" />
<Node Id="Routing" Label="Routing" />
<Node Id="Scaffolding" Label="Scaffolding" />
<Node Id="Security" Label="Security" />
<Node Id="ServerTests" Label="ServerTests" />
<Node Id="Session" Label="Session" />
<Node Id="SignalR" Label="SignalR" />
<Node Id="StaticFiles" Label="StaticFiles" />
<Node Id="Testing" Label="Testing" />
<Node Id="WebHooks" Label="WebHooks" />
<Node Id="WebSockets" Label="WebSockets" />
</Nodes>
<Links>
<Link Source="AADIntegration" Target="BasicMiddleware" />
<Link Source="AADIntegration" Target="Configuration" />
<Link Source="AADIntegration" Target="IISIntegration" />
<Link Source="AADIntegration" Target="KestrelHttpServer" />
<Link Source="AADIntegration" Target="Logging" />
<Link Source="AADIntegration" Target="Mvc" />
<Link Source="AADIntegration" Target="Security" />
<Link Source="AADIntegration" Target="StaticFiles" />
<Link Source="Antiforgery" Target="Common" />
<Link Source="Antiforgery" Target="DataProtection" />
<Link Source="Antiforgery" Target="DependencyInjection" />
<Link Source="Antiforgery" Target="HtmlAbstractions" />
<Link Source="Antiforgery" Target="HttpAbstractions" />
<Link Source="Antiforgery" Target="Logging" />
<Link Source="Antiforgery" Target="Testing" />
<Link Source="AuthSamples" Target="Configuration" />
<Link Source="AuthSamples" Target="DataProtection" />
<Link Source="AuthSamples" Target="Diagnostics" />
<Link Source="AuthSamples" Target="EntityFrameworkCore" />
<Link Source="AuthSamples" Target="Hosting" />
<Link Source="AuthSamples" Target="Identity" />
<Link Source="AuthSamples" Target="IISIntegration" />
<Link Source="AuthSamples" Target="KestrelHttpServer" />
<Link Source="AuthSamples" Target="Logging" />
<Link Source="AuthSamples" Target="MetaPackages" />
<Link Source="AuthSamples" Target="Mvc" />
<Link Source="AuthSamples" Target="Security" />
<Link Source="AuthSamples" Target="StaticFiles" />
<Link Source="AuthSamples" Target="Testing" />
<Link Source="AzureIntegration" Target="Common" />
<Link Source="AzureIntegration" Target="Configuration" />
<Link Source="AzureIntegration" Target="EventNotification" />
<Link Source="AzureIntegration" Target="Hosting" />
<Link Source="AzureIntegration" Target="IISIntegration" />
<Link Source="AzureIntegration" Target="KestrelHttpServer" />
<Link Source="AzureIntegration" Target="Logging" />
<Link Source="AzureIntegration" Target="Mvc" />
<Link Source="AzureIntegration" Target="Razor" />
<Link Source="BasicMiddleware" Target="Configuration" />
<Link Source="BasicMiddleware" Target="FileSystem" />
<Link Source="BasicMiddleware" Target="Hosting" />
<Link Source="BasicMiddleware" Target="HttpAbstractions" />
<Link Source="BasicMiddleware" Target="KestrelHttpServer" />
<Link Source="BasicMiddleware" Target="Logging" />
<Link Source="BasicMiddleware" Target="Options" />
<Link Source="BrowserLink" Target="FileSystem" />
<Link Source="BrowserLink" Target="Hosting" />
<Link Source="BrowserLink" Target="HttpAbstractions" />
<Link Source="BrowserLink" Target="Testing" />
<Link Source="Caching" Target="Common" />
<Link Source="Caching" Target="Configuration" />
<Link Source="Caching" Target="DependencyInjection" />
<Link Source="Caching" Target="FileSystem" />
<Link Source="Caching" Target="Options" />
<Link Source="Caching" Target="Testing" />
<Link Source="Configuration" Target="Common" />
<Link Source="Configuration" Target="FileSystem" />
<Link Source="Configuration" Target="Testing" />
<Link Source="CORS" Target="Configuration" />
<Link Source="CORS" Target="DependencyInjection" />
<Link Source="CORS" Target="Hosting" />
<Link Source="CORS" Target="HttpAbstractions" />
<Link Source="CORS" Target="IISIntegration" />
<Link Source="CORS" Target="KestrelHttpServer" />
<Link Source="CORS" Target="Logging" />
<Link Source="CORS" Target="Options" />
<Link Source="DataProtection" Target="Common" />
<Link Source="DataProtection" Target="Configuration" />
<Link Source="DataProtection" Target="DependencyInjection" />
<Link Source="DataProtection" Target="Hosting" />
<Link Source="DataProtection" Target="Logging" />
<Link Source="DataProtection" Target="Options" />
<Link Source="DataProtection" Target="Testing" />
<Link Source="DependencyInjection" Target="Common" />
<Link Source="DependencyInjection" Target="Testing" />
<Link Source="Diagnostics" Target="Common" />
<Link Source="Diagnostics" Target="DependencyInjection" />
<Link Source="Diagnostics" Target="EntityFrameworkCore" />
<Link Source="Diagnostics" Target="EventNotification" />
<Link Source="Diagnostics" Target="FileSystem" />
<Link Source="Diagnostics" Target="Hosting" />
<Link Source="Diagnostics" Target="HttpAbstractions" />
<Link Source="Diagnostics" Target="IISIntegration" />
<Link Source="Diagnostics" Target="KestrelHttpServer" />
<Link Source="Diagnostics" Target="Logging" />
<Link Source="Diagnostics" Target="Options" />
<Link Source="Diagnostics" Target="StaticFiles" />
<Link Source="Diagnostics" Target="Testing" />
<Link Source="DotNetTools" Target="Common" />
<Link Source="DotNetTools" Target="Configuration" />
<Link Source="DotNetTools" Target="Testing" />
<Link Source="EntityFrameworkCore" Target="Caching" />
<Link Source="EntityFrameworkCore" Target="Configuration" />
<Link Source="EntityFrameworkCore" Target="DependencyInjection" />
<Link Source="EntityFrameworkCore" Target="Hosting" />
<Link Source="EntityFrameworkCore" Target="Logging" />
<Link Source="EntityFrameworkCore" Target="Microsoft.Data.Sqlite" />
<Link Source="EventNotification" Target="Testing" />
<Link Source="FileSystem" Target="Common" />
<Link Source="FileSystem" Target="Testing" />
<Link Source="Hosting" Target="Common" />
<Link Source="Hosting" Target="Configuration" />
<Link Source="Hosting" Target="DependencyInjection" />
<Link Source="Hosting" Target="EventNotification" />
<Link Source="Hosting" Target="FileSystem" />
<Link Source="Hosting" Target="HttpAbstractions" />
<Link Source="Hosting" Target="Logging" />
<Link Source="Hosting" Target="Options" />
<Link Source="Hosting" Target="Testing" />
<Link Source="HtmlAbstractions" Target="DependencyInjection" />
<Link Source="HtmlAbstractions" Target="Options" />
<Link Source="HtmlAbstractions" Target="Testing" />
<Link Source="HttpAbstractions" Target="Common" />
<Link Source="HttpAbstractions" Target="DependencyInjection" />
<Link Source="HttpAbstractions" Target="FileSystem" />
<Link Source="HttpAbstractions" Target="Logging" />
<Link Source="HttpAbstractions" Target="Options" />
<Link Source="HttpAbstractions" Target="Testing" />
<Link Source="HttpClientFactory" Target="Common" />
<Link Source="HttpClientFactory" Target="DependencyInjection" />
<Link Source="HttpClientFactory" Target="Logging" />
<Link Source="HttpClientFactory" Target="Options" />
<Link Source="HttpClientFactory" Target="Testing" />
<Link Source="HttpSysServer" Target="Hosting" />
<Link Source="HttpSysServer" Target="HttpAbstractions" />
<Link Source="HttpSysServer" Target="Logging" />
<Link Source="HttpSysServer" Target="Testing" />
<Link Source="Identity" Target="BasicMiddleware" />
<Link Source="Identity" Target="Common" />
<Link Source="Identity" Target="Configuration" />
<Link Source="Identity" Target="DataProtection" />
<Link Source="Identity" Target="DependencyInjection" />
<Link Source="Identity" Target="Diagnostics" />
<Link Source="Identity" Target="EntityFrameworkCore" />
<Link Source="Identity" Target="FileSystem" />
<Link Source="Identity" Target="Hosting" />
<Link Source="Identity" Target="HttpAbstractions" />
<Link Source="Identity" Target="IISIntegration" />
<Link Source="Identity" Target="KestrelHttpServer" />
<Link Source="Identity" Target="Logging" />
<Link Source="Identity" Target="Mvc" />
<Link Source="Identity" Target="Options" />
<Link Source="Identity" Target="Razor" />
<Link Source="Identity" Target="Security" />
<Link Source="Identity" Target="StaticFiles" />
<Link Source="Identity" Target="Testing" />
<Link Source="IISIntegration" Target="BasicMiddleware" />
<Link Source="IISIntegration" Target="Common" />
<Link Source="IISIntegration" Target="Configuration" />
<Link Source="IISIntegration" Target="Hosting" />
<Link Source="IISIntegration" Target="HttpAbstractions" />
<Link Source="IISIntegration" Target="HttpSysServer" />
<Link Source="IISIntegration" Target="KestrelHttpServer" />
<Link Source="IISIntegration" Target="Logging" />
<Link Source="IISIntegration" Target="Options" />
<Link Source="JavaScriptServices" Target="DependencyInjection" />
<Link Source="JavaScriptServices" Target="Diagnostics" />
<Link Source="JavaScriptServices" Target="FileSystem" />
<Link Source="JavaScriptServices" Target="Hosting" />
<Link Source="JavaScriptServices" Target="IISIntegration" />
<Link Source="JavaScriptServices" Target="KestrelHttpServer" />
<Link Source="JavaScriptServices" Target="Logging" />
<Link Source="JavaScriptServices" Target="Mvc" />
<Link Source="JavaScriptServices" Target="StaticFiles" />
<Link Source="JavaScriptServices" Target="WebSockets" />
<Link Source="JsonPatch" Target="Common" />
<Link Source="JsonPatch" Target="Testing" />
<Link Source="KestrelHttpServer" Target="Common" />
<Link Source="KestrelHttpServer" Target="Configuration" />
<Link Source="KestrelHttpServer" Target="DependencyInjection" />
<Link Source="KestrelHttpServer" Target="Hosting" />
<Link Source="KestrelHttpServer" Target="HttpAbstractions" />
<Link Source="KestrelHttpServer" Target="Logging" />
<Link Source="KestrelHttpServer" Target="Options" />
<Link Source="KestrelHttpServer" Target="Testing" />
<Link Source="Localization" Target="Configuration" />
<Link Source="Localization" Target="DependencyInjection" />
<Link Source="Localization" Target="Hosting" />
<Link Source="Localization" Target="HttpAbstractions" />
<Link Source="Localization" Target="IISIntegration" />
<Link Source="Localization" Target="KestrelHttpServer" />
<Link Source="Localization" Target="Logging" />
<Link Source="Localization" Target="Options" />
<Link Source="Localization" Target="Routing" />
<Link Source="Localization" Target="Testing" />
<Link Source="Logging" Target="Configuration" />
<Link Source="Logging" Target="DependencyInjection" />
<Link Source="Logging" Target="FileSystem" />
<Link Source="Logging" Target="Options" />
<Link Source="Logging" Target="Testing" />
<Link Source="MetaPackages" Target="BasicMiddleware" />
<Link Source="MetaPackages" Target="Configuration" />
<Link Source="MetaPackages" Target="Diagnostics" />
<Link Source="MetaPackages" Target="Hosting" />
<Link Source="MetaPackages" Target="IISIntegration" />
<Link Source="MetaPackages" Target="KestrelHttpServer" />
<Link Source="MetaPackages" Target="Logging" />
<Link Source="MetaPackages" Target="Routing" />
<Link Source="MetaPackages" Target="StaticFiles" />
<Link Source="MusicStore" Target="Common" />
<Link Source="MusicStore" Target="Configuration" />
<Link Source="MusicStore" Target="Diagnostics" />
<Link Source="MusicStore" Target="EntityFrameworkCore" />
<Link Source="MusicStore" Target="Hosting" />
<Link Source="MusicStore" Target="HttpAbstractions" />
<Link Source="MusicStore" Target="HttpSysServer" />
<Link Source="MusicStore" Target="Identity" />
<Link Source="MusicStore" Target="Logging" />
<Link Source="MusicStore" Target="MetaPackages" />
<Link Source="MusicStore" Target="Mvc" />
<Link Source="MusicStore" Target="MvcPrecompilation" />
<Link Source="MusicStore" Target="Security" />
<Link Source="MusicStore" Target="Session" />
<Link Source="MusicStore" Target="StaticFiles" />
<Link Source="Mvc" Target="Antiforgery" />
<Link Source="Mvc" Target="Caching" />
<Link Source="Mvc" Target="Common" />
<Link Source="Mvc" Target="Configuration" />
<Link Source="Mvc" Target="CORS" />
<Link Source="Mvc" Target="DependencyInjection" />
<Link Source="Mvc" Target="Diagnostics" />
<Link Source="Mvc" Target="EventNotification" />
<Link Source="Mvc" Target="FileSystem" />
<Link Source="Mvc" Target="Hosting" />
<Link Source="Mvc" Target="HtmlAbstractions" />
<Link Source="Mvc" Target="HttpAbstractions" />
<Link Source="Mvc" Target="IISIntegration" />
<Link Source="Mvc" Target="JsonPatch" />
<Link Source="Mvc" Target="KestrelHttpServer" />
<Link Source="Mvc" Target="Localization" />
<Link Source="Mvc" Target="Logging" />
<Link Source="Mvc" Target="Options" />
<Link Source="Mvc" Target="Razor" />
<Link Source="Mvc" Target="ResponseCaching" />
<Link Source="Mvc" Target="Routing" />
<Link Source="Mvc" Target="Security" />
<Link Source="Mvc" Target="Session" />
<Link Source="Mvc" Target="StaticFiles" />
<Link Source="Mvc" Target="Testing" />
<Link Source="MvcPrecompilation" Target="Common" />
<Link Source="MvcPrecompilation" Target="Configuration" />
<Link Source="MvcPrecompilation" Target="Hosting" />
<Link Source="MvcPrecompilation" Target="KestrelHttpServer" />
<Link Source="MvcPrecompilation" Target="Logging" />
<Link Source="MvcPrecompilation" Target="Mvc" />
<Link Source="MvcPrecompilation" Target="Razor" />
<Link Source="MvcPrecompilation" Target="Security" />
<Link Source="MvcPrecompilation" Target="Testing" />
<Link Source="Options" Target="Common" />
<Link Source="Options" Target="Configuration" />
<Link Source="Options" Target="DependencyInjection" />
<Link Source="Proxy" Target="Hosting" />
<Link Source="Proxy" Target="IISIntegration" />
<Link Source="Proxy" Target="KestrelHttpServer" />
<Link Source="Proxy" Target="Options" />
<Link Source="Proxy" Target="Testing" />
<Link Source="Proxy" Target="WebSockets" />
<Link Source="Razor" Target="Common" />
<Link Source="Razor" Target="HtmlAbstractions" />
<Link Source="Razor" Target="Testing" />
<Link Source="ResponseCaching" Target="Caching" />
<Link Source="ResponseCaching" Target="Common" />
<Link Source="ResponseCaching" Target="Hosting" />
<Link Source="ResponseCaching" Target="HttpAbstractions" />
<Link Source="ResponseCaching" Target="IISIntegration" />
<Link Source="ResponseCaching" Target="KestrelHttpServer" />
<Link Source="ResponseCaching" Target="Logging" />
<Link Source="Routing" Target="Common" />
<Link Source="Routing" Target="DependencyInjection" />
<Link Source="Routing" Target="Hosting" />
<Link Source="Routing" Target="HtmlAbstractions" />
<Link Source="Routing" Target="HttpAbstractions" />
<Link Source="Routing" Target="IISIntegration" />
<Link Source="Routing" Target="KestrelHttpServer" />
<Link Source="Routing" Target="Logging" />
<Link Source="Routing" Target="Options" />
<Link Source="Routing" Target="Testing" />
<Link Source="Scaffolding" Target="Common" />
<Link Source="Scaffolding" Target="Configuration" />
<Link Source="Scaffolding" Target="DependencyInjection" />
<Link Source="Scaffolding" Target="EntityFrameworkCore" />
<Link Source="Scaffolding" Target="FileSystem" />
<Link Source="Scaffolding" Target="Hosting" />
<Link Source="Scaffolding" Target="IISIntegration" />
<Link Source="Scaffolding" Target="KestrelHttpServer" />
<Link Source="Scaffolding" Target="Logging" />
<Link Source="Scaffolding" Target="Mvc" />
<Link Source="Scaffolding" Target="Razor" />
<Link Source="Scaffolding" Target="StaticFiles" />
<Link Source="Scaffolding" Target="Testing" />
<Link Source="Security" Target="Caching" />
<Link Source="Security" Target="Common" />
<Link Source="Security" Target="Configuration" />
<Link Source="Security" Target="DataProtection" />
<Link Source="Security" Target="DependencyInjection" />
<Link Source="Security" Target="Diagnostics" />
<Link Source="Security" Target="FileSystem" />
<Link Source="Security" Target="Hosting" />
<Link Source="Security" Target="HtmlAbstractions" />
<Link Source="Security" Target="HttpAbstractions" />
<Link Source="Security" Target="IISIntegration" />
<Link Source="Security" Target="KestrelHttpServer" />
<Link Source="Security" Target="Logging" />
<Link Source="Security" Target="Options" />
<Link Source="Security" Target="StaticFiles" />
<Link Source="Security" Target="Testing" />
<Link Source="ServerTests" Target="BasicMiddleware" />
<Link Source="ServerTests" Target="Configuration" />
<Link Source="ServerTests" Target="Hosting" />
<Link Source="ServerTests" Target="HttpAbstractions" />
<Link Source="ServerTests" Target="HttpSysServer" />
<Link Source="ServerTests" Target="IISIntegration" />
<Link Source="ServerTests" Target="KestrelHttpServer" />
<Link Source="ServerTests" Target="Logging" />
<Link Source="Session" Target="Caching" />
<Link Source="Session" Target="DataProtection" />
<Link Source="Session" Target="Hosting" />
<Link Source="Session" Target="HttpAbstractions" />
<Link Source="Session" Target="IISIntegration" />
<Link Source="Session" Target="KestrelHttpServer" />
<Link Source="Session" Target="Logging" />
<Link Source="Session" Target="Options" />
<Link Source="SignalR" Target="Common" />
<Link Source="SignalR" Target="Configuration" />
<Link Source="SignalR" Target="CORS" />
<Link Source="SignalR" Target="DependencyInjection" />
<Link Source="SignalR" Target="Diagnostics" />
<Link Source="SignalR" Target="EntityFrameworkCore" />
<Link Source="SignalR" Target="Hosting" />
<Link Source="SignalR" Target="HttpAbstractions" />
<Link Source="SignalR" Target="Identity" />
<Link Source="SignalR" Target="IISIntegration" />
<Link Source="SignalR" Target="KestrelHttpServer" />
<Link Source="SignalR" Target="Logging" />
<Link Source="SignalR" Target="Mvc" />
<Link Source="SignalR" Target="Options" />
<Link Source="SignalR" Target="Routing" />
<Link Source="SignalR" Target="Security" />
<Link Source="SignalR" Target="StaticFiles" />
<Link Source="SignalR" Target="Testing" />
<Link Source="SignalR" Target="WebSockets" />
<Link Source="StaticFiles" Target="FileSystem" />
<Link Source="StaticFiles" Target="Hosting" />
<Link Source="StaticFiles" Target="HtmlAbstractions" />
<Link Source="StaticFiles" Target="HttpAbstractions" />
<Link Source="StaticFiles" Target="HttpSysServer" />
<Link Source="StaticFiles" Target="IISIntegration" />
<Link Source="StaticFiles" Target="KestrelHttpServer" />
<Link Source="StaticFiles" Target="Logging" />
<Link Source="StaticFiles" Target="Testing" />
<Link Source="WebHooks" Target="Common" />
<Link Source="WebHooks" Target="Configuration" />
<Link Source="WebHooks" Target="MetaPackages" />
<Link Source="WebHooks" Target="Mvc" />
<Link Source="WebHooks" Target="StaticFiles" />
<Link Source="WebSockets" Target="Configuration" />
<Link Source="WebSockets" Target="Diagnostics" />
<Link Source="WebSockets" Target="Hosting" />
<Link Source="WebSockets" Target="HttpAbstractions" />
<Link Source="WebSockets" Target="HttpSysServer" />
<Link Source="WebSockets" Target="IISIntegration" />
<Link Source="WebSockets" Target="KestrelHttpServer" />
<Link Source="WebSockets" Target="Logging" />
<Link Source="WebSockets" Target="Options" />
<Link Source="WebSockets" Target="StaticFiles" />
<Link Source="WebSockets" Target="Testing" />
</Links>
</DirectedGraph>

View File

@ -6,12 +6,15 @@
to the value in version.props
.PARAMETER Push
Push the tag to origin
.PARAMETER OutFile
When specified, generate a .csv with repo names and tags
.PARAMETER WhatIf
Dry run
#>
[cmdletbinding(PositionalBinding = $false, SupportsShouldProcess = $true)]
param(
[switch]$Push
[switch]$Push,
[string]$OutFile
)
$ErrorActionPreference = 'Stop'
@ -57,6 +60,7 @@ function New-GitTag {
function Get-PackageVersion([string]$repoRoot) {
$buildScript = if (-not $IsCoreCLR -or $IsWindows) { 'build.ps1' } else { 'build.sh' }
$inspectTarget = "/p:CustomAfterKoreBuildTargets=$PSScriptRoot/GetPackageVersion.targets"
Write-Verbose "Running `"$repoRoot/$buildScript`" $inspectTarget /v:m /p:IsFinalBuild=true /t:Noop /t:GetPackageVersion"
# Add the /t:Noop target which may be used by the bootstrapper to skip unimportant initialization
$output = & "$repoRoot/$buildScript" $inspectTarget /v:m /p:IsFinalBuild=true /t:Noop /t:GetPackageVersion
$output | out-string | Write-Verbose
@ -64,7 +68,7 @@ function Get-PackageVersion([string]$repoRoot) {
throw "$buildScript failed on $repoRoot. Exit code $LASTEXITCODE"
}
$packageVersion = $output | where-object { $_ -like '*PackageVersion=*' } | select-object -first 1
$packageVersion = $packageVersion -replace 'PackageVersion=',''
$packageVersion = $packageVersion -replace 'PackageVersion=', ''
if ($packageVersion) { $packageVersion = $packageVersion.Trim() }
if (-not $packageVersion) {
throw "Could not determine final package version for $repoRoot"
@ -80,9 +84,16 @@ if (-not $PSCmdlet.ShouldContinue("Continue?", "This will apply tags to all subm
exit 1
}
$universeTag = Get-PackageVersion $repoRoot
New-GitTag $repoRoot $universeTag -WhatIf:$WhatIfPreference
$tags = @([pscustomobject] @{
repo = $(git config remote.origin.url)
tag = $universeTag
commit = $(git rev-parse HEAD)
})
Get-Submodules $repoRoot | ForEach-Object {
$modPath = $_.path
$module = $_.module
@ -96,6 +107,11 @@ Get-Submodules $repoRoot | ForEach-Object {
if ($tag -ne $universeTag) {
Write-Warning "${module}: version ($tag) does not match universe ($universeTag)"
}
$tags += [pscustomobject] @{
repo = $_.remote
tag = $tag
commit = $_.commit
}
}
catch {
Write-Warning "${module}: Could not automatically determine tag for $modPath. Skipping"
@ -104,3 +120,9 @@ Get-Submodules $repoRoot | ForEach-Object {
New-GitTag $_.path $tag -WhatIf:$WhatIfPreference
}
$tags | Format-Table
if ($OutFile) {
$tags | Select-Object -Property * | Export-Csv -Path $OutFile -WhatIf:$false -NoTypeInformation
}

View File

@ -13,6 +13,8 @@
Additional arguments to pass into git-commit
.PARAMETER NoCommit
Make changes without executing git-commit
.PARAMETER ToolsSource
The location of the build tools
.PARAMETER Force
Specified this to make a commit with any changes
#>
@ -22,6 +24,7 @@ param(
[string]$GitAuthorName = $null,
[string]$GitAuthorEmail = $null,
[string[]]$GitCommitArgs = @(),
[string]$ToolsSource = 'https://aspnetcore.blob.core.windows.net/buildtools',
[switch]$NoCommit,
[switch]$Force
)
@ -54,7 +57,7 @@ try {
$oldVersion = Get-KoreBuildVersion
& "$RepoRoot/run.ps1" -Update -Command noop | Out-Null
& "$RepoRoot/run.ps1" -Update -ToolsSource $ToolsSource -Command noop | Out-Null
$newVersion = Get-KoreBuildVersion

View File

@ -7,12 +7,23 @@
param(
[Parameter(Mandatory = $true)]
$BuildXml,
[switch]
$NoCommit,
[string[]]$ConfigVars = @()
)
$ErrorActionPreference = 'Stop'
Import-Module -Scope Local -Force "$PSScriptRoot/common.psm1"
Set-StrictMode -Version 1
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
if (-not $NoCommit) {
$GitHubEmail = $ConfigVars["GithubEmail"]
$GitHubUsername = $ConfigVars["GithubUsername"]
$GitHubPassword = $ConfigVars["GithubToken"]
Set-GitHubInfo $GitHubPassword $GitHubUsername $GitHubEmail
}
$depsPath = Resolve-Path "$PSScriptRoot/../build/dependencies.props"
[xml] $dependencies = LoadXml $depsPath
@ -20,13 +31,12 @@ $depsPath = Resolve-Path "$PSScriptRoot/../build/dependencies.props"
if ($BuildXml -like 'http*') {
$url = $BuildXml
New-Item -Type Directory "$PSScriptRoot/../obj/" -ErrorAction Ignore
$localXml = "$PSScriptRoot/../obj/build.xml"
$BuildXml = "$PSScriptRoot/../obj/build.xml"
Write-Verbose "Downloading from $url to $BuildXml"
Invoke-WebRequest -OutFile $localXml $url
Invoke-WebRequest -OutFile $BuildXml $url
}
[xml] $remoteDeps = LoadXml $localXml
$count = 0
[xml] $remoteDeps = LoadXml $BuildXml
$variables = @{}
@ -46,50 +56,15 @@ foreach ($package in $remoteDeps.SelectNodes('//Package')) {
}
}
$updatedVars = @{}
$updatedVars = UpdateVersions $variables $dependencies $depsPath
foreach ($varName in ($variables.Keys | sort)) {
$packageVersions = $variables[$varName]
if ($packageVersions.Length -gt 1) {
Write-Warning "Skipped $varName. Multiple version found. { $($packageVersions -join ', ') }."
continue
}
if (-not $NoCommit) {
$body = CommitUpdatedVersions $updatedVars $dependencies $depsPath
$destinationBranch = "dotnetbot/UpdateDeps"
$packageVersion = $packageVersions | Select-Object -First 1
$baseBranch = $ConfigVars["GithubUpstreamBranch"]
$depVarNode = $dependencies.SelectSingleNode("//PropertyGroup[`@Label=`"Package Versions: Auto`"]/$varName")
if ($depVarNode -and $depVarNode.InnerText -ne $packageVersion) {
$depVarNode.InnerText = $packageVersion
$count++
Write-Host -f DarkGray " Updating $varName to $packageVersion"
$updatedVars[$varName] = $packageVersion
if ($body) {
CreatePR $baseBranch $destinationBranch $body $GitHubPassword
}
}
if ($count -gt 0) {
Write-Host -f Cyan "Updating $count version variables in $depsPath"
SaveXml $dependencies $depsPath
# Ensure dotnet is installed
& "$PSScriptRoot\..\run.ps1" install-tools
$ProjectPath = "$PSScriptRoot\update-dependencies\update-dependencies.csproj"
$ConfigVars += "--BuildXml"
$ConfigVars += $BuildXml
$ConfigVars += "--UpdatedVersions"
$varString = ""
foreach ($updatedVar in $updatedVars.GetEnumerator()) {
$varString += "$($updatedVar.Name)=$($updatedVar.Value)+"
}
$ConfigVars += $varString
# Restore and run the app
Write-Host "Invoking App $ProjectPath..."
Invoke-Expression "dotnet run -p `"$ProjectPath`" $ConfigVars"
if ($LASTEXITCODE -ne 0) { throw "Build failed" }
}
else {
Write-Host -f Green "No changes found"
}

View File

@ -0,0 +1,122 @@
[CmdletBinding()]
param(
[string]$GitHubEmail,
[string]$GitHubUsername,
[string]$GitHubPassword
)
$ErrorActionPreference = 'Stop'
Import-Module -Scope Local -Force "$PSScriptRoot/common.psm1"
Set-StrictMode -Version 1
[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12
$githubRaw = "https://raw.githubusercontent.com"
$versionsRepo = "dotnet/versions"
$versionsBranch = "master"
$coreSetupRepo = "dotnet/core-setup"
$coreFxRepo = "dotnet/corefx"
$coreSetupVersions = "$githubRaw/$versionsRepo/$versionsBranch/build-info/$coreSetupRepo/master/Latest_Packages.txt"
$tempDir = "$PSScriptRoot/../obj"
$localCoreSetupVersions = "$tempDir/coresetup.packages"
Write-Host "Downloading $coreSetupVersions to $localCoreSetupVersions"
Invoke-WebRequest -OutFile $localCoreSetupVersions -Uri $coreSetupVersions
$msNetCoreAppPackageVersion = $null
$msNetCoreAppPackageName = "Microsoft.NETCore.App"
Set-GitHubInfo $GitHubPassword $GitHubUsername $GitHubEmail
$variables = @{}
foreach ($line in Get-Content $localCoreSetupVersions) {
if ($line.StartsWith("$msNetCoreAppPackageName ")) {
$msNetCoreAppPackageVersion = $line.Trim("$msNetCoreAppPackageName ")
}
$parts = $line.Split(' ')
$packageName = $parts[0]
$varName = "$packageName" + "PackageVersion"
$varName = $varName.Replace('.', '')
$packageVersion = $parts[1]
if ($variables[$varName]) {
if ($variables[$varName].Where( {$_ -eq $packageVersion}, 'First').Count -eq 0) {
$variables[$varName] += $packageVersion
}
}
else {
$variables[$varName] = @($packageVersion)
}
}
if (!$msNetCoreAppPackageVersion) {
Throw "$msNetCoreAppPackageName was not in $coreSetupVersions"
}
$coreAppDownloadLink = "https://dotnet.myget.org/F/dotnet-core/api/v2/package/$msNetCoreAppPackageName/$msNetCoreAppPackageVersion"
$netCoreAppNupkg = "$tempDir/microsoft.netcore.app.zip"
Invoke-WebRequest -OutFile $netCoreAppNupkg -Uri $coreAppDownloadLink
$expandedNetCoreApp = "$tempDir/microsoft.netcore.app/"
Expand-Archive -Path $netCoreAppNupkg -DestinationPath $expandedNetCoreApp -Force
$versionsTxt = "$expandedNetCoreApp/$msNetCoreAppPackageName.versions.txt"
$versionsCoreFxCommit = $null
foreach ($line in Get-Content $versionsTxt) {
if ($line.StartsWith("dotnet/versions/corefx")) {
$versionsCoreFxCommit = $line.Split(' ')[1]
break
}
}
if (!$versionsCoreFxCommit) {
Throw "no 'dotnet/versions/corefx' in versions.txt of Microsoft.NETCore.App"
}
$coreFxVersionsUrl = "$githubRaw/$versionsRepo/$versionsCoreFxCommit/build-info/$coreFxRepo/$versionsBranch/Latest_Packages.txt"
$localCoreFxVersions = "$tempDir/$corefx.packages"
Invoke-WebRequest -OutFile $localCoreFxVersions -Uri $coreFxVersionsUrl
foreach ($line in Get-Content $localCoreFxVersions) {
$parts = $line.Split(' ')
$packageName = $parts[0]
$varName = "$packageName" + "PackageVersion"
$varName = $varName.Replace('.', '')
$packageVersion = $parts[1]
if ($variables[$varName]) {
if ($variables[$varName].Where( {$_ -eq $packageVersion}, 'First').Count -eq 0) {
$variables[$varName] += $packageVersion
}
}
else {
$variables[$varName] = @($packageVersion)
}
}
$depsPath = Resolve-Path "$PSScriptRoot/../build/dependencies.props"
Write-Host "Loading deps from $depsPath"
[xml] $dependencies = LoadXml $depsPath
$remote = "origin"
$baseBranch = "release/2.1"
$currentBranch = Invoke-Block { & git rev-parse --abbrev-ref HEAD }
$destinationBranch = "rybrande/UpgradeDepsTest"
Invoke-Block { & git checkout -tb $destinationBranch "$remote/$baseBranch" }
try {
$updatedVars = UpdateVersions $variables $dependencies $depsPath
$body = CommitUpdatedVersions $updatedVars $dependencies $depsPath
if ($body) {
CreatePR $baseBranch $destinationBranch $body $GitHubPassword
}
}
finally {
Invoke-Block { & git checkout $currentBranch }
}

View File

@ -1,3 +1,5 @@
$ErrorActionPreference = 'Stop'
function Assert-Git {
if (!(Get-Command git -ErrorAction Ignore)) {
Write-Error 'git is required to execute this script'
@ -54,6 +56,7 @@ function Get-Submodules {
commit = $(git rev-parse HEAD)
newCommit = $null
changed = $false
remote = $(git config remote.origin.url)
branch = $(git config -f $moduleConfigFile --get submodule.modules/$($_.Name).branch )
versionPrefix = $versionPrefix
versionSuffix = $versionSuffix
@ -109,3 +112,105 @@ function PackageIdVarName([string]$packageId) {
$canonicalVarName += "PackageVersion"
return $canonicalVarName
}
function Ensure-Hub() {
$tmpDir = "$PSScriptRoot\tmp"
$zipDir = "$tmpDir\Hub"
$hubLocation = "$zipDir\bin\hub.exe"
if (-Not (Test-Path $hubLocation) ) {
$source = "https://github.com/github/hub/releases/download/v2.3.0-pre9/hub-windows-amd64-2.3.0-pre9.zip"
$zipLocation = "$tmpDir\hub.zip"
if(-not (Test-Path $zipLocation)) {
New-Item -ItemType directory -Path $tmpDir
}
Invoke-WebRequest -OutFile $zipLocation -Uri $source
Expand-Archive -Path $zipLocation -DestinationPath $zipDir -Force
if (-Not (Test-Path $hubLocation)) {
throw "Hub couldn't be downloaded"
}
}
return $hubLocation
}
function CreatePR([string]$baseBranch, [string]$destinationBranch, [string]$body, [string]$gitHubToken) {
$hubLocation = Ensure-Hub
Invoke-Block { git push -f https://$gitHubToken@github.com/aspnet/Universe.git $destinationBranch }
& $hubLocation pull-request -f -b $baseBranch -h $destinationBranch -m $body
}
function Set-GithubInfo(
[string]$GitHubPassword,
[string]$GitHubUser,
[string]$GitHubEmail)
{
$Env:GITHUB_TOKEN = $GitHubPassword
$Env:GITHUB_USER = $GitHubUser
$Env:GITHUB_EMAIL = $GitHubEmail
}
function CommitUpdatedVersions(
[hashtable]$updatedVars,
[xml]$dependencies,
[string]$depsPath)
{
$count = $updatedVars.Count
if ($count -gt 0) {
& git add build\dependencies.props
$subject = "Updating external dependencies"
# Have to pipe null so that the output from this doesn't end up as part of the return value
$null = Invoke-Block { & git commit -m $subject }
$body = "$subject`n`n"
$body += "New versions:`n"
foreach ($var in $updatedVars.GetEnumerator()) {
$body += " $($var.Name)`n"
}
return $body
}
}
function UpdateVersions([hashtable]$variables, [xml]$dependencies, [string]$depsPath) {
$updatedVars = @{}
foreach ($varName in ($variables.Keys | sort)) {
$packageVersions = $variables[$varName]
if ($packageVersions.Length -gt 1) {
Write-Warning "Skipped $varName. Multiple version found. { $($packageVersions -join ', ') }."
continue
}
$packageVersion = $packageVersions | Select-Object -First 1
$depVarNode = $dependencies.SelectSingleNode("//PropertyGroup[`@Label=`"Package Versions: Auto`"]/$varName")
if ($depVarNode -and $depVarNode.InnerText -ne $packageVersion) {
$depVarNode.InnerText = $packageVersion
Write-Host -f DarkGray " Updating $varName to $packageVersion"
$updatedVars[$varName] = $packageVersion
}
elseif ($depVarNode) {
Write-Host -f DarkBlue " Didn't update $varName to $packageVersion because it was $($depVarNode.InnerText)"
}
else {
# This isn't a dependency we use
}
}
if ($updatedVars.Count -gt 0) {
Write-Host -f Cyan "Updating $count version variables in $depsPath"
SaveXml $dependencies $depsPath
}
else {
Write-Host -f Green "No changes found"
}
return $updatedVars
}

View File

@ -1,26 +0,0 @@
// Copyright (c) .NET Foundation. All rights reserved.
// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
namespace Microsoft.Dotnet.Scripts
{
public class Config
{
public string UpdatedVersions { get; set; }
public string BuildXml { get; set; }
public string GithubUsername {get; set;}
public string GithubEmail {get; set;}
public string GithubToken {get; set;}
public string GithubUpstreamOwner {get; set;} = "aspnet";
public string GithubProject {get; set;} = "Universe";
public string GithubUpstreamBranch {get; set;} = "dev";
public string[] GitHubPullRequestNotifications { get; set; } = new string[] { };
public string[] UpdatedVersionsList
{
get
{
return UpdatedVersions.Split('+',System.StringSplitOptions.RemoveEmptyEntries);
}
}
}
}

View File

@ -1,84 +0,0 @@
// Copyright (c) .NET Foundation. All rights reserved.
// Licensed under the Apache License, Version 2.0. See License.txt in the project root for license information.
using System;
using System.Diagnostics;
using System.Linq;
using System.Net.Http;
using System.Threading.Tasks;
using System.Xml;
using Microsoft.DotNet.VersionTools.Automation;
using Microsoft.Extensions.Configuration;
namespace Microsoft.Dotnet.Scripts
{
public static class Program
{
private static readonly Config _config = new Config();
public static async Task Main(string[] args)
{
Trace.Listeners.Add(new TextWriterTraceListener(Console.Out));
ParseArgs(args);
await CreatePullRequest();
}
private static void ParseArgs(string[] args)
{
var builder = new ConfigurationBuilder().AddCommandLine(args);
var configRoot = builder.Build();
configRoot.Bind(_config);
}
private static async Task CreatePullRequest()
{
var gitHubAuth = new GitHubAuth(_config.GithubToken, _config.GithubUsername, _config.GithubEmail);
var origin = new GitHubProject(_config.GithubProject, _config.GithubUsername);
var upstreamBranch = new GitHubBranch(_config.GithubUpstreamBranch, new GitHubProject(_config.GithubProject, _config.GithubUpstreamOwner));
var commitMessage = $"Updating external dependencies to '{ await GetOrchestratedBuildId() }'";
var body = string.Empty;
if (_config.GitHubPullRequestNotifications.Any())
{
body += PullRequestCreator.NotificationString(_config.GitHubPullRequestNotifications);
}
body += $"New versions:{Environment.NewLine}";
foreach (var updatedVersion in _config.UpdatedVersionsList)
{
body += $" {updatedVersion}{Environment.NewLine}";
}
await new PullRequestCreator(gitHubAuth, origin, upstreamBranch)
.CreateOrUpdateAsync(commitMessage, commitMessage + $" ({upstreamBranch.Name})", body);
}
private static async Task<string> GetOrchestratedBuildId()
{
var xmlUrl = _config.BuildXml;
using (var client = new HttpClient())
{
var response = await client.GetAsync(xmlUrl);
using (var bodyStream = await response.Content.ReadAsStreamAsync())
{
var xmlDoc = new XmlDocument();
xmlDoc.Load(bodyStream);
var orcBuilds = xmlDoc.GetElementsByTagName("OrchestratedBuild");
if (orcBuilds.Count < 1)
{
throw new ArgumentException($"{xmlUrl} didn't have an 'OrchestratedBuild' element.");
}
var orcBuild = orcBuilds[0];
return orcBuild.Attributes["BuildId"].Value;
}
}
}
}
}

View File

@ -1,21 +0,0 @@
<Project Sdk="Microsoft.NET.Sdk">
<PropertyGroup>
<OutputType>Exe</OutputType>
<TargetFramework>netcoreapp2.0</TargetFramework>
<LangVersion>7.1</LangVersion>
<RestoreSources>
https://dotnetfeed.blob.core.windows.net/dotnet-core/index.json;
https://api.nuget.org/v3/index.json;
</RestoreSources>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.DotNet.VersionTools" Version="1.0.27-prerelease-01723-01" />
<PackageReference Include="System.Diagnostics.TextWriterTraceListener" Version="4.0.0" />
<PackageReference Include="Microsoft.Extensions.Configuration" Version="2.0.0" />
<PackageReference Include="Microsoft.Extensions.Configuration.Binder" Version="2.0.0" />
<PackageReference Include="Microsoft.Extensions.Configuration.CommandLine" Version="2.0.0" />
</ItemGroup>
</Project>

View File

@ -1,7 +1,7 @@
<Project>
<PropertyGroup>
<VersionPrefix>2.1.0</VersionPrefix>
<VersionSuffix>preview2</VersionSuffix>
<VersionSuffix>rc1</VersionSuffix>
<ExperimentalVersionPrefix>0.1.0</ExperimentalVersionPrefix>
<ExperimentalVersionSuffix>alpha2</ExperimentalVersionSuffix>