From 0f434cbff2cdcf0dc178d9ff03ce1157b1966aa5 Mon Sep 17 00:00:00 2001 From: Rolf Bjarne Kvinge Date: Thu, 15 Jan 2026 13:42:11 +0100 Subject: [PATCH] Multi-target with .NET 10. This way we can detect and fix any problems when building against newer .NET versions. Also fix any problems, and turn on warnings as errors. --- UnitTests/UnitTests.csproj | 1 + Xamarin.MacDev/Keychain.cs | 8 ++++++++ Xamarin.MacDev/MobileProvision.cs | 4 ++++ Xamarin.MacDev/Xamarin.MacDev.csproj | 3 ++- 4 files changed, 15 insertions(+), 1 deletion(-) diff --git a/UnitTests/UnitTests.csproj b/UnitTests/UnitTests.csproj index 0a3b12a..62327b7 100644 --- a/UnitTests/UnitTests.csproj +++ b/UnitTests/UnitTests.csproj @@ -2,6 +2,7 @@ net472;net10.0 + true diff --git a/Xamarin.MacDev/Keychain.cs b/Xamarin.MacDev/Keychain.cs index 05ee995..5ce288a 100644 --- a/Xamarin.MacDev/Keychain.cs +++ b/Xamarin.MacDev/Keychain.cs @@ -458,7 +458,11 @@ public IList GetAllSigningIdentities () if (rawData != null) { try { +#if NET9_0_OR_GREATER + certificate = X509CertificateLoader.LoadCertificate (rawData); +#else certificate = new X509Certificate2 (rawData); +#endif } catch (Exception ex) { LoggingService.LogWarning ("Error loading signing certificate from keychain", ex); } @@ -515,7 +519,11 @@ public IList GetAllSigningCertificates () if (rawData != null) { try { +#if NET9_0_OR_GREATER + certs.Add (X509CertificateLoader.LoadCertificate (rawData)); +#else certs.Add (new X509Certificate2 (rawData)); +#endif } catch (Exception ex) { LoggingService.LogWarning ("Error loading signing certificate from keychain", ex); } diff --git a/Xamarin.MacDev/MobileProvision.cs b/Xamarin.MacDev/MobileProvision.cs index 5340f73..09dedfd 100644 --- a/Xamarin.MacDev/MobileProvision.cs +++ b/Xamarin.MacDev/MobileProvision.cs @@ -220,7 +220,11 @@ static IList GetCertificates (PArray array) var data = item as PData; if (data != null) +#if NET9_0_OR_GREATER + list.Add (X509CertificateLoader.LoadCertificate (data.Value)); +#else list.Add (new X509Certificate2 (data.Value)); +#endif } return list; diff --git a/Xamarin.MacDev/Xamarin.MacDev.csproj b/Xamarin.MacDev/Xamarin.MacDev.csproj index 0bb9dcb..0af8a9d 100644 --- a/Xamarin.MacDev/Xamarin.MacDev.csproj +++ b/Xamarin.MacDev/Xamarin.MacDev.csproj @@ -1,10 +1,11 @@ - netstandard2.0 + netstandard2.0;net10.0 true false latest + true