Skip to content
代码片段 群组 项目
未验证 提交 b1921f38 编辑于 作者: Doug Bunting's avatar Doug Bunting
浏览文件

Merge remote-tracking branch 'origin/release/5.0-preview8' into 'master'

No related branches found
No related tags found
无相关合并请求
显示
395 个添加419 个删除
...@@ -11,10 +11,6 @@ ...@@ -11,10 +11,6 @@
<PropertyGroup> <PropertyGroup>
<RepoRelativeProjectDir>$([MSBuild]::MakeRelative($(RepoRoot), $(MSBuildProjectDirectory)))</RepoRelativeProjectDir> <RepoRelativeProjectDir>$([MSBuild]::MakeRelative($(RepoRoot), $(MSBuildProjectDirectory)))</RepoRelativeProjectDir>
<IsReferenceAssemblyProject>false</IsReferenceAssemblyProject>
<IsReferenceAssemblyProject Condition="$(MSBuildProjectDirectory.EndsWith('ref'))">true</IsReferenceAssemblyProject>
<OutDirName Condition="'$(IsReferenceAssemblyProject)' == 'true'">$(MSBuildProjectName)-ref</OutDirName>
<IsBenchmarkProject Condition="$(MSBuildProjectName.EndsWith('.Performance')) OR $(RepoRelativeProjectDir.Contains('perf')) OR $(RepoRelativeProjectDir.Contains('benchmarkapps'))">true</IsBenchmarkProject> <IsBenchmarkProject Condition="$(MSBuildProjectName.EndsWith('.Performance')) OR $(RepoRelativeProjectDir.Contains('perf')) OR $(RepoRelativeProjectDir.Contains('benchmarkapps'))">true</IsBenchmarkProject>
<IsSpecificationTestProject Condition="$(MSBuildProjectName.EndsWith('.Specification.Tests'))">true</IsSpecificationTestProject> <IsSpecificationTestProject Condition="$(MSBuildProjectName.EndsWith('.Specification.Tests'))">true</IsSpecificationTestProject>
<IsUnitTestProject>false</IsUnitTestProject> <IsUnitTestProject>false</IsUnitTestProject>
...@@ -130,7 +126,7 @@ ...@@ -130,7 +126,7 @@
<RuntimeInstallerBaseName>aspnetcore-runtime</RuntimeInstallerBaseName> <RuntimeInstallerBaseName>aspnetcore-runtime</RuntimeInstallerBaseName>
<TargetingPackInstallerBaseName>aspnetcore-targeting-pack</TargetingPackInstallerBaseName> <TargetingPackInstallerBaseName>aspnetcore-targeting-pack</TargetingPackInstallerBaseName>
<!-- Produce targeting pack installers/packages once per major.minor. --> <!-- This is used to produce targeting pack installers/packages once per major.minor. -->
<IsTargetingPackBuilding Condition=" '$(DotNetBuildFromSource)' == 'true' ">false</IsTargetingPackBuilding> <IsTargetingPackBuilding Condition=" '$(DotNetBuildFromSource)' == 'true' ">false</IsTargetingPackBuilding>
<IsTargetingPackBuilding <IsTargetingPackBuilding
Condition=" '$(IsTargetingPackBuilding)' == '' AND '$(AspNetCorePatchVersion)' != '0' ">false</IsTargetingPackBuilding> Condition=" '$(IsTargetingPackBuilding)' == '' AND '$(AspNetCorePatchVersion)' != '0' ">false</IsTargetingPackBuilding>
...@@ -153,6 +149,8 @@ ...@@ -153,6 +149,8 @@
AND '$(MSBuildProjectExtension)' == '.csproj'"> AND '$(MSBuildProjectExtension)' == '.csproj'">
<ProjectReference <ProjectReference
Include="$(RepoRoot)src\Analyzers\Internal.AspNetCore.Analyzers\src\Internal.AspNetCore.Analyzers.csproj" Include="$(RepoRoot)src\Analyzers\Internal.AspNetCore.Analyzers\src\Internal.AspNetCore.Analyzers.csproj"
ReferenceOutputAssembly="false"
OutputItemType="Analyzer"
PrivateAssets="All" PrivateAssets="All"
Version="$(InternalAspNetCoreAnalyzersPackageVersion)" Version="$(InternalAspNetCoreAnalyzersPackageVersion)"
IsImplicitlyDefined="true" /> IsImplicitlyDefined="true" />
......
<Project> <Project>
<PropertyGroup> <PropertyGroup>
<!-- Only build Microsoft.AspNetCore.App and ref/ assemblies in source build. --> <!-- Only build Microsoft.AspNetCore.App and ref/ assemblies in source build. -->
<!-- Analyzer package are needed in source build for WebSDK --> <!-- Analyzer package are needed in source build for WebSDK -->
<ExcludeFromSourceBuild <ExcludeFromSourceBuild
Condition="'$(ExcludeFromSourceBuild)' == '' and '$(DotNetBuildFromSource)' == 'true' and '$(IsAspNetCoreApp)' != 'true' and '$(IsReferenceAssemblyProject)' != 'true' and '$(IsAnalyzersProject)' != 'true'">true</ExcludeFromSourceBuild> Condition="'$(ExcludeFromSourceBuild)' == '' and '$(DotNetBuildFromSource)' == 'true' and '$(IsAspNetCoreApp)' != 'true' and '$(IsAnalyzersProject)' != 'true'">true</ExcludeFromSourceBuild>
<!-- If the user has specified that they want to skip building any test related projects with SkipTestBuild, <!-- If the user has specified that they want to skip building any test related projects with SkipTestBuild,
suppress all targets for TestProjects using ExcludeFromBuild. --> suppress all targets for TestProjects using ExcludeFromBuild. -->
...@@ -57,7 +57,8 @@ ...@@ -57,7 +57,8 @@
<PropertyGroup Condition=" '$(MSBuildProjectExtension)' == '.csproj' "> <PropertyGroup Condition=" '$(MSBuildProjectExtension)' == '.csproj' ">
<PackageId Condition=" '$(PackageId)' == '' ">$(AssemblyName)</PackageId> <PackageId Condition=" '$(PackageId)' == '' ">$(AssemblyName)</PackageId>
<IsPackable Condition="'$(IsPackable)' == '' AND ( '$(IsTestProject)' == 'true' OR '$(IsTestAssetProject)' == 'true' OR '$(IsBenchmarkProject)' == 'true' OR '$(IsSampleProject)' == 'true' OR '$(IsReferenceAssemblyProject)' == 'true' ) ">false</IsPackable> <IsPackable
Condition="'$(IsPackable)' == '' AND ( '$(IsTestProject)' == 'true' OR '$(IsTestAssetProject)' == 'true' OR '$(IsBenchmarkProject)' == 'true' OR '$(IsSampleProject)' == 'true' ) ">false</IsPackable>
</PropertyGroup> </PropertyGroup>
<Import Project="eng\Baseline.Designer.props" /> <Import Project="eng\Baseline.Designer.props" />
...@@ -100,14 +101,19 @@ ...@@ -100,14 +101,19 @@
<PropertyGroup> <PropertyGroup>
<!-- Implementation projects are the projects which produce nuget packages or shipping assemblies. --> <!-- Implementation projects are the projects which produce nuget packages or shipping assemblies. -->
<IsImplementationProject Condition=" '$(IsImplementationProject)' == '' AND '$(IsAnalyzersProject)' != 'true' AND '$(IsTestAssetProject)' != 'true' AND '$(IsTestProject)' != 'true' AND '$(IsBenchmarkProject)' != 'true' AND '$(IsSampleProject)' != 'true' AND '$(IsReferenceAssemblyProject)' != 'true' ">true</IsImplementationProject> <IsImplementationProject Condition=" '$(IsImplementationProject)' == '' AND '$(IsAnalyzersProject)' != 'true' AND '$(IsTestAssetProject)' != 'true' AND '$(IsTestProject)' != 'true' AND '$(IsBenchmarkProject)' != 'true' AND '$(IsSampleProject)' != 'true' ">true</IsImplementationProject>
<!-- This determines whether a project is available as a <Reference> to other projects in this repo. --> <!-- This determines whether a project is available as a <Reference> to other projects in this repo. -->
<IsProjectReferenceProvider Condition=" '$(IsProjectReferenceProvider)' == '' AND '$(IsImplementationProject)' == 'true' AND '$(PackAsTool)' != 'true' ">true</IsProjectReferenceProvider> <IsProjectReferenceProvider Condition=" '$(IsProjectReferenceProvider)' == '' AND '$(IsImplementationProject)' == 'true' AND '$(PackAsTool)' != 'true' ">true</IsProjectReferenceProvider>
<HasReferenceAssembly <HasReferenceAssembly
Condition=" '$(HasReferenceAssembly)' == '' AND '$(IsProjectReferenceProvider)' == 'true' AND '$(IsAspNetCoreApp)' == 'true' ">true</HasReferenceAssembly> Condition=" '$(TargetFramework)' == '$(DefaultNetCoreTargetFramework)' AND '$(IsAspNetCoreApp)' == 'true' ">true</HasReferenceAssembly>
<HasReferenceAssembly Condition="'$(HasReferenceAssembly)' == ''">false</HasReferenceAssembly> <HasReferenceAssembly Condition="'$(HasReferenceAssembly)' == ''">false</HasReferenceAssembly>
<ProduceReferenceAssembly>$(HasReferenceAssembly)</ProduceReferenceAssembly>
<!-- Duplicate setting from Microsoft.Common.CurrentVersion.targets because this is imported after that file. -->
<TargetRefPath
Condition=" '$(TargetRefPath)' == '' and $(ProduceReferenceAssembly) ">$([MSBuild]::NormalizePath($(TargetDir), 'ref', $(TargetFileName)))</TargetRefPath>
<IsPackable Condition="'$(IsPackable)' == '' AND ('$(IsImplementationProject)' == 'true' OR '$(IsAnalyzersProject)' == 'true') ">true</IsPackable> <IsPackable Condition="'$(IsPackable)' == '' AND ('$(IsImplementationProject)' == 'true' OR '$(IsAnalyzersProject)' == 'true') ">true</IsPackable>
<IsPackable Condition="'$(IsPackable)' == '' ">false</IsPackable> <IsPackable Condition="'$(IsPackable)' == '' ">false</IsPackable>
...@@ -124,13 +130,7 @@ ...@@ -124,13 +130,7 @@
<None Include="$(PackageThirdPartyNoticesFile)" Pack="true" PackagePath="." /> <None Include="$(PackageThirdPartyNoticesFile)" Pack="true" PackagePath="." />
</ItemGroup> </ItemGroup>
<ItemGroup Condition="'$(Language)' == 'C#' AND '$(IsReferenceAssemblyProject)' == 'true'">
<Compile Include="$(SharedSourceRoot)ReferenceAssemblyInfo.cs" LinkBase="Properties" />
</ItemGroup>
<PropertyGroup Condition="'$(Language)' == 'C#'"> <PropertyGroup Condition="'$(Language)' == 'C#'">
<!-- Reference assemblies should always use Major.Minor.0.0 for assembly versions even during servicing. Only the package version should be updated. -->
<!-- Pinning the implementation assemblies at Major.Minor.0.0 as we figure out compiling against ref assemblies. -->
<AssemblyVersion>$(AspNetCoreMajorVersion).$(AspNetCoreMinorVersion).0.0</AssemblyVersion> <AssemblyVersion>$(AspNetCoreMajorVersion).$(AspNetCoreMinorVersion).0.0</AssemblyVersion>
</PropertyGroup> </PropertyGroup>
...@@ -180,7 +180,6 @@ ...@@ -180,7 +180,6 @@
<Import Project="eng\targets\FSharp.Common.targets" Condition="'$(MSBuildProjectExtension)' == '.fsproj'" /> <Import Project="eng\targets\FSharp.Common.targets" Condition="'$(MSBuildProjectExtension)' == '.fsproj'" />
<Import Project="eng\targets\Wix.Common.targets" Condition="'$(MSBuildProjectExtension)' == '.wixproj'" /> <Import Project="eng\targets\Wix.Common.targets" Condition="'$(MSBuildProjectExtension)' == '.wixproj'" />
<Import Project="eng\targets\Npm.Common.targets" Condition="'$(MSBuildProjectExtension)' == '.npmproj'" /> <Import Project="eng\targets\Npm.Common.targets" Condition="'$(MSBuildProjectExtension)' == '.npmproj'" />
<Import Project="eng\targets\ReferenceAssembly.targets" Condition=" $(HasReferenceAssembly) " />
<Import Project="eng\targets\Helix.targets" Condition="'$(IsTestProject)' == 'true'" /> <Import Project="eng\targets\Helix.targets" Condition="'$(IsTestProject)' == 'true'" />
<Import Project="eng\targets\FunctionalTestAsset.targets" Condition="'$(IsTestAssetProject)' == 'true'" /> <Import Project="eng\targets\FunctionalTestAsset.targets" Condition="'$(IsTestAssetProject)' == 'true'" />
<Import Project="eng\targets\FunctionalTestWithAssets.targets" Condition="'$(ContainsFunctionalTestAssets)' == 'true'" /> <Import Project="eng\targets\FunctionalTestWithAssets.targets" Condition="'$(ContainsFunctionalTestAssets)' == 'true'" />
......
## A pattern for making cross-repo breaking changes
The engineering team has come up with a pattern for making cross-repo breaking changes without destabilizing local \ CI builds using feature branches. I’ll explain it in terms of a breaking change in Configuration that affects Options:
1) Start by making a feature branch in the Configuration repo. A feature branch is any branch that starts with the prefix "feature/" e.g. feature/bring-back-web-config
`git checkout feature/bring-back-web-config`
2) Make your changes in this feature branch and push it to GitHub. You can ordinarily continue using this branch to get your PR reviewed.
3) TeamCity's individual Project configuration (http://aspnetci/project.html?projectId=Lite&tab=projectOverview) has always built feature branches. We've enabled an additional step to it that pushes packages produced from feature branches to https://dotnet.myget.org/f/aspnetcore-dev.
Packages produced from feature branches will have a branch name suffix in their release label to distinguish them from our regular builds. For instance, a package produced for the branch pushed earlier might look like '2.1.0-preview2-bring-back-web-config-10012'.
4) In the Options repo, create a working branch like you normally do:
`git checkout prkrishn/react-to-config`
5) Once again in the options repo, edit build/dependencies.props to reference the feature branch package that got produced.
a) If `build/dependencies.props` already has a reference to Configuration, update the version of the Options package in `build/dependencies.props` to point to the package produced from the feature branch.
b) If `build/dependencies.props` does not have a reference to the package version of Configuration, i.e. the package is transitively referenced:
* Add a new entry in `build/dependencies.props`
* And a PackageReference to the feature branch package in your project.
```xml
// build/dependencies.props
<MicrosoftAspNetCoreConfigurationAbstractionsPackageVersion>2.1.0-preview2-bring-back-web-config-10012</MicrosoftAspNetCoreConfigurationAbstractionsPackageVersion>
```
5) Now that you reference the package with breaking changes, make your fixup changes to Options.
6) Get your code reviewed
7) Check in to dev both sets of changes i.e. the feature branch from Configuration and your reaction changes in Options including changes to build/dependencies.props.
7) File a tracking task in Options to clean up build/dependencies.props. Build automation should fix up this version for you when it does it weekly update of dependencies.props, but it's good to manually verify that this is fixed up before we branch or create tags.
**tl,dr**: Push feature branches. TeamCity will build packages with release labels derived from branch name. You can edit and check in changes to build/dependencies.props to reference these packages.
Reference assemblies
========================
Most projects in this repo have a `ref` directory next to their `src` that contains the project and source code for a reference assembly.
Reference assemblies contain the public API surface of libraries and are used for ASP.NET Core targeting pack generation.
### When changing public API
Run `dotnet msbuild /t:GenerateReferenceSource` in that project's `src` directory
### When adding a new project
Run `.\eng\scripts\GenerateProjectList.ps1` from the repository root and `dotnet msbuild /t:GenerateReferenceSource` in that project's `src` directory
### To set project properties in a reference assembly project
`ref.csproj` is automaticaly generated and shouldn't be edited. To set project properties on a reference assembly project place a `Directory.Build.props` next to it and add the properties there.
### My project doesn't need a reference assembly
Set `<HasReferenceAssembly>false</HasReferenceAssembly>` in the implementation (`src`) project and re-run `.\eng\scripts\GenerateProjectList.ps1`.
### Regenerate reference assemblies for all projects
Run `.\eng\scripts\GenerateReferenceAssemblies.ps1` from repository root. Make sure you've run `.\restore.cmd` first.
...@@ -10,10 +10,12 @@ See [ResolveReferences.targets](/eng/targets/ResolveReferences.targets) for the ...@@ -10,10 +10,12 @@ See [ResolveReferences.targets](/eng/targets/ResolveReferences.targets) for the
The requirements that led to this system are: The requirements that led to this system are:
* Versions of external dependencies should be consistent. * Versions of external dependencies should be consistent and easily discovered.
* Servicing updates of ASP.NET Core should minimize the number of assemblies which need to re-build and re-ship.
* Newer versions of packages should not have lower dependency versions than previous releases. * Newer versions of packages should not have lower dependency versions than previous releases.
* Minimize the cascading effect of servicing updates where possible by keeping a consistent baseline of dependencies. * Minimize the cascading effect of servicing updates where possible by keeping a consistent baseline of dependencies.
* Servicing releases should not add or remove dependencies in existing packages.
As a minor point, the current system also makes our project files somewhat less verbose.
## Recommendations for writing a .csproj ## Recommendations for writing a .csproj
...@@ -29,11 +31,13 @@ The requirements that led to this system are: ...@@ -29,11 +31,13 @@ The requirements that led to this system are:
## Important files ## Important files
* [eng/Baseline.xml](/eng/Baseline.xml) - this contains the 'baseline' of the latest servicing release for this branch. It should be modified and used to update the generated file, Baseline.Designer.props. * [eng/Baseline.xml](/eng/Baseline.xml) - this contains the 'baseline' of the latest servicing release for this branch.
It should be modified and used to update the generated file, [eng/Baseline.Designer.props](eng/Baseline.Designer.props).
* [eng/Dependencies.props](/eng/Dependencies.props) - contains a list of all package references that might be used in the repo. * [eng/Dependencies.props](/eng/Dependencies.props) - contains a list of all package references that might be used in the repo.
* [eng/ProjectReferences.props](/eng/ProjectReferences.props) - lists which assemblies or packages might be available to be referenced as a local project. * [eng/ProjectReferences.props](/eng/ProjectReferences.props) - lists which assemblies or packages might be available to be referenced as a local project.
* [eng/Versions.props](/eng/Versions.props) - contains a list of versions which may be updated by automation. This is used by MSBuild to restore and build. * [eng/Versions.props](/eng/Versions.props) - contains a list of versions which may be updated by automation. This is used by MSBuild to restore and build.
* [eng/Version.Details.xml](/eng/Version.Details.xml) - used by automation to update dependencies variables in other files. * [eng/Version.Details.xml](/eng/Version.Details.xml) - used by automation to update dependency variables in
[eng/Versions.props](/eng/Versions.props) and, for SDKs and `msbuild` toolsets, [global.json](global.json).
## Example: adding a new project ## Example: adding a new project
...@@ -41,18 +45,17 @@ Steps for adding a new project to this repo. ...@@ -41,18 +45,17 @@ Steps for adding a new project to this repo.
1. Create the .csproj 1. Create the .csproj
2. Run `eng/scripts/GenerateProjectList.ps1` 2. Run `eng/scripts/GenerateProjectList.ps1`
3. Add it to Extensions.sln 3. Add new project to AspNetCore.sln and any relevant `*.slnf` files
## Example: adding a new dependency ## Example: adding a new dependency
Steps for adding a new package dependency to an existing project. Let's say I'm adding a dependency on System.Banana. Steps for adding a new package dependency to an existing project. Let's say I'm adding a dependency on System.Banana.
1. Add the package to the .csproj file using `<Reference Include="System.Banana" />` 1. Add the package to the .csproj file using `<Reference Include="System.Banana" />`
2. Add an entry to [eng/Dependencies.props](/eng/Dependencies.props), `<LatestPackageReference Include="System.Banana" Version="0.0.1-beta-1" />` 2. Add an entry to [eng/Dependencies.props](/eng/Dependencies.props) e.g. `<LatestPackageReference Include="System.Banana" />`
3. If this package comes from another dotnet team and should be updated automatically by our bot... 3. If this package comes from another dotnet team and should be updated automatically by our bot&hellip;
1. Change the LatestPackageReference entry to `Version="$(SystemBananaPackageVersion)"`. 1. Add an entry to [eng/Versions.props](/eng/Versions.props) like this `<SystemBananaPackageVersion>0.0.1-beta-1</SystemBananaPackageVersion>`.
2. Add an entry to [eng/Versions.props](/eng/Versions.props) like this `<SystemBananaPackageVersion>0.0.1-beta-1</SystemBananaPackageVersion>`. 2. Add an entry to [eng/Version.Details.xml](/eng/Version.Details.xml) like this:
3. Add an entry to [eng/Version.Details.xml](/eng/Version.Details.xml) like this:
```xml ```xml
<ProductDependencies> <ProductDependencies>
...@@ -65,27 +68,28 @@ Steps for adding a new package dependency to an existing project. Let's say I'm ...@@ -65,27 +68,28 @@ Steps for adding a new package dependency to an existing project. Let's say I'm
</ProductDependencies> </ProductDependencies>
``` ```
If you don't know the commit hash of the source code used to produce "0.0.1-beta-1", you can use `000000` as a placeholder for `Sha` If you don't know the commit hash of the source code used to produce "0.0.1-beta-1", you can use `000000` as a
as its value is unimportant and will be updated the next time the bot runs. placeholder for `Sha` as its value will be updated the next time the bot runs.
If the new dependency comes from dotnet/CoreFx, dotnet/code-setup or dotnet/extensions, add a If the new dependency comes from dotnet/runtime and you are updating dotnet/aspnetcore-tooling, add a
`CoherentParentDependency` attribute to the `<Dependency>` element as shown below. This example indicates the `CoherentParentDependency` attribute to the `<Dependency>` element as shown below. This example indicates the
dotnet/CoreFx dependency version should be determined based on the build that produced the chosen dotnet/runtime dependency version for System.Banana should be determined based on the dotnet/aspnetcore build
Microsoft.NETCore.App. That is, the dotnet/CoreFx dependency and Microsoft.NETCore.App should be that produced the chosen Microsoft.CodeAnalysis.Razor. That is, the dotnet/runtime and dotnet/aspnetcore
coherent. dependencies should be coherent.
```xml ```xml
<Dependency Name="System.Banana" Version="0.0.1-beta-1" CoherentParentDependency="Microsoft.NETCore.App"> <Dependency Name="System.Banana" Version="0.0.1-beta-1" CoherentParentDependency="Microsoft.CodeAnalysis.Razor">
<!-- ... --> <!-- ... -->
</Dependency> </Dependency>
``` ```
The attribute value should be `"Microsoft.Extensions.Logging"` for dotnet/core-setup dependencies and The attribute value should be `"Microsoft.CodeAnalysis.Razor"` for dotnet/runtime dependencies in
`"Microsoft.CodeAnalysis.Razor"` for dotnet/extensions dependencies. dotnet/aspnetcore-tooling.
## Example: make a breaking change to references ## Example: make a breaking change to references
If Microsoft.AspNetCore.Banana in 2.1 had a reference to `Microsoft.AspNetCore.Orange`, but in 3.0 this reference is changing to `Microsoft.AspNetCore.BetterThanOrange`, you would need to make these changes to the .csproj file If Microsoft.AspNetCore.Banana in 2.1 had a reference to `Microsoft.AspNetCore.Orange`, but in 3.1 or 5.0 this reference
is changing to `Microsoft.AspNetCore.BetterThanOrange`, you would need to make these changes to the .csproj file
```diff ```diff
<!-- in Microsoft.AspNetCore.Banana.csproj --> <!-- in Microsoft.AspNetCore.Banana.csproj -->
...@@ -100,8 +104,12 @@ If Microsoft.AspNetCore.Banana in 2.1 had a reference to `Microsoft.AspNetCore.O ...@@ -100,8 +104,12 @@ If Microsoft.AspNetCore.Banana in 2.1 had a reference to `Microsoft.AspNetCore.O
If the `dotnet-maestro` bot has not correctly updated the dependencies, it may be worthwhile running `darc` manually: If the `dotnet-maestro` bot has not correctly updated the dependencies, it may be worthwhile running `darc` manually:
1. Install `darc` as described in https://github.com/dotnet/arcade/blob/master/Documentation/Darc.md#setting-up-your-darc-client 1. Install `darc` as described in <https://github.com/dotnet/arcade/blob/master/Documentation/Darc.md#setting-up-your-darc-client>
2. Run `darc update-dependencies --channel '.NET Core 3 Dev'` 2. Run `darc update-dependencies --channel '.NET Core 3.1 Release'`
* Use `'.NET Core 3 Release'` in a `release/3.0-*` branch * Use `'trigger-subscriptions'` to prod the bot to create a PR if you do not want to make local changes
* Use `'.NET 3 Eng''` to update dependencies from dotnet/arcade
* Use `'.NET Eng - Latest'` to update dependencies from dotnet/arcade in the `master` branch
* Use `'VS Master'` to update dependencies from dotnet/roslyn in the `master` branch
* Use `'.NET 5 Dev'` to update dependencies from dotnet/efcore or dotnet/runtime in the `master` branch
3. `git diff` to confirm the tool's changes 3. `git diff` to confirm the tool's changes
4. Proceed with usual commit and PR 4. Proceed with usual commit and PR
...@@ -41,9 +41,13 @@ ...@@ -41,9 +41,13 @@
</ItemGroup> </ItemGroup>
<Choose> <Choose>
<!-- Project selection can be overridden on the command line by passing in -projects --> <!-- Project selection can be overridden on the command line by passing in -projects. -->
<When Condition="'$(ProjectToBuild)' != ''"> <When Condition="'$(ProjectToBuild)' != ''">
<ItemGroup> <ItemGroup>
<!-- Include RTMVersions.csproj unless this invocation is building RepoTasks.csproj or won't compile C#. -->
<ProjectToBuild Include="$(RepoRoot)eng\RTMVersions\RTMVersions.csproj"
Exclude="@(ProjectToExclude)"
Condition=" $(ProjectToBuild.EndsWith('.csproj')) AND !$(ProjectToBuild.EndsWith('RepoTasks.csproj')) " />
<ProjectToBuild Include="$(ProjectToBuild)" Exclude="@(ProjectToExclude);$(RepoRoot)**\bin\**\*;$(RepoRoot)**\obj\**\*"> <ProjectToBuild Include="$(ProjectToBuild)" Exclude="@(ProjectToExclude);$(RepoRoot)**\bin\**\*;$(RepoRoot)**\obj\**\*">
<RestoreInParallel Condition="'%(Extension)' == '.npmproj'">false</RestoreInParallel> <RestoreInParallel Condition="'%(Extension)' == '.npmproj'">false</RestoreInParallel>
</ProjectToBuild> </ProjectToBuild>
...@@ -121,8 +125,11 @@ ...@@ -121,8 +125,11 @@
<!-- <!--
Use caution to avoid deep recursion. If the globbing pattern picks up something which exceeds MAX_PATH, Use caution to avoid deep recursion. If the globbing pattern picks up something which exceeds MAX_PATH,
the entire pattern will silently fail to evaluate correctly. the entire pattern will silently fail to evaluate correctly.
Include RTMVersions.csproj when building any managed projects.
--> -->
<DotNetProjects Include=" <DotNetProjects Include="
$(RepoRoot)eng\RTMVersions\RTMVersions.csproj;
$(RepoRoot)src\Framework\App.Ref\src\Microsoft.AspNetCore.App.Ref.csproj; $(RepoRoot)src\Framework\App.Ref\src\Microsoft.AspNetCore.App.Ref.csproj;
$(RepoRoot)src\Framework\App.Runtime\src\Microsoft.AspNetCore.App.Runtime.csproj; $(RepoRoot)src\Framework\App.Runtime\src\Microsoft.AspNetCore.App.Runtime.csproj;
$(RepoRoot)src\Framework\App.Ref.Internal\src\Microsoft.AspNetCore.App.Ref.Internal.csproj; $(RepoRoot)src\Framework\App.Ref.Internal\src\Microsoft.AspNetCore.App.Ref.Internal.csproj;
...@@ -170,6 +177,7 @@ ...@@ -170,6 +177,7 @@
$(RepoRoot)**\obj\**\*;" $(RepoRoot)**\obj\**\*;"
Condition=" '$(BuildMainlyReferenceProviders)' != 'true' " /> Condition=" '$(BuildMainlyReferenceProviders)' != 'true' " />
<DotNetProjects Include=" <DotNetProjects Include="
$(RepoRoot)eng\RTMVersions\RTMVersions.csproj;
$(RepoRoot)src\DefaultBuilder\**\src\*.csproj; $(RepoRoot)src\DefaultBuilder\**\src\*.csproj;
$(RepoRoot)src\Features\JsonPatch\**\src\*.csproj; $(RepoRoot)src\Features\JsonPatch\**\src\*.csproj;
$(RepoRoot)src\DataProtection\**\src\*.csproj; $(RepoRoot)src\DataProtection\**\src\*.csproj;
......
...@@ -15,15 +15,13 @@ ...@@ -15,15 +15,13 @@
Targets="GetReferencesProvided" Targets="GetReferencesProvided"
BuildInParallel="true" BuildInParallel="true"
SkipNonexistentTargets="true" SkipNonexistentTargets="true"
SkipNonexistentProjects="true" > SkipNonexistentProjects="true">
<Output TaskParameter="TargetOutputs" ItemName="_ProjectReferenceProvider"/> <Output TaskParameter="TargetOutputs" ItemName="_ProjectReferenceProvider" />
</MSBuild> </MSBuild>
<ItemGroup> <ItemGroup>
<_SharedFrameworkAndPackageRef Include="@(_ProjectReferenceProvider->WithMetadataValue('IsAspNetCoreApp','true')->WithMetadataValue('IsPackable', 'true')->Distinct())" /> <_SharedFrameworkAndPackageRef Include="@(_ProjectReferenceProvider->WithMetadataValue('IsAspNetCoreApp','true')->WithMetadataValue('IsPackable', 'true')->Distinct())" />
<_SharedFrameworkRef Include="@(_ProjectReferenceProvider->WithMetadataValue('IsAspNetCoreApp','true')->WithMetadataValue('IsPackable', 'false')->Distinct())" /> <_SharedFrameworkRef Include="@(_ProjectReferenceProvider->WithMetadataValue('IsAspNetCoreApp','true')->WithMetadataValue('IsPackable', 'false')->Distinct())" />
<_ProjectReferenceProviderWithRefAssembly Include="@(_ProjectReferenceProvider->HasMetadata('ReferenceAssemblyProjectFileRelativePath'))" />
<_ProjectReferenceProvider Remove="@(_ProjectReferenceProviderWithRefAssembly)" />
</ItemGroup> </ItemGroup>
<PropertyGroup> <PropertyGroup>
...@@ -36,7 +34,6 @@ ...@@ -36,7 +34,6 @@
<Project> <Project>
<ItemGroup> <ItemGroup>
@(_ProjectReferenceProvider->'<ProjectReferenceProvider Include="%(Identity)" ProjectPath="%24(RepoRoot)%(ProjectFileRelativePath)" />', '%0A ') @(_ProjectReferenceProvider->'<ProjectReferenceProvider Include="%(Identity)" ProjectPath="%24(RepoRoot)%(ProjectFileRelativePath)" />', '%0A ')
@(_ProjectReferenceProviderWithRefAssembly->'<ProjectReferenceProvider Include="%(Identity)" ProjectPath="%24(RepoRoot)%(ProjectFileRelativePath)" RefProjectPath="%24(RepoRoot)%(ReferenceAssemblyProjectFileRelativePath)" />', '%0A ')
</ItemGroup> </ItemGroup>
</Project> </Project>
]]></ProjectListContent> ]]></ProjectListContent>
...@@ -77,12 +74,4 @@ ...@@ -77,12 +74,4 @@
<Message Importance="High" Text="Generated $(SharedFxDepList)" /> <Message Importance="High" Text="Generated $(SharedFxDepList)" />
</Target> </Target>
<Target Name="GenerateReferenceSources">
<MSBuild
Projects="@(ProjectToBuild)"
Targets="GenerateReferenceSource"
SkipNonexistentTargets="true"
SkipNonexistentProjects="true" />
</Target>
</Project> </Project>
此差异已折叠。
此差异已折叠。
<Project>
<!-- Minimize what gets set to avoid useless references in this simple project. -->
<Import Project="..\Common.props" />
<Import Project="..\Versions.props" />
<Import Project="..\Dependencies.props" />
</Project>
<Project />
<Project Sdk="Microsoft.NET.Sdk">
<!--
Gather project references for compilation against RTM packages. %(RTMVersion) is set for about a dozen packages
in all servicing builds. Cannot reference two versions of a package, mandating this separate package.
-->
<PropertyGroup>
<TargetFramework>net5.0</TargetFramework>
<IsPackable>false</IsPackable>
<!-- Don't bother building anything here. We only need to ensure the RTM packages are on disk. -->
<DebugType>none</DebugType>
<IncludeBuildOutput>false</IncludeBuildOutput>
<CopyBuildOutputToPublishDirectory>false</CopyBuildOutputToPublishDirectory>
<CopyBuildOutputToOutputDirectory>false</CopyBuildOutputToOutputDirectory>
<CopyOutputSymbolsToOutputDirectory>false</CopyOutputSymbolsToOutputDirectory>
<GenerateDependencyFile>false</GenerateDependencyFile>
<!-- This project should not be referenced via the `<Reference>` implementation. -->
<IsProjectReferenceProvider>false</IsProjectReferenceProvider>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="@(LatestPackageReference->HasMetadata('RTMVersion'))" Version="%(RTMVersion)" />
</ItemGroup>
<!-- Arcade SDK calls Test target on every project in the repo but provides an empty fallback. Do same here. -->
<Target Name="Test" />
</Project>
...@@ -5,19 +5,6 @@ ...@@ -5,19 +5,6 @@
--> -->
<Project> <Project>
<!-- For the targeting pack, always use packages with PatchVersion=0 -->
<PropertyGroup Condition="'$(IsServicingBuild)' == 'true' AND ('$(MSBuildProjectName)' == 'Microsoft.AspNetCore.App.Ref' OR '$(IsReferenceAssemblyProject)' == 'true')">
<SystemIOPipelinesPackageVersion>$(SystemIOPipelinesPackageVersion.Split('.')[0]).$(SystemIOPipelinesPackageVersion.Split('.')[1]).0</SystemIOPipelinesPackageVersion>
<SystemSecurityCryptographyXmlPackageVersion>$(SystemSecurityCryptographyXmlPackageVersion.Split('.')[0]).$(SystemSecurityCryptographyXmlPackageVersion.Split('.')[1]).0</SystemSecurityCryptographyXmlPackageVersion>
<MicrosoftWin32SystemEventsPackageVersion>$(MicrosoftWin32SystemEventsPackageVersion.Split('.')[0]).$(MicrosoftWin32SystemEventsPackageVersion.Split('.')[1]).0</MicrosoftWin32SystemEventsPackageVersion>
<SystemDiagnosticsEventLogPackageVersion>$(SystemDiagnosticsEventLogPackageVersion.Split('.')[0]).$(SystemDiagnosticsEventLogPackageVersion.Split('.')[1]).0</SystemDiagnosticsEventLogPackageVersion>
<SystemDrawingCommonPackageVersion>$(SystemDrawingCommonPackageVersion.Split('.')[0]).$(SystemDrawingCommonPackageVersion.Split('.')[1]).0</SystemDrawingCommonPackageVersion>
<SystemSecurityCryptographyPkcsPackageVersion>$(SystemSecurityCryptographyPkcsPackageVersion.Split('.')[0]).$(SystemSecurityCryptographyPkcsPackageVersion.Split('.')[1]).0</SystemSecurityCryptographyPkcsPackageVersion>
<SystemSecurityPermissionsPackageVersion>$(SystemSecurityPermissionsPackageVersion.Split('.')[0]).$(SystemSecurityPermissionsPackageVersion.Split('.')[1]).0</SystemSecurityPermissionsPackageVersion>
<SystemWindowsExtensionsPackageVersion>$(SystemWindowsExtensionsPackageVersion.Split('.')[0]).$(SystemWindowsExtensionsPackageVersion.Split('.')[1]).0</SystemWindowsExtensionsPackageVersion>
</PropertyGroup>
<ItemGroup> <ItemGroup>
<!-- Dependencies from dotnet/runtime --> <!-- Dependencies from dotnet/runtime -->
<ExternalAspNetCoreAppReference Include="Microsoft.Extensions.Caching.Abstractions" Version="$(MicrosoftExtensionsCachingAbstractionsPackageVersion)" /> <ExternalAspNetCoreAppReference Include="Microsoft.Extensions.Caching.Abstractions" Version="$(MicrosoftExtensionsCachingAbstractionsPackageVersion)" />
...@@ -66,9 +53,13 @@ ...@@ -66,9 +53,13 @@
If these are needed as direct dependencies, it is okay to change them to ExternalAspNetCoreAppReference and move up into sections above. If these are needed as direct dependencies, it is okay to change them to ExternalAspNetCoreAppReference and move up into sections above.
--> -->
<_TransitiveExternalAspNetCoreAppReference Include="Microsoft.Win32.SystemEvents" Version="$(MicrosoftWin32SystemEventsPackageVersion)" /> <_TransitiveExternalAspNetCoreAppReference Include="Microsoft.Win32.SystemEvents" Version="$(MicrosoftWin32SystemEventsPackageVersion)" />
<_TransitiveExternalAspNetCoreAppReference Include="System.Diagnostics.EventLog" Version="$(SystemDiagnosticsEventLogPackageVersion)" />
<_TransitiveExternalAspNetCoreAppReference Include="System.Drawing.Common" Version="$(SystemDrawingCommonPackageVersion)" /> <_TransitiveExternalAspNetCoreAppReference Include="System.Drawing.Common" Version="$(SystemDrawingCommonPackageVersion)" />
<_TransitiveExternalAspNetCoreAppReference Include="System.Security.Cryptography.Pkcs" Version="$(SystemSecurityCryptographyPkcsPackageVersion)" /> <_TransitiveExternalAspNetCoreAppReference Include="System.Security.Cryptography.Pkcs" Version="$(SystemSecurityCryptographyPkcsPackageVersion)" />
<!--
Seems arbitrary that the following packages have their ref/ assemblies in our targeting pack but the above
three do not. This is likely about our public APIs i.e. external compilation requirements.
-->
<_TransitiveExternalAspNetCoreAppReference Include="System.Diagnostics.EventLog" Version="$(SystemDiagnosticsEventLogPackageVersion)" />
<_TransitiveExternalAspNetCoreAppReference Include="System.Security.Permissions" Version="$(SystemSecurityPermissionsPackageVersion)" /> <_TransitiveExternalAspNetCoreAppReference Include="System.Security.Permissions" Version="$(SystemSecurityPermissionsPackageVersion)" />
<_TransitiveExternalAspNetCoreAppReference Include="System.Windows.Extensions" Version="$(SystemWindowsExtensionsPackageVersion)" /> <_TransitiveExternalAspNetCoreAppReference Include="System.Windows.Extensions" Version="$(SystemWindowsExtensionsPackageVersion)" />
</ItemGroup> </ItemGroup>
......
...@@ -300,10 +300,6 @@ ...@@ -300,10 +300,6 @@
<Uri>https://github.com/dotnet/runtime</Uri> <Uri>https://github.com/dotnet/runtime</Uri>
<Sha>f37dd6fc8595e130909dcb3085a56342d04aa20c</Sha> <Sha>f37dd6fc8595e130909dcb3085a56342d04aa20c</Sha>
</Dependency> </Dependency>
<Dependency Name="Microsoft.DotNet.GenAPI" Version="5.0.0-beta.20330.3">
<Uri>https://github.com/dotnet/arcade</Uri>
<Sha>243cc92161ad44c2a07464425892daee19121c99</Sha>
</Dependency>
<Dependency Name="Microsoft.DotNet.Arcade.Sdk" Version="5.0.0-beta.20330.3"> <Dependency Name="Microsoft.DotNet.Arcade.Sdk" Version="5.0.0-beta.20330.3">
<Uri>https://github.com/dotnet/arcade</Uri> <Uri>https://github.com/dotnet/arcade</Uri>
<Sha>243cc92161ad44c2a07464425892daee19121c99</Sha> <Sha>243cc92161ad44c2a07464425892daee19121c99</Sha>
......
...@@ -61,8 +61,6 @@ ...@@ -61,8 +61,6 @@
--> -->
<PropertyGroup Label="Automated"> <PropertyGroup Label="Automated">
<!-- Packages from dotnet/arcade -->
<MicrosoftDotNetGenAPIPackageVersion>5.0.0-beta.20330.3</MicrosoftDotNetGenAPIPackageVersion>
<!-- Packages from dotnet/roslyn --> <!-- Packages from dotnet/roslyn -->
<MicrosoftNetCompilersToolsetPackageVersion>3.8.0-1.20361.1</MicrosoftNetCompilersToolsetPackageVersion> <MicrosoftNetCompilersToolsetPackageVersion>3.8.0-1.20361.1</MicrosoftNetCompilersToolsetPackageVersion>
<!-- Packages from dotnet/runtime --> <!-- Packages from dotnet/runtime -->
...@@ -157,6 +155,30 @@ ...@@ -157,6 +155,30 @@
--> -->
<MicrosoftNETCoreAppRuntimeVersion>$(MicrosoftNETCoreAppRuntimewinx64PackageVersion)</MicrosoftNETCoreAppRuntimeVersion> <MicrosoftNETCoreAppRuntimeVersion>$(MicrosoftNETCoreAppRuntimewinx64PackageVersion)</MicrosoftNETCoreAppRuntimeVersion>
</PropertyGroup> </PropertyGroup>
<!--
We ship ref/ assemblies for runtime packages in our targeting targeting pack. When servicing that targeting pack,
these assemblies must not change. Must also compile our assemblies against the initial ref/ assemblies for runtime
packages. But, need to test against the latest implementation assemblies and ship them in our shared framework.
Upshot is we need Major.Minor.0 runtime packages for compilation and the targeting pack and Major.Minor.Latest
runtime packages for everything else. This is not an issue for assemblies available in Microsoft.NETCore.App.Ref or
Microsoft.Extensions.Internal.Transport because it is next to impossible we would service those packages.
-->
<PropertyGroup Condition=" '$(IsServicingBuild)' == 'true' ">
<MicrosoftWin32RegistryV0PackageVersion>$(MicrosoftWin32RegistryPackageVersion.Split('.')[0]).$(MicrosoftWin32RegistryPackageVersion.Split('.')[1]).0</MicrosoftWin32RegistryV0PackageVersion>
<MicrosoftWin32SystemEventsV0PackageVersion>$(MicrosoftWin32SystemEventsPackageVersion.Split('.')[0]).$(MicrosoftWin32SystemEventsPackageVersion.Split('.')[1]).0</MicrosoftWin32SystemEventsV0PackageVersion>
<SystemDiagnosticsEventLogV0PackageVersion>$(SystemDiagnosticsEventLogPackageVersion.Split('.')[0]).$(SystemDiagnosticsEventLogPackageVersion.Split('.')[1]).0</SystemDiagnosticsEventLogV0PackageVersion>
<SystemDrawingCommonV0PackageVersion>$(SystemDrawingCommonPackageVersion.Split('.')[0]).$(SystemDrawingCommonPackageVersion.Split('.')[1]).0</SystemDrawingCommonV0PackageVersion>
<SystemIOPipelinesV0PackageVersion>$(SystemIOPipelinesPackageVersion.Split('.')[0]).$(SystemIOPipelinesPackageVersion.Split('.')[1]).0</SystemIOPipelinesV0PackageVersion>
<SystemSecurityAccessControlV0PackageVersion>$(SystemSecurityAccessControlPackageVersion.Split('.')[0]).$(SystemSecurityAccessControlPackageVersion.Split('.')[1]).0</SystemSecurityAccessControlV0PackageVersion>
<SystemSecurityCryptographyCngV0PackageVersion>$(SystemSecurityCryptographyCngPackageVersion.Split('.')[0]).$(SystemSecurityCryptographyCngPackageVersion.Split('.')[1]).0</SystemSecurityCryptographyCngV0PackageVersion>
<SystemSecurityCryptographyPkcsV0PackageVersion>$(SystemSecurityCryptographyPkcsPackageVersion.Split('.')[0]).$(SystemSecurityCryptographyPkcsPackageVersion.Split('.')[1]).0</SystemSecurityCryptographyPkcsV0PackageVersion>
<SystemSecurityCryptographyXmlV0PackageVersion>$(SystemSecurityCryptographyXmlPackageVersion.Split('.')[0]).$(SystemSecurityCryptographyXmlPackageVersion.Split('.')[1]).0</SystemSecurityCryptographyXmlV0PackageVersion>
<SystemSecurityPermissionsV0PackageVersion>$(SystemSecurityPermissionsPackageVersion.Split('.')[0]).$(SystemSecurityPermissionsPackageVersion.Split('.')[1]).0</SystemSecurityPermissionsV0PackageVersion>
<SystemSecurityPrincipalWindowsV0PackageVersion>$(SystemSecurityPrincipalWindowsPackageVersion.Split('.')[0]).$(SystemSecurityPrincipalWindowsPackageVersion.Split('.')[1]).0</SystemSecurityPrincipalWindowsV0PackageVersion>
<SystemWindowsExtensionsV0PackageVersion>$(SystemWindowsExtensionsPackageVersion.Split('.')[0]).$(SystemWindowsExtensionsPackageVersion.Split('.')[1]).0</SystemWindowsExtensionsV0PackageVersion>
</PropertyGroup>
<PropertyGroup Label="Manual"> <PropertyGroup Label="Manual">
<!-- DiagnosticAdapter package pinned temporarily until migrated/deprecated --> <!-- DiagnosticAdapter package pinned temporarily until migrated/deprecated -->
<MicrosoftExtensionsDiagnosticAdapterPackageVersion>5.0.0-preview.4.20180.4</MicrosoftExtensionsDiagnosticAdapterPackageVersion> <MicrosoftExtensionsDiagnosticAdapterPackageVersion>5.0.0-preview.4.20180.4</MicrosoftExtensionsDiagnosticAdapterPackageVersion>
...@@ -189,7 +211,7 @@ ...@@ -189,7 +211,7 @@
<MicrosoftCodeAnalysisCommonPackageVersion>3.7.0-4.20351.7</MicrosoftCodeAnalysisCommonPackageVersion> <MicrosoftCodeAnalysisCommonPackageVersion>3.7.0-4.20351.7</MicrosoftCodeAnalysisCommonPackageVersion>
<MicrosoftCodeAnalysisCSharpPackageVersion>3.7.0-4.20351.7</MicrosoftCodeAnalysisCSharpPackageVersion> <MicrosoftCodeAnalysisCSharpPackageVersion>3.7.0-4.20351.7</MicrosoftCodeAnalysisCSharpPackageVersion>
<MicrosoftCodeAnalysisCSharpWorkspacesPackageVersion>3.7.0-4.20351.7</MicrosoftCodeAnalysisCSharpWorkspacesPackageVersion> <MicrosoftCodeAnalysisCSharpWorkspacesPackageVersion>3.7.0-4.20351.7</MicrosoftCodeAnalysisCSharpWorkspacesPackageVersion>
<MicrosoftCodeAnalysisFxCopAnalyzersVersion>3.0.0</MicrosoftCodeAnalysisFxCopAnalyzersVersion> <MicrosoftCodeAnalysisFxCopAnalyzersPackageVersion>3.0.0</MicrosoftCodeAnalysisFxCopAnalyzersPackageVersion>
<MicrosoftCssParserPackageVersion>1.0.0-20200708.1</MicrosoftCssParserPackageVersion> <MicrosoftCssParserPackageVersion>1.0.0-20200708.1</MicrosoftCssParserPackageVersion>
<MicrosoftIdentityModelClientsActiveDirectoryPackageVersion>3.19.8</MicrosoftIdentityModelClientsActiveDirectoryPackageVersion> <MicrosoftIdentityModelClientsActiveDirectoryPackageVersion>3.19.8</MicrosoftIdentityModelClientsActiveDirectoryPackageVersion>
<MicrosoftIdentityModelLoggingPackageVersion>6.7.1</MicrosoftIdentityModelLoggingPackageVersion> <MicrosoftIdentityModelLoggingPackageVersion>6.7.1</MicrosoftIdentityModelLoggingPackageVersion>
...@@ -206,6 +228,8 @@ ...@@ -206,6 +228,8 @@
<MicrosoftAspNetCoreAzureAppServicesSiteExtension21PackageVersion>2.1.1</MicrosoftAspNetCoreAzureAppServicesSiteExtension21PackageVersion> <MicrosoftAspNetCoreAzureAppServicesSiteExtension21PackageVersion>2.1.1</MicrosoftAspNetCoreAzureAppServicesSiteExtension21PackageVersion>
<MicrosoftAspNetCoreAzureAppServicesSiteExtension22PackageVersion>2.2.0</MicrosoftAspNetCoreAzureAppServicesSiteExtension22PackageVersion> <MicrosoftAspNetCoreAzureAppServicesSiteExtension22PackageVersion>2.2.0</MicrosoftAspNetCoreAzureAppServicesSiteExtension22PackageVersion>
<MicrosoftAspNetCoreAzureAppServicesSiteExtension31PackageVersion>3.1.3-servicing-20163-14</MicrosoftAspNetCoreAzureAppServicesSiteExtension31PackageVersion> <MicrosoftAspNetCoreAzureAppServicesSiteExtension31PackageVersion>3.1.3-servicing-20163-14</MicrosoftAspNetCoreAzureAppServicesSiteExtension31PackageVersion>
<MicrosoftAspNetCoreAzureAppServicesSiteExtension31x64PackageVersion>$(MicrosoftAspNetCoreAzureAppServicesSiteExtension31PackageVersion)</MicrosoftAspNetCoreAzureAppServicesSiteExtension31x64PackageVersion>
<MicrosoftAspNetCoreAzureAppServicesSiteExtension31x86PackageVersion>$(MicrosoftAspNetCoreAzureAppServicesSiteExtension31PackageVersion)</MicrosoftAspNetCoreAzureAppServicesSiteExtension31x86PackageVersion>
<!-- 3rd party dependencies --> <!-- 3rd party dependencies -->
<AngleSharpPackageVersion>0.9.9</AngleSharpPackageVersion> <AngleSharpPackageVersion>0.9.9</AngleSharpPackageVersion>
<BenchmarkDotNetPackageVersion>0.12.1</BenchmarkDotNetPackageVersion> <BenchmarkDotNetPackageVersion>0.12.1</BenchmarkDotNetPackageVersion>
...@@ -223,6 +247,7 @@ ...@@ -223,6 +247,7 @@
<IdentityServer4StoragePackageVersion>3.0.0</IdentityServer4StoragePackageVersion> <IdentityServer4StoragePackageVersion>3.0.0</IdentityServer4StoragePackageVersion>
<IdentityServer4EntityFrameworkStoragePackageVersion>3.0.0</IdentityServer4EntityFrameworkStoragePackageVersion> <IdentityServer4EntityFrameworkStoragePackageVersion>3.0.0</IdentityServer4EntityFrameworkStoragePackageVersion>
<MessagePackPackageVersion>2.1.90</MessagePackPackageVersion> <MessagePackPackageVersion>2.1.90</MessagePackPackageVersion>
<MessagePackAnalyzerPackageVersion>$(MessagePackPackageVersion)</MessagePackAnalyzerPackageVersion>
<MoqPackageVersion>4.10.0</MoqPackageVersion> <MoqPackageVersion>4.10.0</MoqPackageVersion>
<MonoCecilPackageVersion>0.11.2</MonoCecilPackageVersion> <MonoCecilPackageVersion>0.11.2</MonoCecilPackageVersion>
<NewtonsoftJsonBsonPackageVersion>1.0.2</NewtonsoftJsonBsonPackageVersion> <NewtonsoftJsonBsonPackageVersion>1.0.2</NewtonsoftJsonBsonPackageVersion>
......
...@@ -166,11 +166,6 @@ try { ...@@ -166,11 +166,6 @@ try {
& $PSScriptRoot\GenerateProjectList.ps1 -ci:$ci & $PSScriptRoot\GenerateProjectList.ps1 -ci:$ci
} }
Write-Host "Re-generating references assemblies"
Invoke-Block {
& $PSScriptRoot\GenerateReferenceAssemblies.ps1 -ci:$ci
}
Write-Host "Re-generating package baselines" Write-Host "Re-generating package baselines"
Invoke-Block { Invoke-Block {
& dotnet run -p "$repoRoot/eng/tools/BaselineGenerator/" & dotnet run -p "$repoRoot/eng/tools/BaselineGenerator/"
......
param(
[switch]$ci
)
$ErrorActionPreference = 'stop'
$repoRoot = Resolve-Path "$PSScriptRoot/../.."
try {
# eng/common/msbuild.ps1 builds the Debug configuration unless there's a $Configuration variable. Match that here.
& "$repoRoot\build.ps1" -ci:$ci -nobl -noBuildRepoTasks -noRestore -buildNative -configuration Debug
Remove-Item variable:global:_BuildTool -ErrorAction Ignore
$excludeCIBinarylog = $true
$msbuildEngine = 'dotnet'
& "$repoRoot\eng\common\msbuild.ps1" -ci:$ci "$repoRoot/eng/CodeGen.proj" /t:GenerateReferenceSources
} finally {
Remove-Item variable:global:_BuildTool -ErrorAction Ignore
Remove-Item variable:global:_DotNetInstallDir -ErrorAction Ignore
Remove-Item variable:global:_ToolsetBuildProj -ErrorAction Ignore
Remove-Item variable:global:_MSBuildExe -ErrorAction Ignore
}
...@@ -10,8 +10,6 @@ ...@@ -10,8 +10,6 @@
<ItemGroup> <ItemGroup>
<!-- Required to exist in the NuGet package cache to enable code-signing. --> <!-- Required to exist in the NuGet package cache to enable code-signing. -->
<PackageReference Include="MicroBuild.Core" Version="0.3.0" PrivateAssets="All" AllowExplicitReference="true" ExcludeAssets="All" /> <PackageReference Include="MicroBuild.Core" Version="0.3.0" PrivateAssets="All" AllowExplicitReference="true" ExcludeAssets="All" />
<PackageReference Condition="'$(DotNetBuildFromSource)' != 'true'" Include="Microsoft.DotNet.GenAPI" PrivateAssets="All" Version="$(MicrosoftDotNetGenApiPackageVersion)" IsImplicitlyDefined="true" />
</ItemGroup> </ItemGroup>
<ItemGroup Condition="'$(UsingMicrosoftNETSdkWeb)' == 'true' OR '$(RazorSdkCurrentVersionProps)' != ''"> <ItemGroup Condition="'$(UsingMicrosoftNETSdkWeb)' == 'true' OR '$(RazorSdkCurrentVersionProps)' != ''">
...@@ -57,8 +55,6 @@ ...@@ -57,8 +55,6 @@
</Content> </Content>
</ItemDefinitionGroup> </ItemDefinitionGroup>
<Import Project="CSharp.ReferenceAssembly.props" Condition="'$(IsReferenceAssemblyProject)' == 'true'" />
<!-- Properties to control how we handle warnings when using the tasks provided by the Yarn MSBuild SDK --> <!-- Properties to control how we handle warnings when using the tasks provided by the Yarn MSBuild SDK -->
<PropertyGroup> <PropertyGroup>
<IgnoreYarnWarnings>false</IgnoreYarnWarnings> <IgnoreYarnWarnings>false</IgnoreYarnWarnings>
......
...@@ -9,7 +9,6 @@ ...@@ -9,7 +9,6 @@
<Target Name="GetCustomAssemblyAttributes" <Target Name="GetCustomAssemblyAttributes"
BeforeTargets="GetAssemblyAttributes" BeforeTargets="GetAssemblyAttributes"
DependsOnTargets="InitializeSourceControlInformation"> DependsOnTargets="InitializeSourceControlInformation">
<ItemGroup> <ItemGroup>
<AssemblyAttribute Include="System.Reflection.AssemblyMetadataAttribute" Condition="'$(SourceRevisionId)' != ''"> <AssemblyAttribute Include="System.Reflection.AssemblyMetadataAttribute" Condition="'$(SourceRevisionId)' != ''">
<_Parameter1>CommitHash</_Parameter1> <_Parameter1>CommitHash</_Parameter1>
...@@ -28,6 +27,13 @@ ...@@ -28,6 +27,13 @@
</ItemGroup> </ItemGroup>
</Target> </Target>
<!-- Reference assemblies are shipped only in targeting packs. -->
<Target Name="_RemoveReferenceAssembly" BeforeTargets="_GetPackageFiles;GenerateNuspec" Condition="$(HasReferenceAssembly)">
<ItemGroup>
<_PackageFilesToExclude Include="@(IntermediateRefAssembly);$(TargetRefPath)" />
</ItemGroup>
</Target>
<Choose> <Choose>
<!-- <!--
C# 8.0's nullable annotations only work for .NET Core 3.0+ by default. However it can be made to work for other target frameworks C# 8.0's nullable annotations only work for .NET Core 3.0+ by default. However it can be made to work for other target frameworks
......
<Project>
<PropertyGroup>
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
<EnableDefaultCompileItems>false</EnableDefaultCompileItems>
<NoWarn>$(NoWarn);CS0618;PUB0001</NoWarn>
</PropertyGroup>
</Project>
0% 加载中 .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册