From e2d29f8117280341a095c800de5b42e72eb77100 Mon Sep 17 00:00:00 2001 From: Jonathan Peppers Date: Wed, 28 Feb 2024 15:00:02 -0600 Subject: [PATCH 1/2] [tests] fix duplicate sources in `NuGet.config` Context: https://github.com/NuGet/Home/issues/13269#issuecomment-1969883700 In 2f4e01ec, we saw a problem with no-op NuGet restore, no longer being a no-op. So we temporarily disabled the failing `IncrementalFastDeployment` test. It turns out, it might be related to a duplicate source listed in our `NuGet.config` during MSBuild tests: This might have surfaced a bug in NuGet, but for now let's stop emitting duplicate sources? --- .../Tests/Xamarin.ProjectTools/Common/XamarinProject.cs | 7 ------- tests/MSBuildDeviceIntegration/Tests/InstallTests.cs | 1 - 2 files changed, 8 deletions(-) diff --git a/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.ProjectTools/Common/XamarinProject.cs b/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.ProjectTools/Common/XamarinProject.cs index ad00180380e..5ee4b3243db 100644 --- a/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.ProjectTools/Common/XamarinProject.cs +++ b/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.ProjectTools/Common/XamarinProject.cs @@ -395,7 +395,6 @@ public void CopyNuGetConfig (string relativeDirectory) /// /// Updates a NuGet.config based on sources in ExtraNuGetConfigSources - /// If target framework is not the latest or default, sources are added for previous releases /// protected void AddNuGetConfigSources (string nugetConfigPath) { @@ -415,12 +414,6 @@ protected void AddNuGetConfigSources (string nugetConfigPath) ExtraNuGetConfigSources = new List (); } - if (TargetFramework?.IndexOf ("net8.0", StringComparison.OrdinalIgnoreCase) != -1 - || TargetFrameworks?.IndexOf ("net8.0", StringComparison.OrdinalIgnoreCase) != -1) { - ExtraNuGetConfigSources.Add ("https://api.nuget.org/v3/index.json"); - ExtraNuGetConfigSources.Add ("https://pkgs.dev.azure.com/dnceng/public/_packaging/dotnet8/nuget/v3/index.json"); - } - int sourceIndex = 0; foreach (var source in ExtraNuGetConfigSources) { var sourceElement = new XElement ("add"); diff --git a/tests/MSBuildDeviceIntegration/Tests/InstallTests.cs b/tests/MSBuildDeviceIntegration/Tests/InstallTests.cs index f1021c2d15d..f25d948b44c 100644 --- a/tests/MSBuildDeviceIntegration/Tests/InstallTests.cs +++ b/tests/MSBuildDeviceIntegration/Tests/InstallTests.cs @@ -495,7 +495,6 @@ public void LocalizedAssemblies_ShouldBeFastDeployed () [Test] public void IncrementalFastDeployment () { - Assert.Ignore ("https://github.com/NuGet/Home/issues/13269"); AssertCommercialBuild (); var class1src = new BuildItem.Source ("Class1.cs") { From 5d5569472d934f316bc269158f00a0db704691ac Mon Sep 17 00:00:00 2001 From: Jonathan Peppers Date: Thu, 29 Feb 2024 08:54:10 -0600 Subject: [PATCH 2/2] Add `ExtraNuGetConfigSources.Distinct ()` --- .../Tests/Xamarin.ProjectTools/Common/XamarinProject.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.ProjectTools/Common/XamarinProject.cs b/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.ProjectTools/Common/XamarinProject.cs index 5ee4b3243db..601406c0748 100644 --- a/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.ProjectTools/Common/XamarinProject.cs +++ b/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.ProjectTools/Common/XamarinProject.cs @@ -415,7 +415,7 @@ protected void AddNuGetConfigSources (string nugetConfigPath) } int sourceIndex = 0; - foreach (var source in ExtraNuGetConfigSources) { + foreach (var source in ExtraNuGetConfigSources.Distinct ()) { var sourceElement = new XElement ("add"); sourceElement.SetAttributeValue ("key", $"testsource{++sourceIndex}"); sourceElement.SetAttributeValue ("value", source);