From dfb2c6db0d42b79d78dd2e01ba1f1975675745b6 Mon Sep 17 00:00:00 2001 From: Viktor Hofer Date: Wed, 23 Apr 2025 21:33:31 +0200 Subject: [PATCH 1/4] [release/9.0] Allow passing additional args to the source-build job (#15770) --- eng/common/core-templates/job/source-build.yml | 2 ++ eng/common/core-templates/steps/source-build.yml | 1 + 2 files changed, 3 insertions(+) diff --git a/eng/common/core-templates/job/source-build.yml b/eng/common/core-templates/job/source-build.yml index c4713c8b6ed..d47f09d58fd 100644 --- a/eng/common/core-templates/job/source-build.yml +++ b/eng/common/core-templates/job/source-build.yml @@ -26,6 +26,8 @@ parameters: # Specifies the build script to invoke to perform the build in the repo. The default # './build.sh' should work for typical Arcade repositories, but this is customizable for # difficult situations. + # buildArguments: '' + # Specifies additional build arguments to pass to the build script. # jobProperties: {} # A list of job properties to inject at the top level, for potential extensibility beyond # container and pool. diff --git a/eng/common/core-templates/steps/source-build.yml b/eng/common/core-templates/steps/source-build.yml index 2915d29bb7f..37133b55b75 100644 --- a/eng/common/core-templates/steps/source-build.yml +++ b/eng/common/core-templates/steps/source-build.yml @@ -79,6 +79,7 @@ steps: ${{ coalesce(parameters.platform.buildScript, './build.sh') }} --ci \ --configuration $buildConfig \ --restore --build --pack $publishArgs -bl \ + ${{ parameters.platform.buildArguments }} \ $officialBuildArgs \ $internalRuntimeDownloadArgs \ $internalRestoreArgs \ From bfbc858ba868b60fffaf7b2150f1d2165b01e786 Mon Sep 17 00:00:00 2001 From: Missy Messa <47990216+missymessa@users.noreply.github.com> Date: Fri, 25 Apr 2025 11:45:16 -0700 Subject: [PATCH 2/4] Update Source Indexer version (#15783) --- eng/common/core-templates/job/source-index-stage1.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/eng/common/core-templates/job/source-index-stage1.yml b/eng/common/core-templates/job/source-index-stage1.yml index 205fb5b3a39..8b833332b3e 100644 --- a/eng/common/core-templates/job/source-index-stage1.yml +++ b/eng/common/core-templates/job/source-index-stage1.yml @@ -1,7 +1,7 @@ parameters: runAsPublic: false - sourceIndexUploadPackageVersion: 2.0.0-20240522.1 - sourceIndexProcessBinlogPackageVersion: 1.0.1-20240522.1 + sourceIndexUploadPackageVersion: 2.0.0-20250425.2 + sourceIndexProcessBinlogPackageVersion: 1.0.1-20250425.2 sourceIndexPackageSource: https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet-tools/nuget/v3/index.json sourceIndexBuildCommand: powershell -NoLogo -NoProfile -ExecutionPolicy Bypass -Command "eng/common/build.ps1 -restore -build -binarylog -ci" preSteps: [] From dba26274ff5a0906a1880443fc3c0466d1a298ae Mon Sep 17 00:00:00 2001 From: Viktor Hofer Date: Mon, 5 May 2025 19:28:15 +0200 Subject: [PATCH 3/4] [release/9.0] Allow disabling SB intermediate restore and prebuilt reporting (#15810) --- .../tools/SourceBuild/AfterSourceBuild.proj | 2 ++ .../SourceBuildArcadeTools.targets | 20 ++++++++++++------- .../tools/Tools.proj | 3 +-- 3 files changed, 16 insertions(+), 9 deletions(-) diff --git a/src/Microsoft.DotNet.Arcade.Sdk/tools/SourceBuild/AfterSourceBuild.proj b/src/Microsoft.DotNet.Arcade.Sdk/tools/SourceBuild/AfterSourceBuild.proj index 6a1fd449dc3..fea978709a5 100644 --- a/src/Microsoft.DotNet.Arcade.Sdk/tools/SourceBuild/AfterSourceBuild.proj +++ b/src/Microsoft.DotNet.Arcade.Sdk/tools/SourceBuild/AfterSourceBuild.proj @@ -7,6 +7,7 @@ $(NuGetPackageRoot)microsoft.dotnet.sourcebuild.tasks\$(MicrosoftDotNetSourceBuildTasksVersion)\build\ + true @@ -62,6 +63,7 @@ true diff --git a/src/Microsoft.DotNet.Arcade.Sdk/tools/SourceBuild/SourceBuildArcadeTools.targets b/src/Microsoft.DotNet.Arcade.Sdk/tools/SourceBuild/SourceBuildArcadeTools.targets index ed8e7dfe820..fedd7157a5b 100644 --- a/src/Microsoft.DotNet.Arcade.Sdk/tools/SourceBuild/SourceBuildArcadeTools.targets +++ b/src/Microsoft.DotNet.Arcade.Sdk/tools/SourceBuild/SourceBuildArcadeTools.targets @@ -11,6 +11,10 @@ + + true + + @@ -45,11 +50,12 @@ - If building in DotNetBuild mode and we're in the inner repo and this is a source-only build --> + '$(DotNetBuildRepo)' == 'true'" /> From 1cfa39f82d00b3659a3d367bc344241946e10681 Mon Sep 17 00:00:00 2001 From: "github-actions[bot]" <41898282+github-actions[bot]@users.noreply.github.com> Date: Mon, 5 May 2025 15:45:43 -0700 Subject: [PATCH 4/4] [release/9.0] Update NuGetRepack to only update version of dependencies from the build (#15811) Since merging roslyn-analyzers into the roslyn repo, Roslyn packages have been generated that include a dependency on Microsoft.CodeAnalysis.Analyzers (a roslyn-analyzer package) with the wrong version. The packages should depend on version 3.11.0 of the M.CA.Analyzers package but the nuspec is being rewritten to require a M.CA.Analyzers package from the same build. This behavior is due to NuGetRepack only using the package name to determine whether to update a dependency version. This PR additionally validates that the dependency version is from the current build prior to updating. Co-authored-by: Joey Robichaud --- .../tasks/src/NuGetVersionUpdater.cs | 14 +++++++++-- .../Microsoft.DotNet.NuGetRepack.Tests.csproj | 9 +++++++ .../tests/ReplacePackagePartsTests.cs | 2 +- .../TestPackageG.1.0.0-beta-12345-01.nupkg | Bin 0 -> 1812 bytes .../TestPackageG.1.0.0-beta-final.nupkg | Bin 0 -> 1813 bytes .../tests/Resources/TestPackageG.1.0.0.nupkg | Bin 0 -> 1799 bytes .../tests/Resources/TestPackageG.nuspec | 23 ++++++++++++++++++ .../tests/TestHelpers/TestResources.cs | 12 +++++++++ .../tests/VersionUpdaterTests.cs | 21 ++++++++++------ 9 files changed, 70 insertions(+), 11 deletions(-) create mode 100644 src/Microsoft.DotNet.NuGetRepack/tests/Resources/TestPackageG.1.0.0-beta-12345-01.nupkg create mode 100644 src/Microsoft.DotNet.NuGetRepack/tests/Resources/TestPackageG.1.0.0-beta-final.nupkg create mode 100644 src/Microsoft.DotNet.NuGetRepack/tests/Resources/TestPackageG.1.0.0.nupkg create mode 100644 src/Microsoft.DotNet.NuGetRepack/tests/Resources/TestPackageG.nuspec diff --git a/src/Microsoft.DotNet.NuGetRepack/tasks/src/NuGetVersionUpdater.cs b/src/Microsoft.DotNet.NuGetRepack/tasks/src/NuGetVersionUpdater.cs index e2dc7c007f4..bd92f54d76d 100644 --- a/src/Microsoft.DotNet.NuGetRepack/tasks/src/NuGetVersionUpdater.cs +++ b/src/Microsoft.DotNet.NuGetRepack/tasks/src/NuGetVersionUpdater.cs @@ -240,7 +240,7 @@ private static void LoadPackages(IEnumerable packagePaths, Dictionary packages, throw new InvalidDataException($"Unexpected dependency version range: '{id}, {versionRangeAttribute.Value}'"); } + var dependencyVersion = versionRange.MinVersion ?? versionRange.MaxVersion; + var oldVersion = ToNuGetVersion(dependentPackage.OldVersion); + + if (dependencyVersion != oldVersion) + { + // The dependency version being referenced was not from + // this build so it does not need to be updated. + continue; + } + var newVersion = ToNuGetVersion(dependentPackage.NewVersion); var newRange = exactVersions ? @@ -356,7 +366,7 @@ private static void SavePackages(Dictionary packages, strin package.SpecificationXml.Save(package.SpecificationStream); package.Package.Close(); - + string finalPath = Path.Combine(outDirectory, package.Id + "." + package.NewVersion + ".nupkg"); try diff --git a/src/Microsoft.DotNet.NuGetRepack/tests/Microsoft.DotNet.NuGetRepack.Tests.csproj b/src/Microsoft.DotNet.NuGetRepack/tests/Microsoft.DotNet.NuGetRepack.Tests.csproj index 3eb2b0b7530..c202f2e3d6a 100644 --- a/src/Microsoft.DotNet.NuGetRepack/tests/Microsoft.DotNet.NuGetRepack.Tests.csproj +++ b/src/Microsoft.DotNet.NuGetRepack/tests/Microsoft.DotNet.NuGetRepack.Tests.csproj @@ -29,6 +29,9 @@ TestPackageF.1.0.0-beta.12345.1.nupkg + + TestPackageG.1.0.0-beta-12345-01.nupkg + TestPackageA.1.0.0-beta-final.nupkg @@ -47,6 +50,9 @@ TestPackageF.1.0.0-beta.final.nupkg + + TestPackageG.1.0.0-beta-final.nupkg + TestPackageA.1.0.0.nupkg @@ -65,6 +71,9 @@ TestPackageF.1.0.0.nupkg + + TestPackageG.1.0.0.nupkg + Signed.1.2.3.nupkg diff --git a/src/Microsoft.DotNet.NuGetRepack/tests/ReplacePackagePartsTests.cs b/src/Microsoft.DotNet.NuGetRepack/tests/ReplacePackagePartsTests.cs index c03085f75c2..028607aa751 100644 --- a/src/Microsoft.DotNet.NuGetRepack/tests/ReplacePackagePartsTests.cs +++ b/src/Microsoft.DotNet.NuGetRepack/tests/ReplacePackagePartsTests.cs @@ -12,7 +12,7 @@ namespace Microsoft.DotNet.Tools.Tests { public class ReplacePackagePartsTests { - [Fact(Skip = "https://github.com/dotnet/arcade/issues/3794")] + [Fact()] public static void ReplaceFile() { var dir = Path.Combine(Path.GetTempPath(), Guid.NewGuid().ToString()); diff --git a/src/Microsoft.DotNet.NuGetRepack/tests/Resources/TestPackageG.1.0.0-beta-12345-01.nupkg b/src/Microsoft.DotNet.NuGetRepack/tests/Resources/TestPackageG.1.0.0-beta-12345-01.nupkg new file mode 100644 index 0000000000000000000000000000000000000000..6b91e8ff943b8f7994a57488975019b12ab20c51 GIT binary patch literal 1812 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 literal 0 HcmV?d00001 diff --git a/src/Microsoft.DotNet.NuGetRepack/tests/Resources/TestPackageG.nuspec b/src/Microsoft.DotNet.NuGetRepack/tests/Resources/TestPackageG.nuspec new file mode 100644 index 00000000000..cda5c56f403 --- /dev/null +++ b/src/Microsoft.DotNet.NuGetRepack/tests/Resources/TestPackageG.nuspec @@ -0,0 +1,23 @@ + + + + TestPackageG + 1.0.0-beta-12345-01 + Microsoft + Microsoft + false + G + + + + + + + + + + + + + + diff --git a/src/Microsoft.DotNet.NuGetRepack/tests/TestHelpers/TestResources.cs b/src/Microsoft.DotNet.NuGetRepack/tests/TestHelpers/TestResources.cs index 82ef8e8fe9d..5f6aa2d08da 100644 --- a/src/Microsoft.DotNet.NuGetRepack/tests/TestHelpers/TestResources.cs +++ b/src/Microsoft.DotNet.NuGetRepack/tests/TestHelpers/TestResources.cs @@ -30,6 +30,10 @@ public static class ReleasePackages private static byte[] s_F; public static byte[] TestPackageF => ResourceLoader.GetOrCreateResource(ref s_F, NameF); public const string NameF = nameof(TestPackageF) + "." + Version + ".nupkg"; + + private static byte[] s_G; + public static byte[] TestPackageG => ResourceLoader.GetOrCreateResource(ref s_G, NameG); + public const string NameG = nameof(TestPackageG) + "." + Version + ".nupkg"; } public static class PreReleasePackages @@ -60,6 +64,10 @@ public static class PreReleasePackages private static byte[] s_F; public static byte[] TestPackageF => ResourceLoader.GetOrCreateResource(ref s_F, NameF); public const string NameF = nameof(TestPackageF) + "." + SemVer2 + ".nupkg"; + + private static byte[] s_G; + public static byte[] TestPackageG => ResourceLoader.GetOrCreateResource(ref s_G, NameG); + public const string NameG = nameof(TestPackageG) + "." + SemVer1 + ".nupkg"; } public static class DailyBuildPackages @@ -90,6 +98,10 @@ public static class DailyBuildPackages private static byte[] s_F; public static byte[] TestPackageF => ResourceLoader.GetOrCreateResource(ref s_F, NameF); public const string NameF = nameof(TestPackageF) + "." + SemVer2 + ".nupkg"; + + private static byte[] s_G; + public static byte[] TestPackageG => ResourceLoader.GetOrCreateResource(ref s_G, NameG); + public const string NameG = nameof(TestPackageG) + "." + SemVer1 + ".nupkg"; } public static class MiscPackages diff --git a/src/Microsoft.DotNet.NuGetRepack/tests/VersionUpdaterTests.cs b/src/Microsoft.DotNet.NuGetRepack/tests/VersionUpdaterTests.cs index 900c55775a1..d4d76da2883 100644 --- a/src/Microsoft.DotNet.NuGetRepack/tests/VersionUpdaterTests.cs +++ b/src/Microsoft.DotNet.NuGetRepack/tests/VersionUpdaterTests.cs @@ -52,46 +52,51 @@ private static void AssertPackagesEqual(byte[] expected, byte[] actual) // change to match the platform that is executing. The reference packages that we use to validate // the SemVer tests were built on Windows which makes these test only valid for Windows. // - // This can be removed when https://github.com/dotnet/corefx/issues/39931 is fixed. - [WindowsOnlyFact(Skip = "https://github.com/dotnet/arcade/issues/3794")] + // This can be removed when https://github.com/dotnet/corefx/issues/39931 is fixed. + [WindowsOnlyFact()] public void TestPackagesSemVer1() { var dir = Path.Combine(Path.GetTempPath(), Guid.NewGuid().ToString()); Directory.CreateDirectory(dir); - string a_daily, b_daily, c_daily, d_daily; + string a_daily, b_daily, c_daily, d_daily, g_daily; File.WriteAllBytes(a_daily = Path.Combine(dir, TestResources.DailyBuildPackages.NameA), TestResources.DailyBuildPackages.TestPackageA); File.WriteAllBytes(b_daily = Path.Combine(dir, TestResources.DailyBuildPackages.NameB), TestResources.DailyBuildPackages.TestPackageB); File.WriteAllBytes(c_daily = Path.Combine(dir, TestResources.DailyBuildPackages.NameC), TestResources.DailyBuildPackages.TestPackageC); File.WriteAllBytes(d_daily = Path.Combine(dir, TestResources.DailyBuildPackages.NameD), TestResources.DailyBuildPackages.TestPackageD); + File.WriteAllBytes(g_daily = Path.Combine(dir, TestResources.DailyBuildPackages.NameG), TestResources.DailyBuildPackages.TestPackageG); var a_pre = Path.Combine(dir, TestResources.PreReleasePackages.NameA); var b_pre = Path.Combine(dir, TestResources.PreReleasePackages.NameB); var c_pre = Path.Combine(dir, TestResources.PreReleasePackages.NameC); var d_pre = Path.Combine(dir, TestResources.PreReleasePackages.NameD); + var g_pre = Path.Combine(dir, TestResources.PreReleasePackages.NameG); var a_rel = Path.Combine(dir, TestResources.ReleasePackages.NameA); var b_rel = Path.Combine(dir, TestResources.ReleasePackages.NameB); var c_rel = Path.Combine(dir, TestResources.ReleasePackages.NameC); var d_rel = Path.Combine(dir, TestResources.ReleasePackages.NameD); + var g_rel = Path.Combine(dir, TestResources.ReleasePackages.NameG); - NuGetVersionUpdater.Run(new[] { a_daily, b_daily, c_daily, d_daily }, dir, VersionTranslation.Release, exactVersions: false); - NuGetVersionUpdater.Run(new[] { a_daily, b_daily, c_daily, d_daily }, dir, VersionTranslation.PreRelease, exactVersions: false); + NuGetVersionUpdater.Run(new[] { a_daily, b_daily, c_daily, d_daily, g_daily }, dir, VersionTranslation.Release, exactVersions: false); + NuGetVersionUpdater.Run(new[] { a_daily, b_daily, c_daily, d_daily, g_daily }, dir, VersionTranslation.PreRelease, exactVersions: false); AssertPackagesEqual(TestResources.ReleasePackages.TestPackageA, File.ReadAllBytes(a_rel)); AssertPackagesEqual(TestResources.ReleasePackages.TestPackageB, File.ReadAllBytes(b_rel)); AssertPackagesEqual(TestResources.ReleasePackages.TestPackageC, File.ReadAllBytes(c_rel)); AssertPackagesEqual(TestResources.ReleasePackages.TestPackageD, File.ReadAllBytes(d_rel)); + AssertPackagesEqual(TestResources.ReleasePackages.TestPackageG, File.ReadAllBytes(g_rel)); AssertPackagesEqual(TestResources.PreReleasePackages.TestPackageA, File.ReadAllBytes(a_pre)); AssertPackagesEqual(TestResources.PreReleasePackages.TestPackageB, File.ReadAllBytes(b_pre)); AssertPackagesEqual(TestResources.PreReleasePackages.TestPackageC, File.ReadAllBytes(c_pre)); AssertPackagesEqual(TestResources.PreReleasePackages.TestPackageD, File.ReadAllBytes(d_pre)); + AssertPackagesEqual(TestResources.PreReleasePackages.TestPackageG, File.ReadAllBytes(g_pre)); Directory.Delete(dir, recursive: true); } - [WindowsOnlyFact(Skip = "https://github.com/dotnet/arcade/issues/3794")] + [WindowsOnlyFact()] public void TestPackagesSemVer2() { var dir = Path.Combine(Path.GetTempPath(), Guid.NewGuid().ToString()); @@ -119,7 +124,7 @@ public void TestPackagesSemVer2() Directory.Delete(dir, recursive: true); } - [WindowsOnlyFact(Skip = "https://github.com/dotnet/arcade/issues/3794")] + [WindowsOnlyFact()] public void TestValidation() { var dir = Path.Combine(Path.GetTempPath(), Guid.NewGuid().ToString()); @@ -158,7 +163,7 @@ public void TestValidation() Directory.Delete(dir, recursive: true); } - [WindowsOnlyFact(Skip = "https://github.com/dotnet/arcade/issues/3794")] + [WindowsOnlyFact()] public void TestDotnetToolValidation() { var dir = Path.Combine(Path.GetTempPath(), Guid.NewGuid().ToString());