dotnet / source-build

A repository to track efforts to produce a source tarball of the .NET Core SDK and all its components
MIT License
265 stars 132 forks source link

vmr rc2 tag has a version mismatch with Microsoft's build causing failures to find NuGet packages #3673

Closed tmds closed 5 months ago

tmds commented 1 year ago

Microsoft's rc2 build has:

<BundledNETCoreAppPackageVersion>8.0.0-rc.2.23479.6</BundledNETCoreAppPackageVersion>

Source-build from the vmr rc2 tag has:

<BundledNETCoreAppPackageVersion>8.0.0-rc.2.23475.17</BundledNETCoreAppPackageVersion>

This version mismatch causes the source-built rc2 to look for NuGet package version that don't exist. For example:

error NU1102: Unable to find package Microsoft.NETCore.App.Host.linux-x64 with version (= 8.0.0-rc.2.23475.17)

cc @MichaelSimons @Swapnali911 @omajid

dotnet-issue-labeler[bot] commented 1 year ago

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

omajid commented 1 year ago

@MichaelSimons with RC2 already being tagged/released, is there a planned fix for this? Will this be a problem in GA?

I expected smoke tests (which run dotnet publish) to have caught this, but somehow they didn't. Should we add some sort of tests to compare the embedded versions in Microsoft.NETCoreSdk.BundledVersions.props?

MichaelSimons commented 1 year ago

@MichaelSimons with RC2 already being tagged/released, is there a planned fix for this? Will this be a problem in GA?

I expect this to be fixed with today's release and not be a problem in GA.

@mthalman - Can you investigate why the smoke tests did not catch this and ensure we have a test for this?

mthalman commented 1 year ago

@tmds - What was your scenario that caused you to encounter this issue?

MichaelSimons commented 1 year ago

I expect this to be fixed with today's release and not be a problem in GA.

I misspoke. Rc2 is not re-releasing today, just 6.0/7.0

omajid commented 1 year ago
$ ~/temp/dotnet-8-rc2/dotnet --info
.NET SDK:
 Version:   8.0.100-rc.2.23502.1
 Commit:    0abacfc2b6

Runtime Environment:
 OS Name:     fedora
 OS Version:  38
 OS Platform: Linux
 RID:         fedora.38-x64
 Base Path:   /home/omajid/temp/dotnet-8-rc2/sdk/8.0.100-rc.2.23502.1/

.NET workloads installed:
There are no installed workloads to display.

Host:
  Version:      8.0.0-rc.2.23475.17
  Architecture: x64
  Commit:       0b25e38ad3

.NET SDKs installed:
  8.0.100-rc.2.23502.1 [/home/omajid/temp/dotnet-8-rc2/sdk]

.NET runtimes installed:
  Microsoft.AspNetCore.App 8.0.0-rc.2.23480.2 [/home/omajid/temp/dotnet-8-rc2/shared/Microsoft.AspNetCore.App]
  Microsoft.NETCore.App 8.0.0-rc.2.23475.17 [/home/omajid/temp/dotnet-8-rc2/shared/Microsoft.NETCore.App]

Other architectures found:
  None

Environment variables:
  Not set

global.json file:
  Not found

Learn more:
  https://aka.ms/dotnet/info

Download .NET:
  https://aka.ms/dotnet/download
$ ~/temp/dotnet-8-rc2/dotnet new console

Welcome to .NET 8.0!
---------------------
SDK Version: 8.0.100-rc.2.23502.1

----------------
Installed an ASP.NET Core HTTPS development certificate.
To trust the certificate, view the instructions: https://aka.ms/dotnet-https-linux

----------------
Write your first app: https://aka.ms/dotnet-hello-world
Find out what's new: https://aka.ms/dotnet-whats-new
Explore documentation: https://aka.ms/dotnet-docs
Report issues and find source on GitHub: https://github.com/dotnet/core
Use 'dotnet --help' to see available commands or visit: https://aka.ms/dotnet-cli
--------------------------------------------------------------------------------------
Warning: Failed to read or parse localization file /home/omajid/temp/dotnet-8-rc2/templates/8.0.0-rc.2.23480.2/microsoft.dotnet.web.projecttemplates.8.0.8.0.0-rc.2.23480.2.nupkg(/BlazorWeb-CSharp/.template.config/localize/templatestrings.es.json), it will be skipped from further processing.
Warning: Failed to read or parse localization file /home/omajid/temp/dotnet-8-rc2/templates/8.0.0-rc.2.23480.2/microsoft.dotnet.web.projecttemplates.8.0.8.0.0-rc.2.23480.2.nupkg(/BlazorWeb-CSharp/.template.config/localize/templatestrings.de.json), it will be skipped from further processing.
Warning: Failed to read or parse localization file /home/omajid/temp/dotnet-8-rc2/templates/8.0.0-rc.2.23480.2/microsoft.dotnet.web.projecttemplates.8.0.8.0.0-rc.2.23480.2.nupkg(/BlazorWeb-CSharp/.template.config/localize/templatestrings.cs.json), it will be skipped from further processing.
Warning: Failed to read or parse localization file /home/omajid/temp/dotnet-8-rc2/templates/8.0.0-rc.2.23480.2/microsoft.dotnet.web.projecttemplates.8.0.8.0.0-rc.2.23480.2.nupkg(/BlazorWeb-CSharp/.template.config/localize/templatestrings.fr.json), it will be skipped from further processing.
Warning: Failed to read or parse localization file /home/omajid/temp/dotnet-8-rc2/templates/8.0.0-rc.2.23480.2/microsoft.dotnet.web.projecttemplates.8.0.8.0.0-rc.2.23480.2.nupkg(/BlazorWeb-CSharp/.template.config/localize/templatestrings.en.json), it will be skipped from further processing.
Warning: Failed to read or parse localization file /home/omajid/temp/dotnet-8-rc2/templates/8.0.0-rc.2.23480.2/microsoft.dotnet.web.projecttemplates.8.0.8.0.0-rc.2.23480.2.nupkg(/BlazorWeb-CSharp/.template.config/localize/templatestrings.it.json), it will be skipped from further processing.
Warning: Failed to read or parse localization file /home/omajid/temp/dotnet-8-rc2/templates/8.0.0-rc.2.23480.2/microsoft.dotnet.web.projecttemplates.8.0.8.0.0-rc.2.23480.2.nupkg(/BlazorWeb-CSharp/.template.config/localize/templatestrings.pl.json), it will be skipped from further processing.
Warning: Failed to read or parse localization file /home/omajid/temp/dotnet-8-rc2/templates/8.0.0-rc.2.23480.2/microsoft.dotnet.web.projecttemplates.8.0.8.0.0-rc.2.23480.2.nupkg(/BlazorWeb-CSharp/.template.config/localize/templatestrings.pt-BR.json), it will be skipped from further processing.
Warning: Failed to read or parse localization file /home/omajid/temp/dotnet-8-rc2/templates/8.0.0-rc.2.23480.2/microsoft.dotnet.web.projecttemplates.8.0.8.0.0-rc.2.23480.2.nupkg(/BlazorWeb-CSharp/.template.config/localize/templatestrings.ko.json), it will be skipped from further processing.
Warning: Failed to read or parse localization file /home/omajid/temp/dotnet-8-rc2/templates/8.0.0-rc.2.23480.2/microsoft.dotnet.web.projecttemplates.8.0.8.0.0-rc.2.23480.2.nupkg(/BlazorWeb-CSharp/.template.config/localize/templatestrings.ja.json), it will be skipped from further processing.
Warning: Failed to read or parse localization file /home/omajid/temp/dotnet-8-rc2/templates/8.0.0-rc.2.23480.2/microsoft.dotnet.web.projecttemplates.8.0.8.0.0-rc.2.23480.2.nupkg(/BlazorWeb-CSharp/.template.config/localize/templatestrings.zh-Hant.json), it will be skipped from further processing.
Warning: Failed to read or parse localization file /home/omajid/temp/dotnet-8-rc2/templates/8.0.0-rc.2.23480.2/microsoft.dotnet.web.projecttemplates.8.0.8.0.0-rc.2.23480.2.nupkg(/BlazorWeb-CSharp/.template.config/localize/templatestrings.tr.json), it will be skipped from further processing.
Warning: Failed to read or parse localization file /home/omajid/temp/dotnet-8-rc2/templates/8.0.0-rc.2.23480.2/microsoft.dotnet.web.projecttemplates.8.0.8.0.0-rc.2.23480.2.nupkg(/BlazorWeb-CSharp/.template.config/localize/templatestrings.zh-Hans.json), it will be skipped from further processing.
Warning: Failed to read or parse localization file /home/omajid/temp/dotnet-8-rc2/templates/8.0.0-rc.2.23480.2/microsoft.dotnet.web.projecttemplates.8.0.8.0.0-rc.2.23480.2.nupkg(/BlazorWeb-CSharp/.template.config/localize/templatestrings.ru.json), it will be skipped from further processing.
The template "Console App" was created successfully.

Processing post-creation actions...
Restoring /home/omajid/temp/foo/foo.csproj:
  Determining projects to restore...
  Restored /home/omajid/temp/foo/foo.csproj (in 648 ms).
Restore succeeded.

$ ~/temp/dotnet-8-rc2/dotnet publish -r linux-x64
MSBuild version 17.8.0+6cdef4241 for .NET
  Determining projects to restore...
/home/omajid/temp/foo/foo.csproj : error NU1102: Unable to find package Microsoft.NETCore.App.Host.linux-x64 with version (= 8.0.0-rc.2.23475.17)
/home/omajid/temp/foo/foo.csproj : error NU1102:   - Found 140 version(s) in nuget.org [ Nearest version: 8.0.0-rc.2.23479.6 ]
  Failed to restore /home/omajid/temp/foo/foo.csproj (in 539 ms).
mthalman commented 1 year ago

$ ~/temp/dotnet-8-rc2/dotnet publish -r linux-x64

Ok, we don't have a test scenario for publishing with a portable RID.

omajid commented 1 year ago

Rc2 is not re-releasing today, just 6.0/7.0

What is the path forward? Will RC 2 remain in this state and the fixes (if any) will be only in GA?

omajid commented 1 year ago

@mthalman said:

Ok, we don't have a test scenario for publishing with a portable RID.

It also shows up in other scenarios like:

mthalman commented 1 year ago

Here's a patch which fixes this:

From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
From: Matt Thalman <mthalman@microsoft.com>
Date: Tue, 24 Oct 2023 16:20:26 -0500
Subject: [PATCH] Use correct runtime package version

---
 prereqs/git-info/AllRepoVersions.props | 2 +-
 prereqs/git-info/runtime.props         | 4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/prereqs/git-info/AllRepoVersions.props b/prereqs/git-info/AllRepoVersions.props
index 79a789e1cd..a3f3ccf094 100644
--- a/prereqs/git-info/AllRepoVersions.props
+++ b/prereqs/git-info/AllRepoVersions.props
@@ -32,7 +32,7 @@
     <roslynGitCommitHash>bdd9c5ba66b00beebdc3516acc5e29b83efd89af</roslynGitCommitHash>
     <roslynOutputPackageVersion>4.8.0-3.23471.11</roslynOutputPackageVersion>
     <runtimeGitCommitHash>0b25e38ad32a69cd83ae246104b32449203cc71c</runtimeGitCommitHash>
-    <runtimeOutputPackageVersion>8.0.0-rc.2.23475.17</runtimeOutputPackageVersion>
+    <runtimeOutputPackageVersion>8.0.0-rc.2.23479.6</runtimeOutputPackageVersion>
     <sdkGitCommitHash>67e671f384bee6937630b52b02cc78e69b27e280</sdkGitCommitHash>
     <sdkOutputPackageVersion>8.0.100-rc.2.23480.5</sdkOutputPackageVersion>
     <sourcebuildexternalsGitCommitHash>6dbf3aaa0fc9664df86462f5c70b99800934fccd</sourcebuildexternalsGitCommitHash>
diff --git a/prereqs/git-info/runtime.props b/prereqs/git-info/runtime.props
index 546469c3a0..20c2bf8840 100644
--- a/prereqs/git-info/runtime.props
+++ b/prereqs/git-info/runtime.props
@@ -2,8 +2,8 @@
 <Project>
   <PropertyGroup>
     <GitCommitHash>0b25e38ad32a69cd83ae246104b32449203cc71c</GitCommitHash>
-    <OfficialBuildId>20230925.17</OfficialBuildId>
-    <OutputPackageVersion>8.0.0-rc.2.23475.17</OutputPackageVersion>
+    <OfficialBuildId>20230929.6</OfficialBuildId>
+    <OutputPackageVersion>8.0.0-rc.2.23479.6</OutputPackageVersion>
     <PreReleaseVersionLabel>rc.2</PreReleaseVersionLabel>
     <IsStable>false</IsStable>
   </PropertyGroup>
MichaelSimons commented 1 year ago

[Triage] https://github.com/dotnet/arcade-services/issues/3010 is going to be used to track the underlying infrastructure issue that caused this situation. This issue will be used to ensure a smoke test is added to detect/prevent this situation from occurring.

tmds commented 5 months ago

Closing stale issue.