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

[main] Update dependencies from microsoft/vstest #42157

Merged
merged 11 commits into from
Jul 31, 2024

Conversation

dotnet-maestro[bot]
Copy link
Contributor

@dotnet-maestro dotnet-maestro bot commented Jul 15, 2024

This pull request updates the following dependencies

From https://github.com/microsoft/vstest

  • Subscription: 4100bcdf-56ee-44e4-6e61-08dc53b93bf1
  • Build: 20240723.1
  • Date Produced: July 23, 2024 4:56:22 PM UTC
  • Commit: 636ce35409e24424388389a0fd47f8b8ece42117
  • Branch: refs/heads/main

…240710.1

Microsoft.SourceBuild.Intermediate.vstest , Microsoft.NET.Test.Sdk , Microsoft.TestPlatform.Build , Microsoft.TestPlatform.CLI
 From Version 17.12.0-preview-24353-03 -> To Version 17.12.0-preview-24360-01
@dotnet-issue-labeler dotnet-issue-labeler bot added Area-CodeFlow untriaged Request triage from a team member labels Jul 15, 2024
Copy link
Contributor Author

Notification for subscribed users from https://github.com/microsoft/vstest:

@nohwnd

Action requested: Please take a look at this failing automated dependency-flow pull request's checks; failures may be related to changes which originated in your repo.

  • This pull request contains changes from your source repo (https://github.com/microsoft/vstest) and seems to have failed checks in this PR. Please take a peek at the failures and comment if they seem relevant to your changes.
  • If you're being tagged in this comment it is due to an entry in the related Maestro Subscription of the Build Asset Registry. If you feel this entry has added your GitHub login or your GitHub team in error, please update the subscription to reflect this.
  • For more details, please read the Arcade Darc documentation

…240710.2

Microsoft.SourceBuild.Intermediate.vstest , Microsoft.NET.Test.Sdk , Microsoft.TestPlatform.Build , Microsoft.TestPlatform.CLI
 From Version 17.12.0-preview-24353-03 -> To Version 17.12.0-preview-24360-02
…240715.1

Microsoft.SourceBuild.Intermediate.vstest , Microsoft.NET.Test.Sdk , Microsoft.TestPlatform.Build , Microsoft.TestPlatform.CLI
 From Version 17.12.0-preview-24360-02 -> To Version 17.12.0-preview-24365-01
@v-wuzhai v-wuzhai enabled auto-merge July 16, 2024 07:31
@akoeplinger
Copy link
Member

/azp run sdk-unified-build

Copy link

Azure Pipelines successfully started running 1 pipeline(s).

dotnet-maestro bot and others added 2 commits July 16, 2024 17:16
…240716.1

Microsoft.SourceBuild.Intermediate.vstest , Microsoft.NET.Test.Sdk , Microsoft.TestPlatform.Build , Microsoft.TestPlatform.CLI
 From Version 17.12.0-preview-24353-03 -> To Version 17.12.0-preview-24366-01
@akoeplinger
Copy link
Member

@nohwnd the VMR build failure looks related to microsoft/vstest#5134

      Completed Verify-Nuget-Packages.
      No vstest.console.exe was found.
      At D:\a\_work\1\vmr\src\vstest\eng\verify-nupkgs.ps1:286 char:9
      +         throw "No vstest.console.exe was found."
      +         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
          + CategoryInfo          : OperationStopped: (No vstest.console.exe was found.:String) [], RuntimeException
          + FullyQualifiedErrorId : No vstest.console.exe was found.

…240722.2

Microsoft.SourceBuild.Intermediate.vstest , Microsoft.NET.Test.Sdk , Microsoft.TestPlatform.Build , Microsoft.TestPlatform.CLI
 From Version 17.12.0-preview-24353-03 -> To Version 17.12.0-preview-24372-02
…240722.3

Microsoft.SourceBuild.Intermediate.vstest , Microsoft.NET.Test.Sdk , Microsoft.TestPlatform.Build , Microsoft.TestPlatform.CLI
 From Version 17.12.0-preview-24353-03 -> To Version 17.12.0-preview-24372-03
@akoeplinger
Copy link
Member

/azp run dotnet-sdk-public-ci,sdk-source-build,sdk-unified-build

Copy link

Azure Pipelines successfully started running 3 pipeline(s).

@nagilson
Copy link
Member

@nohwnd we're still seeing an error with the vstest log file, (the binlog itself is not particularly helpful either), may you please take a look?

@nohwnd
Copy link
Member

nohwnd commented Jul 23, 2024

vstest.log or this entry in binlog:

image

    Verifying package 'Microsoft.TestPlatform.TranslationLayer.17.12.0-preview-24372-03'.
    Completed Verify-Nuget-Packages.
    Some files contain '+' in the ProductVersion, this breaks DTAAgent in AzDO.
    At D:\a\_work\1\vmr\src\vstest\eng\verify-nupkgs.ps1:292 char:13
    +             throw "Some files contain '+' in the ProductVersion, this ...
    +             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
        + CategoryInfo          : OperationStopped: (Some files cont...AAgent in AzDO.:String) [], RuntimeException
        + FullyQualifiedErrorId : Some files contain '+' in the ProductVersion, this breaks DTAAgent in AzDO.
     
  D:\a\_work\1\vmr\src\vstest\eng\AfterSolutionBuild.targets(8,5): error MSB3073: The command "powershell -NoProfile -NoLogo -ExecutionPolicy Bypass D:\a\_work\1\vmr\src\vstest\eng\\verify-nupkgs.ps1 -configuration Release -versionPrefix 17.12.0 -currentBranch dev" exited with code 1. [D:\a\_work\1\vmr\artifacts\source-built-sdks\Microsoft.DotNet.Arcade.Sdk\tools\AfterSolutionBuild.proj]
  ##vso[task.logissue type=error;sourcepath=D:\a\_work\1\vmr\src\vstest\eng\AfterSolutionBuild.targets;linenumber=8;columnnumber=5;code=MSB3073;](NETCORE_ENGINEERING_TELEMETRY=Build) The command "powershell -NoProfile -NoLogo -ExecutionPolicy Bypass D:\a\_work\1\vmr\src\vstest\eng\\verify-nupkgs.ps1 -configuration Release -versionPrefix 17.12.0 -currentBranch dev" exited with code 1.
  
  Build FAILED.

We are checking that vstest.console.dll is not shipped with semver2 version, because having a + in version breaks azure devops agent (they accept only semver1).

I see that the SemanticVersioningV1=true is provided to the build, and that we set it explicitly in the project, so I am not sure what is going on. I've improved the message to see what the version is, maybe that will have more clues.

Is there an env variable I can use to conditionally skip the check for VMR build?

@akoeplinger
Copy link
Member

Is there an env variable I can use to conditionally skip the check for VMR build?

You can use the DotNetBuild true/false msbuild property and pass that to the script.

@nagilson
Copy link
Member

@dotnet/product-construction is the vmr/unified build adding + to the versions?

…240723.1

Microsoft.SourceBuild.Intermediate.vstest , Microsoft.NET.Test.Sdk , Microsoft.TestPlatform.Build , Microsoft.TestPlatform.CLI
 From Version 17.12.0-preview-24353-03 -> To Version 17.12.0-preview-24373-01
@nagilson
Copy link
Member

@dotnet/product-construction
roslyn-analyzers are failing in the VMR. May you PTAL?

/vmr/.dotnet/sdk/9.0.100-preview.7.24357.2/Roslyn/Microsoft.CSharp.Core.targets(89,5): error MSB6006: "csc.dll" exited with code 139. [/vmr/src/roslyn-analyzers/src/Test.Utilities/Test.Utilities.csproj]

@Forgind
Copy link
Member

Forgind commented Jul 30, 2024

@dotnet/product-construction, ping

@ellahathaway
Copy link
Member

/vmr/.dotnet/sdk/9.0.100-preview.7.24357.2/Roslyn/Microsoft.CSharp.Core.targets(89,5): error MSB6006: "csc.dll" exited with code 139. [/vmr/src/roslyn-analyzers/src/Test.Utilities/Test.Utilities.csproj]

May be dotnet/runtime#104123.

@ericstj
Copy link
Member

ericstj commented Jul 30, 2024

This failure looks blocking:

      At D:\a\_work\1\vmr\src\vstest\eng\verify-nupkgs.ps1:292 char:13
      +             throw "$_ contains '+' in the ProductVersion $($_.Version ...
      +             ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
          + CategoryInfo          : OperationStopped: (vstest.console....AAgent in AzDO.:String) [], RuntimeException
          + FullyQualifiedErrorId : vstest.console.dll contains '+' in the ProductVersion 17.12.0-preview-24373-01+e053d5b5b

@nohwnd seems you added it in microsoft/vstest@7082a4d

edit: I see @nohwnd was already involved above. My best guess here is we need to tweek how VMR builds vstest to match how VSTest itself builds.

@ericstj
Copy link
Member

ericstj commented Jul 31, 2024

Here's the build log: https://artprodcus3.artifacts.visualstudio.com/A6fcc92e5-73a7-4f88-8d13-d9045b45fb27/cbb18261-c48f-4abb-8651-8cdcb5474649/_apis/artifact/cGlwZWxpbmVhcnRpZmFjdDovL2RuY2VuZy1wdWJsaWMvcHJvamVjdElkL2NiYjE4MjYxLWM0OGYtNGFiYi04NjUxLThjZGNiNTQ3NDY0OS9idWlsZElkLzc1OTczNC9hcnRpZmFjdE5hbWUvV2luZG93c194NjRfQnVpbGRMb2dzX0F0dGVtcHQx0/content?format=file&subPath=%2Fsrc%2Fvstest%2Fartifacts%2Flog%2FRelease%2Fsource-inner-build.binlog

If you have a look, the reason the build is failing is because ProductVersion is getting source info appended.

That happens because the SDK does it:

<Target Name="AddSourceRevisionToInformationalVersion"
DependsOnTargets="GetAssemblyVersion;InitializeSourceControlInformation"
Condition="'$(SourceControlInformationFeatureSupported)' == 'true' and '$(IncludeSourceRevisionInInformationalVersion)' == 'true'">
<PropertyGroup Condition="'$(SourceRevisionId)' != ''">
<!-- Follow SemVer 2.0 rules -->
<_InformationalVersionContainsPlus>false</_InformationalVersionContainsPlus>
<_InformationalVersionContainsPlus Condition="$(InformationalVersion.Contains('+'))">true</_InformationalVersionContainsPlus>
<InformationalVersion Condition="!$(_InformationalVersionContainsPlus)">$(InformationalVersion)+$(SourceRevisionId)</InformationalVersion>
<InformationalVersion Condition="$(_InformationalVersionContainsPlus)">$(InformationalVersion).$(SourceRevisionId)</InformationalVersion>
</PropertyGroup>
</Target>

And it's the default, it's been that way forever:

<IncludeSourceRevisionInInformationalVersion Condition="'$(IncludeSourceRevisionInInformationalVersion)' == ''">true</IncludeSourceRevisionInInformationalVersion>

However, in VSTest build pipelines this is disabled here: https://github.com/microsoft/vstest/blob/636ce35409e24424388389a0fd47f8b8ece42117/azure-pipelines-official.yml#L114

So I think we just need to make sure we pass the same here (or better yet, VSTest should encode this setting in it's own targets rather than making folks pass it in).

@ericstj ericstj requested review from a team as code owners July 31, 2024 02:33
@MichaelSimons
Copy link
Member

(or better yet, VSTest should encode this setting in it's own targets rather than making folks pass it in).

Should that be done right up front instead of setting it in the repo-project? Is there urgency to get this flow in now?

@v-wuzhai v-wuzhai merged commit 4681a92 into main Jul 31, 2024
40 of 41 checks passed
@v-wuzhai v-wuzhai deleted the darc-main-21bb1e3f-96a4-44a7-a57b-17abf8806860 branch July 31, 2024 13:34
@ericstj
Copy link
Member

ericstj commented Jul 31, 2024

(or better yet, VSTest should encode this setting in it's own targets rather than making folks pass it in).

Should that be done right up front instead of setting it in the repo-project? Is there urgency to get this flow in now?

I don't think we should block on it, it's more of a general principle- we should avoid encoding required configuration in YML.

@ericstj
Copy link
Member

ericstj commented Jul 31, 2024

I filed an issue for VSTest.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Area-CodeFlow Area-VMR untriaged Request triage from a team member
Projects
None yet
Development

Successfully merging this pull request may close these issues.

9 participants