Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update to Arcade 5.0 and .NET 5.0 #5836

Merged
merged 43 commits into from
Jan 20, 2021

Conversation

benvillalobos
Copy link
Member

@benvillalobos benvillalobos commented Oct 26, 2020

Fixes #5515

Ran darc update-dependencies --source-repo arcade --channel ".NET 5 Eng" as opposed to ".NET Eng - Latest" as latest was on 6.0.

Validation:

Extras

Questions

Is there any reason we wouldn't want to jump straight to 6.0?

  • 6.0 is not released yet.

@benvillalobos benvillalobos marked this pull request as draft October 26, 2020 23:16
@benvillalobos benvillalobos force-pushed the arcade-update branch 2 times, most recently from 539c1d4 to f716da7 Compare October 27, 2020 21:22
@benvillalobos
Copy link
Member Author

Note to self: Update DotNetCliVersion to 5.0.100

@benvillalobos
Copy link
Member Author

Running the CI script locally results in:

3.1.100

Microsoft.Build.Exceptions.InvalidProjectFileException : The imported project "D:\a\1\s\artifacts\bin\Microsoft.Build.Tasks.UnitTests\Debug\netcoreapp2.1\Roslyn\Microsoft.CSharp.Core.targets" was not found. Confirm that the expression in the Import declaration "D:\a\1\s\artifacts\bin\Microsoft.Build.Tasks.UnitTests\Debug\netcoreapp2.1\Roslyn\Microsoft.CSharp.Core.targets" is correct, and that the file exists on disk.  D:\a\1\s\artifacts\bin\Microsoft.Build.Tasks.UnitTests\Debug\netcoreapp2.1\Microsoft.CSharp.CurrentVersion.targets

5.0.100-rc.2.20479.15

NETSDK1005: Assets file 'C:\src\git\msbuild\artifacts\obj\Microsoft.Build.UnGAC\project.assets
.json' doesn't have a target for 'net45'. Ensure that restore has run and that you have included 'net45' in the TargetF
rameworks for your project. [C:\src\git\msbuild\src\Package\Microsoft.Build.UnGAC\Microsoft.Build.UnGAC.csproj]

Same issues for netcoreapp2.1 and netstandard2.0 for every project.

@benvillalobos benvillalobos marked this pull request as ready for review November 25, 2020 22:12
@benvillalobos
Copy link
Member Author

benvillalobos commented Dec 10, 2020

This is very curious...

D:\a\1\s\.dotnet\sdk\5.0.100\MSBuild.dll /nologo -maxcpucount /m -verbosity:m /v:minimal /bl:D:\a\1\s\artifacts\log\Debug\ToolsetRestore.binlog /clp:Summary /clp:ErrorsOnly;NoSummary /nr:False /p:ContinuousIntegrationBuild=True /p:TreatWarningsAsErrors=true /p:__ToolsetLocationOutputFile=D:\a\1\s\artifacts\toolset\5.0.0-beta.20510.1.txt /t:__WriteToolsetLocation /warnaserror D:\a\1\s\artifacts\toolset\restore.proj
MSBUILD : error MSB1021: Cannot create an instance of the logger. The given assembly name or codebase was invalid. (0x80131047)
Switch: D:\a\1\s\.packages\microsoft.dotnet.arcade.sdk\5.0.0-beta.20510.1\tools\net5.0\Microsoft.DotNet.Arcade.Sdk.dll

Note to self: My local directory has C:\src\git\msbuild\.packages\microsoft.dotnet.arcade.sdk\5.0.0-beta.20510.1\tools\netcoreapp2.1 not 5.0. Presumably some other item in eng\ has netcoreapp2.1 associated with it? Now I'm thinking a project is set up incorrectly.

Or did me migrating to net5.0 default to looking for the arcade sdk, which doesn't target net5.0 yet? (I'm not sure if that's even true)

@benvillalobos
Copy link
Member Author

I can't tell if this is "so close, yet so far," but only full framework is failing on System.Text.Json not being 5.0.0. Unfortunately, it looks like updating that updated System.Buffers, which I can't seem to get a successful binding redirect on?

The error is this:

Unhandled Exception: System.IO.FileLoadException: Could not load file or assembly 'System.Text.Json, Version=4.0.1.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)
   at Microsoft.Build.CommandLine.MSBuildApp.BuildProject(String projectFile, String[] targets, String toolsVersion, Dictionary`2 globalProperties, Dictionary`2 restoreProperties, ILogger[] loggers, LoggerVerbosity verbosity, DistributedLoggerRecord[] distributedLoggerRecords, Boolean needToValidateProject, String schemaFile, Int32 cpuCount, Boolean enableNodeReuse, TextWriter preprocessWriter, TextWriter targetsWriter, Boolean detailedSummary, ISet`1 warningsAsErrors, ISet`1 warningsAsMessages, Boolean enableRestore, ProfilerLogger profilerLogger, Boolean enableProfiler, Boolean interactive, Boolean isolateProjects, Boolean graphBuild, Boolean lowPriority, String[] inputResultsCaches, String outputResultsCache) in /_/src/MSBuild/XMake.cs:line 1311
   at Microsoft.Build.CommandLine.MSBuildApp.Execute(String commandLine) in /_/src/MSBuild/XMake.cs:line 820
   at Microsoft.Build.CommandLine.MSBuildApp.Main() in /_/src/MSBuild/XMake.cs:line 223

Previous error:

##[error]stage1\bin\bootstrap\net5.0\MSBuild\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.Sdk.targets(195,5): error MSB4018: (NETCORE_ENGINEERING_TELEMETRY=Build) The "GenerateDepsFile" task failed unexpectedly.
This is an unhandled exception from a task -- PLEASE OPEN A BUG AGAINST THE TASK OWNER.
System.IO.FileNotFoundException: Could not load file or assembly 'Microsoft.Extensions.DependencyModel, Version=5.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60'. The system cannot find the file specified.
File name: 'Microsoft.Extensions.DependencyModel, Version=5.0.0.0, Culture=neutral, PublicKeyToken=adb9793829ddae60'
   at Microsoft.NET.Build.Tasks.GenerateDepsFile.WriteDepsFile(String depsFilePath)
   at Microsoft.NET.Build.Tasks.GenerateDepsFile.ExecuteCore()
   at Microsoft.NET.Build.Tasks.TaskBase.Execute()
   at Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute() in /_/src/Build/BackEnd/TaskExecutionHost/TaskExecutionHost.cs:line 577
   at Microsoft.Build.BackEnd.TaskBuilder.ExecuteInstantiatedTask(ITaskExecutionHost taskExecutionHost, TaskLoggingContext taskLoggingContext, TaskHost taskHost, ItemBucket bucket, TaskExecutionMode howToExecuteTask) in /_/src/Build/BackEnd/Components/RequestBuilder/TaskBuilder.cs:line 809
  Microsoft.Build.Utilities -> D:\a\1\s\artifacts\bin\Microsoft.Build.Utilities\Debug\net472\Microsoft.Build.Utilities.Core.dll

Updating Microsoft.Extensions.DependencyModel has a dependency on System.Text.Json v5.0.0, which has a dependency on System.Buffers v4.0.3, but when updating that I got errors for downgrading it. Maybe I should do a binding redirect from 0.0.0->4.0.x to 4.0.x to prevent future versions from downgrading.

@rainersigwald
Copy link
Member

rainersigwald commented Dec 21, 2020 via email

@benvillalobos
Copy link
Member Author

@rainersigwald strange, I added this in packages.props (keeping the original package reference that sets s.t.json to 4.7.0 some lines above):

  <ItemGroup Condition="'$(TargetFramework)' == '.NETCoreApp'">
    <PackageReference Update="System.Text.Json" Version="5.0.0" />
  </ItemGroup>

and I get the same error

Unhandled Exception: System.IO.FileLoadException: Could not load file or assembly 'System.Text.Json, Version=4.0.1.0, Culture=neutral, PublicKeyToken=cc7b13ffcd2ddd51' or one of its dependencies. The located assembly's manifest definition does not match the assembly reference. (Exception from HRESULT: 0x80131040)
   at Microsoft.Build.CommandLine.MSBuildApp.BuildProject(String projectFile, String[] targets, String toolsVersion, Dictionary`2 globalProperties, Dictionary`2 restoreProperties, ILogger[] loggers, LoggerVerbosity verbosity, DistributedLoggerRecord[] distributedLoggerRecords, Boolean needToValidateProject, String schemaFile, Int32 cpuCount, Boolean enableNodeReuse, TextWriter preprocessWriter, TextWriter targetsWriter, Boolean detailedSummary, ISet`1 warningsAsErrors, ISet`1 warningsAsMessages, Boolean enableRestore, ProfilerLogger profilerLogger, Boolean enableProfiler, Boolean interactive, Boolean isolateProjects, Boolean graphBuild, Boolean lowPriority, String[] inputResultsCaches, String outputResultsCache) in /_/src/MSBuild/XMake.cs:line 1311
   at Microsoft.Build.CommandLine.MSBuildApp.Execute(String commandLine) in /_/src/MSBuild/XMake.cs:line 820
   at Microsoft.Build.CommandLine.MSBuildApp.Main() in /_/src/MSBuild/XMake.cs:line 223

@benvillalobos
Copy link
Member Author

Only importing Microsoft.Extensions.DependencyModel on non-full-framework builds solved our Windows Full build issue. I also added a special case for osx on mono since that was the last build leg that was failing. I think I need to loosen that condition to simply monobuild == true or istargetframeworkcompatible($(TargetFramework), 'netcoreapp2.1').

@benvillalobos
Copy link
Member Author

And on this glorious night the old gods and the new smiled down on Ben for the first time and said "Tests passed!" :shipit:

@benvillalobos benvillalobos changed the title Update to Arcade 5.0 Update to Arcade 5.0 and .NET 5.0 Dec 22, 2020
@benvillalobos
Copy link
Member Author

benvillalobos commented Dec 22, 2020

Signing is failing

D:\a\1\s\.tools\msbuild\16.8.0-preview3\tools\MSBuild\Current\Bin\MSBuild.exe /nologo /bl:D:\a\1\s\artifacts\log\Debug\SigningValidation.binlog /clp:Summary /logger:D:\a\1\s\.packages\microsoft.dotnet.arcade.sdk\5.0.0-beta.20510.1\tools\net472\Microsoft.DotNet.Arcade.Sdk.dll /m /nr:False /p:ContinuousIntegrationBuild=True /p:TreatWarningsAsErrors=true /p:Configuration=Debug /p:RepoRoot=D:\a\1\s /p:BaseIntermediateOutputPath=D:\a\1\s\artifacts\toolset\SigningValidation\ /p:PackageBasePath=D:\a\1\a/PackageArtifacts /p:SignCheckExclusionsFile=D:\a\1\s/eng/SignCheckExclusionsFile.txt /t:Execute /v:minimal /v:minimal /warnaserror D:\a\1\s\.packages\microsoft.dotnet.arcade.sdk\5.0.0-beta.20510.1\tools\SdkTasks\SigningValidation.proj
Starting execution of SignCheck.

Results

[File] Microsoft.Build.16.9.0-preview-20622-01.nupkg, Signed: False
[File] Microsoft.Build.Conversion.Core.16.9.0-preview-20622-01.nupkg, Signed: False
[File] Microsoft.Build.Engine.16.9.0-preview-20622-01.nupkg, Signed: False
[File] Microsoft.Build.Framework.16.9.0-preview-20622-01.nupkg, Signed: False
[File] Microsoft.Build.Localization.16.9.0-preview-20622-01.nupkg, Signed: False
[File] Microsoft.Build.Runtime.16.9.0-preview-20622-01.nupkg, Signed: False
[File] Microsoft.Build.Tasks.Core.16.9.0-preview-20622-01.nupkg, Signed: False
[File] Microsoft.Build.Utilities.Core.16.9.0-preview-20622-01.nupkg, Signed: False
[File] MsBuild.Engine.Corext.16.9.0-preview-20622-01.nupkg, Signed: False
[File] VS.ExternalAPIs.MSBuild.16.9.0-preview-20622-01.nupkg, Signed: False
Signing issues found
[File] Microsoft.Build.Localization.16.9.0-preview-20622-01.nupkg, Signed: False
[File] MsBuild.Engine.Corext.16.9.0-preview-20622-01.nupkg, Signed: False
[File] VS.ExternalAPIs.MSBuild.16.9.0-preview-20622-01.nupkg, Signed: False
[File] Microsoft.Build.16.9.0-preview-20622-01.nupkg, Signed: False
[File] Microsoft.Build.Conversion.Core.16.9.0-preview-20622-01.nupkg, Signed: False
[File] Microsoft.Build.Engine.16.9.0-preview-20622-01.nupkg, Signed: False
[File] Microsoft.Build.Framework.16.9.0-preview-20622-01.nupkg, Signed: False
[File] Microsoft.Build.Runtime.16.9.0-preview-20622-01.nupkg, Signed: False
[File] Microsoft.Build.Tasks.Core.16.9.0-preview-20622-01.nupkg, Signed: False
[File] Microsoft.Build.Utilities.Core.16.9.0-preview-20622-01.nupkg, Signed: False

Total Time: 00:00:09.5868296
Total Files: 682, Signed: 240, Unsigned: 20, Skipped: 422, Excluded: 0, Skipped & Excluded: 0
D:\a\1\s\.packages\microsoft.dotnet.arcade.sdk\5.0.0-beta.20510.1\tools\SdkTasks\SigningValidation.proj(48,5): error MSB4181: The "SignCheckTask" task returned false but did not log an error.
##[error].packages\microsoft.dotnet.arcade.sdk\5.0.0-beta.20510.1\tools\SdkTasks\SigningValidation.proj(48,5): error MSB4181: (NETCORE_ENGINEERING_TELEMETRY=Build) The "SignCheckTask" task returned false but did not log an error.

Build FAILED.

D:\a\1\s\.packages\microsoft.dotnet.arcade.sdk\5.0.0-beta.20510.1\tools\SdkTasks\SigningValidation.proj(48,5): error MSB4181: The "SignCheckTask" task returned false but did not log an error.
    0 Warning(s)
    1 Error(s)

I'll take a look at what's changed in SigningValidation.proj. I'm not sure if we need to add something to our projects to allow them to be signed or not We have binlogs. I'll start there.

@benvillalobos
Copy link
Member Author

/azp run

@azure-pipelines
Copy link

Azure Pipelines successfully started running 1 pipeline(s).

@benvillalobos
Copy link
Member Author

benvillalobos commented Jan 5, 2021

Looks like pipeline builds succeed. We get to the VS PR stage and RPS passes. The only failure at the VS PR stage is symbolcheck:

1262129
SymbolCheck: Package Microsoft.Build,version=16.9.0.2105501,chip=neutral,language=neutral failed
Active
1262130
SymbolCheck: Package VS.ExternalAPIs.MSBuild failed
Active
1262131
SymbolCheck: Package Microsoft.Build.UnGAC,version=16.9.0.2105501,chip=neutral,language=neutral failed
Active
Your SymbolCheck build produced 3 new bug(s).
1262129
SymbolCheck: Package Microsoft.Build,version=16.9.0.2105501,chip=neutral,language=neutral failed
Active
1262130
SymbolCheck: Package VS.ExternalAPIs.MSBuild failed
Active
1262131
SymbolCheck: Package Microsoft.Build.UnGAC,version=16.9.0.2105501,chip=neutral,language=neutral failed
Active

@rainersigwald
Copy link
Member

The symchk bugs should have a repro command line. Can you run that?

Copy link
Member

@rainersigwald rainersigwald left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looking super promising!

@@ -36,8 +36,8 @@
</PropertyGroup>
<!-- Toolset Dependencies -->
<PropertyGroup>
<DotNetCliVersion>3.1.100</DotNetCliVersion>
<MicrosoftNetCompilersToolsetVersion>3.3.1-beta3-final</MicrosoftNetCompilersToolsetVersion>
<DotNetCliVersion>5.0.100</DotNetCliVersion>
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should probably be .101 (or .102) now.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Where can I go to verify this? I did a brief search in the sdk and arcade repos

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🤦‍♂️ 👍

src/Build/Microsoft.Build.csproj Outdated Show resolved Hide resolved
src/Build/Microsoft.Build.csproj Outdated Show resolved Hide resolved
</PropertyGroup>

<PropertyGroup Condition="$(TargetFramework.StartsWith('netstandard')) or $(TargetFramework.StartsWith('netcore'))">
<PropertyGroup Condition="$(TargetFramework.StartsWith('netstandard')) or $(TargetFramework.StartsWith('netcore')) or $(TargetFramework.StartsWith('net5'))">
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Replace with is-compatible-with-netcoreapp1.0 property function?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Are all netcoreapp1.0+ target frameworks backwards compatible that far?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

theoretically yes

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Well this is strange. Changing this to: $([MSBuild]::IsTargetFrameworkCompatible('$(TargetFramework)', 'netcoreapp1.0')) results in a compilation error:

C:\src\git\msbuild\src\Tasks\AssemblyDependency\AssemblyInformation.cs(34,26): error CS0246: The type or namespace name
 'IMetaDataDispenser' could not be found (are you missing a using directive or an assembly reference?) [C:\src\git\msbu
ild\src\Tasks\Microsoft.Build.Tasks.csproj]
C:\src\git\msbuild\src\Tasks\AssemblyDependency\AssemblyInformation.cs(35,26): error CS0246: The type or namespace name
 'IMetaDataAssemblyImport' could not be found (are you missing a using directive or an assembly reference?)
and others

The failing project is Microsoft.Build.Tasks.csproj targeting netstandard2.0. This condition must have been false for netstandard2.0 previously?

Here's a sample of the failing code:

#if !FEATURE_ASSEMBLYLOADCONTEXT
            if (NativeMethodsShared.IsWindows)
            {
                // Create the metadata dispenser and open scope on the source file.
                _metadataDispenser = (IMetaDataDispenser)new CorMetaDataDispenser();
                _assemblyImport = (IMetaDataAssemblyImport)_metadataDispenser.OpenScope(sourceFile, 0, ref s_importerGuid);
            }
            else
            {
                _assembly = Assembly.ReflectionOnlyLoadFrom(sourceFile);
            }
#endif

My first assumption would be that the netstandard2.0 project didn't have FEATURE_ASSEMBLYLOADCONTEXT defined, and now it is and doesn't see those types.

  • This is even more confusing considering the previous check was checking if the TargetFramework started with netstandard, so it would've fallen into this case anyway?

So it seems like there are two paths here:

  • Get the type to show up in the netstandard2.0 target (which doesn't seem right to me considering it apparently wasn't visible before),
  • Compare the two binlogs and see what's different between the current condition and the previous.
    • Ex: See if the previous condition had FEATURE_ASSEMBLYLOADCONTEXT defined.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think I see the problem. netcoreapp1.0 is not compatible with netstandard2.0, so I think I need to change the condition to "is target framework compatible with netcoreapp1.0 OR does the target framework start with netstandard"

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I figured that by seeing what constants were defined in a build with the old condition vs the new condition.

Working (Old condition)
----
TRACE
MICROSOFT_BUILD_TASKS
STANDALONEBUILD
FEATURE_DEBUG_LAUNCH
TEST_ISWINDOWS
RUNTIME_TYPE_NETCORE
FEATURE_ASSEMBLYLOADCONTEXT
FEATURE_PROCESSSTARTINFO_ENVIRONMENT
FEATURE_RUNTIMEINFORMATION
USE_MSBUILD_DLL_EXTN
WORKAROUND_COREFX_19110
DEBUG
NETSTANDARD
NETSTANDARD2_0

Not Working (new condition)
----
TRACE
MICROSOFT_BUILD_TASKS
STANDALONEBUILD
FEATURE_DEBUG_LAUNCH
TEST_ISWINDOWS
DEBUG
NETSTANDARD
NETSTANDARD2_0

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

And that fixed it 👍

@@ -45,10 +45,10 @@
</ItemGroup>

<!-- Use deps file from this project with additional dependencies listed instead of the one generated in the MSBuild project -->
<Target Name="UpdateMSBuildDepsFile" AfterTargets="Build" Condition="'$(TargetFramework)' == 'netcoreapp2.1' or '$(TargetFramework)' == 'netstandard2.0'">
<Target Name="UpdateMSBuildDepsFile" AfterTargets="Build" Condition="'$(TargetFramework)' == 'net5.0' or '$(TargetFramework)' == 'netstandard2.0'">
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Compat property functions (and next target condition)

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I tried using "$([MSBuild]::IsTargetFrameworkCompatible('$(TargetFramework)', 'net5.0')) or $([MSBuild]::IsTargetFrameworkCompatible('$(TargetFramework)', 'netstandard2.0')) and hit issues with net472:

C:\src\git\msbuild\src\MSBuild.Bootstrap\MSBuild.Bootstrap.csproj(49,5): error MSB3030: Could not copy the file "C:\src\g
it\msbuild\artifacts\bin\MSBuild.Bootstrap\Debug\net472\MSBuild.Bootstrap.deps.json" because it was not found.

Should I be using a different intrinsic function here?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Ah, unfortunate. That's right but net472 is compatible with netstandard2.0 so it's a bit more complicated. Can it be just compatible with netcoreapp2.1 to catch our core flavors? We're not building netstandard anything anymore right/

Copy link
Member Author

@benvillalobos benvillalobos Jan 13, 2021

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

As I just figured out in the other thread in this PR, yeah there are still projects building netstandard2.0. Looks like it's quite a few:

image

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I don't think there's a good reason to not retarget that. But it doesn't have to be in this PR. Reasons to do it: use new APIs etc in tasks, which is a good thing.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I quickly updated my comment after noticing my query was looking for the one project. There are many that target netstandard2.0. Seems like this should be tracked and figured out in a different issue.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sounds like a plan but let's prioritize that soon after this so we don't forget.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just to clarify, you want to update them to netstandard2.1?

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Tracking here: #6032

The new condition definitely doesn't look any cleaner than before, but it's more future-proof.

src/MSBuild/MSBuild.csproj Show resolved Hide resolved
This reverts commit bcfa960. Context
from Rainer: Arcade has an implicit version for
microsoft.net.compilers.toolset. It's ancient in arcade 1.0, newer in
5.0. We used to depend on the implicit version, so when I moved arcade
  it changed. Rainer recently made it explicit to the older version,
  thus we need to look back at netcoreapp2.1
@benvillalobos benvillalobos added the merge-when-branch-open PRs that are approved, except that there is a problem that means we are not merging stuff right now. label Jan 14, 2021
@benvillalobos
Copy link
Member Author

This merge is blocked pending #6031

Copy link
Member

@Forgind Forgind left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Approving on rainersigwald's behalf.

@benvillalobos benvillalobos merged commit f98579d into dotnet:master Jan 20, 2021
@benvillalobos benvillalobos deleted the arcade-update branch January 20, 2021 00:02
chsienki pushed a commit to chsienki/msbuild that referenced this pull request Jan 28, 2021
Co-authored-by: Rainer Sigwald <raines@microsoft.com>
Now on dotnet 5.0.102
Removed OsEnvironment in favor of IsOSPlatform intrinsic function
Nowarn on SYSLIB0011
Update various build scripts with net5.0 path
Use IsTargetFrameworkCompatible in various locations to simplify checks.
benvillalobos added a commit to benvillalobos/msbuild that referenced this pull request Feb 1, 2021
Co-authored-by: Rainer Sigwald <raines@microsoft.com>
Now on dotnet 5.0.102
Removed OsEnvironment in favor of IsOSPlatform intrinsic function
Nowarn on SYSLIB0011
Update various build scripts with net5.0 path
Use IsTargetFrameworkCompatible in various locations to simplify checks.
benvillalobos added a commit that referenced this pull request Feb 1, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
merge-when-branch-open PRs that are approved, except that there is a problem that means we are not merging stuff right now.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Adopt Arcade 5.0
3 participants