From 378b4929ca69bc41a7c532ae4c77de0a0b74bddd Mon Sep 17 00:00:00 2001 From: "dotnet-maestro[bot]" <42748379+dotnet-maestro[bot]@users.noreply.github.com> Date: Thu, 28 Mar 2024 15:10:26 -0500 Subject: [PATCH] Bump to dotnet/installer/main@dc43d363d2 9.0.100-preview.4.24175.5 (#8828) Changes: https://github.com/dotnet/installer/compare/b40c44502d...dc43d363d2 Changes: https://github.com/dotnet/runtime/compare/596a1f7b64...17f8138a72 Changes: https://github.com/dotnet/emsdk/compare/a5f4de78fc...5dd0620274 Changes: https://github.com/dotnet/cecil/compare/ba53c75483...9c8ea966df Updates: * Microsoft.Dotnet.Sdk.Internal: from 9.0.100-preview.3.24165.20 to 9.0.100-preview.4.24175.5 * Microsoft.NETCore.App.Ref: from 9.0.0-preview.3.24162.31 to 9.0.0-preview.4.24173.6 * Microsoft.NET.Workload.Emscripten.Current.Manifest-9.0.100.Transport: from 9.0.0-preview.3.24156.3 to 9.0.0-preview.3.24160.1 * Microsoft.NET.ILLink.Tasks: from 9.0.0-preview.3.24162.31 to 9.0.0-preview.4.24173.6 * Microsoft.DotNet.Cecil: from 0.11.4-alpha.24158.1 to 0.11.4-alpha.24168.1 Other changes: * [tests] set `$(TrimmerSingleWarn)` to false This allows us to get more information, in the case of new trimmer warnings. * Default `$(_AndroidIncludeSystemGlobalizationNative)` to true Prevents runtime crash: 03-25 19:42:25.386 8502 8502 W Mono : DllImport unable to load library 'libSystem.Globalization.Native'. 03-25 19:42:25.409 8502 8502 W : Process terminated. * Update `.apkdesc` files for `libSystem.Globalization.Native.so` * FIXME: https://github.com/dotnet/runtime/issues/100256 Various tests have the trimmer warning: dotnet\packs\Microsoft.NETCore.App.Runtime.Mono.android-x86\9.0.0-preview.4.24173.6\runtimes\android-x86\native\System.Private.CoreLib.dll : warning IL2104: Assembly 'System.Private.CoreLib' produced trim warnings. For more information see https://aka.ms/dotnet-illink/libraries ILLink warning IL2045: System.Runtime.CompilerServices.RuntimeFeature.IsDynamicCodeCompiled: Attribute 'System.Diagnostics.CodeAnalysis.RequiresDynamicCodeAttribute' is being referenced in code but the trimmer was instructed to remove all instances of this attribute. If the attribute instances are necessary make sure to either remove the trimmer attribute XML portion which removes the attribute instances, or override the removal by using the trimmer XML descriptor to keep the attribute type (which in turn keeps all of its instances). For now, we can assert there are 4 warnings (one per RID). When this is fixed in the future, we can go back to asserting 0 warnings. Co-authored-by: Jonathan Peppers --- eng/Version.Details.xml | 20 ++-- eng/Versions.props | 10 +- ...oft.Android.Sdk.AssemblyResolution.targets | 3 + .../Xamarin.Android.Build.Tests/BuildTest2.cs | 8 +- .../Xamarin.Android.Build.Tests/XASdkTests.cs | 11 +- .../BuildReleaseArm64SimpleDotNet.apkdesc | 41 +++---- .../BuildReleaseArm64XFormsDotNet.apkdesc | 105 +++++++++--------- 7 files changed, 109 insertions(+), 89 deletions(-) diff --git a/eng/Version.Details.xml b/eng/Version.Details.xml index 2945aa2ef96..72b69e51698 100644 --- a/eng/Version.Details.xml +++ b/eng/Version.Details.xml @@ -1,24 +1,24 @@ - + https://github.com/dotnet/installer - b40c44502deca1e7f51674b97b2d6ca2d5e0abac + dc43d363d284c26cb1b463683d6ebb2c88ab0b58 - + https://github.com/dotnet/runtime - 596a1f7b6429fc06cf71465238cb349cab4edc35 + 17f8138a726b8af269bffc59e9baa12dcb7abca5 - + https://github.com/dotnet/runtime - 596a1f7b6429fc06cf71465238cb349cab4edc35 + 17f8138a726b8af269bffc59e9baa12dcb7abca5 - + https://github.com/dotnet/emsdk - a5f4de78fca42544771977f8e8e04c4aa83e1d02 + 5dd0620274178dd73cac5049e5187c00e07ecf0c - + https://github.com/dotnet/cecil - ba53c75483aa4980a332fa48e61076f80adfec40 + 9c8ea966df62f764523b51772763e74e71040a92 diff --git a/eng/Versions.props b/eng/Versions.props index 7c14218b5df..7fc8a8bc1e4 100644 --- a/eng/Versions.props +++ b/eng/Versions.props @@ -1,15 +1,15 @@ - 9.0.100-preview.3.24165.20 - 9.0.0-preview.3.24162.31 - 9.0.0-preview.3.24162.31 + 9.0.100-preview.4.24175.5 + 9.0.0-preview.4.24173.6 + 9.0.0-preview.4.24173.6 7.0.0-beta.22103.1 7.0.0-beta.22103.1 - 9.0.0-preview.3.24156.3 + 9.0.0-preview.3.24160.1 $(MicrosoftNETWorkloadEmscriptenCurrentManifest90100TransportVersion) 7.0.100-rc.1.22410.7 - 0.11.4-alpha.24158.1 + 0.11.4-alpha.24168.1 $(MicrosoftNETCoreAppRefPackageVersion) diff --git a/src/Xamarin.Android.Build.Tasks/Microsoft.Android.Sdk/targets/Microsoft.Android.Sdk.AssemblyResolution.targets b/src/Xamarin.Android.Build.Tasks/Microsoft.Android.Sdk/targets/Microsoft.Android.Sdk.AssemblyResolution.targets index d4aae16f7ee..05c6c56639f 100644 --- a/src/Xamarin.Android.Build.Tasks/Microsoft.Android.Sdk/targets/Microsoft.Android.Sdk.AssemblyResolution.targets +++ b/src/Xamarin.Android.Build.Tasks/Microsoft.Android.Sdk/targets/Microsoft.Android.Sdk.AssemblyResolution.targets @@ -212,6 +212,9 @@ _ResolveAssemblies MSBuild target. + + <_AndroidIncludeSystemGlobalizationNative Condition=" '$(_AndroidIncludeSystemGlobalizationNative)' == '' ">true + <_ResolvedNativeLibraries Include="@(ResolvedFileToPublish)" Condition=" '%(ResolvedFileToPublish.Extension)' == '.so' " /> diff --git a/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.Android.Build.Tests/BuildTest2.cs b/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.Android.Build.Tests/BuildTest2.cs index 83d47a85bdc..1f5cff5a437 100644 --- a/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.Android.Build.Tests/BuildTest2.cs +++ b/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.Android.Build.Tests/BuildTest2.cs @@ -257,9 +257,15 @@ public void BuildHasNoWarnings (bool isRelease, bool xamarinForms, bool multidex proj.PackageReferences.Add (new Package { Id = "BenchmarkDotNet", Version = "0.13.1" }); proj.SetProperty ("XamarinAndroidSupportSkipVerifyVersions", "True"); // Disables API 29 warning in Xamarin.Build.Download proj.SetProperty ("AndroidPackageFormat", packageFormat); + proj.SetProperty ("TrimmerSingleWarn", "false"); using (var b = CreateApkBuilder (Path.Combine ("temp", TestName))) { Assert.IsTrue (b.Build (proj), "Build should have succeeded."); - b.AssertHasNoWarnings (); + // FIXME: https://github.com/dotnet/runtime/issues/100256 + if (!xamarinForms && isRelease) { + Assert.IsTrue (StringAssertEx.ContainsText (b.LastBuildOutput, " 4 Warning(s)"), $"{b.BuildLogFile} should have 4 MSBuild warnings."); + } else { + b.AssertHasNoWarnings (); + } Assert.IsFalse (StringAssertEx.ContainsText (b.LastBuildOutput, "Warning: end of file not at end of a line"), "Should not get a warning from the task."); var lockFile = Path.Combine (Root, b.ProjectDirectory, proj.IntermediateOutputPath, ".__lock"); diff --git a/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.Android.Build.Tests/XASdkTests.cs b/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.Android.Build.Tests/XASdkTests.cs index 8864d67f6a3..54fb5b35130 100644 --- a/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.Android.Build.Tests/XASdkTests.cs +++ b/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.Android.Build.Tests/XASdkTests.cs @@ -37,12 +37,17 @@ public void DotNetNew ([Values ("android", "androidlib", "android-bindinglib", " Assert.IsTrue (dotnet.New ("android-layout", Path.Combine (dotnet.ProjectDirectory, "Resources", "layout")), "`dotnet new android-layout` should succeed"); // Debug build - Assert.IsTrue (dotnet.Build (parameters: new [] { "Configuration=Debug" }), "`dotnet build` should succeed"); + Assert.IsTrue (dotnet.Build (parameters: new [] { "Configuration=Debug", "TrimmerSingleWarn=false" }), "`dotnet build` should succeed"); dotnet.AssertHasNoWarnings (); // Release build - Assert.IsTrue (dotnet.Build (parameters: new [] { "Configuration=Release" }), "`dotnet build` should succeed"); - dotnet.AssertHasNoWarnings (); + Assert.IsTrue (dotnet.Build (parameters: new [] { "Configuration=Release", "TrimmerSingleWarn=false" }), "`dotnet build` should succeed"); + // FIXME: https://github.com/dotnet/runtime/issues/100256 + if (template.Contains ("lib")) { + dotnet.AssertHasNoWarnings (); + } else { + Assert.IsTrue (StringAssertEx.ContainsText (dotnet.LastBuildOutput, " 4 Warning(s)"), $"{dotnet.BuildLogFile} should have 4 MSBuild warnings."); + } } static readonly object[] DotNetPackTargetFrameworks = new object[] { diff --git a/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.ProjectTools/Resources/Base/BuildReleaseArm64SimpleDotNet.apkdesc b/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.ProjectTools/Resources/Base/BuildReleaseArm64SimpleDotNet.apkdesc index 5886262970d..f72d4cc5633 100644 --- a/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.ProjectTools/Resources/Base/BuildReleaseArm64SimpleDotNet.apkdesc +++ b/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.ProjectTools/Resources/Base/BuildReleaseArm64SimpleDotNet.apkdesc @@ -5,70 +5,73 @@ "Size": 3036 }, "classes.dex": { - "Size": 377684 + "Size": 377764 }, "lib/arm64-v8a/lib__Microsoft.Android.Resource.Designer.dll.so": { "Size": 1027 }, "lib/arm64-v8a/lib_Java.Interop.dll.so": { - "Size": 63889 + "Size": 64234 }, "lib/arm64-v8a/lib_Mono.Android.dll.so": { - "Size": 90449 + "Size": 91668 }, "lib/arm64-v8a/lib_Mono.Android.Runtime.dll.so": { - "Size": 5145 + "Size": 5222 }, "lib/arm64-v8a/lib_System.Console.dll.so": { - "Size": 6541 + "Size": 6548 }, "lib/arm64-v8a/lib_System.Linq.dll.so": { - "Size": 8647 + "Size": 8483 }, "lib/arm64-v8a/lib_System.Private.CoreLib.dll.so": { - "Size": 553289 + "Size": 566421 }, "lib/arm64-v8a/lib_System.Runtime.dll.so": { - "Size": 2545 + "Size": 2552 }, "lib/arm64-v8a/lib_System.Runtime.InteropServices.dll.so": { - "Size": 4022 + "Size": 4025 }, "lib/arm64-v8a/lib_UnnamedProject.dll.so": { - "Size": 2932 + "Size": 2934 }, "lib/arm64-v8a/libarc.bin.so": { "Size": 1512 }, "lib/arm64-v8a/libmono-component-marshal-ilgen.so": { - "Size": 87080 + "Size": 87352 }, "lib/arm64-v8a/libmonodroid.so": { - "Size": 355872 + "Size": 354064 }, "lib/arm64-v8a/libmonosgen-2.0.so": { - "Size": 3185656 + "Size": 3132992 + }, + "lib/arm64-v8a/libSystem.Globalization.Native.so": { + "Size": 67248 }, "lib/arm64-v8a/libSystem.IO.Compression.Native.so": { "Size": 723560 }, "lib/arm64-v8a/libSystem.Native.so": { - "Size": 94504 + "Size": 94720 }, "lib/arm64-v8a/libSystem.Security.Cryptography.Native.Android.so": { - "Size": 155560 + "Size": 155568 }, "lib/arm64-v8a/libxamarin-app.so": { - "Size": 12336 + "Size": 12656 }, "META-INF/BNDLTOOL.RSA": { "Size": 1221 }, "META-INF/BNDLTOOL.SF": { - "Size": 3147 + "Size": 3266 }, "META-INF/MANIFEST.MF": { - "Size": 3020 + "Size": 3139 }, "res/drawable-hdpi-v4/icon.png": { "Size": 2178 @@ -95,5 +98,5 @@ "Size": 1904 } }, - "PackageSize": 2668984 + "PackageSize": 2689557 } \ No newline at end of file diff --git a/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.ProjectTools/Resources/Base/BuildReleaseArm64XFormsDotNet.apkdesc b/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.ProjectTools/Resources/Base/BuildReleaseArm64XFormsDotNet.apkdesc index 015199489b9..2d232c645fb 100644 --- a/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.ProjectTools/Resources/Base/BuildReleaseArm64XFormsDotNet.apkdesc +++ b/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.ProjectTools/Resources/Base/BuildReleaseArm64XFormsDotNet.apkdesc @@ -5,10 +5,10 @@ "Size": 6652 }, "classes.dex": { - "Size": 9418292 + "Size": 9440180 }, "classes2.dex": { - "Size": 150904 + "Size": 150920 }, "kotlin/annotation/annotation.kotlin_builtins": { "Size": 928 @@ -38,127 +38,127 @@ "Size": 8090 }, "lib/arm64-v8a/lib_Java.Interop.dll.so": { - "Size": 72360 + "Size": 72397 }, "lib/arm64-v8a/lib_Mono.Android.dll.so": { - "Size": 456663 + "Size": 458327 }, "lib/arm64-v8a/lib_Mono.Android.Runtime.dll.so": { - "Size": 5145 + "Size": 5222 }, "lib/arm64-v8a/lib_mscorlib.dll.so": { - "Size": 3992 + "Size": 3998 }, "lib/arm64-v8a/lib_netstandard.dll.so": { - "Size": 5625 + "Size": 5631 }, "lib/arm64-v8a/lib_System.Collections.Concurrent.dll.so": { "Size": 11520 }, "lib/arm64-v8a/lib_System.Collections.dll.so": { - "Size": 15411 + "Size": 15413 }, "lib/arm64-v8a/lib_System.Collections.NonGeneric.dll.so": { - "Size": 7442 + "Size": 7441 }, "lib/arm64-v8a/lib_System.ComponentModel.dll.so": { - "Size": 1935 + "Size": 1941 }, "lib/arm64-v8a/lib_System.ComponentModel.Primitives.dll.so": { - "Size": 2549 + "Size": 2555 }, "lib/arm64-v8a/lib_System.ComponentModel.TypeConverter.dll.so": { - "Size": 6084 + "Size": 6089 }, "lib/arm64-v8a/lib_System.Console.dll.so": { - "Size": 6576 + "Size": 6580 }, "lib/arm64-v8a/lib_System.Core.dll.so": { - "Size": 1969 + "Size": 1976 }, "lib/arm64-v8a/lib_System.Diagnostics.DiagnosticSource.dll.so": { - "Size": 9060 + "Size": 9065 }, "lib/arm64-v8a/lib_System.Diagnostics.TraceSource.dll.so": { - "Size": 6543 + "Size": 6552 }, "lib/arm64-v8a/lib_System.dll.so": { - "Size": 2326 + "Size": 2331 }, "lib/arm64-v8a/lib_System.Drawing.dll.so": { - "Size": 1932 + "Size": 1937 }, "lib/arm64-v8a/lib_System.Drawing.Primitives.dll.so": { - "Size": 11965 + "Size": 11968 }, "lib/arm64-v8a/lib_System.IO.Compression.Brotli.dll.so": { - "Size": 11187 + "Size": 11190 }, "lib/arm64-v8a/lib_System.IO.Compression.dll.so": { "Size": 15864 }, "lib/arm64-v8a/lib_System.IO.IsolatedStorage.dll.so": { - "Size": 9895 + "Size": 9897 }, "lib/arm64-v8a/lib_System.Linq.dll.so": { - "Size": 20514 + "Size": 20166 }, "lib/arm64-v8a/lib_System.Linq.Expressions.dll.so": { - "Size": 164629 + "Size": 164751 }, "lib/arm64-v8a/lib_System.Net.Http.dll.so": { - "Size": 67561 + "Size": 67559 }, "lib/arm64-v8a/lib_System.Net.Primitives.dll.so": { - "Size": 22354 + "Size": 22242 }, "lib/arm64-v8a/lib_System.Net.Requests.dll.so": { - "Size": 3588 + "Size": 3594 }, "lib/arm64-v8a/lib_System.ObjectModel.dll.so": { - "Size": 8565 + "Size": 8566 }, "lib/arm64-v8a/lib_System.Private.CoreLib.dll.so": { - "Size": 870644 + "Size": 872867 }, "lib/arm64-v8a/lib_System.Private.DataContractSerialization.dll.so": { - "Size": 193443 + "Size": 193446 }, "lib/arm64-v8a/lib_System.Private.Uri.dll.so": { - "Size": 42904 + "Size": 42910 }, "lib/arm64-v8a/lib_System.Private.Xml.dll.so": { - "Size": 216020 + "Size": 216089 }, "lib/arm64-v8a/lib_System.Private.Xml.Linq.dll.so": { - "Size": 16622 + "Size": 16631 }, "lib/arm64-v8a/lib_System.Runtime.dll.so": { - "Size": 2703 + "Size": 2709 }, "lib/arm64-v8a/lib_System.Runtime.InteropServices.dll.so": { - "Size": 4022 + "Size": 4025 }, "lib/arm64-v8a/lib_System.Runtime.Serialization.dll.so": { - "Size": 1859 + "Size": 1865 }, "lib/arm64-v8a/lib_System.Runtime.Serialization.Formatters.dll.so": { - "Size": 2479 + "Size": 2484 }, "lib/arm64-v8a/lib_System.Runtime.Serialization.Primitives.dll.so": { - "Size": 3751 + "Size": 3758 }, "lib/arm64-v8a/lib_System.Security.Cryptography.dll.so": { - "Size": 8099 + "Size": 8102 }, "lib/arm64-v8a/lib_System.Text.RegularExpressions.dll.so": { - "Size": 161328 + "Size": 161398 }, "lib/arm64-v8a/lib_System.Xml.dll.so": { - "Size": 1754 + "Size": 1760 }, "lib/arm64-v8a/lib_System.Xml.Linq.dll.so": { - "Size": 1768 + "Size": 1776 }, "lib/arm64-v8a/lib_UnnamedProject.dll.so": { "Size": 5007 @@ -170,7 +170,7 @@ "Size": 6216 }, "lib/arm64-v8a/lib_Xamarin.AndroidX.AppCompat.dll.so": { - "Size": 138025 + "Size": 138048 }, "lib/arm64-v8a/lib_Xamarin.AndroidX.CardView.dll.so": { "Size": 6959 @@ -179,7 +179,7 @@ "Size": 17921 }, "lib/arm64-v8a/lib_Xamarin.AndroidX.Core.dll.so": { - "Size": 126882 + "Size": 126998 }, "lib/arm64-v8a/lib_Xamarin.AndroidX.CursorAdapter.dll.so": { "Size": 8978 @@ -188,7 +188,7 @@ "Size": 15286 }, "lib/arm64-v8a/lib_Xamarin.AndroidX.Fragment.dll.so": { - "Size": 51498 + "Size": 51531 }, "lib/arm64-v8a/lib_Xamarin.AndroidX.Legacy.Support.Core.UI.dll.so": { "Size": 6233 @@ -206,7 +206,7 @@ "Size": 13063 }, "lib/arm64-v8a/lib_Xamarin.AndroidX.RecyclerView.dll.so": { - "Size": 93516 + "Size": 93541 }, "lib/arm64-v8a/lib_Xamarin.AndroidX.SavedState.dll.so": { "Size": 5107 @@ -242,7 +242,10 @@ "Size": 354064 }, "lib/arm64-v8a/libmonosgen-2.0.so": { - "Size": 3210968 + "Size": 3132992 + }, + "lib/arm64-v8a/libSystem.Globalization.Native.so": { + "Size": 67248 }, "lib/arm64-v8a/libSystem.IO.Compression.Native.so": { "Size": 723560 @@ -254,7 +257,7 @@ "Size": 155568 }, "lib/arm64-v8a/libxamarin-app.so": { - "Size": 118456 + "Size": 118880 }, "META-INF/androidx.activity_activity.version": { "Size": 6 @@ -407,10 +410,10 @@ "Size": 6 }, "META-INF/BNDLTOOL.RSA": { - "Size": 1221 + "Size": 1223 }, "META-INF/BNDLTOOL.SF": { - "Size": 98179 + "Size": 98298 }, "META-INF/com.android.tools/proguard/coroutines.pro": { "Size": 1345 @@ -437,7 +440,7 @@ "Size": 5 }, "META-INF/MANIFEST.MF": { - "Size": 98052 + "Size": 98171 }, "META-INF/maven/com.google.guava/listenablefuture/pom.properties": { "Size": 96 @@ -2477,5 +2480,5 @@ "Size": 812848 } }, - "PackageSize": 10193867 + "PackageSize": 10218536 } \ No newline at end of file