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

[release/5.0.3xx] Update dependencies from dotnet/msbuild #16185

Conversation

dotnet-maestro[bot]
Copy link
Contributor

@dotnet-maestro dotnet-maestro bot commented Mar 3, 2021

This pull request updates the following dependencies

From https://github.com/dotnet/msbuild

  • Subscription: 08d8569c-a921-4400-1fc7-08d8c8766580
  • Build: 20210304.5
  • Date Produced: 3/4/2021 8:22 PM
  • Commit: 0def9d13d74d075e62851630fe296bb019e401a1
  • Branch: refs/heads/master

…0303.3

Microsoft.Build.Localization , Microsoft.Build
 From Version 16.10.0-preview-21126-01 -> To Version 16.10.0-preview-21153-03
@dotnet-issue-labeler
Copy link

I couldn't figure out the best area label to add to this PR. If you have write-permissions please help me learn by adding exactly one area label.

Copy link
Member

@v-wuzhai v-wuzhai left a comment

Choose a reason for hiding this comment

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

@sfoslund @wli3 Who should we contact to take a look at this PR?

…0304.4

Microsoft.Build.Localization , Microsoft.Build
 From Version 16.10.0-preview-21126-01 -> To Version 16.10.0-preview-21154-04
@wli3
Copy link

wli3 commented Mar 4, 2021

@agocke @Forgind @benvillalobos single file test failed, could you look into this?
Microsoft.NET.Publish.Tests.GivenThatWeWantToPublishASingleFileApp.It_generates_a_single_file_with_native_binaries_for_self_contained_apps

@agocke
Copy link
Member

agocke commented Mar 4, 2021

We haven't made any changes to MSBuild that I know of, so my guess is that it's not a problem in runtime components

…0304.5

Microsoft.Build.Localization , Microsoft.Build
 From Version 16.10.0-preview-21126-01 -> To Version 16.10.0-preview-21154-05
@wli3
Copy link

wli3 commented Mar 5, 2021

@Forgind @benvillalobos could you look into this issue soon?

@Forgind
Copy link
Member

Forgind commented Mar 7, 2021

I looked at the test, but I wasn't sure what it was doing beyond that it was publishing something, and when I tried debugging, it came up with build errors?
They seemed to mostly look like:

Severity	Code	Description	Project	File	Line	Suppression State
Error	CS0006	Metadata file 'C:\Users\forgind\Documents\GitHub\sdk\artifacts\bin\Microsoft.NET.TestFramework\Debug\net472\Microsoft.NET.TestFramework.dll' could not be found	Microsoft.NET.Sdk.WorkloadManifestReader.Tests (net472)	C:\Users\forgind\Documents\GitHub\sdk\src\Tests\Microsoft.NET.Sdk.WorkloadManifestReader.Tests\CSC	1	Active
Error	NETSDK1045	The current .NET SDK does not support targeting .NET 6.0.  Either target .NET 5.0 or lower, or use a version of the .NET SDK that supports .NET 6.0.	Microsoft.NET.Sdk.Razor.Tasks	C:\Program Files\dotnet\sdk\5.0.200-preview.21077.7\Sdks\Microsoft.NET.Sdk\targets\Microsoft.NET.TargetFrameworkInference.targets	141	

Does that mean anything to you?

@wli3
Copy link

wli3 commented Mar 9, 2021

@Forgind

CoreCompile target) ->
CSC : error CS2001: Source file 'C:\h\w\A26D08EC\t\dotnetSdkTests\b0ani4nv.w30\It_warns_when---89ACFD43\ConsoleApp\ConsoleApp.cs' could not be found. [C:\h\w\A26D08EC\t\dotnetSdkTests\b0ani4nv.w30\It_warns_when---89ACFD43\ConsoleApp\ConsoleApp.csproj]

the actual error instead of the warning is this.

@wli3
Copy link

wli3 commented Mar 9, 2021

@agocke could you work with @Forgind to unblock this test? Since you are the owner of this test. I'll delete the test if you think it is no longer important.

Sorry that SDK repo gets many teams' scenarios. We can no longer keep up investiating non SDK tests.

@agocke
Copy link
Member

agocke commented Mar 9, 2021

There appears to be a real bug here. I looked at the test It_generates_a_single_file_with_native_binaries_for_self_contained_apps and the test project seems to have the code

<Content Include="$(MSBuildThisFileDirectory)\SmallNameDir\**\*.*" >
      <CopyToPublishDirectory>PreserveNewest</CopyToPublishDirectory>
    </Content>

and a file SmallNameDir/word, but when the project is run with publish, the publish directory doesn't contain that file. I can't say what's going wrong, but it's certainly different.

@benvillalobos
Copy link
Member

benvillalobos commented Mar 9, 2021

So this is the commit that caused the regression:dotnet/msbuild@202f872
Which points to this PR: dotnet/msbuild@202f872

/cc: @ladipro and @rokonec .

Here's the repro I used:

<Project Sdk="Microsoft.NET.Sdk">

  <PropertyGroup>
    <OutputType>Exe</OutputType>
    <TargetFramework>net5.0</TargetFramework>
    <RootNamespace>console_template</RootNamespace>
  </PropertyGroup>

  <ItemGroup>
    <Content Include="$(MSBuildThisFileDirectory)\SmallNameDir\**\*.*" >
      <CopyToPublishDirectory>Always</CopyToPublishDirectory>
    </Content>
  </ItemGroup>

</Project>

Folder structure should be:
project.csproj
/SmallNameDir
word (really any file)

repro cmd: msbuild /t:publish and notice that in bin/debug/net5.0/Publish/SmallNameDir there were no copied files.

We should seriously consider reverting the PR or if it's a quick fix then patch it. Not being able to merge into the SDK should put us 'on hold' until everything can flow.

ladipro added a commit to dotnet/msbuild that referenced this pull request Mar 10, 2021
### Context

#6151 introduced a regression where `FileMatcher` takes the pattern `*.*` too literally and returns only files that have a dot in the name. `*.*` should be special cased to mean all files in the directory, with or without an extension.

### Changes Made

Fixed the regression by explicitly testing for `*.*` and added test coverage.

### Testing

Existing and modified unit tests, repro project from dotnet/sdk#16185 (comment).

### Notes

Testing for both `*` and `*.*` is already happening elsewhere in the class. MSBuild calls `Directory.EnumerateFileSystemEntries` which under the covers uses `MatchType.Win32` and causes this behavior of unifying `*.*` with `*` on all platforms.
@rokonec
Copy link
Contributor

rokonec commented Mar 11, 2021

Closing to pick up fix from msbuild/master

@rokonec rokonec closed this Mar 11, 2021
@dotnet-maestro dotnet-maestro bot deleted the darc-release/5.0.3xx-d4419f40-f263-419d-9058-3b1b31cfc35c branch March 11, 2021 09:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

6 participants