From 255fe2ba2a30a96dcf5f689f39acbcf9f5f7731f Mon Sep 17 00:00:00 2001 From: Dean Ellis Date: Wed, 8 Feb 2023 12:10:24 +0000 Subject: [PATCH 1/2] Add `_AndroidLibraryProjectImportsCache` to `FileWrites` --- .../Xamarin.Android.EmbeddedResource.targets | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/Xamarin.Android.Build.Tasks/Xamarin.Android.EmbeddedResource.targets b/src/Xamarin.Android.Build.Tasks/Xamarin.Android.EmbeddedResource.targets index 8abf79f748b..0cc63a78e83 100644 --- a/src/Xamarin.Android.Build.Tasks/Xamarin.Android.EmbeddedResource.targets +++ b/src/Xamarin.Android.Build.Tasks/Xamarin.Android.EmbeddedResource.targets @@ -46,6 +46,10 @@ This file is used by all project types, including binding projects. OutputImportDirectory="$(_AndroidLibrayProjectIntermediatePath)" /> + + + From d681850a5aeb8393535993592948df134bc8e7da Mon Sep 17 00:00:00 2001 From: Dean Ellis Date: Tue, 14 Feb 2023 13:22:00 +0000 Subject: [PATCH 2/2] Add Unit Test --- .../Tests/Xamarin.Android.Build.Tests/IncrementalBuildTest.cs | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.Android.Build.Tests/IncrementalBuildTest.cs b/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.Android.Build.Tests/IncrementalBuildTest.cs index 1c16ce4feb2..ae7e039c1a7 100644 --- a/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.Android.Build.Tests/IncrementalBuildTest.cs +++ b/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.Android.Build.Tests/IncrementalBuildTest.cs @@ -857,6 +857,7 @@ public void ResolveLibraryProjectImports ([Values (true, false)] bool useAapt2) b.BuildLogFile = "build2.log"; Assert.IsTrue (b.Build (proj), "second build should have succeeded."); + FileAssert.Exists (cacheFile); var actual = ReadCache (cacheFile); CollectionAssert.AreEqual (actual.Jars.Select (j => j.ItemSpec), expected.Jars.Select (j => j.ItemSpec)); @@ -871,6 +872,7 @@ public void ResolveLibraryProjectImports ([Values (true, false)] bool useAapt2) b.BuildLogFile = "build3.log"; Assert.IsTrue (b.Build (proj), "third build should have succeeded."); + FileAssert.Exists (cacheFile); actual = ReadCache (cacheFile); Assert.AreEqual (expected.Jars.Length + 1, actual.Jars.Length, $"{nameof (expected.Jars)} should have one more item"); @@ -885,6 +887,7 @@ public void ResolveLibraryProjectImports ([Values (true, false)] bool useAapt2) // Build with no changes, checking we are skipping targets appropriately b.BuildLogFile = "build4.log"; Assert.IsTrue (b.Build (proj), "fourth build should have succeeded."); + FileAssert.Exists (cacheFile); var targets = new List { "_UpdateAndroidResgen", "_CompileJava",