Skip to content

Commit 61e505c

Browse files
author
Nate McMaster
committed
Merge branch 'release/2.1' into release/2.2
2 parents 6dcb847 + 3641761 commit 61e505c

File tree

141 files changed

+493
-496
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

141 files changed

+493
-496
lines changed

Directory.Build.targets

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,9 @@
3838
<!-- Implementation projects are the projects which produce nuget packages or shipping assemblies. -->
3939
<IsImplementationProject Condition=" '$(IsImplementationProject)' == '' AND '$(IsTestAssetProject)' != 'true' AND '$(IsTestProject)' != 'true' AND '$(IsBenchmarkProject)' != 'true' AND '$(IsSampleProject)' != 'true' ">true</IsImplementationProject>
4040

41+
<!-- This determines whether a project is available as a <Reference> to other projects in this repo. -->
42+
<IsProjectReferenceProvider Condition=" '$(IsProjectReferenceProvider)' == '' AND '$(IsImplementationProject)' == 'true' AND '$(PackAsTool)' != 'true' ">true</IsProjectReferenceProvider>
43+
4144
<!-- Suppress KoreBuild warnings about the mismatch of repo version and local project version. The versioning in this mega repo is sufficiently complicated that KoreBuild's validation isn't helpful. -->
4245
<VerifyVersion>false</VerifyVersion>
4346

build/buildorder.props

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@
88

99
<ItemGroup>
1010
<RepositoryBuildOrder Include="EntityFrameworkCore" Order="8" />
11-
<RepositoryBuildOrder Include="AADIntegration" Order="15" RootPath="$(RepositoryRoot)src\AADIntegration\" />
1211
<RepositoryBuildOrder Include="Identity" Order="15" RootPath="$(RepositoryRoot)src\Identity\" />
1312
<RepositoryBuildOrder Include="MvcPrecompilation" Order="15" RootPath="$(RepositoryRoot)src\MvcPrecompilation\" />
1413
<RepositoryBuildOrder Include="Scaffolding" Order="15" />

build/repo.props

Lines changed: 61 additions & 50 deletions
Original file line numberDiff line numberDiff line change
@@ -51,56 +51,67 @@
5151
<SharedFrameworkName Include="Microsoft.AspNetCore.App" />
5252
</ItemGroup>
5353

54-
<ItemGroup>
55-
<SamplesProject Include="$(RepositoryRoot)src\**\samples\**\*.csproj;"/>
56-
57-
<ProjectToExclude Include="@(SamplesProject)" Condition="'$(BuildSamples)' == 'false' "/>
58-
59-
<!-- These projects use 'legacy' csproj, which is not supported by dotnet-msbuild. -->
60-
<ProjectToExclude Include="
61-
$(RepositoryRoot)src\Servers\HttpSys\samples\TestClient\TestClient.csproj;
62-
$(RepositoryRoot)src\Middleware\WebSockets\samples\TestServer\TestServer.csproj;
63-
"
64-
Condition=" '$(MSBuildRuntimeType)' == 'Core' " />
65-
66-
<!-- Exclude the websockets samples for now because they use classic .csproj, which is not yet supported in our build. -->
67-
<ProjectToExclude Include="
68-
$(RepositoryRoot)src\Middleware\WebSockets\samples\**\*.csproj;
69-
$(RepositoryRoot)src\Middleware\NodeServices.Sockets\**\*.csproj;
70-
$(RepositoryRoot)src\Tools\dotnet-watch\test\TestProjects\**\*.csproj;
71-
$(RepositoryRoot)src\Razor\Razor.Design\test\testassets\**\*.*proj
72-
" />
73-
74-
<NpmProjectDirectory Include="$(RepositoryRoot)src\Middleware\CORS\test\FunctionalTests\" />
75-
76-
<ProjectToBuild Condition=" '$(OS)' == 'Windows_NT' AND '$(MSBuildRuntimeType)' != 'Core' " Include="$(RepositoryRoot)src\Servers\**\*.vcxproj">
77-
<!-- Required to prevent triggering double-builds. See src\Servers\IIS\ResolveIisReferences.targets for details. -->
78-
<AdditionalProperties Condition="'$(SharedFxRid)' == 'win-x64'">Platform=x64</AdditionalProperties>
79-
<AdditionalProperties Condition="'$(SharedFxRid)' == 'win-x86'">Platform=x86</AdditionalProperties>
80-
</ProjectToBuild>
81-
82-
<ProjectToBuild Include="
83-
$(RepositoryRoot)src\DefaultBuilder\**\*.*proj;
84-
$(RepositoryRoot)src\Features\JsonPatch\**\*.*proj;
85-
$(RepositoryRoot)src\DataProtection\**\*.*proj;
86-
$(RepositoryRoot)src\Antiforgery\**\*.*proj;
87-
$(RepositoryRoot)src\Hosting\**\*.*proj;
88-
$(RepositoryRoot)src\Http\**\*.*proj;
89-
$(RepositoryRoot)src\Html\**\*.*proj;
90-
$(RepositoryRoot)src\Servers\**\*.csproj;
91-
$(RepositoryRoot)src\Servers\**\*.pkgproj;
92-
$(RepositoryRoot)src\Security\**\*.*proj;
93-
$(RepositoryRoot)src\Shared\**\*.*proj;
94-
$(RepositoryRoot)src\Tools\**\*.*proj;
95-
$(RepositoryRoot)src\Middleware\**\*.*proj;
96-
$(RepositoryRoot)src\Razor\**\*.*proj;
97-
$(RepositoryRoot)src\Mvc\**\*.*proj;
98-
"
99-
Exclude="
100-
@(ProjectToExclude);
101-
$(RepositoryRoot)**\bin\**\*;
102-
$(RepositoryRoot)**\obj\**\*;" />
103-
</ItemGroup>
54+
<Choose>
55+
<!-- Project selection can be overridden on the command line by passing in -projects -->
56+
<When Condition="'$(Projects)' != ''">
57+
<ItemGroup>
58+
<ProjectToBuild Include="$(Projects)" Exclude="@(ProjectToExclude)" />
59+
</ItemGroup>
60+
</When>
61+
<Otherwise>
62+
<ItemGroup>
63+
<SamplesProject Include="$(RepositoryRoot)src\**\samples\**\*.csproj;"/>
64+
65+
<ProjectToExclude Include="@(SamplesProject)" Condition="'$(BuildSamples)' == 'false' "/>
66+
67+
<!-- These projects use 'legacy' csproj, which is not supported by dotnet-msbuild. -->
68+
<ProjectToExclude Include="
69+
$(RepositoryRoot)src\Servers\HttpSys\samples\TestClient\TestClient.csproj;
70+
$(RepositoryRoot)src\Middleware\WebSockets\samples\TestServer\TestServer.csproj;
71+
"
72+
Condition=" '$(MSBuildRuntimeType)' == 'Core' " />
73+
74+
<!-- Exclude the websockets samples for now because they use classic .csproj, which is not yet supported in our build. -->
75+
<ProjectToExclude Include="
76+
$(RepositoryRoot)src\Middleware\WebSockets\samples\**\*.csproj;
77+
$(RepositoryRoot)src\Middleware\NodeServices.Sockets\**\*.csproj;
78+
$(RepositoryRoot)src\Tools\dotnet-watch\test\TestProjects\**\*.csproj;
79+
$(RepositoryRoot)src\Razor\Razor.Design\test\testassets\**\*.*proj
80+
" />
81+
82+
<NpmProjectDirectory Include="$(RepositoryRoot)src\Middleware\CORS\test\FunctionalTests\" />
83+
84+
<ProjectToBuild Condition=" '$(OS)' == 'Windows_NT' AND '$(MSBuildRuntimeType)' != 'Core' " Include="$(RepositoryRoot)src\Servers\**\*.vcxproj">
85+
<!-- Required to prevent triggering double-builds. See src\Servers\IIS\ResolveIisReferences.targets for details. -->
86+
<AdditionalProperties Condition="'$(SharedFxRid)' == 'win-x64'">Platform=x64</AdditionalProperties>
87+
<AdditionalProperties Condition="'$(SharedFxRid)' == 'win-x86'">Platform=x86</AdditionalProperties>
88+
</ProjectToBuild>
89+
90+
<ProjectToBuild Include="
91+
$(RepositoryRoot)src\DefaultBuilder\**\*.*proj;
92+
$(RepositoryRoot)src\Features\JsonPatch\**\*.*proj;
93+
$(RepositoryRoot)src\DataProtection\**\*.*proj;
94+
$(RepositoryRoot)src\Antiforgery\**\*.*proj;
95+
$(RepositoryRoot)src\Hosting\**\*.*proj;
96+
$(RepositoryRoot)src\Http\**\*.*proj;
97+
$(RepositoryRoot)src\Html\**\*.*proj;
98+
$(RepositoryRoot)src\Servers\**\*.csproj;
99+
$(RepositoryRoot)src\Servers\**\*.pkgproj;
100+
$(RepositoryRoot)src\Security\**\*.*proj;
101+
$(RepositoryRoot)src\Shared\**\*.*proj;
102+
$(RepositoryRoot)src\Tools\**\*.*proj;
103+
$(RepositoryRoot)src\Middleware\**\*.*proj;
104+
$(RepositoryRoot)src\Razor\**\*.*proj;
105+
$(RepositoryRoot)src\Mvc\**\*.*proj;
106+
$(RepositoryRoot)src\Azure\**\*.*proj;
107+
"
108+
Exclude="
109+
@(ProjectToExclude);
110+
$(RepositoryRoot)**\bin\**\*;
111+
$(RepositoryRoot)**\obj\**\*;" />
112+
</ItemGroup>
113+
</Otherwise>
114+
</Choose>
104115

105116
<!-- Properties for publishing -->
106117
<PropertyGroup>

build/submodules.props

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -46,7 +46,6 @@
4646
</ItemGroup>
4747

4848
<ItemGroup>
49-
<ShippedRepository Include="AADIntegration" RootPath="$(RepositoryRoot)src\AADIntegration\" />
5049
<ShippedRepository Include="AzureIntegration" RootPath="$(RepositoryRoot)src\AzureIntegration\" />
5150
<ShippedRepository Include="Identity" RootPath="$(RepositoryRoot)src\Identity\" />
5251
<ShippedRepository Include="MetaPackages" RootPath="$(RepositoryRoot)src\MetaPackages\" PatchPolicy="CascadeVersions" />

eng/Baseline.Designer.props

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,26 @@
4848
<BaselinePackageReference Include="Microsoft.Extensions.Logging.Abstractions" Version="[2.2.0, )" />
4949
<BaselinePackageReference Include="Microsoft.Extensions.Options" Version="[2.2.0, )" />
5050
</ItemGroup>
51+
<!-- Package: Microsoft.AspNetCore.Authentication.AzureAD.UI-->
52+
<PropertyGroup Condition=" '$(PackageId)' == 'Microsoft.AspNetCore.Authentication.AzureAD.UI' ">
53+
<BaselinePackageVersion>2.2.0</BaselinePackageVersion>
54+
</PropertyGroup>
55+
<ItemGroup Condition=" '$(PackageId)' == 'Microsoft.AspNetCore.Authentication.AzureAD.UI' AND '$(TargetFramework)' == 'netstandard2.0' ">
56+
<BaselinePackageReference Include="Microsoft.AspNetCore.Authentication.Cookies" Version="[2.2.0, )" />
57+
<BaselinePackageReference Include="Microsoft.AspNetCore.Authentication.JwtBearer" Version="[2.2.0, )" />
58+
<BaselinePackageReference Include="Microsoft.AspNetCore.Authentication.OpenIdConnect" Version="[2.2.0, )" />
59+
<BaselinePackageReference Include="Microsoft.AspNetCore.Mvc" Version="[2.2.0, )" />
60+
</ItemGroup>
61+
<!-- Package: Microsoft.AspNetCore.Authentication.AzureADB2C.UI-->
62+
<PropertyGroup Condition=" '$(PackageId)' == 'Microsoft.AspNetCore.Authentication.AzureADB2C.UI' ">
63+
<BaselinePackageVersion>2.2.0</BaselinePackageVersion>
64+
</PropertyGroup>
65+
<ItemGroup Condition=" '$(PackageId)' == 'Microsoft.AspNetCore.Authentication.AzureADB2C.UI' AND '$(TargetFramework)' == 'netstandard2.0' ">
66+
<BaselinePackageReference Include="Microsoft.AspNetCore.Authentication.Cookies" Version="[2.2.0, )" />
67+
<BaselinePackageReference Include="Microsoft.AspNetCore.Authentication.JwtBearer" Version="[2.2.0, )" />
68+
<BaselinePackageReference Include="Microsoft.AspNetCore.Authentication.OpenIdConnect" Version="[2.2.0, )" />
69+
<BaselinePackageReference Include="Microsoft.AspNetCore.Mvc" Version="[2.2.0, )" />
70+
</ItemGroup>
5171
<!-- Package: Microsoft.AspNetCore.Authentication.Cookies-->
5272
<PropertyGroup Condition=" '$(PackageId)' == 'Microsoft.AspNetCore.Authentication.Cookies' ">
5373
<BaselinePackageVersion>2.2.0</BaselinePackageVersion>

eng/Baseline.xml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,6 +13,8 @@ build of ASP.NET Core 2.2.x. Update this list when preparing for a new patch.
1313
<Package Id="Microsoft.AspNetCore.AspNetCoreModule" Version="2.2.0" />
1414
<Package Id="Microsoft.AspNetCore.AspNetCoreModuleV2" Version="2.2.0" />
1515
<Package Id="Microsoft.AspNetCore.Authentication.Abstractions" Version="2.2.0" />
16+
<Package Id="Microsoft.AspNetCore.Authentication.AzureAD.UI" Version="2.2.0" />
17+
<Package Id="Microsoft.AspNetCore.Authentication.AzureADB2C.UI" Version="2.2.0" />
1618
<Package Id="Microsoft.AspNetCore.Authentication.Cookies" Version="2.2.0" />
1719
<Package Id="Microsoft.AspNetCore.Authentication.Core" Version="2.2.0" />
1820
<Package Id="Microsoft.AspNetCore.Authentication.Facebook" Version="2.2.0" />

eng/Dependencies.props

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -55,6 +55,7 @@ and are generated based on the last package release.
5555
<LatestPackageReference Include="Microsoft.Extensions.Localization.Abstractions" Version="$(MicrosoftExtensionsLocalizationAbstractionsPackageVersion)" />
5656
<LatestPackageReference Include="Microsoft.Extensions.Localization" Version="$(MicrosoftExtensionsLocalizationPackageVersion)" />
5757
<LatestPackageReference Include="Microsoft.Extensions.Logging.Abstractions" Version="$(MicrosoftExtensionsLoggingAbstractionsPackageVersion)" />
58+
<LatestPackageReference Include="Microsoft.Extensions.Logging.Configuration" Version="$(MicrosoftExtensionsLoggingConfigurationPackageVersion)" />
5859
<LatestPackageReference Include="Microsoft.Extensions.Logging.Console" Version="$(MicrosoftExtensionsLoggingConsolePackageVersion)" />
5960
<LatestPackageReference Include="Microsoft.Extensions.Logging.Debug" Version="$(MicrosoftExtensionsLoggingDebugPackageVersion)" />
6061
<LatestPackageReference Include="Microsoft.Extensions.Logging.Testing" Version="$(MicrosoftExtensionsLoggingTestingPackageVersion)" />

eng/ProjectReferences.props

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -61,10 +61,6 @@
6161
<ProjectReferenceProvider Include="Microsoft.AspNetCore.Authorization.Policy" ProjectPath="$(RepositoryRoot)src\Security\Authorization\Policy\src\Microsoft.AspNetCore.Authorization.Policy.csproj" />
6262
<ProjectReferenceProvider Include="Microsoft.AspNetCore.CookiePolicy" ProjectPath="$(RepositoryRoot)src\Security\CookiePolicy\src\Microsoft.AspNetCore.CookiePolicy.csproj" />
6363
<ProjectReferenceProvider Include="Microsoft.Owin.Security.Interop" ProjectPath="$(RepositoryRoot)src\Security\Interop\src\Microsoft.Owin.Security.Interop.csproj" />
64-
<ProjectReferenceProvider Include="dotnet-dev-certs" ProjectPath="$(RepositoryRoot)src\Tools\dotnet-dev-certs\src\dotnet-dev-certs.csproj" />
65-
<ProjectReferenceProvider Include="dotnet-sql-cache" ProjectPath="$(RepositoryRoot)src\Tools\dotnet-sql-cache\src\dotnet-sql-cache.csproj" />
66-
<ProjectReferenceProvider Include="dotnet-user-secrets" ProjectPath="$(RepositoryRoot)src\Tools\dotnet-user-secrets\src\dotnet-user-secrets.csproj" />
67-
<ProjectReferenceProvider Include="dotnet-watch" ProjectPath="$(RepositoryRoot)src\Tools\dotnet-watch\src\dotnet-watch.csproj" />
6864
<ProjectReferenceProvider Include="Microsoft.AspNetCore.DeveloperCertificates.XPlat" ProjectPath="$(RepositoryRoot)src\Tools\FirstRunCertGenerator\src\Microsoft.AspNetCore.DeveloperCertificates.XPlat.csproj" />
6965
<ProjectReferenceProvider Include="Microsoft.AspNetCore.Cors" ProjectPath="$(RepositoryRoot)src\Middleware\CORS\src\Microsoft.AspNetCore.Cors.csproj" />
7066
<ProjectReferenceProvider Include="Microsoft.AspNetCore.Diagnostics.Abstractions" ProjectPath="$(RepositoryRoot)src\Middleware\Diagnostics.Abstractions\src\Microsoft.AspNetCore.Diagnostics.Abstractions.csproj" />
@@ -120,5 +116,7 @@
120116
<ProjectReferenceProvider Include="Microsoft.AspNetCore.Mvc.WebApiCompatShim" ProjectPath="$(RepositoryRoot)src\Mvc\src\Microsoft.AspNetCore.Mvc.WebApiCompatShim\Microsoft.AspNetCore.Mvc.WebApiCompatShim.csproj" />
121117
<ProjectReferenceProvider Include="Microsoft.AspNetCore.Mvc" ProjectPath="$(RepositoryRoot)src\Mvc\src\Microsoft.AspNetCore.Mvc\Microsoft.AspNetCore.Mvc.csproj" />
122118
<ProjectReferenceProvider Include="Microsoft.Extensions.ApiDescription.Tasks" ProjectPath="$(RepositoryRoot)src\Mvc\src\Microsoft.Extensions.ApiDescription.Design\Microsoft.Extensions.ApiDescription.Design.csproj" />
119+
<ProjectReferenceProvider Include="Microsoft.AspNetCore.Authentication.AzureAD.UI" ProjectPath="$(RepositoryRoot)src\Azure\AzureAD\Authentication.AzureAD.UI\src\Microsoft.AspNetCore.Authentication.AzureAD.UI.csproj" />
120+
<ProjectReferenceProvider Include="Microsoft.AspNetCore.Authentication.AzureADB2C.UI" ProjectPath="$(RepositoryRoot)src\Azure\AzureAD\Authentication.AzureADB2C.UI\src\Microsoft.AspNetCore.Authentication.AzureADB2C.UI.csproj" />
123121
</ItemGroup>
124122
</Project>

eng/targets/ResolveReferences.targets

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -165,7 +165,7 @@
165165
</Target>
166166

167167
<Target Name="_GetReferencesProvided" Returns="@(ProvidesReference)">
168-
<ItemGroup Condition=" '$(IsImplementationProject)' == 'true' OR '$(IsProjectReferenceProvider)' == 'true' ">
168+
<ItemGroup Condition=" '$(IsProjectReferenceProvider)' == 'true' ">
169169
<ProvidesReference Include="$(AssemblyName)">
170170
<ProjectFileRelativePath>$([MSBuild]::MakeRelative($(RepositoryRoot), $(MSBuildProjectFullPath)))</ProjectFileRelativePath>
171171
</ProvidesReference>

run.ps1

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,6 +38,9 @@ The path to the configuration file that stores values. Defaults to korebuild.jso
3838
.PARAMETER CI
3939
Sets up CI specific settings and variables.
4040
41+
.PARAMETER Projects
42+
A list of projects to build. (Must be an absolute path.) Globbing patterns are supported, such as "$(pwd)/**/*.csproj"
43+
4144
.PARAMETER PackageVersionPropsUrl
4245
(optional) the url of the package versions props path containing dependency versions.
4346
@@ -90,6 +93,7 @@ param(
9093
[switch]$Reinstall,
9194
[string]$ConfigFile = $null,
9295
[switch]$CI,
96+
[string]$Projects,
9397
[string]$PackageVersionPropsUrl = $null,
9498
[string]$AccessTokenSuffix = $null,
9599
[string]$RestoreSources = $null,
@@ -237,6 +241,11 @@ if ($ProductBuildId) {
237241
$MSBuildArguments += "-p:DotNetProductBuildId=$ProductBuildId"
238242
}
239243

244+
if ($Projects) {
245+
$MSBuildArguments += "-p:Projects=$Projects"
246+
$MSBuildArguments += "-p:_ProjectsOnly=true"
247+
}
248+
240249
# Execute
241250

242251
$korebuildPath = Get-KoreBuild

0 commit comments

Comments
 (0)