From 68b18619923928c074246124829677d99acdd654 Mon Sep 17 00:00:00 2001 From: Peter Collins Date: Thu, 16 Nov 2023 15:28:46 -0500 Subject: [PATCH 01/10] Bump to xat 218 --- external/xamarin-android-tools | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/external/xamarin-android-tools b/external/xamarin-android-tools index 8d382816bdd..d6f1453f58c 160000 --- a/external/xamarin-android-tools +++ b/external/xamarin-android-tools @@ -1 +1 @@ -Subproject commit 8d382816bdd3b62107704dbab47dabd43d4a997c +Subproject commit d6f1453f58c9642614c5db1a0613866d78010a8e From f1c712ab03c83c5011dcebcf8b97f673450b4755 Mon Sep 17 00:00:00 2001 From: Peter Collins Date: Thu, 16 Nov 2023 17:27:53 -0500 Subject: [PATCH 02/10] Test android-sdk-installer PR 892 --- .external | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.external b/.external index 63fe115fdf6..cc592bc67d5 100644 --- a/.external +++ b/.external @@ -1,2 +1,2 @@ -xamarin/monodroid:main@4d3ede83f699e1d127fed4a18de992819983d715 +xamarin/monodroid:dev/pjc/tools-34@a8d077f08c45df825b47055022bdcc3ba86f7b22 mono/mono:2020-02@6dd9def57ce969ca04a0ecd9ef72c0a8f069112d From 8a824feee22b7600bccfd71b18d2d7aef263c94a Mon Sep 17 00:00:00 2001 From: Peter Collins Date: Tue, 21 Nov 2023 18:25:41 -0500 Subject: [PATCH 03/10] Bump tools versions, update Lint --- Configuration.props | 6 +++--- .../automation/azure-pipelines-nightly.yaml | 4 +--- build-tools/automation/azure-pipelines.yaml | 6 +++--- .../yaml-templates/build-windows.yaml | 4 ++-- .../setup-test-environment.yaml | 6 +++--- build-tools/scripts/TestApks.targets | 3 --- src/Xamarin.Android.Build.Tasks/Tasks/Lint.cs | 20 ++++++++++++++++++- .../Tasks/ResolveSdksTask.cs | 9 ++++++++- .../Xamarin.Android.Build.Tests/BuildTest.cs | 13 ++++++------ .../Xamarin.Android.Common.targets | 1 + .../Xamarin.Android.Tooling.targets | 1 + 11 files changed, 48 insertions(+), 25 deletions(-) diff --git a/Configuration.props b/Configuration.props index 1c9a42b5e0b..f3878342a6d 100644 --- a/Configuration.props +++ b/Configuration.props @@ -122,7 +122,7 @@ 34 34.0.0 - 34.0.1 + 34.0.5 1.15.1 $(NUGET_PACKAGES) $(userprofile)\.nuget\packages @@ -157,8 +157,8 @@ avdmanager.bat $(AndroidSdkFullPath)\tools $(AndroidToolPath)\bin - 7.0 - 8512546_latest + 11.0 + 10406996_latest $(AndroidSdkFullPath)\cmdline-tools\$(CommandLineToolsFolder)\bin 9364964 diff --git a/build-tools/automation/azure-pipelines-nightly.yaml b/build-tools/automation/azure-pipelines-nightly.yaml index a67b701fbb3..19c25bb46fa 100644 --- a/build-tools/automation/azure-pipelines-nightly.yaml +++ b/build-tools/automation/azure-pipelines-nightly.yaml @@ -114,6 +114,7 @@ stages: restoreNUnitConsole: false updateMono: false xaprepareScenario: EmulatorTestDependencies + jdkTestFolder: $(JAVA_HOME_11_X64) - template: yaml-templates/run-dotnet-preview.yaml parameters: @@ -122,9 +123,6 @@ stages: displayName: prepare java.interop $(XA.Build.Configuration) continueOnError: false - - script: echo "##vso[task.setvariable variable=Java8SdkDirectory]$JAVA_HOME_8_X64" - displayName: set Java8SdkDirectory - - template: yaml-templates/start-stop-emulator.yaml parameters: specificImage: true diff --git a/build-tools/automation/azure-pipelines.yaml b/build-tools/automation/azure-pipelines.yaml index 3488fb0bbb2..8d28320f2f4 100644 --- a/build-tools/automation/azure-pipelines.yaml +++ b/build-tools/automation/azure-pipelines.yaml @@ -350,9 +350,9 @@ stages: forceReinstallCredentialProvider: true - script: | - echo ##vso[task.setvariable variable=JI_JAVA_HOME]%JAVA_HOME_11_X64% - echo ##vso[task.setvariable variable=JAVA_HOME]%JAVA_HOME_11_X64% - displayName: set JI_JAVA_HOME, JAVA_HOME + echo ##vso[task.setvariable variable=JI_JAVA_HOME]%JAVA_HOME_17_X64% + echo ##vso[task.setvariable variable=JAVA_HOME]%JAVA_HOME_17_X64% + displayName: set JI_JAVA_HOME, JAVA_HOME to $(JAVA_HOME_17_X64) - task: DownloadPipelineArtifact@2 inputs: diff --git a/build-tools/automation/yaml-templates/build-windows.yaml b/build-tools/automation/yaml-templates/build-windows.yaml index 1963f831bff..a2c03bfcb79 100644 --- a/build-tools/automation/yaml-templates/build-windows.yaml +++ b/build-tools/automation/yaml-templates/build-windows.yaml @@ -38,8 +38,8 @@ stages: - template: clean.yaml - script: | - echo ##vso[task.setvariable variable=JI_JAVA_HOME]%JAVA_HOME_11_X64% - displayName: set JI_JAVA_HOME + echo ##vso[task.setvariable variable=JI_JAVA_HOME]%JAVA_HOME_17_X64% + displayName: set JI_JAVA_HOME to $(JAVA_HOME_17_X64) - template: use-dot-net.yaml parameters: diff --git a/build-tools/automation/yaml-templates/setup-test-environment.yaml b/build-tools/automation/yaml-templates/setup-test-environment.yaml index 0a8e6a787fe..bcd91d29145 100644 --- a/build-tools/automation/yaml-templates/setup-test-environment.yaml +++ b/build-tools/automation/yaml-templates/setup-test-environment.yaml @@ -1,7 +1,7 @@ parameters: configuration: $(XA.Build.Configuration) xaSourcePath: $(System.DefaultWorkingDirectory) - jdkTestFolder: $(JAVA_HOME_11_X64) + jdkTestFolder: $(JAVA_HOME_17_X64) remove_dotnet: false installTestSlicer: false installApkDiff: true @@ -26,13 +26,13 @@ steps: - script: | echo "##vso[task.setvariable variable=JI_JAVA_HOME]${{ parameters.jdkTestFolder }}" echo "##vso[task.setvariable variable=DOTNET_TOOL_PATH]${{ parameters.xaSourcePath }}/bin/${{ parameters.configuration }}/dotnet/dotnet" - displayName: set JI_JAVA_HOME + displayName: set JI_JAVA_HOME to ${{ parameters.jdkTestFolder }} condition: and(succeeded(), ne(variables['agent.os'], 'Windows_NT')) - script: | echo ##vso[task.setvariable variable=JI_JAVA_HOME]${{ parameters.jdkTestFolder }} echo ##vso[task.setvariable variable=DOTNET_TOOL_PATH]${{ parameters.xaSourcePath }}\bin\${{ parameters.configuration }}\dotnet\dotnet.exe - displayName: set JI_JAVA_HOME + displayName: set JI_JAVA_HOME to ${{ parameters.jdkTestFolder }} condition: and(succeeded(), eq(variables['agent.os'], 'Windows_NT')) # Install .NET 6 for legacy tests diff --git a/build-tools/scripts/TestApks.targets b/build-tools/scripts/TestApks.targets index 484bf5eadde..95ba391d170 100644 --- a/build-tools/scripts/TestApks.targets +++ b/build-tools/scripts/TestApks.targets @@ -371,7 +371,6 @@ @@ -381,7 +380,6 @@ /> @@ -392,7 +390,6 @@ /> diff --git a/src/Xamarin.Android.Build.Tasks/Tasks/Lint.cs b/src/Xamarin.Android.Build.Tasks/Tasks/Lint.cs index c275f67ff12..bba6df38c67 100644 --- a/src/Xamarin.Android.Build.Tasks/Tasks/Lint.cs +++ b/src/Xamarin.Android.Build.Tasks/Tasks/Lint.cs @@ -60,6 +60,9 @@ public class Lint : AndroidToolTask [Required] public string JavaSdkPath { get; set; } + [Required] + public string JavaSdkVersion { get; set; } + /// /// Location of an xml config files used to /// determine whether issues are enabled or disabled @@ -204,6 +207,15 @@ public override bool RunTask () Version lintToolVersion = GetLintVersion (GenerateFullPathToTool ()); Log.LogDebugMessage (" LintVersion: {0}", lintToolVersion); + + var unknownJdkVersion = new Version (0, 1); + Version? jdkVersion = unknownJdkVersion; + Version.TryParse (JavaSdkVersion, out jdkVersion); + if (lintToolVersion >= new Version (11, 0) && (jdkVersion > unknownJdkVersion && jdkVersion?.Major < 17)) { + Log.LogCodedError ("XALINTTODO", $"Lint version {lintToolVersion} is not compatible with JDK {JavaSdkPath}. Please set $(JavaSdkDirectory) to a path containing JDK 17 or later."); + return false; + } + foreach (var issue in DisabledIssuesByVersion) { if (fromCmdlineTools || lintToolVersion >= issue.Value) { if (string.IsNullOrEmpty (DisabledIssues) || !DisabledIssues.Contains (issue.Key)) @@ -217,7 +229,6 @@ public override bool RunTask () EnabledIssues = CleanIssues (issue.Key, lintToolVersion, EnabledIssues, nameof (EnabledIssues) ); } } - EnvironmentVariables = new [] { "JAVA_HOME=" + JavaSdkPath }; base.RunTask (); @@ -386,6 +397,13 @@ Version GetLintVersion (string tool) } } } + // try to parse the cmdline-tools folder name to get the version + var toolsDir = Path.GetFullPath (Path.Combine (Path.GetDirectoryName (tool), "..")); + if (Directory.Exists (toolsDir)) { + if (Version.TryParse (Path.GetFileName (toolsDir), out Version v)) { + return v; + } + } Log.LogCodedWarning ("XA0108", Properties.Resources.XA0108, tool); return new Version (1, 0); } diff --git a/src/Xamarin.Android.Build.Tasks/Tasks/ResolveSdksTask.cs b/src/Xamarin.Android.Build.Tasks/Tasks/ResolveSdksTask.cs index a93bdb23536..ee4954d9f02 100644 --- a/src/Xamarin.Android.Build.Tasks/Tasks/ResolveSdksTask.cs +++ b/src/Xamarin.Android.Build.Tasks/Tasks/ResolveSdksTask.cs @@ -31,6 +31,7 @@ using System; using System.IO; using System.Linq; +using Xamarin.Android.Tools; using Microsoft.Android.Build.Tasks; namespace Xamarin.Android.Tasks @@ -68,6 +69,9 @@ public class ResolveSdks : AndroidTask [Output] public string JavaSdkPath { get; set; } + [Output] + public string JavaSdkVersion { get; set; } + [Output] public string MonoAndroidToolsPath { get; set; } @@ -94,7 +98,9 @@ public override bool RunTask () var minVersion = Version.Parse (MinimumSupportedJavaVersion); var maxVersion = Version.Parse (LatestSupportedJavaVersion); - JavaSdkPath = MonoAndroidHelper.GetJdkInfo (this.CreateTaskLogger (), JavaSdkPath, minVersion, maxVersion)?.HomePath; + JdkInfo jdkInfo = MonoAndroidHelper.GetJdkInfo (this.CreateTaskLogger (), JavaSdkPath, minVersion, maxVersion); + JavaSdkPath = jdkInfo?.HomePath; + JavaSdkVersion = jdkInfo?.Version?.ToString (); MonoAndroidHelper.RefreshSupportedVersions (ReferenceAssemblyPaths); @@ -134,6 +140,7 @@ public override bool RunTask () Log.LogDebugMessage ($" {nameof (AndroidSdkPath)}: {AndroidSdkPath}"); Log.LogDebugMessage ($" {nameof (AndroidNdkPath)}: {AndroidNdkPath}"); Log.LogDebugMessage ($" {nameof (JavaSdkPath)}: {JavaSdkPath}"); + Log.LogDebugMessage ($" {nameof (JavaSdkVersion)}: {JavaSdkVersion}"); Log.LogDebugMessage ($" {nameof (MonoAndroidBinPath)}: {MonoAndroidBinPath}"); Log.LogDebugMessage ($" {nameof (MonoAndroidToolsPath)}: {MonoAndroidToolsPath}"); Log.LogDebugMessage ($" {nameof (AndroidBinUtilsPath)}: {AndroidBinUtilsPath}"); diff --git a/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.Android.Build.Tests/BuildTest.cs b/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.Android.Build.Tests/BuildTest.cs index e21148e9887..3dbf1a75750 100644 --- a/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.Android.Build.Tests/BuildTest.cs +++ b/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.Android.Build.Tests/BuildTest.cs @@ -1429,8 +1429,9 @@ public void XA4310 ([Values ("apk", "aab")] string packageFormat) [NonParallelizable] public void CheckLintErrorsAndWarnings () { - if (TestEnvironment.IsUsingJdk8) - Assert.Ignore ("https://github.com/xamarin/xamarin-android/issues/5698"); + Console.WriteLine (AndroidSdkResolver.GetJavaSdkVersionString ()); + //if (TestEnvironment.IsUsingJdk8) + // Assert.Ignore ("https://github.com/xamarin/xamarin-android/issues/5698"); string disabledIssues = "StaticFieldLeak,ObsoleteSdkInt,AllowBackup,ExportedReceiver,RedundantLabel"; @@ -1486,8 +1487,8 @@ public class MainActivity : Activity [Test] public void CheckLintConfigMerging () { - if (TestEnvironment.IsUsingJdk8) - Assert.Ignore ("https://github.com/xamarin/xamarin-android/issues/5698"); + //if (TestEnvironment.IsUsingJdk8) + // Assert.Ignore ("https://github.com/xamarin/xamarin-android/issues/5698"); var proj = new XamarinAndroidApplicationProject (); proj.SetProperty ("AndroidLintEnabled", true.ToString ()); @@ -1622,8 +1623,8 @@ public void DuplicateValuesInResourceCaseMap () [Test] public void CheckLintResourceFileReferencesAreFixed () { - if (TestEnvironment.IsUsingJdk8) - Assert.Ignore ("https://github.com/xamarin/xamarin-android/issues/5698"); + //if (TestEnvironment.IsUsingJdk8) + // Assert.Ignore ("https://github.com/xamarin/xamarin-android/issues/5698"); var proj = new XamarinAndroidApplicationProject () { PackageReferences = { diff --git a/src/Xamarin.Android.Build.Tasks/Xamarin.Android.Common.targets b/src/Xamarin.Android.Build.Tasks/Xamarin.Android.Common.targets index 330b30f9a7e..f9855e8ddbd 100644 --- a/src/Xamarin.Android.Build.Tasks/Xamarin.Android.Common.targets +++ b/src/Xamarin.Android.Build.Tasks/Xamarin.Android.Common.targets @@ -877,6 +877,7 @@ because xbuild doesn't support framework reference assemblies. ToolPath="$(LintToolPath)" ToolExe="$(LintToolExe)" JavaSdkPath="$(_JavaSdkDirectory)" + JavaSdkVersion="$(_JavaSdkVersion)" /> diff --git a/src/Xamarin.Android.Build.Tasks/Xamarin.Android.Tooling.targets b/src/Xamarin.Android.Build.Tasks/Xamarin.Android.Tooling.targets index ff86b19b484..df81d40c236 100644 --- a/src/Xamarin.Android.Build.Tasks/Xamarin.Android.Tooling.targets +++ b/src/Xamarin.Android.Build.Tasks/Xamarin.Android.Tooling.targets @@ -82,6 +82,7 @@ projects. + From c0a6ed4c0d2d5243f64839a53dd31e18f2c649b2 Mon Sep 17 00:00:00 2001 From: Peter Collins Date: Mon, 27 Nov 2023 10:51:24 -0500 Subject: [PATCH 04/10] Back out lint changes that can be merged separately --- src/Xamarin.Android.Build.Tasks/Tasks/Lint.cs | 12 +----------- .../Tasks/ResolveSdksTask.cs | 9 +-------- .../Tests/Xamarin.Android.Build.Tests/BuildTest.cs | 10 ---------- .../Xamarin.Android.Common.targets | 1 - .../Xamarin.Android.Tooling.targets | 1 - 5 files changed, 2 insertions(+), 31 deletions(-) diff --git a/src/Xamarin.Android.Build.Tasks/Tasks/Lint.cs b/src/Xamarin.Android.Build.Tasks/Tasks/Lint.cs index bba6df38c67..3e40fa31ddb 100644 --- a/src/Xamarin.Android.Build.Tasks/Tasks/Lint.cs +++ b/src/Xamarin.Android.Build.Tasks/Tasks/Lint.cs @@ -60,9 +60,6 @@ public class Lint : AndroidToolTask [Required] public string JavaSdkPath { get; set; } - [Required] - public string JavaSdkVersion { get; set; } - /// /// Location of an xml config files used to /// determine whether issues are enabled or disabled @@ -208,14 +205,6 @@ public override bool RunTask () Version lintToolVersion = GetLintVersion (GenerateFullPathToTool ()); Log.LogDebugMessage (" LintVersion: {0}", lintToolVersion); - var unknownJdkVersion = new Version (0, 1); - Version? jdkVersion = unknownJdkVersion; - Version.TryParse (JavaSdkVersion, out jdkVersion); - if (lintToolVersion >= new Version (11, 0) && (jdkVersion > unknownJdkVersion && jdkVersion?.Major < 17)) { - Log.LogCodedError ("XALINTTODO", $"Lint version {lintToolVersion} is not compatible with JDK {JavaSdkPath}. Please set $(JavaSdkDirectory) to a path containing JDK 17 or later."); - return false; - } - foreach (var issue in DisabledIssuesByVersion) { if (fromCmdlineTools || lintToolVersion >= issue.Value) { if (string.IsNullOrEmpty (DisabledIssues) || !DisabledIssues.Contains (issue.Key)) @@ -229,6 +218,7 @@ public override bool RunTask () EnabledIssues = CleanIssues (issue.Key, lintToolVersion, EnabledIssues, nameof (EnabledIssues) ); } } + EnvironmentVariables = new [] { "JAVA_HOME=" + JavaSdkPath }; base.RunTask (); diff --git a/src/Xamarin.Android.Build.Tasks/Tasks/ResolveSdksTask.cs b/src/Xamarin.Android.Build.Tasks/Tasks/ResolveSdksTask.cs index ee4954d9f02..a93bdb23536 100644 --- a/src/Xamarin.Android.Build.Tasks/Tasks/ResolveSdksTask.cs +++ b/src/Xamarin.Android.Build.Tasks/Tasks/ResolveSdksTask.cs @@ -31,7 +31,6 @@ using System; using System.IO; using System.Linq; -using Xamarin.Android.Tools; using Microsoft.Android.Build.Tasks; namespace Xamarin.Android.Tasks @@ -69,9 +68,6 @@ public class ResolveSdks : AndroidTask [Output] public string JavaSdkPath { get; set; } - [Output] - public string JavaSdkVersion { get; set; } - [Output] public string MonoAndroidToolsPath { get; set; } @@ -98,9 +94,7 @@ public override bool RunTask () var minVersion = Version.Parse (MinimumSupportedJavaVersion); var maxVersion = Version.Parse (LatestSupportedJavaVersion); - JdkInfo jdkInfo = MonoAndroidHelper.GetJdkInfo (this.CreateTaskLogger (), JavaSdkPath, minVersion, maxVersion); - JavaSdkPath = jdkInfo?.HomePath; - JavaSdkVersion = jdkInfo?.Version?.ToString (); + JavaSdkPath = MonoAndroidHelper.GetJdkInfo (this.CreateTaskLogger (), JavaSdkPath, minVersion, maxVersion)?.HomePath; MonoAndroidHelper.RefreshSupportedVersions (ReferenceAssemblyPaths); @@ -140,7 +134,6 @@ public override bool RunTask () Log.LogDebugMessage ($" {nameof (AndroidSdkPath)}: {AndroidSdkPath}"); Log.LogDebugMessage ($" {nameof (AndroidNdkPath)}: {AndroidNdkPath}"); Log.LogDebugMessage ($" {nameof (JavaSdkPath)}: {JavaSdkPath}"); - Log.LogDebugMessage ($" {nameof (JavaSdkVersion)}: {JavaSdkVersion}"); Log.LogDebugMessage ($" {nameof (MonoAndroidBinPath)}: {MonoAndroidBinPath}"); Log.LogDebugMessage ($" {nameof (MonoAndroidToolsPath)}: {MonoAndroidToolsPath}"); Log.LogDebugMessage ($" {nameof (AndroidBinUtilsPath)}: {AndroidBinUtilsPath}"); diff --git a/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.Android.Build.Tests/BuildTest.cs b/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.Android.Build.Tests/BuildTest.cs index 3dbf1a75750..4c654b41637 100644 --- a/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.Android.Build.Tests/BuildTest.cs +++ b/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.Android.Build.Tests/BuildTest.cs @@ -1429,10 +1429,6 @@ public void XA4310 ([Values ("apk", "aab")] string packageFormat) [NonParallelizable] public void CheckLintErrorsAndWarnings () { - Console.WriteLine (AndroidSdkResolver.GetJavaSdkVersionString ()); - //if (TestEnvironment.IsUsingJdk8) - // Assert.Ignore ("https://github.com/xamarin/xamarin-android/issues/5698"); - string disabledIssues = "StaticFieldLeak,ObsoleteSdkInt,AllowBackup,ExportedReceiver,RedundantLabel"; var proj = new XamarinAndroidApplicationProject () { @@ -1487,9 +1483,6 @@ public class MainActivity : Activity [Test] public void CheckLintConfigMerging () { - //if (TestEnvironment.IsUsingJdk8) - // Assert.Ignore ("https://github.com/xamarin/xamarin-android/issues/5698"); - var proj = new XamarinAndroidApplicationProject (); proj.SetProperty ("AndroidLintEnabled", true.ToString ()); proj.OtherBuildItems.Add (new AndroidItem.AndroidLintConfig ("lint1.xml") { @@ -1623,9 +1616,6 @@ public void DuplicateValuesInResourceCaseMap () [Test] public void CheckLintResourceFileReferencesAreFixed () { - //if (TestEnvironment.IsUsingJdk8) - // Assert.Ignore ("https://github.com/xamarin/xamarin-android/issues/5698"); - var proj = new XamarinAndroidApplicationProject () { PackageReferences = { KnownPackages.AndroidSupportV4_27_0_2_1, diff --git a/src/Xamarin.Android.Build.Tasks/Xamarin.Android.Common.targets b/src/Xamarin.Android.Build.Tasks/Xamarin.Android.Common.targets index f9855e8ddbd..330b30f9a7e 100644 --- a/src/Xamarin.Android.Build.Tasks/Xamarin.Android.Common.targets +++ b/src/Xamarin.Android.Build.Tasks/Xamarin.Android.Common.targets @@ -877,7 +877,6 @@ because xbuild doesn't support framework reference assemblies. ToolPath="$(LintToolPath)" ToolExe="$(LintToolExe)" JavaSdkPath="$(_JavaSdkDirectory)" - JavaSdkVersion="$(_JavaSdkVersion)" /> diff --git a/src/Xamarin.Android.Build.Tasks/Xamarin.Android.Tooling.targets b/src/Xamarin.Android.Build.Tasks/Xamarin.Android.Tooling.targets index df81d40c236..ff86b19b484 100644 --- a/src/Xamarin.Android.Build.Tasks/Xamarin.Android.Tooling.targets +++ b/src/Xamarin.Android.Build.Tasks/Xamarin.Android.Tooling.targets @@ -82,7 +82,6 @@ projects. - From 9391b247b42159a0a9a2d04388878cb44399558a Mon Sep 17 00:00:00 2001 From: Peter Collins Date: Mon, 27 Nov 2023 14:20:05 -0500 Subject: [PATCH 05/10] Fix nightly --- build-tools/automation/azure-pipelines-nightly.yaml | 2 ++ 1 file changed, 2 insertions(+) diff --git a/build-tools/automation/azure-pipelines-nightly.yaml b/build-tools/automation/azure-pipelines-nightly.yaml index 38123153b49..720e5e4a576 100644 --- a/build-tools/automation/azure-pipelines-nightly.yaml +++ b/build-tools/automation/azure-pipelines-nightly.yaml @@ -195,6 +195,7 @@ stages: restoreNUnitConsole: false updateMono: false xaprepareScenario: EmulatorTestDependencies + jdkTestFolder: $HOME/android-toolchain/jdk-17 - task: DownloadPipelineArtifact@2 inputs: @@ -248,6 +249,7 @@ stages: restoreNUnitConsole: false updateMono: false xaprepareScenario: EmulatorTestDependencies + jdkTestFolder: $HOME/android-toolchain/jdk-17 - task: DownloadPipelineArtifact@2 inputs: From 3c38e8e6fa96acccd60891c465c07253a78487d9 Mon Sep 17 00:00:00 2001 From: Peter Collins Date: Mon, 27 Nov 2023 15:37:45 -0500 Subject: [PATCH 06/10] Bump externals --- .external | 2 +- external/xamarin-android-tools | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.external b/.external index cc592bc67d5..3099ff95a0b 100644 --- a/.external +++ b/.external @@ -1,2 +1,2 @@ -xamarin/monodroid:dev/pjc/tools-34@a8d077f08c45df825b47055022bdcc3ba86f7b22 +xamarin/monodroid:main@90cbf00809881f3ec4f8d1b50e7ff0b143c904f7 mono/mono:2020-02@6dd9def57ce969ca04a0ecd9ef72c0a8f069112d diff --git a/external/xamarin-android-tools b/external/xamarin-android-tools index d6f1453f58c..08a69900df2 160000 --- a/external/xamarin-android-tools +++ b/external/xamarin-android-tools @@ -1 +1 @@ -Subproject commit d6f1453f58c9642614c5db1a0613866d78010a8e +Subproject commit 08a69900df23e9f95057f3cacae72bd40d640a27 From e948b2e411c857203ec87a746cc013a15f29929f Mon Sep 17 00:00:00 2001 From: Peter Collins Date: Mon, 27 Nov 2023 15:57:48 -0500 Subject: [PATCH 07/10] Bump monodroid --- .external | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.external b/.external index 3099ff95a0b..2b5b2c0914c 100644 --- a/.external +++ b/.external @@ -1,2 +1,2 @@ -xamarin/monodroid:main@90cbf00809881f3ec4f8d1b50e7ff0b143c904f7 +xamarin/monodroid:main@0b648bfde92af3f4a9f6c83154a96cdc731ee5ff mono/mono:2020-02@6dd9def57ce969ca04a0ecd9ef72c0a8f069112d From 8df37514f043249f641f1811e1a91f3074338521 Mon Sep 17 00:00:00 2001 From: Peter Collins Date: Mon, 27 Nov 2023 16:00:33 -0500 Subject: [PATCH 08/10] Remove all Lint changes --- src/Xamarin.Android.Build.Tasks/Tasks/Lint.cs | 8 -------- 1 file changed, 8 deletions(-) diff --git a/src/Xamarin.Android.Build.Tasks/Tasks/Lint.cs b/src/Xamarin.Android.Build.Tasks/Tasks/Lint.cs index 3e40fa31ddb..c275f67ff12 100644 --- a/src/Xamarin.Android.Build.Tasks/Tasks/Lint.cs +++ b/src/Xamarin.Android.Build.Tasks/Tasks/Lint.cs @@ -204,7 +204,6 @@ public override bool RunTask () Version lintToolVersion = GetLintVersion (GenerateFullPathToTool ()); Log.LogDebugMessage (" LintVersion: {0}", lintToolVersion); - foreach (var issue in DisabledIssuesByVersion) { if (fromCmdlineTools || lintToolVersion >= issue.Value) { if (string.IsNullOrEmpty (DisabledIssues) || !DisabledIssues.Contains (issue.Key)) @@ -387,13 +386,6 @@ Version GetLintVersion (string tool) } } } - // try to parse the cmdline-tools folder name to get the version - var toolsDir = Path.GetFullPath (Path.Combine (Path.GetDirectoryName (tool), "..")); - if (Directory.Exists (toolsDir)) { - if (Version.TryParse (Path.GetFileName (toolsDir), out Version v)) { - return v; - } - } Log.LogCodedWarning ("XA0108", Properties.Resources.XA0108, tool); return new Version (1, 0); } From b75ddafa685133451b786c6ce96ecb1b54904b88 Mon Sep 17 00:00:00 2001 From: Peter Collins Date: Mon, 27 Nov 2023 17:41:29 -0500 Subject: [PATCH 09/10] Fix nightly on on-prem machines --- build-tools/automation/azure-pipelines-nightly.yaml | 9 +++++++++ .../automation/yaml-templates/run-emulator-tests.yaml | 6 ++++++ 2 files changed, 15 insertions(+) diff --git a/build-tools/automation/azure-pipelines-nightly.yaml b/build-tools/automation/azure-pipelines-nightly.yaml index 720e5e4a576..4370dc175d1 100644 --- a/build-tools/automation/azure-pipelines-nightly.yaml +++ b/build-tools/automation/azure-pipelines-nightly.yaml @@ -156,6 +156,7 @@ stages: emulatorMSBuildArgs: -p:TestAvdExtraBootArgs=-writable-system jobName: SystemApplicationTests jobTimeout: 120 + jdkTestFolder: $HOME/android-toolchain/jdk-17 testSteps: - template: run-nunit-tests.yaml parameters: @@ -188,6 +189,10 @@ stages: steps: - template: agent-cleanser/v1.yml@yaml-templates + - script: | + echo "##vso[task.setvariable variable=JAVA_HOME]$HOME/android-toolchain/jdk-17" + displayName: set JAVA_HOME to $HOME/android-toolchain/jdk-17 + - template: yaml-templates/setup-test-environment.yaml parameters: installTestSlicer: true @@ -242,6 +247,10 @@ stages: steps: - template: agent-cleanser/v1.yml@yaml-templates + - script: | + echo "##vso[task.setvariable variable=JAVA_HOME]$HOME/android-toolchain/jdk-17" + displayName: set JAVA_HOME to $HOME/android-toolchain/jdk-17 + - template: yaml-templates/setup-test-environment.yaml parameters: installTestSlicer: true diff --git a/build-tools/automation/yaml-templates/run-emulator-tests.yaml b/build-tools/automation/yaml-templates/run-emulator-tests.yaml index cd43adf44bf..e3484dd5c5b 100644 --- a/build-tools/automation/yaml-templates/run-emulator-tests.yaml +++ b/build-tools/automation/yaml-templates/run-emulator-tests.yaml @@ -4,6 +4,7 @@ parameters: emulatorMSBuildArgs: '' jobName: CheckTimeZoneInfoIsCorrectNode1 jobTimeout: 360 + jdkTestFolder: $(JAVA_HOME_17_X64) testSteps: [] jobs: @@ -20,12 +21,17 @@ jobs: steps: - template: agent-cleanser/v1.yml@yaml-templates + - script: | + echo "##vso[task.setvariable variable=JAVA_HOME]${{ parameters.jdkTestFolder }}" + displayName: set JAVA_HOME to ${{ parameters.jdkTestFolder }} + - template: setup-test-environment.yaml parameters: installLegacyDotNet: false restoreNUnitConsole: false updateMono: false xaprepareScenario: EmulatorTestDependencies + jdkTestFolder: ${{ parameters.jdkTestFolder }} - task: DownloadPipelineArtifact@2 inputs: From cfd7cbcd106a295a5bd6bc4e475547069c67a12f Mon Sep 17 00:00:00 2001 From: Peter Collins Date: Tue, 28 Nov 2023 13:03:55 -0500 Subject: [PATCH 10/10] Bump monodroid --- .external | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.external b/.external index 2b5b2c0914c..119f0578ec0 100644 --- a/.external +++ b/.external @@ -1,2 +1,2 @@ -xamarin/monodroid:main@0b648bfde92af3f4a9f6c83154a96cdc731ee5ff +xamarin/monodroid:main@44b5ccb0ae4a7316e93040289832c74230b5217f mono/mono:2020-02@6dd9def57ce969ca04a0ecd9ef72c0a8f069112d