From daf601a3e16fe6cdb15eb8d1b537a3cda33ddb69 Mon Sep 17 00:00:00 2001 From: Jo Shields Date: Tue, 8 Oct 2019 09:35:29 -0400 Subject: [PATCH 01/34] Bump to mono:2019-10 --- Make.config | 6 +++--- mk/mono.mk | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/Make.config b/Make.config index 7e27417fc03d..036f6ed277e6 100644 --- a/Make.config +++ b/Make.config @@ -69,9 +69,9 @@ include $(TOP)/mk/mono.mk MONO_HASH := $(NEEDED_MONO_VERSION) # Minimum Mono version for building XI/XM -MIN_MONO_VERSION=6.6.0.48 -MAX_MONO_VERSION=6.6.99 -MIN_MONO_URL=https://xamjenkinsartifact.azureedge.net/build-package-osx-mono/2019-08/51/23cc371009da14640980f98ad7b8b83818568f73/MonoFramework-MDK-6.6.0.48.macos10.xamarin.universal.pkg +MIN_MONO_VERSION=6.8.0.0 +MAX_MONO_VERSION=6.8.99 +MIN_MONO_URL=https://xamjenkinsartifact.azureedge.net/build-package-osx-mono/2019-10/3/af8d610864cacb842c6976a6ac1d14f99b56b6e6/MonoFramework-MDK-6.8.0.0.macos10.xamarin.universal.pkg # Minimum Mono version for Xamarin.Mac apps using the system mono MIN_XM_MONO_VERSION=6.4.0.94 diff --git a/mk/mono.mk b/mk/mono.mk index 8a90e825947a..5e460d7291b2 100644 --- a/mk/mono.mk +++ b/mk/mono.mk @@ -1,5 +1,5 @@ -NEEDED_MONO_VERSION := 528103728fc2aedb7b6062e11255d39a0ed3f31c -NEEDED_MONO_BRANCH := 2019-08 +NEEDED_MONO_VERSION := af8d610864cacb842c6976a6ac1d14f99b56b6e6 +NEEDED_MONO_BRANCH := 2019-10 MONO_DIRECTORY := mono MONO_MODULE := https://github.com/mono/mono From b9f1a4eee0f62baf4b99db3a124c3fa602af11db Mon Sep 17 00:00:00 2001 From: Thays Grazia Date: Tue, 8 Oct 2019 13:59:00 -0300 Subject: [PATCH 02/34] =?UTF-8?q?Fixing=20/Users/builder/jenkins/workspace?= =?UTF-8?q?/xamarin-macios/xamarin-macios/builds/mono-ios-sdk-destdir/ios-?= =?UTF-8?q?sources/external/linker/src/linker/Linker.Steps/OutputStep.cs(1?= =?UTF-8?q?10,15):=20error=20CS0246:=20The=20type=20or=20namespace=20name?= =?UTF-8?q?=20=E2=80=98OutputException=E2=80=99=20could=20not=20be=20found?= =?UTF-8?q?=20(are=20you=20missing=20a=20using=20directive=20or=20an=20ass?= =?UTF-8?q?embly=20reference=3F)=20[/Users/builder/jenkins/workspace/xamar?= =?UTF-8?q?in-macios/xamarin-macios/tools/mmp/mmp.csproj]?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- tools/mmp/mmp.csproj | 3 +++ 1 file changed, 3 insertions(+) diff --git a/tools/mmp/mmp.csproj b/tools/mmp/mmp.csproj index 2922436b0b5f..00a979098d34 100644 --- a/tools/mmp/mmp.csproj +++ b/tools/mmp/mmp.csproj @@ -166,6 +166,9 @@ Linker\XApiReader.cs + + Linker\OutputException.cs + Linker.Steps\BaseStep.cs From 03a51a4d818cc0cb8872506d354d59653f2753a3 Mon Sep 17 00:00:00 2001 From: Thays Grazia Date: Tue, 8 Oct 2019 14:16:23 -0300 Subject: [PATCH 03/34] Changing the name of the method that is used from linker. Because of this commit https://github.com/mono/linker/commit/6be26771b9bc6d40305a8f005d38f08dfa423252 --- tools/linker/MobileSweepStep.cs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/tools/linker/MobileSweepStep.cs b/tools/linker/MobileSweepStep.cs index eb50da1f5ba3..91135ec95eec 100644 --- a/tools/linker/MobileSweepStep.cs +++ b/tools/linker/MobileSweepStep.cs @@ -49,12 +49,12 @@ protected void SweepMainModule (ModuleDefinition main) // or they can point to nothing which will break later (e.g. when re-loading for stripping IL) // reference: https://bugzilla.xamarin.com/show_bug.cgi?id=36577 if (main.HasExportedTypes) - SweepCollectionNonAttributable (main.ExportedTypes); + SweepCollectionMetadata (main.ExportedTypes); // only when linking should we remove module references, if we (re)save the assembly then // the entrypoints (for p/invokes) will be required later // reference: https://bugzilla.xamarin.com/show_bug.cgi?id=35372 if (main.HasModuleReferences && (CurrentAction == AssemblyAction.Link)) - SweepCollectionNonAttributable (main.ModuleReferences); + SweepCollectionMetadata (main.ModuleReferences); } } } From 3a9195af0bba0bf7031ac501a0927adc86b67189 Mon Sep 17 00:00:00 2001 From: Thays Grazia Date: Tue, 8 Oct 2019 14:24:20 -0300 Subject: [PATCH 04/34] Adding OutputException.cs file on mtouch.csproj. --- tools/mtouch/mtouch.csproj | 3 +++ 1 file changed, 3 insertions(+) diff --git a/tools/mtouch/mtouch.csproj b/tools/mtouch/mtouch.csproj index 587927d14162..435ad563ee94 100644 --- a/tools/mtouch/mtouch.csproj +++ b/tools/mtouch/mtouch.csproj @@ -154,6 +154,9 @@ Linker\MethodAction.cs + + Linker\OutputException.cs + Linker.Steps\BaseStep.cs From b77c350a81a9f8d549d08fa6141f7b2fe6f85bf0 Mon Sep 17 00:00:00 2001 From: Thays Grazia Date: Fri, 11 Oct 2019 11:14:02 -0300 Subject: [PATCH 05/34] Bump mono. --- Make.config | 2 +- mk/mono.mk | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Make.config b/Make.config index 036f6ed277e6..2ddfd1cce73d 100644 --- a/Make.config +++ b/Make.config @@ -71,7 +71,7 @@ MONO_HASH := $(NEEDED_MONO_VERSION) # Minimum Mono version for building XI/XM MIN_MONO_VERSION=6.8.0.0 MAX_MONO_VERSION=6.8.99 -MIN_MONO_URL=https://xamjenkinsartifact.azureedge.net/build-package-osx-mono/2019-10/3/af8d610864cacb842c6976a6ac1d14f99b56b6e6/MonoFramework-MDK-6.8.0.0.macos10.xamarin.universal.pkg +MIN_MONO_URL=https://xamjenkinsartifact.azureedge.net/build-package-osx-mono/2019-10/8/4c611593aca6de583ea6137c9813363669af768b/MonoFramework-MDK-6.8.0.5.macos10.xamarin.universal.pkg # Minimum Mono version for Xamarin.Mac apps using the system mono MIN_XM_MONO_VERSION=6.4.0.94 diff --git a/mk/mono.mk b/mk/mono.mk index 5e460d7291b2..ff0326e47416 100644 --- a/mk/mono.mk +++ b/mk/mono.mk @@ -1,4 +1,4 @@ -NEEDED_MONO_VERSION := af8d610864cacb842c6976a6ac1d14f99b56b6e6 +NEEDED_MONO_VERSION := 4c611593aca6de583ea6137c9813363669af768b NEEDED_MONO_BRANCH := 2019-10 MONO_DIRECTORY := mono From ae6a39884e703f1715ce5e4da6a261c752a7aa2d Mon Sep 17 00:00:00 2001 From: Thays Grazia Date: Tue, 15 Oct 2019 16:37:48 -0300 Subject: [PATCH 06/34] Removing enter_gc_safe and exit_gc_safe because now it's already gc_safe in this part of code, after a mono change. --- runtime/monotouch-main.m | 2 -- 1 file changed, 2 deletions(-) diff --git a/runtime/monotouch-main.m b/runtime/monotouch-main.m index 9b63621c2254..1a5c2a424a00 100644 --- a/runtime/monotouch-main.m +++ b/runtime/monotouch-main.m @@ -476,9 +476,7 @@ - (void) memoryWarning: (NSNotification *) sender mono_domain_set_config (mono_domain_get (), base_dir, config_file_name); - MONO_ENTER_GC_SAFE; rv = xamarin_extension_main (argc, argv); - MONO_EXIT_GC_SAFE; break; case XamarinLaunchModeApp: rv = mono_jit_exec (mono_domain_get (), assembly, managed_argc, managed_argv); From 588ad3f152cbcd9e00762d6e3a3512cb2633c44d Mon Sep 17 00:00:00 2001 From: Thays Grazia Date: Wed, 16 Oct 2019 10:43:47 -0300 Subject: [PATCH 07/34] Adding another known exception to LLVM exception list. --- tests/mtouch/SdkTest.cs | 1 + 1 file changed, 1 insertion(+) diff --git a/tests/mtouch/SdkTest.cs b/tests/mtouch/SdkTest.cs index d6ec2fbf79b8..4a501b7c216b 100644 --- a/tests/mtouch/SdkTest.cs +++ b/tests/mtouch/SdkTest.cs @@ -302,6 +302,7 @@ static string [] GetWatchOSAssemblies () "LLVM failed for 'd__56.MoveNext': non-finally/catch/fault clause.", "LLVM failed for 'd__61`2.MoveNext': non-finally/catch/fault clause.", "LLVM failed for 'd__61`2.MoveNext': non-finally/catch/fault clause.", + "LLVM failed for 'NetworkStream.Read': non-finally/catch/fault clause.", }) }, { "System.Core.dll", new Tuple (0, new string [] { "LLVM failed for 'EnterTryCatchFinallyInstruction.Run': non-finally/catch/fault clause.", From 1d2931e1ef518163a53d97a5019f80518403b5f9 Mon Sep 17 00:00:00 2001 From: Thays Grazia Date: Wed, 16 Oct 2019 18:37:06 -0300 Subject: [PATCH 08/34] Bump mono --- Make.config | 2 +- mk/mono.mk | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Make.config b/Make.config index 2ddfd1cce73d..6d3297f8ee5b 100644 --- a/Make.config +++ b/Make.config @@ -71,7 +71,7 @@ MONO_HASH := $(NEEDED_MONO_VERSION) # Minimum Mono version for building XI/XM MIN_MONO_VERSION=6.8.0.0 MAX_MONO_VERSION=6.8.99 -MIN_MONO_URL=https://xamjenkinsartifact.azureedge.net/build-package-osx-mono/2019-10/8/4c611593aca6de583ea6137c9813363669af768b/MonoFramework-MDK-6.8.0.5.macos10.xamarin.universal.pkg +MIN_MONO_URL=https://xamjenkinsartifact.azureedge.net/build-package-osx-mono/2019-10/21/5f655e63c5088b1635961b59c3f11d5fe7302566/MonoFramework-MDK-6.8.0.18.macos10.xamarin.universal.pkg # Minimum Mono version for Xamarin.Mac apps using the system mono MIN_XM_MONO_VERSION=6.4.0.94 diff --git a/mk/mono.mk b/mk/mono.mk index ff0326e47416..4b6fc5f93c30 100644 --- a/mk/mono.mk +++ b/mk/mono.mk @@ -1,4 +1,4 @@ -NEEDED_MONO_VERSION := 4c611593aca6de583ea6137c9813363669af768b +NEEDED_MONO_VERSION := 5f655e63c5088b1635961b59c3f11d5fe7302566 NEEDED_MONO_BRANCH := 2019-10 MONO_DIRECTORY := mono From c107c9e7bb3e0cc642780e3a3a4ad7c74dbfee68 Mon Sep 17 00:00:00 2001 From: Thays Grazia Date: Wed, 16 Oct 2019 18:47:23 -0300 Subject: [PATCH 09/34] Adding another known exception to LLVM exception list. --- tests/mtouch/SdkTest.cs | 1 + 1 file changed, 1 insertion(+) diff --git a/tests/mtouch/SdkTest.cs b/tests/mtouch/SdkTest.cs index 4a501b7c216b..dd1cc312ac76 100644 --- a/tests/mtouch/SdkTest.cs +++ b/tests/mtouch/SdkTest.cs @@ -303,6 +303,7 @@ static string [] GetWatchOSAssemblies () "LLVM failed for 'd__61`2.MoveNext': non-finally/catch/fault clause.", "LLVM failed for 'd__61`2.MoveNext': non-finally/catch/fault clause.", "LLVM failed for 'NetworkStream.Read': non-finally/catch/fault clause.", + "LLVM failed for 'NetworkStream.Write': non-finally/catch/fault clause.", }) }, { "System.Core.dll", new Tuple (0, new string [] { "LLVM failed for 'EnterTryCatchFinallyInstruction.Run': non-finally/catch/fault clause.", From 7fac28c567c5187540565eb259370a23efb456d3 Mon Sep 17 00:00:00 2001 From: Thays Grazia Date: Thu, 17 Oct 2019 10:47:12 -0300 Subject: [PATCH 10/34] Needs this ifdef because of this https://github.com/mono/mono/pull/17260. --- src/Foundation/NSUrlSessionHandler.cs | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/Foundation/NSUrlSessionHandler.cs b/src/Foundation/NSUrlSessionHandler.cs index 20bb46b6f5c9..f98b6ef62b96 100644 --- a/src/Foundation/NSUrlSessionHandler.cs +++ b/src/Foundation/NSUrlSessionHandler.cs @@ -831,7 +831,11 @@ protected override void Dispose (bool disposing) base.Dispose (disposing); } +#if __WATCHOS__ + protected override Task SerializeToStreamAsync (Stream stream, TransportContext context) +#else protected internal override Task SerializeToStreamAsync (Stream stream, TransportContext context) +#endif { if (contentCopied) { if (!content.CanSeek) { From 192258fa2693f9ebd3ab247c0c9e2f97e9576261 Mon Sep 17 00:00:00 2001 From: Thays Grazia Date: Fri, 18 Oct 2019 10:50:10 -0300 Subject: [PATCH 11/34] Adding another known exception to LLVM exception list. Bump mono --- Make.config | 2 +- mk/mono.mk | 2 +- tests/mtouch/SdkTest.cs | 11 +++++++++++ 3 files changed, 13 insertions(+), 2 deletions(-) diff --git a/Make.config b/Make.config index d32b7a242ea1..6cc861a9c385 100644 --- a/Make.config +++ b/Make.config @@ -72,7 +72,7 @@ MONO_HASH := $(NEEDED_MONO_VERSION) MIN_MONO_VERSION=6.8.0.0 MAX_MONO_VERSION=6.8.99 -MIN_MONO_URL=https://xamjenkinsartifact.azureedge.net/build-package-osx-mono/2019-10/21/5f655e63c5088b1635961b59c3f11d5fe7302566/MonoFramework-MDK-6.8.0.18.macos10.xamarin.universal.pkg +MIN_MONO_URL=https://xamjenkinsartifact.azureedge.net/build-package-osx-mono/2019-10/24/b19adbb5853e4c9f2d828d1c6ef476016d8c6b77/MonoFramework-MDK-6.8.0.21.macos10.xamarin.universal.pkg # Minimum Mono version for Xamarin.Mac apps using the system mono MIN_XM_MONO_VERSION=6.4.0.94 diff --git a/mk/mono.mk b/mk/mono.mk index 6ae55381d311..91136a9b22f8 100644 --- a/mk/mono.mk +++ b/mk/mono.mk @@ -1,4 +1,4 @@ -NEEDED_MONO_VERSION := 5f655e63c5088b1635961b59c3f11d5fe7302566 +NEEDED_MONO_VERSION := b19adbb5853e4c9f2d828d1c6ef476016d8c6b77 NEEDED_MONO_BRANCH := 2019-10 diff --git a/tests/mtouch/SdkTest.cs b/tests/mtouch/SdkTest.cs index d7096a39392b..0858fdcd70ab 100644 --- a/tests/mtouch/SdkTest.cs +++ b/tests/mtouch/SdkTest.cs @@ -304,10 +304,21 @@ static string [] GetWatchOSAssemblies () "LLVM failed for 'd__61`2.MoveNext': non-finally/catch/fault clause.", "LLVM failed for 'NetworkStream.Read': non-finally/catch/fault clause.", "LLVM failed for 'NetworkStream.Write': non-finally/catch/fault clause.", + "LLVM failed for 'NetworkStream.BeginRead': non-finally/catch/fault clause.", + "LLVM failed for 'NetworkStream.EndRead': non-finally/catch/fault clause.", + "LLVM failed for 'NetworkStream.BeginWrite': non-finally/catch/fault clause.", + "LLVM failed for 'NetworkStream.EndWrite': non-finally/catch/fault clause.", + "LLVM failed for 'NetworkStream.ReadAsync': non-finally/catch/fault clause.", + "LLVM failed for 'NetworkStream.WriteAsync': non-finally/catch/fault clause.", }) }, { "System.Core.dll", new Tuple (0, new string [] { "LLVM failed for 'EnterTryCatchFinallyInstruction.Run': non-finally/catch/fault clause.", }) }, + { "System.Net.Http.dll", new Tuple (0, new string [] { + "LLVM failed for 'HttpContent.CopyToAsync': non-finally/catch/fault clause.", + "LLVM failed for 'HttpContent.LoadIntoBufferAsync': non-finally/catch/fault clause.", + "LLVM failed for 'd__47.MoveNext': non-finally/catch/fault clause.", + }) }, { "mscorlib.dll", new Tuple (0, new string [] { "LLVM failed for 'Console.Write': opcode arglist", "LLVM failed for 'Console.WriteLine': opcode arglist", From 531bd8ed7f82b11535bff9d86fabd883c43a662d Mon Sep 17 00:00:00 2001 From: Thays Grazia Date: Mon, 21 Oct 2019 11:54:16 -0300 Subject: [PATCH 12/34] Enabling again System.Net.Security.Tests. --- ...ammac_net_4_5_System_xunit-test.dll.ignore | 116 ------------------ 1 file changed, 116 deletions(-) diff --git a/tests/bcl-test/macOSModern-xammac_net_4_5_System_xunit-test.dll.ignore b/tests/bcl-test/macOSModern-xammac_net_4_5_System_xunit-test.dll.ignore index 9f6934406d85..c0031ca97289 100644 --- a/tests/bcl-test/macOSModern-xammac_net_4_5_System_xunit-test.dll.ignore +++ b/tests/bcl-test/macOSModern-xammac_net_4_5_System_xunit-test.dll.ignore @@ -1,118 +1,2 @@ # System.Net.Test.Common.VirtualNetwork+VirtualNetworkConnectionBroken : Connection broken # Created a mono issue for them: https://github.com/mono/mono/issues/15929 -System.Net.Security.Tests.SslStreamStreamToStreamTest_BeginEnd.SslStream_StreamToStream_WriteAsync_ReadByte_Success -System.Net.Security.Tests.SslStreamStreamToStreamTest_BeginEnd.SslStream_StreamToStream_Authentication_IncorrectServerName_Fail -System.Net.Security.Tests.SslStreamStreamToStreamTest_BeginEnd.SslStream_StreamToStream_Dispose_Throws -System.Net.Security.Tests.SslStreamStreamToStreamTest_BeginEnd.SslStream_StreamToStream_WriteAsync_ReadAsync_Pending_Success -System.Net.Security.Tests.SslStreamStreamToStreamTest_BeginEnd.SslStream_StreamToStream_Successive_ClientWrite_Async_Success -System.Net.Security.Tests.SslStreamStreamToStreamTest_BeginEnd.SslStream_StreamToStream_Write_ReadByte_Success -System.Net.Security.Tests.SslStreamStreamToStreamTest_BeginEnd.SslStream_StreamToStream_EOFDuringFrameRead_ThrowsIOException -System.Net.Security.Tests.SslStreamStreamToStreamTest_BeginEnd.SslStream_StreamToStream_Successive_ClientWrite_Sync_Success -System.Net.Security.Tests.SslStreamStreamToStreamTest_BeginEnd.SslStream_StreamToStream_Authentication_Success -System.Net.Security.Tests.SslStreamStreamToStreamTest_BeginEnd.SslStream_StreamToStream_Successive_ClientWrite_WithZeroBytes_Success -System.Net.Security.Tests.SslStreamStreamToStreamTest_BeginEnd.SslStream_StreamToStream_LargeWrites_Sync_Success(randomizedData: True) -System.Net.Security.Tests.SslStreamStreamToStreamTest_BeginEnd.SslStream_StreamToStream_LargeWrites_Sync_Success(randomizedData: False) -System.Net.Security.Tests.ServerAllowNoEncryptionTest.ServerAllowNoEncryption_ClientRequireEncryption_ConnectWithEncryption -System.Net.Security.Tests.AsyncSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: Tls11, serverProtocols: null) -System.Net.Security.Tests.AsyncSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: None, serverProtocols: None) -System.Net.Security.Tests.AsyncSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: None, serverProtocols: null) -System.Net.Security.Tests.AsyncSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: Tls | Tls11 | Tls12, serverProtocols: null) -System.Net.Security.Tests.AsyncSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: null, serverProtocols: Tls12) -System.Net.Security.Tests.AsyncSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: null, serverProtocols: Tls | Tls11 | Tls12) -System.Net.Security.Tests.AsyncSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: null, serverProtocols: Default) -System.Net.Security.Tests.AsyncSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: null, serverProtocols: None) -System.Net.Security.Tests.AsyncSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: null, serverProtocols: Tls11) -System.Net.Security.Tests.AsyncSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: Tls12, serverProtocols: null) -System.Net.Security.Tests.AsyncSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: null, serverProtocols: null) -System.Net.Security.Tests.AsyncSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: Default, serverProtocols: null) -System.Net.Security.Tests.ServerAsyncAuthenticateTest.ServerAsyncAuthenticate_EachSupportedProtocol_Success(protocol: Tls12) -System.Net.Security.Tests.ServerAsyncAuthenticateTest.ServerAsyncAuthenticate_EachSupportedProtocol_Success(protocol: Ssl3) -System.Net.Security.Tests.ServerAsyncAuthenticateTest.ServerAsyncAuthenticate_EachSupportedProtocol_Success(protocol: Default) -System.Net.Security.Tests.ServerAsyncAuthenticateTest.ServerAsyncAuthenticate_EachSupportedProtocol_Success(protocol: Tls11) -System.Net.Security.Tests.ServerAsyncAuthenticateTest.ServerAsyncAuthenticate_EachSupportedProtocol_Success(protocol: Tls) -System.Net.Security.Tests.ServerAsyncAuthenticateTest.ServerAsyncAuthenticate_AllClientVsIndividualServerSupportedProtocols_Success(serverProtocol: Default) -System.Net.Security.Tests.ServerAsyncAuthenticateTest.ServerAsyncAuthenticate_AllClientVsIndividualServerSupportedProtocols_Success(serverProtocol: Tls11) -System.Net.Security.Tests.ServerAsyncAuthenticateTest.ServerAsyncAuthenticate_AllClientVsIndividualServerSupportedProtocols_Success(serverProtocol: Ssl3) -System.Net.Security.Tests.ServerAsyncAuthenticateTest.ServerAsyncAuthenticate_AllClientVsIndividualServerSupportedProtocols_Success(serverProtocol: Tls) -System.Net.Security.Tests.ServerAsyncAuthenticateTest.ServerAsyncAuthenticate_AllClientVsIndividualServerSupportedProtocols_Success(serverProtocol: Tls12) -System.Net.Security.Tests.SyncSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: null, serverProtocols: Tls12) -System.Net.Security.Tests.SyncSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: None, serverProtocols: None) -System.Net.Security.Tests.SyncSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: null, serverProtocols: Tls | Tls11 | Tls12) -System.Net.Security.Tests.SyncSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: null, serverProtocols: Default) -System.Net.Security.Tests.SyncSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: Tls11, serverProtocols: null) -System.Net.Security.Tests.SyncSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: null, serverProtocols: Tls11) -System.Net.Security.Tests.SyncSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: None, serverProtocols: null) -System.Net.Security.Tests.SyncSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: null, serverProtocols: None) -System.Net.Security.Tests.SyncSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: Tls12, serverProtocols: null) -System.Net.Security.Tests.SyncSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: Default, serverProtocols: null) -System.Net.Security.Tests.SyncSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: null, serverProtocols: null) -System.Net.Security.Tests.SyncSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: Tls | Tls11 | Tls12, serverProtocols: null) -System.Net.Security.Tests.SslStreamAlertsTest.SslStream_StreamToStream_DataAfterShutdown_Fail -System.Net.Security.Tests.SslStreamCredentialCacheTest.SslStream_SameCertUsedForClientAndServer_Ok -System.Net.Security.Tests.SslClientAuthenticationOptionsTest.ClientOptions_ServerOptions_NotMutatedDuringAuthentication -System.Net.Security.Tests.CertificateValidationClientServer.CertificateValidationClientServer_EndToEnd_Ok(useClientSelectionCallback: True) -System.Net.Security.Tests.CertificateValidationClientServer.CertificateValidationClientServer_EndToEnd_Ok(useClientSelectionCallback: False) -System.Net.Security.Tests.SslStreamNetworkStreamTest.SslStream_SendReceiveOverNetworkStream_Ok -System.Net.Security.Tests.ServerRequireEncryptionTest.ServerRequireEncryption_ClientAllowNoEncryption_ConnectWithEncryption -System.Net.Security.Tests.ServerRequireEncryptionTest.ServerRequireEncryption_ClientRequireEncryption_ConnectWithEncryption -System.Net.Security.Tests.SslStreamStreamToStreamTest_Sync.SslStream_StreamToStream_Dispose_Throws -System.Net.Security.Tests.SslStreamStreamToStreamTest_Sync.SslStream_StreamToStream_EOFDuringFrameRead_ThrowsIOException -System.Net.Security.Tests.SslStreamStreamToStreamTest_Sync.SslStream_StreamToStream_Authentication_Success -System.Net.Security.Tests.SslStreamStreamToStreamTest_Sync.SslStream_StreamToStream_Authentication_IncorrectServerName_Fail -System.Net.Security.Tests.SslStreamStreamToStreamTest_Sync.SslStream_StreamToStream_Successive_ClientWrite_WithZeroBytes_Success -System.Net.Security.Tests.SslStreamStreamToStreamTest_Sync.SslStream_StreamToStream_LargeWrites_Sync_Success(randomizedData: True) -System.Net.Security.Tests.SslStreamStreamToStreamTest_Sync.SslStream_StreamToStream_LargeWrites_Sync_Success(randomizedData: False) -System.Net.Security.Tests.SslStreamStreamToStreamTest_Sync.SslStream_StreamToStream_Successive_ClientWrite_Async_Success -System.Net.Security.Tests.SslStreamStreamToStreamTest_Sync.SslStream_StreamToStream_Write_ReadByte_Success -System.Net.Security.Tests.SslStreamStreamToStreamTest_Sync.SslStream_StreamToStream_WriteAsync_ReadAsync_Pending_Success -System.Net.Security.Tests.SslStreamStreamToStreamTest_Sync.SslStream_StreamToStream_Successive_ClientWrite_Sync_Success -System.Net.Security.Tests.SslStreamStreamToStreamTest_Sync.SslStream_StreamToStream_WriteAsync_ReadByte_Success -System.Net.Security.Tests.SslStreamStreamToStreamTest_Async.SslStream_StreamToStream_Authentication_IncorrectServerName_Fail -System.Net.Security.Tests.SslStreamStreamToStreamTest_Async.SslStream_StreamToStream_WriteAsync_ReadAsync_Pending_Success -System.Net.Security.Tests.SslStreamStreamToStreamTest_Async.SslStream_StreamToStream_Successive_ClientWrite_WithZeroBytes_Success -System.Net.Security.Tests.SslStreamStreamToStreamTest_Async.SslStream_StreamToStream_Authentication_Success -System.Net.Security.Tests.SslStreamStreamToStreamTest_Async.SslStream_StreamToStream_EOFDuringFrameRead_ThrowsIOException -System.Net.Security.Tests.SslStreamStreamToStreamTest_Async.SslStream_StreamToStream_Successive_ClientWrite_Sync_Success -System.Net.Security.Tests.SslStreamStreamToStreamTest_Async.SslStream_StreamToStream_LargeWrites_Sync_Success(randomizedData: False) -System.Net.Security.Tests.SslStreamStreamToStreamTest_Async.SslStream_StreamToStream_LargeWrites_Sync_Success(randomizedData: True) -System.Net.Security.Tests.SslStreamStreamToStreamTest_Async.SslStream_StreamToStream_Write_ReadByte_Success -System.Net.Security.Tests.SslStreamStreamToStreamTest_Async.SslStream_StreamToStream_Successive_ClientWrite_Async_Success -System.Net.Security.Tests.SslStreamStreamToStreamTest_Async.SslStream_StreamToStream_WriteAsync_ReadByte_Success -System.Net.Security.Tests.SslStreamStreamToStreamTest_Async.SslStream_StreamToStream_Dispose_Throws -System.Net.Security.Tests.ClientAsyncAuthenticateTest.ClientAsyncAuthenticate_EachSupportedProtocol_Success(protocol: Default) -System.Net.Security.Tests.ClientAsyncAuthenticateTest.ClientAsyncAuthenticate_EachSupportedProtocol_Success(protocol: Ssl3) -System.Net.Security.Tests.ClientAsyncAuthenticateTest.ClientAsyncAuthenticate_EachSupportedProtocol_Success(protocol: Tls11) -System.Net.Security.Tests.ClientAsyncAuthenticateTest.ClientAsyncAuthenticate_EachSupportedProtocol_Success(protocol: Tls) -System.Net.Security.Tests.ClientAsyncAuthenticateTest.ClientAsyncAuthenticate_EachSupportedProtocol_Success(protocol: Tls12) -System.Net.Security.Tests.ClientAsyncAuthenticateTest.ClientAsyncAuthenticate_AllServerAllClient_Success -System.Net.Security.Tests.ClientAsyncAuthenticateTest.ClientAsyncAuthenticate_AllServerVsIndividualClientSupportedProtocols_Success(clientProtocol: Tls11) -System.Net.Security.Tests.ClientAsyncAuthenticateTest.ClientAsyncAuthenticate_AllServerVsIndividualClientSupportedProtocols_Success(clientProtocol: Ssl3) -System.Net.Security.Tests.ClientAsyncAuthenticateTest.ClientAsyncAuthenticate_AllServerVsIndividualClientSupportedProtocols_Success(clientProtocol: Tls12) -System.Net.Security.Tests.ClientAsyncAuthenticateTest.ClientAsyncAuthenticate_AllServerVsIndividualClientSupportedProtocols_Success(clientProtocol: Tls) -System.Net.Security.Tests.ClientAsyncAuthenticateTest.ClientAsyncAuthenticate_AllServerVsIndividualClientSupportedProtocols_Success(clientProtocol: Default) -System.Net.Security.Tests.ClientAsyncAuthenticateTest.ClientAsyncAuthenticate_ServerRequireEncryption_ConnectWithEncryption -System.Net.Security.Tests.ClientAsyncAuthenticateTest.ClientAsyncAuthenticate_MismatchProtocols_Fails(serverProtocol: Tls12, clientProtocol: Tls, expectedException: typeof(System.Security.Authentication.AuthenticationException)) -System.Net.Security.Tests.ClientAsyncAuthenticateTest.ClientAsyncAuthenticate_MismatchProtocols_Fails(serverProtocol: Tls11, clientProtocol: Tls, expectedException: typeof(System.Security.Authentication.AuthenticationException)) -System.Net.Security.Tests.ClientAsyncAuthenticateTest.ClientAsyncAuthenticate_MismatchProtocols_Fails(serverProtocol: Tls12, clientProtocol: Tls11, expectedException: typeof(System.Security.Authentication.AuthenticationException)) -System.Net.Security.Tests.ClientAsyncAuthenticateTest.ClientAsyncAuthenticate_SslStreamClientServerNone_UseStrongCryptoSet -System.Net.Security.Tests.ClientAsyncAuthenticateTest.ClientAsyncAuthenticate_IndividualServerVsAllClientSupportedProtocols_Success(serverProtocol: Tls12) -System.Net.Security.Tests.ClientAsyncAuthenticateTest.ClientAsyncAuthenticate_IndividualServerVsAllClientSupportedProtocols_Success(serverProtocol: Tls) -System.Net.Security.Tests.ClientAsyncAuthenticateTest.ClientAsyncAuthenticate_IndividualServerVsAllClientSupportedProtocols_Success(serverProtocol: Tls11) -System.Net.Security.Tests.ClientAsyncAuthenticateTest.ClientAsyncAuthenticate_IndividualServerVsAllClientSupportedProtocols_Success(serverProtocol: Ssl3) -System.Net.Security.Tests.ClientAsyncAuthenticateTest.ClientAsyncAuthenticate_IndividualServerVsAllClientSupportedProtocols_Success(serverProtocol: Default) -System.Net.Security.Tests.ApmSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: Tls | Tls11 | Tls12, serverProtocols: null) -System.Net.Security.Tests.ApmSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: Tls11, serverProtocols: null) -System.Net.Security.Tests.ApmSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: null, serverProtocols: Tls | Tls11 | Tls12) -System.Net.Security.Tests.ApmSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: null, serverProtocols: Tls11) -System.Net.Security.Tests.ApmSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: null, serverProtocols: None) -System.Net.Security.Tests.ApmSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: None, serverProtocols: None) -System.Net.Security.Tests.ApmSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: None, serverProtocols: null) -System.Net.Security.Tests.ApmSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: Default, serverProtocols: null) -System.Net.Security.Tests.ApmSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: null, serverProtocols: Tls12) -System.Net.Security.Tests.ApmSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: null, serverProtocols: Default) -System.Net.Security.Tests.ApmSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: Tls12, serverProtocols: null) -System.Net.Security.Tests.ApmSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: null, serverProtocols: null) -System.Net.Security.Tests.ClientDefaultEncryptionTest.ClientDefaultEncryption_ServerRequireEncryption_ConnectWithEncryption -System.Net.Security.Tests.ClientDefaultEncryptionTest.ClientDefaultEncryption_ServerAllowNoEncryption_ConnectWithEncryption -System.Net.Security.Tests.ServerAllowNoEncryptionTest.ServerAllowNoEncryption_ClientAllowNoEncryption_ConnectWithEncryption -KLASS:System.Net.Security.Tests.SslStreamSniTest \ No newline at end of file From 2163fd3cf68e8f5eeb4a661fe885e80bb688d64a Mon Sep 17 00:00:00 2001 From: Thays Grazia Date: Mon, 21 Oct 2019 14:29:16 -0300 Subject: [PATCH 13/34] Bump mono --- Make.config | 2 +- mk/mono.mk | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Make.config b/Make.config index 6cc861a9c385..3e3b7cd619b3 100644 --- a/Make.config +++ b/Make.config @@ -72,7 +72,7 @@ MONO_HASH := $(NEEDED_MONO_VERSION) MIN_MONO_VERSION=6.8.0.0 MAX_MONO_VERSION=6.8.99 -MIN_MONO_URL=https://xamjenkinsartifact.azureedge.net/build-package-osx-mono/2019-10/24/b19adbb5853e4c9f2d828d1c6ef476016d8c6b77/MonoFramework-MDK-6.8.0.21.macos10.xamarin.universal.pkg +MIN_MONO_URL=https://xamjenkinsartifact.azureedge.net/build-package-osx-mono/2019-10/27/57660b72f46738855162c39a53e012fef4797442/MonoFramework-MDK-6.8.0.23.macos10.xamarin.universal.pkg # Minimum Mono version for Xamarin.Mac apps using the system mono MIN_XM_MONO_VERSION=6.4.0.94 diff --git a/mk/mono.mk b/mk/mono.mk index 91136a9b22f8..fc55c49c1a8e 100644 --- a/mk/mono.mk +++ b/mk/mono.mk @@ -1,4 +1,4 @@ -NEEDED_MONO_VERSION := b19adbb5853e4c9f2d828d1c6ef476016d8c6b77 +NEEDED_MONO_VERSION := 57660b72f46738855162c39a53e012fef4797442 NEEDED_MONO_BRANCH := 2019-10 From 61b14a99328113c00631e69281e07877820b4316 Mon Sep 17 00:00:00 2001 From: Thays Grazia Date: Tue, 22 Oct 2019 10:49:35 -0300 Subject: [PATCH 14/34] Disabling again System.Net.Security.Tests. --- ...ammac_net_4_5_System_xunit-test.dll.ignore | 116 ++++++++++++++++++ 1 file changed, 116 insertions(+) diff --git a/tests/bcl-test/macOSModern-xammac_net_4_5_System_xunit-test.dll.ignore b/tests/bcl-test/macOSModern-xammac_net_4_5_System_xunit-test.dll.ignore index c0031ca97289..fb99afd62156 100644 --- a/tests/bcl-test/macOSModern-xammac_net_4_5_System_xunit-test.dll.ignore +++ b/tests/bcl-test/macOSModern-xammac_net_4_5_System_xunit-test.dll.ignore @@ -1,2 +1,118 @@ # System.Net.Test.Common.VirtualNetwork+VirtualNetworkConnectionBroken : Connection broken # Created a mono issue for them: https://github.com/mono/mono/issues/15929 +System.Net.Security.Tests.SslStreamStreamToStreamTest_BeginEnd.SslStream_StreamToStream_WriteAsync_ReadByte_Success +System.Net.Security.Tests.SslStreamStreamToStreamTest_BeginEnd.SslStream_StreamToStream_Authentication_IncorrectServerName_Fail +System.Net.Security.Tests.SslStreamStreamToStreamTest_BeginEnd.SslStream_StreamToStream_Dispose_Throws +System.Net.Security.Tests.SslStreamStreamToStreamTest_BeginEnd.SslStream_StreamToStream_WriteAsync_ReadAsync_Pending_Success +System.Net.Security.Tests.SslStreamStreamToStreamTest_BeginEnd.SslStream_StreamToStream_Successive_ClientWrite_Async_Success +System.Net.Security.Tests.SslStreamStreamToStreamTest_BeginEnd.SslStream_StreamToStream_Write_ReadByte_Success +System.Net.Security.Tests.SslStreamStreamToStreamTest_BeginEnd.SslStream_StreamToStream_EOFDuringFrameRead_ThrowsIOException +System.Net.Security.Tests.SslStreamStreamToStreamTest_BeginEnd.SslStream_StreamToStream_Successive_ClientWrite_Sync_Success +System.Net.Security.Tests.SslStreamStreamToStreamTest_BeginEnd.SslStream_StreamToStream_Authentication_Success +System.Net.Security.Tests.SslStreamStreamToStreamTest_BeginEnd.SslStream_StreamToStream_Successive_ClientWrite_WithZeroBytes_Success +System.Net.Security.Tests.SslStreamStreamToStreamTest_BeginEnd.SslStream_StreamToStream_LargeWrites_Sync_Success(randomizedData: True) +System.Net.Security.Tests.SslStreamStreamToStreamTest_BeginEnd.SslStream_StreamToStream_LargeWrites_Sync_Success(randomizedData: False) +System.Net.Security.Tests.ServerAllowNoEncryptionTest.ServerAllowNoEncryption_ClientRequireEncryption_ConnectWithEncryption +System.Net.Security.Tests.AsyncSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: Tls11, serverProtocols: null) +System.Net.Security.Tests.AsyncSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: None, serverProtocols: None) +System.Net.Security.Tests.AsyncSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: None, serverProtocols: null) +System.Net.Security.Tests.AsyncSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: Tls | Tls11 | Tls12, serverProtocols: null) +System.Net.Security.Tests.AsyncSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: null, serverProtocols: Tls12) +System.Net.Security.Tests.AsyncSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: null, serverProtocols: Tls | Tls11 | Tls12) +System.Net.Security.Tests.AsyncSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: null, serverProtocols: Default) +System.Net.Security.Tests.AsyncSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: null, serverProtocols: None) +System.Net.Security.Tests.AsyncSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: null, serverProtocols: Tls11) +System.Net.Security.Tests.AsyncSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: Tls12, serverProtocols: null) +System.Net.Security.Tests.AsyncSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: null, serverProtocols: null) +System.Net.Security.Tests.AsyncSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: Default, serverProtocols: null) +System.Net.Security.Tests.ServerAsyncAuthenticateTest.ServerAsyncAuthenticate_EachSupportedProtocol_Success(protocol: Tls12) +System.Net.Security.Tests.ServerAsyncAuthenticateTest.ServerAsyncAuthenticate_EachSupportedProtocol_Success(protocol: Ssl3) +System.Net.Security.Tests.ServerAsyncAuthenticateTest.ServerAsyncAuthenticate_EachSupportedProtocol_Success(protocol: Default) +System.Net.Security.Tests.ServerAsyncAuthenticateTest.ServerAsyncAuthenticate_EachSupportedProtocol_Success(protocol: Tls11) +System.Net.Security.Tests.ServerAsyncAuthenticateTest.ServerAsyncAuthenticate_EachSupportedProtocol_Success(protocol: Tls) +System.Net.Security.Tests.ServerAsyncAuthenticateTest.ServerAsyncAuthenticate_AllClientVsIndividualServerSupportedProtocols_Success(serverProtocol: Default) +System.Net.Security.Tests.ServerAsyncAuthenticateTest.ServerAsyncAuthenticate_AllClientVsIndividualServerSupportedProtocols_Success(serverProtocol: Tls11) +System.Net.Security.Tests.ServerAsyncAuthenticateTest.ServerAsyncAuthenticate_AllClientVsIndividualServerSupportedProtocols_Success(serverProtocol: Ssl3) +System.Net.Security.Tests.ServerAsyncAuthenticateTest.ServerAsyncAuthenticate_AllClientVsIndividualServerSupportedProtocols_Success(serverProtocol: Tls) +System.Net.Security.Tests.ServerAsyncAuthenticateTest.ServerAsyncAuthenticate_AllClientVsIndividualServerSupportedProtocols_Success(serverProtocol: Tls12) +System.Net.Security.Tests.SyncSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: null, serverProtocols: Tls12) +System.Net.Security.Tests.SyncSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: None, serverProtocols: None) +System.Net.Security.Tests.SyncSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: null, serverProtocols: Tls | Tls11 | Tls12) +System.Net.Security.Tests.SyncSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: null, serverProtocols: Default) +System.Net.Security.Tests.SyncSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: Tls11, serverProtocols: null) +System.Net.Security.Tests.SyncSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: null, serverProtocols: Tls11) +System.Net.Security.Tests.SyncSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: None, serverProtocols: null) +System.Net.Security.Tests.SyncSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: null, serverProtocols: None) +System.Net.Security.Tests.SyncSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: Tls12, serverProtocols: null) +System.Net.Security.Tests.SyncSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: Default, serverProtocols: null) +System.Net.Security.Tests.SyncSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: null, serverProtocols: null) +System.Net.Security.Tests.SyncSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: Tls | Tls11 | Tls12, serverProtocols: null) +System.Net.Security.Tests.SslStreamAlertsTest.SslStream_StreamToStream_DataAfterShutdown_Fail +System.Net.Security.Tests.SslStreamCredentialCacheTest.SslStream_SameCertUsedForClientAndServer_Ok +System.Net.Security.Tests.SslClientAuthenticationOptionsTest.ClientOptions_ServerOptions_NotMutatedDuringAuthentication +System.Net.Security.Tests.CertificateValidationClientServer.CertificateValidationClientServer_EndToEnd_Ok(useClientSelectionCallback: True) +System.Net.Security.Tests.CertificateValidationClientServer.CertificateValidationClientServer_EndToEnd_Ok(useClientSelectionCallback: False) +System.Net.Security.Tests.SslStreamNetworkStreamTest.SslStream_SendReceiveOverNetworkStream_Ok +System.Net.Security.Tests.ServerRequireEncryptionTest.ServerRequireEncryption_ClientAllowNoEncryption_ConnectWithEncryption +System.Net.Security.Tests.ServerRequireEncryptionTest.ServerRequireEncryption_ClientRequireEncryption_ConnectWithEncryption +System.Net.Security.Tests.SslStreamStreamToStreamTest_Sync.SslStream_StreamToStream_Dispose_Throws +System.Net.Security.Tests.SslStreamStreamToStreamTest_Sync.SslStream_StreamToStream_EOFDuringFrameRead_ThrowsIOException +System.Net.Security.Tests.SslStreamStreamToStreamTest_Sync.SslStream_StreamToStream_Authentication_Success +System.Net.Security.Tests.SslStreamStreamToStreamTest_Sync.SslStream_StreamToStream_Authentication_IncorrectServerName_Fail +System.Net.Security.Tests.SslStreamStreamToStreamTest_Sync.SslStream_StreamToStream_Successive_ClientWrite_WithZeroBytes_Success +System.Net.Security.Tests.SslStreamStreamToStreamTest_Sync.SslStream_StreamToStream_LargeWrites_Sync_Success(randomizedData: True) +System.Net.Security.Tests.SslStreamStreamToStreamTest_Sync.SslStream_StreamToStream_LargeWrites_Sync_Success(randomizedData: False) +System.Net.Security.Tests.SslStreamStreamToStreamTest_Sync.SslStream_StreamToStream_Successive_ClientWrite_Async_Success +System.Net.Security.Tests.SslStreamStreamToStreamTest_Sync.SslStream_StreamToStream_Write_ReadByte_Success +System.Net.Security.Tests.SslStreamStreamToStreamTest_Sync.SslStream_StreamToStream_WriteAsync_ReadAsync_Pending_Success +System.Net.Security.Tests.SslStreamStreamToStreamTest_Sync.SslStream_StreamToStream_Successive_ClientWrite_Sync_Success +System.Net.Security.Tests.SslStreamStreamToStreamTest_Sync.SslStream_StreamToStream_WriteAsync_ReadByte_Success +System.Net.Security.Tests.SslStreamStreamToStreamTest_Async.SslStream_StreamToStream_Authentication_IncorrectServerName_Fail +System.Net.Security.Tests.SslStreamStreamToStreamTest_Async.SslStream_StreamToStream_WriteAsync_ReadAsync_Pending_Success +System.Net.Security.Tests.SslStreamStreamToStreamTest_Async.SslStream_StreamToStream_Successive_ClientWrite_WithZeroBytes_Success +System.Net.Security.Tests.SslStreamStreamToStreamTest_Async.SslStream_StreamToStream_Authentication_Success +System.Net.Security.Tests.SslStreamStreamToStreamTest_Async.SslStream_StreamToStream_EOFDuringFrameRead_ThrowsIOException +System.Net.Security.Tests.SslStreamStreamToStreamTest_Async.SslStream_StreamToStream_Successive_ClientWrite_Sync_Success +System.Net.Security.Tests.SslStreamStreamToStreamTest_Async.SslStream_StreamToStream_LargeWrites_Sync_Success(randomizedData: False) +System.Net.Security.Tests.SslStreamStreamToStreamTest_Async.SslStream_StreamToStream_LargeWrites_Sync_Success(randomizedData: True) +System.Net.Security.Tests.SslStreamStreamToStreamTest_Async.SslStream_StreamToStream_Write_ReadByte_Success +System.Net.Security.Tests.SslStreamStreamToStreamTest_Async.SslStream_StreamToStream_Successive_ClientWrite_Async_Success +System.Net.Security.Tests.SslStreamStreamToStreamTest_Async.SslStream_StreamToStream_WriteAsync_ReadByte_Success +System.Net.Security.Tests.SslStreamStreamToStreamTest_Async.SslStream_StreamToStream_Dispose_Throws +System.Net.Security.Tests.ClientAsyncAuthenticateTest.ClientAsyncAuthenticate_EachSupportedProtocol_Success(protocol: Default) +System.Net.Security.Tests.ClientAsyncAuthenticateTest.ClientAsyncAuthenticate_EachSupportedProtocol_Success(protocol: Ssl3) +System.Net.Security.Tests.ClientAsyncAuthenticateTest.ClientAsyncAuthenticate_EachSupportedProtocol_Success(protocol: Tls11) +System.Net.Security.Tests.ClientAsyncAuthenticateTest.ClientAsyncAuthenticate_EachSupportedProtocol_Success(protocol: Tls) +System.Net.Security.Tests.ClientAsyncAuthenticateTest.ClientAsyncAuthenticate_EachSupportedProtocol_Success(protocol: Tls12) +System.Net.Security.Tests.ClientAsyncAuthenticateTest.ClientAsyncAuthenticate_AllServerAllClient_Success +System.Net.Security.Tests.ClientAsyncAuthenticateTest.ClientAsyncAuthenticate_AllServerVsIndividualClientSupportedProtocols_Success(clientProtocol: Tls11) +System.Net.Security.Tests.ClientAsyncAuthenticateTest.ClientAsyncAuthenticate_AllServerVsIndividualClientSupportedProtocols_Success(clientProtocol: Ssl3) +System.Net.Security.Tests.ClientAsyncAuthenticateTest.ClientAsyncAuthenticate_AllServerVsIndividualClientSupportedProtocols_Success(clientProtocol: Tls12) +System.Net.Security.Tests.ClientAsyncAuthenticateTest.ClientAsyncAuthenticate_AllServerVsIndividualClientSupportedProtocols_Success(clientProtocol: Tls) +System.Net.Security.Tests.ClientAsyncAuthenticateTest.ClientAsyncAuthenticate_AllServerVsIndividualClientSupportedProtocols_Success(clientProtocol: Default) +System.Net.Security.Tests.ClientAsyncAuthenticateTest.ClientAsyncAuthenticate_ServerRequireEncryption_ConnectWithEncryption +System.Net.Security.Tests.ClientAsyncAuthenticateTest.ClientAsyncAuthenticate_MismatchProtocols_Fails(serverProtocol: Tls12, clientProtocol: Tls, expectedException: typeof(System.Security.Authentication.AuthenticationException)) +System.Net.Security.Tests.ClientAsyncAuthenticateTest.ClientAsyncAuthenticate_MismatchProtocols_Fails(serverProtocol: Tls11, clientProtocol: Tls, expectedException: typeof(System.Security.Authentication.AuthenticationException)) +System.Net.Security.Tests.ClientAsyncAuthenticateTest.ClientAsyncAuthenticate_MismatchProtocols_Fails(serverProtocol: Tls12, clientProtocol: Tls11, expectedException: typeof(System.Security.Authentication.AuthenticationException)) +System.Net.Security.Tests.ClientAsyncAuthenticateTest.ClientAsyncAuthenticate_SslStreamClientServerNone_UseStrongCryptoSet +System.Net.Security.Tests.ClientAsyncAuthenticateTest.ClientAsyncAuthenticate_IndividualServerVsAllClientSupportedProtocols_Success(serverProtocol: Tls12) +System.Net.Security.Tests.ClientAsyncAuthenticateTest.ClientAsyncAuthenticate_IndividualServerVsAllClientSupportedProtocols_Success(serverProtocol: Tls) +System.Net.Security.Tests.ClientAsyncAuthenticateTest.ClientAsyncAuthenticate_IndividualServerVsAllClientSupportedProtocols_Success(serverProtocol: Tls11) +System.Net.Security.Tests.ClientAsyncAuthenticateTest.ClientAsyncAuthenticate_IndividualServerVsAllClientSupportedProtocols_Success(serverProtocol: Ssl3) +System.Net.Security.Tests.ClientAsyncAuthenticateTest.ClientAsyncAuthenticate_IndividualServerVsAllClientSupportedProtocols_Success(serverProtocol: Default) +System.Net.Security.Tests.ApmSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: Tls | Tls11 | Tls12, serverProtocols: null) +System.Net.Security.Tests.ApmSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: Tls11, serverProtocols: null) +System.Net.Security.Tests.ApmSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: null, serverProtocols: Tls | Tls11 | Tls12) +System.Net.Security.Tests.ApmSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: null, serverProtocols: Tls11) +System.Net.Security.Tests.ApmSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: null, serverProtocols: None) +System.Net.Security.Tests.ApmSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: None, serverProtocols: None) +System.Net.Security.Tests.ApmSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: None, serverProtocols: null) +System.Net.Security.Tests.ApmSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: Default, serverProtocols: null) +System.Net.Security.Tests.ApmSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: null, serverProtocols: Tls12) +System.Net.Security.Tests.ApmSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: null, serverProtocols: Default) +System.Net.Security.Tests.ApmSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: Tls12, serverProtocols: null) +System.Net.Security.Tests.ApmSslStreamSystemDefaultTest.ClientAndServer_OneOrBothUseDefault_Ok(clientProtocols: null, serverProtocols: null) +System.Net.Security.Tests.ClientDefaultEncryptionTest.ClientDefaultEncryption_ServerRequireEncryption_ConnectWithEncryption +System.Net.Security.Tests.ClientDefaultEncryptionTest.ClientDefaultEncryption_ServerAllowNoEncryption_ConnectWithEncryption +System.Net.Security.Tests.ServerAllowNoEncryptionTest.ServerAllowNoEncryption_ClientAllowNoEncryption_ConnectWithEncryption +KLASS:System.Net.Security.Tests.SslStreamSniTest From 4c4e81cb1b4ac4ee7e241bf356fabd175c1447ab Mon Sep 17 00:00:00 2001 From: Thays Grazia Date: Wed, 23 Oct 2019 11:40:50 -0300 Subject: [PATCH 15/34] Bump mono --- Make.config | 2 +- mk/mono.mk | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Make.config b/Make.config index 3e3b7cd619b3..9ce635ecc3b2 100644 --- a/Make.config +++ b/Make.config @@ -72,7 +72,7 @@ MONO_HASH := $(NEEDED_MONO_VERSION) MIN_MONO_VERSION=6.8.0.0 MAX_MONO_VERSION=6.8.99 -MIN_MONO_URL=https://xamjenkinsartifact.azureedge.net/build-package-osx-mono/2019-10/27/57660b72f46738855162c39a53e012fef4797442/MonoFramework-MDK-6.8.0.23.macos10.xamarin.universal.pkg +MIN_MONO_URL=https://xamjenkinsartifact.azureedge.net/build-package-osx-mono/2019-10/32/d75c87694b90ed3ad614a14d93f5567ad8189e5e/MonoFramework-MDK-6.8.0.27.macos10.xamarin.universal.pkg # Minimum Mono version for Xamarin.Mac apps using the system mono MIN_XM_MONO_VERSION=6.4.0.94 diff --git a/mk/mono.mk b/mk/mono.mk index fc55c49c1a8e..5afa1f19906e 100644 --- a/mk/mono.mk +++ b/mk/mono.mk @@ -1,4 +1,4 @@ -NEEDED_MONO_VERSION := 57660b72f46738855162c39a53e012fef4797442 +NEEDED_MONO_VERSION := d75c87694b90ed3ad614a14d93f5567ad8189e5e NEEDED_MONO_BRANCH := 2019-10 From e0ab67b276cda90414e8845fd73ce172d49a0312 Mon Sep 17 00:00:00 2001 From: Thays Grazia Date: Thu, 24 Oct 2019 16:09:33 -0300 Subject: [PATCH 16/34] Bump mono --- Make.config | 2 +- mk/mono.mk | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Make.config b/Make.config index 9ce635ecc3b2..ba8978025151 100644 --- a/Make.config +++ b/Make.config @@ -72,7 +72,7 @@ MONO_HASH := $(NEEDED_MONO_VERSION) MIN_MONO_VERSION=6.8.0.0 MAX_MONO_VERSION=6.8.99 -MIN_MONO_URL=https://xamjenkinsartifact.azureedge.net/build-package-osx-mono/2019-10/32/d75c87694b90ed3ad614a14d93f5567ad8189e5e/MonoFramework-MDK-6.8.0.27.macos10.xamarin.universal.pkg +MIN_MONO_URL=https://xamjenkinsartifact.azureedge.net/build-package-osx-mono/2019-10/35/0c421f48b985b09b754c622d62262e12c464eca1/MonoFramework-MDK-6.8.0.30.macos10.xamarin.universal.pkg # Minimum Mono version for Xamarin.Mac apps using the system mono MIN_XM_MONO_VERSION=6.4.0.94 diff --git a/mk/mono.mk b/mk/mono.mk index 5afa1f19906e..fc9e66287e8c 100644 --- a/mk/mono.mk +++ b/mk/mono.mk @@ -1,4 +1,4 @@ -NEEDED_MONO_VERSION := d75c87694b90ed3ad614a14d93f5567ad8189e5e +NEEDED_MONO_VERSION := 0c421f48b985b09b754c622d62262e12c464eca1 NEEDED_MONO_BRANCH := 2019-10 From 82b57b7c12847abe12e96933226cf4a90e979bd4 Mon Sep 17 00:00:00 2001 From: Thays Grazia Date: Fri, 25 Oct 2019 10:05:33 -0300 Subject: [PATCH 17/34] Bump mono --- Make.config | 2 +- mk/mono.mk | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Make.config b/Make.config index ba8978025151..f97335fc0280 100644 --- a/Make.config +++ b/Make.config @@ -72,7 +72,7 @@ MONO_HASH := $(NEEDED_MONO_VERSION) MIN_MONO_VERSION=6.8.0.0 MAX_MONO_VERSION=6.8.99 -MIN_MONO_URL=https://xamjenkinsartifact.azureedge.net/build-package-osx-mono/2019-10/35/0c421f48b985b09b754c622d62262e12c464eca1/MonoFramework-MDK-6.8.0.30.macos10.xamarin.universal.pkg +MIN_MONO_URL=https://xamjenkinsartifact.azureedge.net/build-package-osx-mono/2019-10/37/098d12c616e63073dcba4e4186bda213a9a3da54/MonoFramework-MDK-6.8.0.33.macos10.xamarin.universal.pkg # Minimum Mono version for Xamarin.Mac apps using the system mono MIN_XM_MONO_VERSION=6.4.0.94 diff --git a/mk/mono.mk b/mk/mono.mk index fc9e66287e8c..8232b1b63543 100644 --- a/mk/mono.mk +++ b/mk/mono.mk @@ -1,4 +1,4 @@ -NEEDED_MONO_VERSION := 0c421f48b985b09b754c622d62262e12c464eca1 +NEEDED_MONO_VERSION := 098d12c616e63073dcba4e4186bda213a9a3da54 NEEDED_MONO_BRANCH := 2019-10 From bed9f2ea3829ec20d3d00d4886ac9b37535754c3 Mon Sep 17 00:00:00 2001 From: Thays Grazia Date: Tue, 29 Oct 2019 17:32:25 -0300 Subject: [PATCH 18/34] Bump mono --- Make.config | 2 +- mk/mono.mk | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Make.config b/Make.config index f97335fc0280..f724433b8a81 100644 --- a/Make.config +++ b/Make.config @@ -72,7 +72,7 @@ MONO_HASH := $(NEEDED_MONO_VERSION) MIN_MONO_VERSION=6.8.0.0 MAX_MONO_VERSION=6.8.99 -MIN_MONO_URL=https://xamjenkinsartifact.azureedge.net/build-package-osx-mono/2019-10/37/098d12c616e63073dcba4e4186bda213a9a3da54/MonoFramework-MDK-6.8.0.33.macos10.xamarin.universal.pkg +MIN_MONO_URL=https://xamjenkinsartifact.azureedge.net/build-package-osx-mono/2019-10/40/4847b8e7a721a488c228080a932124337966e5a8/MonoFramework-MDK-6.8.0.36.macos10.xamarin.universal.pkg # Minimum Mono version for Xamarin.Mac apps using the system mono MIN_XM_MONO_VERSION=6.4.0.94 diff --git a/mk/mono.mk b/mk/mono.mk index 8232b1b63543..7eb96b377731 100644 --- a/mk/mono.mk +++ b/mk/mono.mk @@ -1,4 +1,4 @@ -NEEDED_MONO_VERSION := 098d12c616e63073dcba4e4186bda213a9a3da54 +NEEDED_MONO_VERSION := 4847b8e7a721a488c228080a932124337966e5a8 NEEDED_MONO_BRANCH := 2019-10 From 0ee9486a2d592dd4949adca1301ae3fd2f0d4908 Mon Sep 17 00:00:00 2001 From: Thays Grazia Date: Fri, 1 Nov 2019 09:48:47 -0300 Subject: [PATCH 19/34] Bump mono --- Make.config | 2 +- mk/mono.mk | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Make.config b/Make.config index f724433b8a81..22ab799cf60b 100644 --- a/Make.config +++ b/Make.config @@ -72,7 +72,7 @@ MONO_HASH := $(NEEDED_MONO_VERSION) MIN_MONO_VERSION=6.8.0.0 MAX_MONO_VERSION=6.8.99 -MIN_MONO_URL=https://xamjenkinsartifact.azureedge.net/build-package-osx-mono/2019-10/40/4847b8e7a721a488c228080a932124337966e5a8/MonoFramework-MDK-6.8.0.36.macos10.xamarin.universal.pkg +MIN_MONO_URL=https://xamjenkinsartifact.azureedge.net/build-package-osx-mono/2019-10/44/844a1d5127bede16a686bebd60a98169d8db1f10/MonoFramework-MDK-6.8.0.40.macos10.xamarin.universal.pkg # Minimum Mono version for Xamarin.Mac apps using the system mono MIN_XM_MONO_VERSION=6.4.0.94 diff --git a/mk/mono.mk b/mk/mono.mk index 7eb96b377731..24f079e59903 100644 --- a/mk/mono.mk +++ b/mk/mono.mk @@ -1,4 +1,4 @@ -NEEDED_MONO_VERSION := 4847b8e7a721a488c228080a932124337966e5a8 +NEEDED_MONO_VERSION := 844a1d5127bede16a686bebd60a98169d8db1f10 NEEDED_MONO_BRANCH := 2019-10 From aa7c88ec057297a22fbeb5cfdb05fc9a3f66b3cf Mon Sep 17 00:00:00 2001 From: Thays Grazia Date: Wed, 6 Nov 2019 12:14:29 -0300 Subject: [PATCH 20/34] Bump mono --- Make.config | 2 +- mk/mono.mk | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Make.config b/Make.config index 22ab799cf60b..b1f0f519dd09 100644 --- a/Make.config +++ b/Make.config @@ -72,7 +72,7 @@ MONO_HASH := $(NEEDED_MONO_VERSION) MIN_MONO_VERSION=6.8.0.0 MAX_MONO_VERSION=6.8.99 -MIN_MONO_URL=https://xamjenkinsartifact.azureedge.net/build-package-osx-mono/2019-10/44/844a1d5127bede16a686bebd60a98169d8db1f10/MonoFramework-MDK-6.8.0.40.macos10.xamarin.universal.pkg +MIN_MONO_URL=https://xamjenkinsartifact.azureedge.net/build-package-osx-mono/2019-10/47/1f45bc58eba487724b8457d1d9db25e3e2a42652/MonoFramework-MDK-6.8.0.43.macos10.xamarin.universal.pkg # Minimum Mono version for Xamarin.Mac apps using the system mono MIN_XM_MONO_VERSION=6.4.0.94 diff --git a/mk/mono.mk b/mk/mono.mk index 24f079e59903..3417893ae3ab 100644 --- a/mk/mono.mk +++ b/mk/mono.mk @@ -1,4 +1,4 @@ -NEEDED_MONO_VERSION := 844a1d5127bede16a686bebd60a98169d8db1f10 +NEEDED_MONO_VERSION := 1f45bc58eba487724b8457d1d9db25e3e2a42652 NEEDED_MONO_BRANCH := 2019-10 From 7cbfa3a14750a59123360275336ac2d9b51f34c9 Mon Sep 17 00:00:00 2001 From: Martin Baulig Date: Wed, 6 Nov 2019 10:42:42 -0500 Subject: [PATCH 21/34] Bring HttpClient from CoreFX. (#7346) This bumps Mono to use https://github.com/mono/mono/pull/17645 (which is the 2019-10 backport of https://github.com/mono/mono/pull/17628). The big user-visible change is in regards to certificate validation, everything below are just some minor adjustments to tests. ## SocketsHttpHandler CoreFX uses a completely new `HttpClientHandler` implementation called `SocketsHttpHandler`, which you can find at https://github.com/dotnet/corefx/tree/release/3.0/src/System.Net.Http/src/System/Net/Http/SocketsHttpHandler. Since this is not based on the web stack anymore, it does not use any of the related APIs such as `ServicePointManager` or `WebException`. ## Certificate Validation Changes There is a new API called `HttpClientHandler.ServerCertificateCustomValidationCallback`. - https://docs.microsoft.com/en-us/dotnet/api/system.net.http.httpclienthandler.servercertificatecustomvalidationcallback?view=netframework-4.8 - https://github.com/dotnet/corefx/blob/c1778515a3bee34cc09c757b5563d0af0c8b1e99/src/System.Net.Http/src/System/Net/Http/HttpClientHandler.Unix.cs#L154 - https://github.com/dotnet/corefx/blob/c1778515a3bee34cc09c757b5563d0af0c8b1e99/src/System.Net.Http/src/System/Net/Http/HttpClientHandler.Windows.cs#L383 The `ServicePointManager.ServerCertificateValidationCallback` is no longer invoked and on certificate validation failure, `AuthenticationException` (from `System.Security.Authentication`) is thrown instead of `WebException`. At the moment, the `NSUrlSessionHandler` still uses it's own validation callback and also still throws `WebException` on failure; we should probably look into making this consistent with the other handlers. ## Minor adjustments related to internal Mono APIs * `HttpContent.SerializeToStreamAsync()` is now `protected` (changed from `protected internal`). - src/Foundation/NSUrlSessionHandler.cs: changed overload accordingly. - src/System.Net.Http/CFContentStream.cs: likewise. * `HttpHeaders.GetKnownHeaderKind()` is an internal Mono API. There is a new internal API called `System.Net.Http.PlatformHelper.IsContentHeader(key)` which exists in both the old as well as the new implementation. The correct way of doing it with the CoreFX handler is `HeaderDescriptor.TryGet (key, out var descriptor) && descriptor.HeaderType == HttpHeaderType.Content` ## Minor adjustments to tests. * `HttpClientHandler.MaxRequestContentBufferSize` is now longer supported, you can set it to any non-negative value, the getter will always return 0. See https://github.com/dotnet/corefx/blob/c1778515a3bee34cc09c757b5563d0af0c8b1e99/src/System.Net.Http/src/System/Net/Http/HttpClientHandler.Core.cs#L18. - tests/linker/ios/link sdk/HttpClientHandlerTest.cs: removed assertion from test. * `HttpMessageInvoker.handler` is a `protected private` field - in the CoreFX handler, it is called `_handler` and `private`. This is accessed via reflection by some of the tests, which are now using the new name. - tests/mmptest/src/MMPTest.cs: here - tests/mtouch/MTouch.cs: here * tests/monotouch-test/System.Net.Http/MessageHandlers.cs: Adjust `RejectSslCertificatesServicePointManager` to reflect the certificate validation changes described above. - FIXME: There was an `Assert.Ignore()` related to `NSUrlSessionHandler` and macOS 10.10; I removed that to reenable the test because the description linked to an old issue in the private repo that was referenced by several "Merged" PR's, so it looked to me that this might have already been fixed - and I also didn't see why it would fail there. * Bump MIN_MONO_VERSION to 6.8.0.41 and point MIN_MONO_URL to the PR. * Add ENABLE_IOS=1 and ENABLE_MAC=1. * Added switch to disable packaged mono build --- builds/Makefile | 3 ++ mk/mono.mk | 2 +- src/Foundation/NSUrlSessionHandler.cs | 4 --- src/System.Net.Http/CFContentStream.cs | 2 +- src/System.Net.Http/CFNetworkHandler.cs | 2 +- .../ios/link sdk/HttpClientHandlerTest.cs | 1 - tests/mmptest/src/MMPTest.cs | 4 +-- .../System.Net.Http/MessageHandlers.cs | 34 ++++++++++++------- tests/mtouch/MTouch.cs | 4 +-- 9 files changed, 32 insertions(+), 24 deletions(-) diff --git a/builds/Makefile b/builds/Makefile index 95e4d1532dd6..a34b888fbb0a 100644 --- a/builds/Makefile +++ b/builds/Makefile @@ -109,6 +109,9 @@ $(SDK_CONFIG): echo "DISABLE_ANDROID=1" > $@ echo "DISABLE_DESKTOP=1" >> $@ echo "DISABLE_WASM=1" >> $@ + echo "ENABLE_IOS=1" >> $@ + echo "ENABLE_MAC=1" >> $@ + ifdef DISABLE_BUILDS_MAKEFILE_DEP BUILDS_MAKEFILE_DEP = diff --git a/mk/mono.mk b/mk/mono.mk index 3417893ae3ab..0165bc1fc6f4 100644 --- a/mk/mono.mk +++ b/mk/mono.mk @@ -3,4 +3,4 @@ NEEDED_MONO_BRANCH := 2019-10 MONO_DIRECTORY := mono -MONO_MODULE := https://github.com/mono/mono +MONO_MODULE := https://github.com/monojenkins/mono diff --git a/src/Foundation/NSUrlSessionHandler.cs b/src/Foundation/NSUrlSessionHandler.cs index f98b6ef62b96..059b1ead0f12 100644 --- a/src/Foundation/NSUrlSessionHandler.cs +++ b/src/Foundation/NSUrlSessionHandler.cs @@ -831,11 +831,7 @@ protected override void Dispose (bool disposing) base.Dispose (disposing); } -#if __WATCHOS__ protected override Task SerializeToStreamAsync (Stream stream, TransportContext context) -#else - protected internal override Task SerializeToStreamAsync (Stream stream, TransportContext context) -#endif { if (contentCopied) { if (!content.CanSeek) { diff --git a/src/System.Net.Http/CFContentStream.cs b/src/System.Net.Http/CFContentStream.cs index 42f0142ed564..bdd3518ad57b 100644 --- a/src/System.Net.Http/CFContentStream.cs +++ b/src/System.Net.Http/CFContentStream.cs @@ -125,7 +125,7 @@ public void Close () data_event.Set (); } - protected internal override async Task SerializeToStreamAsync (Stream stream, TransportContext context) + protected override async Task SerializeToStreamAsync (Stream stream, TransportContext context) { while (data_event.WaitOne ()) { data_mutex.WaitOne (); diff --git a/src/System.Net.Http/CFNetworkHandler.cs b/src/System.Net.Http/CFNetworkHandler.cs index 7af25c9628fc..edca57709388 100644 --- a/src/System.Net.Http/CFNetworkHandler.cs +++ b/src/System.Net.Http/CFNetworkHandler.cs @@ -358,7 +358,7 @@ void HandleHasBytesAvailableEvent (object sender, CFStream.StreamEventArgs e) var key = entry.Key.ToString (); var value = entry.Value == null ? string.Empty : entry.Value.ToString (); HttpHeaders item_headers; - if (HttpHeaders.GetKnownHeaderKind (key) == Headers.HttpHeaderKind.Content) { + if (HeaderDescriptor.TryGet (key, out var descriptor) && descriptor.HeaderType == HttpHeaderType.Content) { item_headers = response_msg.Content.Headers; } else { item_headers = response_msg.Headers; diff --git a/tests/linker/ios/link sdk/HttpClientHandlerTest.cs b/tests/linker/ios/link sdk/HttpClientHandlerTest.cs index e9f2e68461d0..6a347f65ed4e 100644 --- a/tests/linker/ios/link sdk/HttpClientHandlerTest.cs +++ b/tests/linker/ios/link sdk/HttpClientHandlerTest.cs @@ -30,7 +30,6 @@ public void HttpClient () Assert.That (handler.AutomaticDecompression, Is.EqualTo (DecompressionMethods.None), "AutomaticDecompression"); Assert.That (handler.ClientCertificateOptions, Is.EqualTo (ClientCertificateOption.Manual), "ClientCertificateOptions"); Assert.That (handler.MaxAutomaticRedirections, Is.EqualTo (50), "MaxAutomaticRedirections"); - Assert.That (handler.MaxRequestContentBufferSize, Is.EqualTo (Int32.MaxValue), "MaxRequestContentBufferSize"); Assert.Null (handler.Proxy, "Proxy"); Assert.True (handler.SupportsAutomaticDecompression, "SupportsAutomaticDecompression"); Assert.True (handler.SupportsProxy, "SupportsProxy"); diff --git a/tests/mmptest/src/MMPTest.cs b/tests/mmptest/src/MMPTest.cs index c1e3d03c6389..ac7907feb299 100644 --- a/tests/mmptest/src/MMPTest.cs +++ b/tests/mmptest/src/MMPTest.cs @@ -474,9 +474,9 @@ public void HttpClientHandler (string mmpHandler, string expectedHandler) References = " ", TestCode = $@" var client = new System.Net.Http.HttpClient (); - var field = client.GetType ().BaseType.GetField (""handler"", System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance); + var field = client.GetType ().BaseType.GetField (""_handler"", System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance); if (field == null) - throw new System.Exception (""Could not find the field 'handler' in HttpClient's base type (which should be 'HttpMessageInvoker').""); + throw new System.Exception (""Could not find the field '_handler' in HttpClient's base type (which should be 'HttpMessageInvoker').""); var fieldValue = field.GetValue (client); if (fieldValue == null) throw new System.Exception (""Unexpected null value found in 'HttpMessageInvoker.handler' field.""); diff --git a/tests/monotouch-test/System.Net.Http/MessageHandlers.cs b/tests/monotouch-test/System.Net.Http/MessageHandlers.cs index 206e3a4ee36f..63c33eba6cb3 100644 --- a/tests/monotouch-test/System.Net.Http/MessageHandlers.cs +++ b/tests/monotouch-test/System.Net.Http/MessageHandlers.cs @@ -14,6 +14,7 @@ using NUnit.Framework; using System.Net.Http.Headers; +using System.Security.Authentication; using System.Text; using Foundation; #if MONOMAC @@ -169,29 +170,35 @@ public void RejectSslCertificatesServicePointManager (Type handlerType) TestRuntime.AssertSystemVersion (PlatformName.MacOSX, 10, 9, throwIfOtherPlatform: false); TestRuntime.AssertSystemVersion (PlatformName.iOS, 7, 0, throwIfOtherPlatform: false); -#if __MACOS__ - if (handlerType == typeof (NSUrlSessionHandler) && TestRuntime.CheckSystemVersion (PlatformName.MacOSX, 10, 10, 0) && !TestRuntime.CheckSystemVersion (PlatformName.MacOSX, 10, 11, 0)) - Assert.Ignore ("Fails on macOS 10.10: https://github.com/xamarin/maccore/issues/1645"); -#endif - - bool servicePointManagerCbWasExcuted = false; + bool validationCbWasExecuted = false; + bool customValidationCbWasExecuted = false; + bool invalidServicePointManagerCbWasExcuted = false; bool done = false; Exception ex = null; + Type expectedExceptionType = null; HttpResponseMessage result = null; var handler = GetHandler (handlerType); - if (handler is NSUrlSessionHandler ns) { - ns.TrustOverride += (a,b) => { - servicePointManagerCbWasExcuted = true; + if (handler is HttpClientHandler ch) { + expectedExceptionType = typeof (AuthenticationException); + ch.ServerCertificateCustomValidationCallback = (sender, certificate, chain, errors) => { + validationCbWasExecuted = true; // return false, since we want to test that the exception is raised return false; }; - } else { ServicePointManager.ServerCertificateValidationCallback = (sender, certificate, chain, errors) => { - servicePointManagerCbWasExcuted = true; + invalidServicePointManagerCbWasExcuted = true; + return false; + }; + } else if (handler is NSUrlSessionHandler ns) { + expectedExceptionType = typeof (WebException); + ns.TrustOverride += (a,b) => { + validationCbWasExecuted = true; // return false, since we want to test that the exception is raised return false; }; + } else { + Assert.Fail ($"Invalid HttpMessageHandler: '{handler.GetType ()}'."); } TestRuntime.RunAsync (DateTime.Now.AddSeconds (30), async () => @@ -213,11 +220,14 @@ public void RejectSslCertificatesServicePointManager (Type handlerType) if (!done) { // timeouts happen in the bots due to dns issues, connection issues etc.. we do not want to fail Assert.Inconclusive ("Request timedout."); } else { + // the ServicePointManager.ServerCertificateValidationCallback will never be executed. + Assert.False(invalidServicePointManagerCbWasExcuted); + Assert.True(validationCbWasExecuted); // assert the exception type Assert.IsNotNull (ex, (result == null)? "Expected exception is missing and got no result" : $"Expected exception but got {result.Content.ReadAsStringAsync ().Result}"); Assert.IsInstanceOfType (typeof (HttpRequestException), ex); Assert.IsNotNull (ex.InnerException); - Assert.IsInstanceOfType (typeof (WebException), ex.InnerException); + Assert.IsInstanceOfType (expectedExceptionType, ex.InnerException); } } diff --git a/tests/mtouch/MTouch.cs b/tests/mtouch/MTouch.cs index 1a740988c5f3..5af0880017ba 100644 --- a/tests/mtouch/MTouch.cs +++ b/tests/mtouch/MTouch.cs @@ -3940,9 +3940,9 @@ public class HandlerTest public void Test () {{ var client = new System.Net.Http.HttpClient (); - var field = client.GetType ().BaseType.GetField (""handler"", System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance); + var field = client.GetType ().BaseType.GetField (""_handler"", System.Reflection.BindingFlags.NonPublic | System.Reflection.BindingFlags.Instance); if (field == null) - throw new System.Exception (""Could not find the field 'handler' in HttpClient's base type (which should be 'HttpMessageInvoker').""); + throw new System.Exception (""Could not find the field '_handler' in HttpClient's base type (which should be 'HttpMessageInvoker').""); var fieldValue = field.GetValue (client); if (fieldValue == null) throw new System.Exception (""Unexpected null value found in 'HttpMessageInvoker.handler' field.""); From c708900556bf2c740d5ebf49b1e21a157f542117 Mon Sep 17 00:00:00 2001 From: Manuel de la Pena Date: Wed, 6 Nov 2019 11:10:58 -0500 Subject: [PATCH 22/34] Fix wrong url from merge. --- mk/mono.mk | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/mk/mono.mk b/mk/mono.mk index 0165bc1fc6f4..1194cc79c647 100644 --- a/mk/mono.mk +++ b/mk/mono.mk @@ -1,6 +1,6 @@ NEEDED_MONO_VERSION := 1f45bc58eba487724b8457d1d9db25e3e2a42652 -NEEDED_MONO_BRANCH := 2019-10 + NEEDED_MONO_BRANCH := 2019-10 MONO_DIRECTORY := mono -MONO_MODULE := https://github.com/monojenkins/mono +MONO_MODULE := https://github.com/mono/mono \ No newline at end of file From 0c78868849353b31863b4a1f5f2cdd88523f3f42 Mon Sep 17 00:00:00 2001 From: Manuel de la Pena Date: Wed, 6 Nov 2019 11:11:48 -0500 Subject: [PATCH 23/34] Remove space. --- mk/mono.mk | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mk/mono.mk b/mk/mono.mk index 1194cc79c647..7b5f7ae2510b 100644 --- a/mk/mono.mk +++ b/mk/mono.mk @@ -1,5 +1,5 @@ NEEDED_MONO_VERSION := 1f45bc58eba487724b8457d1d9db25e3e2a42652 - NEEDED_MONO_BRANCH := 2019-10 +NEEDED_MONO_BRANCH := 2019-10 MONO_DIRECTORY := mono From 0c7fc0453d8185022d95589ddaa5e28a69e4dfa6 Mon Sep 17 00:00:00 2001 From: Manuel de la Pena Date: Thu, 7 Nov 2019 13:40:52 -0500 Subject: [PATCH 24/34] [Tests] Ignore tests that fail on 32b. Ignore the test on 32b, and filled issue: https://github.com/mono/mono/issues/17752 --- .../bcl-test/common-monotouch_corlib_xunit-test.dll.ignore | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/tests/bcl-test/common-monotouch_corlib_xunit-test.dll.ignore b/tests/bcl-test/common-monotouch_corlib_xunit-test.dll.ignore index b9ef3636ed12..6cfd107094ab 100644 --- a/tests/bcl-test/common-monotouch_corlib_xunit-test.dll.ignore +++ b/tests/bcl-test/common-monotouch_corlib_xunit-test.dll.ignore @@ -414,4 +414,8 @@ System.SpanTests.ReadOnlySpanTests.BinarySearch_Double System.Reflection.Tests.MethodBaseTests.Test_GetCurrentMethod_Inlineable # device issues, it was reported here: https://github.com/mono/mono/issues/14761 -System.Text.Tests.StringBuilderTests.Append_CharPointer_Null_ThrowsNullReferenceException \ No newline at end of file +System.Text.Tests.StringBuilderTests.Append_CharPointer_Null_ThrowsNullReferenceException + +# mono issue: https://github.com/mono/mono/issues/17752 +# Exception messages: System.OutOfMemoryException : Insufficient memory to continue the execution of the program. +Platform32:System.Reflection.Tests.RuntimeReflectionExtensionsTests.GetRuntimeMethod \ No newline at end of file From 5880014efd969080400a6e8b702c79fb4d306437 Mon Sep 17 00:00:00 2001 From: Manuel de la Pena Date: Tue, 12 Nov 2019 14:01:50 -0500 Subject: [PATCH 25/34] Bump mono. --- mk/mono.mk | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/mk/mono.mk b/mk/mono.mk index 7b5f7ae2510b..a0cf932b175a 100644 --- a/mk/mono.mk +++ b/mk/mono.mk @@ -1,6 +1,6 @@ -NEEDED_MONO_VERSION := 1f45bc58eba487724b8457d1d9db25e3e2a42652 +NEEDED_MONO_VERSION := dceea95adcb1f94cec1e0d302894c4bd08a7083a NEEDED_MONO_BRANCH := 2019-10 MONO_DIRECTORY := mono -MONO_MODULE := https://github.com/mono/mono \ No newline at end of file +MONO_MODULE := https://github.com/mono/mono From 0a796727e02194502fc171aeca2f0d4bedca4789 Mon Sep 17 00:00:00 2001 From: Thays Grazia Date: Thu, 21 Nov 2019 14:47:01 -0300 Subject: [PATCH 26/34] bump mono. --- Make.config | 2 +- mk/mono.mk | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Make.config b/Make.config index e0928896e971..fdc541f9af7f 100644 --- a/Make.config +++ b/Make.config @@ -72,7 +72,7 @@ MONO_HASH := $(NEEDED_MONO_VERSION) MIN_MONO_VERSION=6.8.0.0 MAX_MONO_VERSION=6.8.99 -MIN_MONO_URL=https://xamjenkinsartifact.azureedge.net/build-package-osx-mono/2019-10/47/1f45bc58eba487724b8457d1d9db25e3e2a42652/MonoFramework-MDK-6.8.0.43.macos10.xamarin.universal.pkg +MIN_MONO_URL=https://xamjenkinsartifact.azureedge.net/build-package-osx-mono/2019-10/57/e9b5aec5ec7801df66117f2da730672ede15dcc6/MonoFramework-MDK-6.8.0.53.macos10.xamarin.universal.pkg # Minimum Mono version for Xamarin.Mac apps using the system mono MIN_XM_MONO_VERSION=6.4.0.94 diff --git a/mk/mono.mk b/mk/mono.mk index a0cf932b175a..79b5a170c172 100644 --- a/mk/mono.mk +++ b/mk/mono.mk @@ -1,4 +1,4 @@ -NEEDED_MONO_VERSION := dceea95adcb1f94cec1e0d302894c4bd08a7083a +NEEDED_MONO_VERSION := e9b5aec5ec7801df66117f2da730672ede15dcc6 NEEDED_MONO_BRANCH := 2019-10 From 0195d2cf0b6911530660203831893d3f25e0ce0e Mon Sep 17 00:00:00 2001 From: Rolf Bjarne Kvinge Date: Mon, 2 Dec 2019 09:26:55 +0100 Subject: [PATCH 27/34] [tests] Ignore a couple of tests causing OOM. Hopefully fixes https://github.com/xamarin/maccore/issues/1659 for good. --- .../bcl-test/common-monotouch_corlib_xunit-test.dll.ignore | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/tests/bcl-test/common-monotouch_corlib_xunit-test.dll.ignore b/tests/bcl-test/common-monotouch_corlib_xunit-test.dll.ignore index 6cfd107094ab..63c0968430d5 100644 --- a/tests/bcl-test/common-monotouch_corlib_xunit-test.dll.ignore +++ b/tests/bcl-test/common-monotouch_corlib_xunit-test.dll.ignore @@ -418,4 +418,9 @@ System.Text.Tests.StringBuilderTests.Append_CharPointer_Null_ThrowsNullReference # mono issue: https://github.com/mono/mono/issues/17752 # Exception messages: System.OutOfMemoryException : Insufficient memory to continue the execution of the program. -Platform32:System.Reflection.Tests.RuntimeReflectionExtensionsTests.GetRuntimeMethod \ No newline at end of file +Platform32:System.Reflection.Tests.RuntimeReflectionExtensionsTests.GetRuntimeMethod + +# maccore issue: https://github.com/xamarin/maccore/issues/1659 +# random OOMs +Platform32:System.Collections.Tests.HashtableTests.Ctor_Int_Int_GenerateNewPrime +Platform32:System.Tests.BitConverterTests.ToString_ByteArrayTooLong_Throws From 43b0fc16ada4de3db246015b2e91731ce1b7d10b Mon Sep 17 00:00:00 2001 From: Thays Grazia Date: Mon, 2 Dec 2019 13:14:06 -0300 Subject: [PATCH 28/34] bump mono. --- Make.config | 2 +- mk/mono.mk | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/Make.config b/Make.config index fdc541f9af7f..8daac069c8b0 100644 --- a/Make.config +++ b/Make.config @@ -72,7 +72,7 @@ MONO_HASH := $(NEEDED_MONO_VERSION) MIN_MONO_VERSION=6.8.0.0 MAX_MONO_VERSION=6.8.99 -MIN_MONO_URL=https://xamjenkinsartifact.azureedge.net/build-package-osx-mono/2019-10/57/e9b5aec5ec7801df66117f2da730672ede15dcc6/MonoFramework-MDK-6.8.0.53.macos10.xamarin.universal.pkg +MIN_MONO_URL=https://xamjenkinsartifact.azureedge.net/build-package-osx-mono/2019-10/65/18920a83f423fb864a2263948737681968f5b2c8/MonoFramework-MDK-6.8.0.61.macos10.xamarin.universal.pkg # Minimum Mono version for Xamarin.Mac apps using the system mono MIN_XM_MONO_VERSION=6.4.0.94 diff --git a/mk/mono.mk b/mk/mono.mk index 79b5a170c172..fa17fde42093 100644 --- a/mk/mono.mk +++ b/mk/mono.mk @@ -1,4 +1,4 @@ -NEEDED_MONO_VERSION := e9b5aec5ec7801df66117f2da730672ede15dcc6 +NEEDED_MONO_VERSION := 18920a83f423fb864a2263948737681968f5b2c8 NEEDED_MONO_BRANCH := 2019-10 From 96f890ac877f784c03ff75d211e9fb4a9cc2e64c Mon Sep 17 00:00:00 2001 From: Rolf Bjarne Kvinge Date: Tue, 3 Dec 2019 15:17:40 +0100 Subject: [PATCH 29/34] Ignore MM0135 test on Catalina+ because it needs Xcode 9.4. --- tests/mmptest/src/WarningTests.cs | 2 ++ 1 file changed, 2 insertions(+) diff --git a/tests/mmptest/src/WarningTests.cs b/tests/mmptest/src/WarningTests.cs index 19877da3baad..21d4cbace551 100644 --- a/tests/mmptest/src/WarningTests.cs +++ b/tests/mmptest/src/WarningTests.cs @@ -14,6 +14,8 @@ public void MM0135 () if (!Directory.Exists (oldXcode)) Assert.Ignore ("This test requires Xcode 9.4 (or updated to a newer one that still warns MM0135)."); + else if (Environment.OSVersion.Version.Major >= 19 /* macOS 10.15+ */) + Assert.Ignore ("Xcode 9.4 does not work on Catalina or later."); // This can check can be removed after switching to a newer Xcode than 9.4. MMPTests.RunMMPTest (tmpDir => { TI.UnifiedTestConfig test = new TI.UnifiedTestConfig (tmpDir); From e2d2f49c66e0291ee8a99d4c2e9a1694d1834e9e Mon Sep 17 00:00:00 2001 From: Rolf Bjarne Kvinge Date: Tue, 3 Dec 2019 15:22:48 +0100 Subject: [PATCH 30/34] [monotouch-test] Add null checks for teardown when test didn't run because of a too early OS version. --- .../Network/NWEstablishmentReportTest.cs | 4 ++-- tests/monotouch-test/Network/NWParametersTest.cs | 8 +++++--- .../monotouch-test/Network/NWProtocolIPOptionsTest.cs | 4 ++-- tests/monotouch-test/Network/NWProtocolStackTest.cs | 10 ++++++---- 4 files changed, 15 insertions(+), 11 deletions(-) diff --git a/tests/monotouch-test/Network/NWEstablishmentReportTest.cs b/tests/monotouch-test/Network/NWEstablishmentReportTest.cs index 585aa14ffbb1..adbdaf74f0b7 100644 --- a/tests/monotouch-test/Network/NWEstablishmentReportTest.cs +++ b/tests/monotouch-test/Network/NWEstablishmentReportTest.cs @@ -77,8 +77,8 @@ public void Init () [TestFixtureTearDown] public void Dispose() { - report.Dispose (); - connection.Dispose (); + report?.Dispose (); + connection?.Dispose (); } [Test] diff --git a/tests/monotouch-test/Network/NWParametersTest.cs b/tests/monotouch-test/Network/NWParametersTest.cs index 21aa5b8e4d32..fbce2d789774 100644 --- a/tests/monotouch-test/Network/NWParametersTest.cs +++ b/tests/monotouch-test/Network/NWParametersTest.cs @@ -59,9 +59,11 @@ public void Init () [TestFixtureTearDown] public void Dispose() { - connection.Dispose (); - foreach (var i in interfaces) - i.Dispose (); + connection?.Dispose (); + if (interfaces != null) { + foreach (var i in interfaces) + i.Dispose (); + } } [SetUp] diff --git a/tests/monotouch-test/Network/NWProtocolIPOptionsTest.cs b/tests/monotouch-test/Network/NWProtocolIPOptionsTest.cs index 34b721736745..c3cfa49b3b57 100644 --- a/tests/monotouch-test/Network/NWProtocolIPOptionsTest.cs +++ b/tests/monotouch-test/Network/NWProtocolIPOptionsTest.cs @@ -68,8 +68,8 @@ public void Init () [TestFixtureTearDown] public void Dispose() { - connection.Dispose (); - stack.Dispose (); + connection?.Dispose (); + stack?.Dispose (); } [SetUp] diff --git a/tests/monotouch-test/Network/NWProtocolStackTest.cs b/tests/monotouch-test/Network/NWProtocolStackTest.cs index f7f7fa2b4af0..426199708ee2 100644 --- a/tests/monotouch-test/Network/NWProtocolStackTest.cs +++ b/tests/monotouch-test/Network/NWProtocolStackTest.cs @@ -56,10 +56,12 @@ public void Init () [TestFixtureTearDown] public void Dispose() { - connection.Dispose (); - stack.Dispose (); - foreach (var o in options) - o.Dispose (); + connection?.Dispose (); + stack?.Dispose (); + if (options != null) { + foreach (var o in options) + o.Dispose (); + } } [SetUp] From 7a0ba279b420940306fc64164fbf79c5f4bc3d7b Mon Sep 17 00:00:00 2001 From: Martin Baulig Date: Tue, 3 Dec 2019 18:57:44 +0100 Subject: [PATCH 31/34] [CFNetwork]: Http 2.0 requires OS X 10.11 or later. Check whether `_HTTPVersion2_0` is available and fallback to HTTP 1.1 otherwise. --- external/macios-binaries | 2 +- src/CFNetwork/CFHTTPMessage.cs | 9 ++++++--- 2 files changed, 7 insertions(+), 4 deletions(-) diff --git a/external/macios-binaries b/external/macios-binaries index eb6980e8b6ee..6f488dd13227 160000 --- a/external/macios-binaries +++ b/external/macios-binaries @@ -1 +1 @@ -Subproject commit eb6980e8b6ee7bcd6edfd514e606b664bd93f33d +Subproject commit 6f488dd1322706a319c674ac35a4988c3f6ea89e diff --git a/src/CFNetwork/CFHTTPMessage.cs b/src/CFNetwork/CFHTTPMessage.cs index ca6dd97339da..cfa9a66d088c 100644 --- a/src/CFNetwork/CFHTTPMessage.cs +++ b/src/CFNetwork/CFHTTPMessage.cs @@ -80,9 +80,12 @@ static IntPtr GetVersion (Version version) return _HTTPVersion1_1.Handle; else if (version.Equals (HttpVersion.Version10)) return _HTTPVersion1_0.Handle; - else if (version.Major == 2 && version.Minor == 0) - return _HTTPVersion2_0.Handle; - else + else if (version.Major == 2 && version.Minor == 0) { + if (_HTTPVersion2_0?.Handle != IntPtr.Zero) + return _HTTPVersion2_0.Handle; + // HTTP 2.0 requires OS X 10.11 or later. + return _HTTPVersion1_1.Handle; + } else throw new ArgumentException (); } From c51ef02d55d58c8415eb29aae09719860b2adb5f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alexander=20K=C3=B6plinger?= Date: Tue, 3 Dec 2019 19:19:26 +0100 Subject: [PATCH 32/34] Remove accidental bump to macios-binaries --- external/macios-binaries | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/external/macios-binaries b/external/macios-binaries index 6f488dd13227..eb6980e8b6ee 160000 --- a/external/macios-binaries +++ b/external/macios-binaries @@ -1 +1 @@ -Subproject commit 6f488dd1322706a319c674ac35a4988c3f6ea89e +Subproject commit eb6980e8b6ee7bcd6edfd514e606b664bd93f33d From ec31e931894fe7aab9c846ab2538dc0fe0883092 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alexander=20K=C3=B6plinger?= Date: Tue, 3 Dec 2019 20:25:26 +0100 Subject: [PATCH 33/34] Fix logic --- src/CFNetwork/CFHTTPMessage.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/CFNetwork/CFHTTPMessage.cs b/src/CFNetwork/CFHTTPMessage.cs index cfa9a66d088c..fa203df0d69f 100644 --- a/src/CFNetwork/CFHTTPMessage.cs +++ b/src/CFNetwork/CFHTTPMessage.cs @@ -81,7 +81,7 @@ static IntPtr GetVersion (Version version) else if (version.Equals (HttpVersion.Version10)) return _HTTPVersion1_0.Handle; else if (version.Major == 2 && version.Minor == 0) { - if (_HTTPVersion2_0?.Handle != IntPtr.Zero) + if (_HTTPVersion2_0 != null && _HTTPVersion2_0.Handle != IntPtr.Zero) return _HTTPVersion2_0.Handle; // HTTP 2.0 requires OS X 10.11 or later. return _HTTPVersion1_1.Handle; From 0c957d240a91c82d757537c0569f1f5ccd19139b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alexander=20K=C3=B6plinger?= Date: Tue, 3 Dec 2019 21:54:51 +0100 Subject: [PATCH 34/34] Put back skipping of test on OSX 10.10 --- tests/monotouch-test/System.Net.Http/MessageHandlers.cs | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/tests/monotouch-test/System.Net.Http/MessageHandlers.cs b/tests/monotouch-test/System.Net.Http/MessageHandlers.cs index 527e8a737b8b..cf73cda63d5c 100644 --- a/tests/monotouch-test/System.Net.Http/MessageHandlers.cs +++ b/tests/monotouch-test/System.Net.Http/MessageHandlers.cs @@ -170,6 +170,11 @@ public void RejectSslCertificatesServicePointManager (Type handlerType) TestRuntime.AssertSystemVersion (PlatformName.MacOSX, 10, 9, throwIfOtherPlatform: false); TestRuntime.AssertSystemVersion (PlatformName.iOS, 7, 0, throwIfOtherPlatform: false); +#if __MACOS__ + if (handlerType == typeof (NSUrlSessionHandler) && TestRuntime.CheckSystemVersion (PlatformName.MacOSX, 10, 10, 0) && !TestRuntime.CheckSystemVersion (PlatformName.MacOSX, 10, 11, 0)) + Assert.Ignore ("Fails on macOS 10.10: https://github.com/xamarin/maccore/issues/1645"); +#endif + bool validationCbWasExecuted = false; bool customValidationCbWasExecuted = false; bool invalidServicePointManagerCbWasExcuted = false;