From 9da4a6d09bbb8a98b9825797b7ebf7124c254ca5 Mon Sep 17 00:00:00 2001 From: Ludovic Henry Date: Mon, 11 Dec 2017 10:45:51 -0500 Subject: [PATCH 01/78] Bump to mono:2017-12 --- .gitmodules | 2 +- Configuration.props | 4 ++-- build-tools/dependencies/dependencies.projitems | 4 ++-- external/Java.Interop | 2 +- external/llvm | 2 +- external/mono | 2 +- 6 files changed, 8 insertions(+), 8 deletions(-) diff --git a/.gitmodules b/.gitmodules index 6ad93cededd..7656774ae89 100644 --- a/.gitmodules +++ b/.gitmodules @@ -5,7 +5,7 @@ [submodule "external/mono"] path = external/mono url = https://github.com/mono/mono.git - branch = 2017-10 + branch = 2017-12 [submodule "external/mxe"] path = external/mxe url = https://github.com/xamarin/mxe.git diff --git a/Configuration.props b/Configuration.props index 7074d85a246..cc984158c2b 100644 --- a/Configuration.props +++ b/Configuration.props @@ -54,8 +54,8 @@ $(MSBuildThisFileDirectory)external\Java.Interop $(MSBuildThisFileDirectory)external\llvm $(MSBuildThisFileDirectory)external\mono - 5.8.0 - 5.9.0 + 5.10.0 + 5.11.0 True $(MonoRequiredMinimumVersion).22 $(MSBuildThisFileDirectory)external\mono\external\linker diff --git a/build-tools/dependencies/dependencies.projitems b/build-tools/dependencies/dependencies.projitems index a75e37dbb07..5c73b4a3386 100644 --- a/build-tools/dependencies/dependencies.projitems +++ b/build-tools/dependencies/dependencies.projitems @@ -1,7 +1,7 @@ - <_DarwinMonoFramework>MonoFramework-MDK-5.8.0.22.macos10.xamarin.universal.pkg + <_DarwinMonoFramework>MonoFramework-MDK-5.10.0.0.macos10.xamarin.universal.pkg <_AptGetInstall>apt-get -f -u install @@ -59,7 +59,7 @@ $(MonoRequiredMaximumVersion) $(MonoRequiredDarwinMinimumVersion) $(MSBuildThisFileDirectory)..\scripts\mono-version - https://bosstoragemirror.azureedge.net/wrench/mono-2017-10/7e/7e85cfa5d228cd5148e59cde1d4d663457f96966/$(_DarwinMonoFramework) + https://xamjenkinsartifact.azureedge.net/build-package-osx-mono/2017-12/2/$(_DarwinMonoFramework) installer -pkg "$(AndroidToolchainCacheDirectory)\$(_DarwinMonoFramework)" -target / diff --git a/external/Java.Interop b/external/Java.Interop index cc1bb5f4e87..0afb2b0fe9d 160000 --- a/external/Java.Interop +++ b/external/Java.Interop @@ -1 +1 @@ -Subproject commit cc1bb5f4e8732af56c306921301db81b67a0b4d8 +Subproject commit 0afb2b0fe9d8670b51c551bdea41fbed459a4103 diff --git a/external/llvm b/external/llvm index 21492ec92e2..a9cfb50e5af 160000 --- a/external/llvm +++ b/external/llvm @@ -1 +1 @@ -Subproject commit 21492ec92e255a43bc6b687468f1eb18a635d94e +Subproject commit a9cfb50e5af3d632f8c1c9620ca52d0118523b53 diff --git a/external/mono b/external/mono index b06c50f3911..0c5a524e50e 160000 --- a/external/mono +++ b/external/mono @@ -1 +1 @@ -Subproject commit b06c50f3911120456dfff7a389021d1c9299b2b6 +Subproject commit 0c5a524e50e64b2fcea4cb3c6366092c5b8c76f9 From e064e110ecef3271988251206ebb80775e03e045 Mon Sep 17 00:00:00 2001 From: Ludovic Henry Date: Wed, 13 Dec 2017 13:31:26 -0500 Subject: [PATCH 02/78] Fix compilation errors with mono:2017-12 --- build-tools/mono-runtimes/ProfileAssemblies.projitems | 4 +--- build-tools/mono-runtimes/mono-runtimes.targets | 8 ++++++-- external/mono | 2 +- 3 files changed, 8 insertions(+), 6 deletions(-) diff --git a/build-tools/mono-runtimes/ProfileAssemblies.projitems b/build-tools/mono-runtimes/ProfileAssemblies.projitems index 9c43186c783..053c5aa9684 100644 --- a/build-tools/mono-runtimes/ProfileAssemblies.projitems +++ b/build-tools/mono-runtimes/ProfileAssemblies.projitems @@ -252,8 +252,6 @@ System.Xml.Linq - - lib/monodroid - + diff --git a/build-tools/mono-runtimes/mono-runtimes.targets b/build-tools/mono-runtimes/mono-runtimes.targets index a921fabbb74..7bf854c3b52 100644 --- a/build-tools/mono-runtimes/mono-runtimes.targets +++ b/build-tools/mono-runtimes/mono-runtimes.targets @@ -57,10 +57,14 @@ <_BclAssembly Include="@(MonoProfileAssembly)" /> <_BclExcludeDebugSymbols Include="System.Windows.dll" /> <_BclExcludeDebugSymbols Include="System.Xml.Serialization.dll" /> - <_BclTestAssemblySource Include="@(MonoTestAssembly->'$(MonoSourceFullPath)\mcs\class\%(SourcePath)\%(Identity)')" /> - <_BclTestAssemblySource Include="@(MonoTestAssembly->'$(MonoSourceFullPath)\mcs\class\%(SourcePath)\%(Filename).pdb')" /> + <_BclTestAssemblySource Include="@(MonoTestAssembly->'$(MonoSourceFullPath)\mcs\class\lib\monodroid\tests\%(Identity)')" /> + <_BclTestAssemblySource Include="@(MonoTestAssembly->'$(MonoSourceFullPath)\mcs\class\lib\monodroid\tests\%(Filename).pdb')" /> + <_BclTestAssemblySource Include="@(MonoTestRunner->'$(MonoSourceFullPath)\mcs\class\lib\monodroid\%(Identity)')" /> + <_BclTestAssemblySource Include="@(MonoTestRunner->'$(MonoSourceFullPath)\mcs\class\lib\monodroid\%(Filename).pdb')" /> <_BclTestAssemblyDestination Include="@(MonoTestAssembly->'$(XAInstallPrefix)\..\..\bcl-tests\%(Identity)')" /> <_BclTestAssemblyDestination Include="@(MonoTestAssembly->'$(XAInstallPrefix)\..\..\bcl-tests\%(Filename).pdb')" /> + <_BclTestAssemblyDestination Include="@(MonoTestRunner->'$(XAInstallPrefix)\..\..\bcl-tests\%(Identity)')" /> + <_BclTestAssemblyDestination Include="@(MonoTestRunner->'$(XAInstallPrefix)\..\..\bcl-tests\%(Filename).pdb')" /> <_BclTestOutput Include="@(_BclTestAssemblyDestination)" /> diff --git a/external/mono b/external/mono index 0c5a524e50e..febbfd1e3e5 160000 --- a/external/mono +++ b/external/mono @@ -1 +1 @@ -Subproject commit 0c5a524e50e64b2fcea4cb3c6366092c5b8c76f9 +Subproject commit febbfd1e3e573785682eed8e13f597665d3d5486 From c48be82c8c20a4857a184ebe7e635077f35b8978 Mon Sep 17 00:00:00 2001 From: Ludovic Henry Date: Wed, 20 Dec 2017 10:34:01 +0100 Subject: [PATCH 03/78] Fix compilation errors with mono:2017-12 --- external/mono | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/external/mono b/external/mono index febbfd1e3e5..34634352e1f 160000 --- a/external/mono +++ b/external/mono @@ -1 +1 @@ -Subproject commit febbfd1e3e573785682eed8e13f597665d3d5486 +Subproject commit 34634352e1fb7386a7130fc175d0a89ddf1bb301 From 0edb4b321eb8fda0bd3762b362829529ad1fd07e Mon Sep 17 00:00:00 2001 From: Ludovic Henry Date: Fri, 12 Jan 2018 12:00:54 +0100 Subject: [PATCH 04/78] Bump to mono/2017-12 --- external/mono | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/external/mono b/external/mono index 34634352e1f..70fe915df2f 160000 --- a/external/mono +++ b/external/mono @@ -1 +1 @@ -Subproject commit 34634352e1fb7386a7130fc175d0a89ddf1bb301 +Subproject commit 70fe915df2f9108a60a2d7b2d19c9a861ac64323 From 07b188dab489d9f5c1f0706c9bcc1340fb457513 Mon Sep 17 00:00:00 2001 From: Ludovic Henry Date: Fri, 19 Jan 2018 10:58:22 -0500 Subject: [PATCH 05/78] Copy XUnit assemblies from a different location than NUnit assemblies --- .../mono-runtimes/mono-runtimes.targets | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) diff --git a/build-tools/mono-runtimes/mono-runtimes.targets b/build-tools/mono-runtimes/mono-runtimes.targets index e157a8c3140..32590c60420 100644 --- a/build-tools/mono-runtimes/mono-runtimes.targets +++ b/build-tools/mono-runtimes/mono-runtimes.targets @@ -57,10 +57,6 @@ <_BclAssembly Include="@(MonoProfileAssembly)" /> <_BclExcludeDebugSymbols Include="System.Windows.dll" /> <_BclExcludeDebugSymbols Include="System.Xml.Serialization.dll" /> - <_BclTestAssemblySource Include="@(MonoTestAssembly->'$(MonoSourceFullPath)\mcs\class\lib\monodroid\tests\%(Identity)')" /> - <_BclTestAssemblySource Include="@(MonoTestAssembly->'$(MonoSourceFullPath)\mcs\class\lib\monodroid\tests\%(Filename).pdb')" /> - <_BclTestAssemblySource Include="@(MonoTestRunner->'$(MonoSourceFullPath)\mcs\class\lib\monodroid\%(Identity)')" /> - <_BclTestAssemblySource Include="@(MonoTestRunner->'$(MonoSourceFullPath)\mcs\class\lib\monodroid\%(Filename).pdb')" /> <_BclTestAssemblyDestination Include="@(MonoTestAssembly->'$(XAInstallPrefix)\..\..\bcl-tests\%(Identity)')" /> <_BclTestAssemblyDestination Include="@(MonoTestAssembly->'$(XAInstallPrefix)\..\..\bcl-tests\%(Filename).pdb')" /> <_BclTestAssemblyDestination Include="@(MonoTestRunner->'$(XAInstallPrefix)\..\..\bcl-tests\%(Identity)')" /> @@ -319,12 +315,23 @@ Command="make -C $(MonoSourceFullPath)\mcs\class\%(MonoTestAssembly.SourcePath) xunit-test-local" WorkingDirectory="$(MonoSourceFullPath)" /> + + + <_BclTestAssemblyXUnit Include="@(MonoTestAssembly)" Condition="'%(MonoTestAssembly.TestType)' == 'xunit'" /> + <_BclTestAssemblyNUnit Include="@(MonoTestAssembly)" Condition="'%(MonoTestAssembly.TestType)' != 'xunit'" /> + <_BclTestAssemblySource Include="@(_BclTestAssemblyXUnit->'$(MonoSourceFullPath)\mcs\class\%(SourcePath)\%(Identity)')" /> + <_BclTestAssemblySource Include="@(_BclTestAssemblyXUnit->'$(MonoSourceFullPath)\mcs\class\%(SourcePath)\%(Filename).pdb')" /> + <_BclTestAssemblySource Include="@(_BclTestAssemblyNUnit->'$(MonoSourceFullPath)\mcs\class\lib\monodroid\tests\%(Identity)')" /> + <_BclTestAssemblySource Include="@(_BclTestAssemblyNUnit->'$(MonoSourceFullPath)\mcs\class\lib\monodroid\tests\%(Filename).pdb')" /> + <_BclTestAssemblySource Include="@(MonoTestRunner->'$(MonoSourceFullPath)\mcs\class\lib\monodroid\%(Identity)')" /> + <_BclTestAssemblySource Include="@(MonoTestRunner->'$(MonoSourceFullPath)\mcs\class\lib\monodroid\%(Filename).pdb')" /> + <_BclTestContent Include="$(MonoSourceFullPath)\mcs\class\%(MonoTestAssembly.SourcePath)\Test\**\*.*" /> From 89444df8f941b0566879a89b3599c786707fb3da Mon Sep 17 00:00:00 2001 From: Ludovic Henry Date: Fri, 19 Jan 2018 11:00:05 -0500 Subject: [PATCH 06/78] Bump to mono/2017-12 --- external/mono | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/external/mono b/external/mono index 70fe915df2f..12fa379c6a4 160000 --- a/external/mono +++ b/external/mono @@ -1 +1 @@ -Subproject commit 70fe915df2f9108a60a2d7b2d19c9a861ac64323 +Subproject commit 12fa379c6a4fd4e9e2a8a65c637127933e10204b From 678818fbab083c8267bd73c6467fefa5c92726f0 Mon Sep 17 00:00:00 2001 From: Ludovic Henry Date: Mon, 22 Jan 2018 18:14:12 -0500 Subject: [PATCH 07/78] Bump to mono/2017-12 --- external/mono | 2 +- .../Xamarin.Android.Build.Tasks.csproj | 68 ++++++++++--------- 2 files changed, 38 insertions(+), 32 deletions(-) diff --git a/external/mono b/external/mono index 12fa379c6a4..9ccd1450abb 160000 --- a/external/mono +++ b/external/mono @@ -1 +1 @@ -Subproject commit 12fa379c6a4fd4e9e2a8a65c637127933e10204b +Subproject commit 9ccd1450abb197c186e13db62581afc8d9fc8fb6 diff --git a/src/Xamarin.Android.Build.Tasks/Xamarin.Android.Build.Tasks.csproj b/src/Xamarin.Android.Build.Tasks/Xamarin.Android.Build.Tasks.csproj index c84f365b2ba..ffc86f7cd91 100644 --- a/src/Xamarin.Android.Build.Tasks/Xamarin.Android.Build.Tasks.csproj +++ b/src/Xamarin.Android.Build.Tasks/Xamarin.Android.Build.Tasks.csproj @@ -269,99 +269,105 @@ - + Linker\Mono.Linker\Annotations.cs - + Linker\Mono.Linker\AssemblyAction.cs - + Linker\Mono.Linker\AssemblyResolver.cs - + Linker\Mono.Linker\I18nAssemblies.cs - + Linker\Mono.Linker\IXApiVisitor.cs - + Linker\Mono.Linker\LinkContext.cs - + Linker\Mono.Linker\MethodAction.cs - + Linker\Mono.Linker\MethodReferenceExtensions.cs - + Linker\Mono.Linker\Pipeline.cs - + Linker\Mono.Linker\TypePreserve.cs - + Linker\Mono.Linker\TypeReferenceExtensions.cs - + Linker\Mono.Linker\XApiReader.cs - + Linker\Mono.Linker.Steps\BlacklistStep.cs - + Linker\Mono.Linker.Steps\BaseStep.cs - + Linker\Mono.Linker.Steps\CleanStep.cs - + Linker\Mono.Linker.Steps\IStep.cs - + Linker\Mono.Linker.Steps\LoadI18nAssemblies.cs - + Linker\Mono.Linker.Steps\LoadReferencesStep.cs - + Linker\Mono.Linker.Steps\OutputStep.cs - + Linker\Mono.Linker.Steps\RegenerateGuidStep.cs - + Linker\Mono.Linker.Steps\ResolveFromAssemblyStep.cs - + Linker\Mono.Linker.Steps\ResolveFromXApiStep.cs - + Linker\Mono.Linker.Steps\ResolveFromXmlStep.cs - + Linker\Mono.Linker.Steps\ResolveStep.cs - + Linker\Mono.Linker.Steps\TypeMapStep.cs - + Linker\Mono.Linker.Steps\SweepStep.cs - + Linker\Mono.Linker.Steps\MarkStep.cs - + Linker\Mono.Linker\LoadException.cs - + Linker\Mono.Linker\MarkException.cs - + Linker\Mono.Linker\ConsoleLogger.cs - + Linker\Mono.Linker\ILogger.cs + + Linker\Mono.Linker\MarkingHelpers.cs + + + Linker\Mono.Linker\Tracer.cs + From 30e7561ef64e07f240f5582e33053128c5da1b86 Mon Sep 17 00:00:00 2001 From: Ludovic Henry Date: Wed, 24 Jan 2018 17:01:32 -0500 Subject: [PATCH 08/78] Bump to mono/2017-12 --- build-tools/dependencies/dependencies.projitems | 4 ++-- external/mono | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/build-tools/dependencies/dependencies.projitems b/build-tools/dependencies/dependencies.projitems index 5c73b4a3386..a3046d44919 100644 --- a/build-tools/dependencies/dependencies.projitems +++ b/build-tools/dependencies/dependencies.projitems @@ -1,7 +1,7 @@ - <_DarwinMonoFramework>MonoFramework-MDK-5.10.0.0.macos10.xamarin.universal.pkg + <_DarwinMonoFramework>MonoFramework-MDK-5.10.0.47.macos10.xamarin.universal.pkg <_AptGetInstall>apt-get -f -u install @@ -59,7 +59,7 @@ $(MonoRequiredMaximumVersion) $(MonoRequiredDarwinMinimumVersion) $(MSBuildThisFileDirectory)..\scripts\mono-version - https://xamjenkinsartifact.azureedge.net/build-package-osx-mono/2017-12/2/$(_DarwinMonoFramework) + https://xamjenkinsartifact.azureedge.net/build-package-osx-mono/2017-12/41/$(_DarwinMonoFramework) installer -pkg "$(AndroidToolchainCacheDirectory)\$(_DarwinMonoFramework)" -target / diff --git a/external/mono b/external/mono index 9ccd1450abb..57500fce5d7 160000 --- a/external/mono +++ b/external/mono @@ -1 +1 @@ -Subproject commit 9ccd1450abb197c186e13db62581afc8d9fc8fb6 +Subproject commit 57500fce5d7e46b15152cd0461cf5a6354c20fa4 From 4ab19ee8407f507b79fc98d39b911913518553ff Mon Sep 17 00:00:00 2001 From: Ludovic Henry Date: Wed, 31 Jan 2018 13:04:24 -0500 Subject: [PATCH 09/78] Bump to mono/2017-12 --- external/mono | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/external/mono b/external/mono index 57500fce5d7..e87f9d77e78 160000 --- a/external/mono +++ b/external/mono @@ -1 +1 @@ -Subproject commit 57500fce5d7e46b15152cd0461cf5a6354c20fa4 +Subproject commit e87f9d77e78f768935c477c1f41fb5a13977350f From 533c7c06da4b34cacd066b93000d334c98bf54e1 Mon Sep 17 00:00:00 2001 From: Ludovic Henry Date: Wed, 31 Jan 2018 13:17:04 -0500 Subject: [PATCH 10/78] Bump to Java.Interop/mono-2017-12 --- external/Java.Interop | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/external/Java.Interop b/external/Java.Interop index 0afb2b0fe9d..884cab571aa 160000 --- a/external/Java.Interop +++ b/external/Java.Interop @@ -1 +1 @@ -Subproject commit 0afb2b0fe9d8670b51c551bdea41fbed459a4103 +Subproject commit 884cab571aac24a94dbe06e5c263c37a72125f5e From def9f758526f83637358ebc52bd001bc93368797 Mon Sep 17 00:00:00 2001 From: Ludovic Henry Date: Thu, 1 Feb 2018 17:42:09 -0500 Subject: [PATCH 11/78] Fix msbuild variable for copying mono tests --- build-tools/mono-runtimes/mono-runtimes.targets | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/build-tools/mono-runtimes/mono-runtimes.targets b/build-tools/mono-runtimes/mono-runtimes.targets index aedccaec18b..1659a200d23 100644 --- a/build-tools/mono-runtimes/mono-runtimes.targets +++ b/build-tools/mono-runtimes/mono-runtimes.targets @@ -348,10 +348,10 @@ <_BclTestContent Include="$(MonoSourceFullPath)\mcs\class\%(MonoTestAssembly.SourcePath)\Test\**\*.*" /> From a7f3c955699653629d574ceaa1b92483264122e6 Mon Sep 17 00:00:00 2001 From: Ludovic Henry Date: Fri, 2 Feb 2018 11:51:36 -0500 Subject: [PATCH 12/78] Fix compilation of monodroid_corlib_xunit-test.dll --- build-tools/mono-runtimes/ProfileAssemblies.projitems | 1 + 1 file changed, 1 insertion(+) diff --git a/build-tools/mono-runtimes/ProfileAssemblies.projitems b/build-tools/mono-runtimes/ProfileAssemblies.projitems index 334fd47520f..2cb5e0dcd48 100644 --- a/build-tools/mono-runtimes/ProfileAssemblies.projitems +++ b/build-tools/mono-runtimes/ProfileAssemblies.projitems @@ -176,6 +176,7 @@ + From aa9abcbe1ab2b2ab90a83266d6123d6419c6effa Mon Sep 17 00:00:00 2001 From: Ludovic Henry Date: Fri, 2 Feb 2018 14:05:58 -0500 Subject: [PATCH 13/78] Exclude System.Runtime.CompilerServices.Unsafe from install --- build-tools/mono-runtimes/mono-runtimes.targets | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/build-tools/mono-runtimes/mono-runtimes.targets b/build-tools/mono-runtimes/mono-runtimes.targets index 1659a200d23..61960c99b86 100644 --- a/build-tools/mono-runtimes/mono-runtimes.targets +++ b/build-tools/mono-runtimes/mono-runtimes.targets @@ -57,6 +57,7 @@ <_BclAssembly Include="@(MonoProfileAssembly)" /> <_BclExcludeDebugSymbols Include="System.Windows.dll" /> <_BclExcludeDebugSymbols Include="System.Xml.Serialization.dll" /> + <_BclExcludeAssembly Include="System.Runtime.CompilerServices.Unsafe.dll" /> <_BclTestAssemblyDestination Include="@(MonoTestAssembly->'$(XAInstallPrefix)\..\..\bcl-tests\%(Identity)')" /> <_BclTestAssemblyDestination Include="@(MonoTestAssembly->'$(XAInstallPrefix)\..\..\bcl-tests\%(Filename).pdb')" /> <_BclTestAssemblyDestination Include="@(MonoTestRunner->'$(XAInstallPrefix)\..\..\bcl-tests\%(Identity)')" /> @@ -80,7 +81,10 @@ /> - <_BclInstalledItem Include="@(_BclAssembly->'$(_BclFrameworkDir)%(Identity)')" /> + <_BclInstalledItem + Include="@(_BclAssembly->'$(_BclFrameworkDir)%(Identity)')" + Exclude="@(_BclExcludeAssembly->'$(_BclFrameworkDir)%(Identity)')" + /> <_BclInstalledItem Condition=" '$(_DebugFileExt)' == '.mdb' " Include="@(_BclAssembly->'$(_BclFrameworkDir)%(Identity).mdb')" From d5fbc29a5bf452c8037dbc6525823f28850a5711 Mon Sep 17 00:00:00 2001 From: Ludovic Henry Date: Fri, 2 Feb 2018 15:10:29 -0500 Subject: [PATCH 14/78] Fix compilation of monodroid_corlib_xunit-test.dll (second attempt) --- build-tools/mono-runtimes/ProfileAssemblies.projitems | 6 +++++- build-tools/mono-runtimes/mono-runtimes.targets | 11 +++++------ 2 files changed, 10 insertions(+), 7 deletions(-) diff --git a/build-tools/mono-runtimes/ProfileAssemblies.projitems b/build-tools/mono-runtimes/ProfileAssemblies.projitems index 2cb5e0dcd48..957cbf6b368 100644 --- a/build-tools/mono-runtimes/ProfileAssemblies.projitems +++ b/build-tools/mono-runtimes/ProfileAssemblies.projitems @@ -176,7 +176,6 @@ - @@ -261,6 +260,11 @@ System.Xml.Linq + + + System.Runtime.CompilerServices.Unsafe + reference + diff --git a/build-tools/mono-runtimes/mono-runtimes.targets b/build-tools/mono-runtimes/mono-runtimes.targets index 61960c99b86..401e16520fe 100644 --- a/build-tools/mono-runtimes/mono-runtimes.targets +++ b/build-tools/mono-runtimes/mono-runtimes.targets @@ -57,7 +57,6 @@ <_BclAssembly Include="@(MonoProfileAssembly)" /> <_BclExcludeDebugSymbols Include="System.Windows.dll" /> <_BclExcludeDebugSymbols Include="System.Xml.Serialization.dll" /> - <_BclExcludeAssembly Include="System.Runtime.CompilerServices.Unsafe.dll" /> <_BclTestAssemblyDestination Include="@(MonoTestAssembly->'$(XAInstallPrefix)\..\..\bcl-tests\%(Identity)')" /> <_BclTestAssemblyDestination Include="@(MonoTestAssembly->'$(XAInstallPrefix)\..\..\bcl-tests\%(Filename).pdb')" /> <_BclTestAssemblyDestination Include="@(MonoTestRunner->'$(XAInstallPrefix)\..\..\bcl-tests\%(Identity)')" /> @@ -81,10 +80,7 @@ /> - <_BclInstalledItem - Include="@(_BclAssembly->'$(_BclFrameworkDir)%(Identity)')" - Exclude="@(_BclExcludeAssembly->'$(_BclFrameworkDir)%(Identity)')" - /> + <_BclInstalledItem Include="@(_BclAssembly->'$(_BclFrameworkDir)%(Identity)')" /> <_BclInstalledItem Condition=" '$(_DebugFileExt)' == '.mdb' " Include="@(_BclAssembly->'$(_BclFrameworkDir)%(Identity).mdb')" @@ -341,8 +337,11 @@ /> + <_BclTestAssemblyReference Include="@(MonoTestAssembly)" Condition="'%(MonoTestAssembly.TestType)' == 'reference'" /> <_BclTestAssemblyXUnit Include="@(MonoTestAssembly)" Condition="'%(MonoTestAssembly.TestType)' == 'xunit'" /> - <_BclTestAssemblyNUnit Include="@(MonoTestAssembly)" Condition="'%(MonoTestAssembly.TestType)' != 'xunit'" /> + <_BclTestAssemblyNUnit Include="@(MonoTestAssembly)" Condition="'%(MonoTestAssembly.TestType)' == ''" /> + <_BclTestAssemblySource Include="@(_BclTestAssemblyReference->'$(MonoSourceFullPath)\mcs\class\lib\monodroid\%(Identity)')" /> + <_BclTestAssemblySource Include="@(_BclTestAssemblyReference->'$(MonoSourceFullPath)\mcs\class\lib\monodroid\%(Filename).pdb')" /> <_BclTestAssemblySource Include="@(_BclTestAssemblyXUnit->'$(MonoSourceFullPath)\mcs\class\%(SourcePath)\%(Identity)')" /> <_BclTestAssemblySource Include="@(_BclTestAssemblyXUnit->'$(MonoSourceFullPath)\mcs\class\%(SourcePath)\%(Filename).pdb')" /> <_BclTestAssemblySource Include="@(_BclTestAssemblyNUnit->'$(MonoSourceFullPath)\mcs\class\lib\monodroid\tests\%(Identity)')" /> From c303aa379ccf3b0378511e51d59ce3f361577e81 Mon Sep 17 00:00:00 2001 From: Ludovic Henry Date: Fri, 2 Feb 2018 19:03:28 -0500 Subject: [PATCH 15/78] Fix missing System.Runtime.CompilerServices.Unsafe.pdb --- build-tools/mono-runtimes/mono-runtimes.targets | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/build-tools/mono-runtimes/mono-runtimes.targets b/build-tools/mono-runtimes/mono-runtimes.targets index 401e16520fe..e40bd6f7f82 100644 --- a/build-tools/mono-runtimes/mono-runtimes.targets +++ b/build-tools/mono-runtimes/mono-runtimes.targets @@ -341,7 +341,7 @@ <_BclTestAssemblyXUnit Include="@(MonoTestAssembly)" Condition="'%(MonoTestAssembly.TestType)' == 'xunit'" /> <_BclTestAssemblyNUnit Include="@(MonoTestAssembly)" Condition="'%(MonoTestAssembly.TestType)' == ''" /> <_BclTestAssemblySource Include="@(_BclTestAssemblyReference->'$(MonoSourceFullPath)\mcs\class\lib\monodroid\%(Identity)')" /> - <_BclTestAssemblySource Include="@(_BclTestAssemblyReference->'$(MonoSourceFullPath)\mcs\class\lib\monodroid\%(Filename).pdb')" /> + <_BclTestAssemblySource Include="@(_BclTestAssemblyReference->'$(MonoSourceFullPath)\mcs\class\lib\monodroid\%(Filename).pdb')" Condition="Exists('@(_BclTestAssemblyReference->'$(MonoSourceFullPath)\mcs\class\lib\monodroid\%(Filename).pdb')')" /> <_BclTestAssemblySource Include="@(_BclTestAssemblyXUnit->'$(MonoSourceFullPath)\mcs\class\%(SourcePath)\%(Identity)')" /> <_BclTestAssemblySource Include="@(_BclTestAssemblyXUnit->'$(MonoSourceFullPath)\mcs\class\%(SourcePath)\%(Filename).pdb')" /> <_BclTestAssemblySource Include="@(_BclTestAssemblyNUnit->'$(MonoSourceFullPath)\mcs\class\lib\monodroid\tests\%(Identity)')" /> @@ -351,7 +351,7 @@ Date: Mon, 5 Feb 2018 19:09:28 -0500 Subject: [PATCH 16/78] Bump to mono:2018-02 --- .gitmodules | 2 +- Configuration.props | 4 ++-- build-tools/dependencies/dependencies.projitems | 4 ++-- external/mono | 2 +- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/.gitmodules b/.gitmodules index 94d4afb6c0f..671292c3d54 100644 --- a/.gitmodules +++ b/.gitmodules @@ -5,7 +5,7 @@ [submodule "external/mono"] path = external/mono url = https://github.com/mono/mono.git - branch = 2017-12 + branch = 2018-02 [submodule "external/mxe"] path = external/mxe url = https://github.com/xamarin/mxe.git diff --git a/Configuration.props b/Configuration.props index 640a85b9902..5eb6b70c6c3 100644 --- a/Configuration.props +++ b/Configuration.props @@ -54,8 +54,8 @@ $(MSBuildThisFileDirectory)external\Java.Interop $(MSBuildThisFileDirectory)external\llvm $(MSBuildThisFileDirectory)external\mono - 5.10.0 - 5.11.0 + 5.12.0 + 5.13.0 True $(MonoRequiredMinimumVersion).22 $(MSBuildThisFileDirectory)external\mono\external\linker diff --git a/build-tools/dependencies/dependencies.projitems b/build-tools/dependencies/dependencies.projitems index a3046d44919..cc7cfb902c8 100644 --- a/build-tools/dependencies/dependencies.projitems +++ b/build-tools/dependencies/dependencies.projitems @@ -1,7 +1,7 @@ - <_DarwinMonoFramework>MonoFramework-MDK-5.10.0.47.macos10.xamarin.universal.pkg + <_DarwinMonoFramework>MonoFramework-MDK-5.12.0.1.macos10.xamarin.universal.pkg <_AptGetInstall>apt-get -f -u install @@ -59,7 +59,7 @@ $(MonoRequiredMaximumVersion) $(MonoRequiredDarwinMinimumVersion) $(MSBuildThisFileDirectory)..\scripts\mono-version - https://xamjenkinsartifact.azureedge.net/build-package-osx-mono/2017-12/41/$(_DarwinMonoFramework) + https://xamjenkinsartifact.azureedge.net/build-package-osx-mono/2018-02/4/3320f45d98e60218380a4c8d783580dc3e8ab280/$(_DarwinMonoFramework) installer -pkg "$(AndroidToolchainCacheDirectory)\$(_DarwinMonoFramework)" -target / diff --git a/external/mono b/external/mono index e87f9d77e78..3320f45d98e 160000 --- a/external/mono +++ b/external/mono @@ -1 +1 @@ -Subproject commit e87f9d77e78f768935c477c1f41fb5a13977350f +Subproject commit 3320f45d98e60218380a4c8d783580dc3e8ab280 From 6f4cf7fb3f14b7462e926578fce0cd29c0019618 Mon Sep 17 00:00:00 2001 From: Ludovic Henry Date: Tue, 6 Feb 2018 12:08:45 -0500 Subject: [PATCH 17/78] Fix missed MonoRequiredDarwinMinimumVersion for bumping --- Configuration.props | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Configuration.props b/Configuration.props index 5eb6b70c6c3..fdb2b41ded0 100644 --- a/Configuration.props +++ b/Configuration.props @@ -57,7 +57,7 @@ 5.12.0 5.13.0 True - $(MonoRequiredMinimumVersion).22 + $(MonoRequiredMinimumVersion).0 $(MSBuildThisFileDirectory)external\mono\external\linker $(MSBuildThisFileDirectory)external\opentk $(MSBuildThisFileDirectory)external\libzip From c308714c920f62486724d0be99c00900ebf5b85f Mon Sep 17 00:00:00 2001 From: Martin Baulig Date: Fri, 9 Feb 2018 22:15:44 +0000 Subject: [PATCH 18/78] Bump Mono to 7126712f8632560b4909e224d35be3a64255b037. --- external/mono | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/external/mono b/external/mono index 3320f45d98e..7126712f863 160000 --- a/external/mono +++ b/external/mono @@ -1 +1 @@ -Subproject commit 3320f45d98e60218380a4c8d783580dc3e8ab280 +Subproject commit 7126712f8632560b4909e224d35be3a64255b037 From c96d2384bb69329e7bb99b04bd58f22f326b8aa1 Mon Sep 17 00:00:00 2001 From: Martin Baulig Date: Fri, 9 Feb 2018 19:22:35 +0000 Subject: [PATCH 19/78] Update _DarwinMonoFramework. --- build-tools/dependencies/dependencies.projitems | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build-tools/dependencies/dependencies.projitems b/build-tools/dependencies/dependencies.projitems index cc7cfb902c8..483c674b8a9 100644 --- a/build-tools/dependencies/dependencies.projitems +++ b/build-tools/dependencies/dependencies.projitems @@ -1,7 +1,7 @@ - <_DarwinMonoFramework>MonoFramework-MDK-5.12.0.1.macos10.xamarin.universal.pkg + <_DarwinMonoFramework>MonoFramework-MDK-5.12.0.11.macos10.xamarin.universal.pkg <_AptGetInstall>apt-get -f -u install From e83851c4bc7499c12a85273152452668f7b72234 Mon Sep 17 00:00:00 2001 From: Martin Baulig Date: Fri, 9 Feb 2018 22:18:27 +0000 Subject: [PATCH 20/78] Update Xamarin.Android.Build.Tasks.csproj to reflect linker changes. --- .../Xamarin.Android.Build.Tasks.csproj | 72 +++++++++---------- 1 file changed, 36 insertions(+), 36 deletions(-) diff --git a/src/Xamarin.Android.Build.Tasks/Xamarin.Android.Build.Tasks.csproj b/src/Xamarin.Android.Build.Tasks/Xamarin.Android.Build.Tasks.csproj index 968a0a414b0..3bf9ee2f42c 100644 --- a/src/Xamarin.Android.Build.Tasks/Xamarin.Android.Build.Tasks.csproj +++ b/src/Xamarin.Android.Build.Tasks/Xamarin.Android.Build.Tasks.csproj @@ -270,103 +270,103 @@ - Linker\Mono.Linker\Annotations.cs + Linker\Linker\Annotations.cs - Linker\Mono.Linker\AssemblyAction.cs + Linker\Linker\AssemblyAction.cs - Linker\Mono.Linker\AssemblyResolver.cs + Linker\Linker\AssemblyResolver.cs - Linker\Mono.Linker\I18nAssemblies.cs + Linker\Linker\I18nAssemblies.cs - Linker\Mono.Linker\IXApiVisitor.cs + Linker\Linker\IXApiVisitor.cs - Linker\Mono.Linker\LinkContext.cs + Linker\Linker\LinkContext.cs - Linker\Mono.Linker\MethodAction.cs + Linker\Linker\MethodAction.cs - Linker\Mono.Linker\MethodReferenceExtensions.cs + Linker\Linker\MethodReferenceExtensions.cs - Linker\Mono.Linker\Pipeline.cs + Linker\Linker\Pipeline.cs - Linker\Mono.Linker\TypePreserve.cs + Linker\Linker\TypePreserve.cs - Linker\Mono.Linker\TypeReferenceExtensions.cs + Linker\Linker\TypeReferenceExtensions.cs - Linker\Mono.Linker\XApiReader.cs + Linker\Linker\XApiReader.cs - Linker\Mono.Linker.Steps\BlacklistStep.cs + Linker\Linker.Steps\BlacklistStep.cs - Linker\Mono.Linker.Steps\BaseStep.cs + Linker\Linker.Steps\BaseStep.cs - Linker\Mono.Linker.Steps\CleanStep.cs + Linker\Linker.Steps\CleanStep.cs - Linker\Mono.Linker.Steps\IStep.cs + Linker\Linker.Steps\IStep.cs - Linker\Mono.Linker.Steps\LoadI18nAssemblies.cs + Linker\Linker.Steps\LoadI18nAssemblies.cs - Linker\Mono.Linker.Steps\LoadReferencesStep.cs + Linker\Linker.Steps\LoadReferencesStep.cs - Linker\Mono.Linker.Steps\OutputStep.cs + Linker\Linker.Steps\OutputStep.cs - Linker\Mono.Linker.Steps\RegenerateGuidStep.cs + Linker\Linker.Steps\RegenerateGuidStep.cs - Linker\Mono.Linker.Steps\ResolveFromAssemblyStep.cs + Linker\Linker.Steps\ResolveFromAssemblyStep.cs - Linker\Mono.Linker.Steps\ResolveFromXApiStep.cs + Linker\Linker.Steps\ResolveFromXApiStep.cs - Linker\Mono.Linker.Steps\ResolveFromXmlStep.cs + Linker\Linker.Steps\ResolveFromXmlStep.cs - Linker\Mono.Linker.Steps\ResolveStep.cs + Linker\Linker.Steps\ResolveStep.cs - Linker\Mono.Linker.Steps\TypeMapStep.cs + Linker\Linker.Steps\TypeMapStep.cs - Linker\Mono.Linker.Steps\SweepStep.cs + Linker\Linker.Steps\SweepStep.cs - Linker\Mono.Linker.Steps\MarkStep.cs + Linker\Linker.Stepsq\MarkStep.cs - Linker\Mono.Linker\LoadException.cs + Linker\Linker\LoadException.cs - Linker\Mono.Linker\MarkException.cs + Linker\Linker\MarkException.cs - Linker\Mono.Linker\ConsoleLogger.cs + Linker\Linker\ConsoleLogger.cs - Linker\Mono.Linker\ILogger.cs - - - Linker\Mono.Linker\MarkingHelpers.cs + Linker\Linker\ILogger.cs - Linker\Mono.Linker\Tracer.cs + Linker\Linker\Tracer.cs + + + Linker\Linker\MarkingHelpers.cs @@ -653,7 +653,7 @@ - + From 26589376728870c0a4aa2bd85cbc7a21f08feca6 Mon Sep 17 00:00:00 2001 From: Martin Baulig Date: Tue, 13 Feb 2018 22:02:08 +0000 Subject: [PATCH 21/78] Bump Mono. --- build-tools/dependencies/dependencies.projitems | 2 +- external/mono | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/build-tools/dependencies/dependencies.projitems b/build-tools/dependencies/dependencies.projitems index 483c674b8a9..5c1cf535aba 100644 --- a/build-tools/dependencies/dependencies.projitems +++ b/build-tools/dependencies/dependencies.projitems @@ -1,7 +1,7 @@ - <_DarwinMonoFramework>MonoFramework-MDK-5.12.0.11.macos10.xamarin.universal.pkg + <_DarwinMonoFramework>MonoFramework-MDK-5.12.0.23.macos10.xamarin.universal.pkg <_AptGetInstall>apt-get -f -u install diff --git a/external/mono b/external/mono index 7126712f863..72aea0056b8 160000 --- a/external/mono +++ b/external/mono @@ -1 +1 @@ -Subproject commit 7126712f8632560b4909e224d35be3a64255b037 +Subproject commit 72aea0056b84aa400d8367824f845724deeb8fb1 From 9fd1f4d0d58f834992b7fd0ad97b470c80e86b2a Mon Sep 17 00:00:00 2001 From: Martin Baulig Date: Wed, 14 Feb 2018 13:31:33 -0500 Subject: [PATCH 22/78] Fix package version. --- build-tools/dependencies/dependencies.projitems | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build-tools/dependencies/dependencies.projitems b/build-tools/dependencies/dependencies.projitems index 5c1cf535aba..3f8c8ab4946 100644 --- a/build-tools/dependencies/dependencies.projitems +++ b/build-tools/dependencies/dependencies.projitems @@ -1,7 +1,7 @@ - <_DarwinMonoFramework>MonoFramework-MDK-5.12.0.23.macos10.xamarin.universal.pkg + <_DarwinMonoFramework>MonoFramework-MDK-5.12.0.28.macos10.xamarin.universal.pkg <_AptGetInstall>apt-get -f -u install From fb36c7414ab510d4b5ed9201ec7bb6a5a9c886f0 Mon Sep 17 00:00:00 2001 From: Martin Baulig Date: Wed, 14 Feb 2018 16:15:29 -0500 Subject: [PATCH 23/78] Update DarwinMinimumUrl. --- build-tools/dependencies/dependencies.projitems | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build-tools/dependencies/dependencies.projitems b/build-tools/dependencies/dependencies.projitems index 3f8c8ab4946..5e5225a717e 100644 --- a/build-tools/dependencies/dependencies.projitems +++ b/build-tools/dependencies/dependencies.projitems @@ -59,7 +59,7 @@ $(MonoRequiredMaximumVersion) $(MonoRequiredDarwinMinimumVersion) $(MSBuildThisFileDirectory)..\scripts\mono-version - https://xamjenkinsartifact.azureedge.net/build-package-osx-mono/2018-02/4/3320f45d98e60218380a4c8d783580dc3e8ab280/$(_DarwinMonoFramework) + https://xamjenkinsartifact.azureedge.net/build-package-osx-mono/2018-02/29/f0f76abc304dd768b8dbd18397329816006c682b/$(_DarwinMonoFramework) installer -pkg "$(AndroidToolchainCacheDirectory)\$(_DarwinMonoFramework)" -target / From e9c3690693662bbd9408c53d331fd39c7fff300c Mon Sep 17 00:00:00 2001 From: Martin Baulig Date: Wed, 21 Feb 2018 19:31:37 +0000 Subject: [PATCH 24/78] linkeranalyzer -> illinkanalyzer --- build-tools/mono-runtimes/mono-runtimes.targets | 2 +- tools/scripts/illinkanalyzer | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/build-tools/mono-runtimes/mono-runtimes.targets b/build-tools/mono-runtimes/mono-runtimes.targets index fcc85be4a08..570ca757c1d 100644 --- a/build-tools/mono-runtimes/mono-runtimes.targets +++ b/build-tools/mono-runtimes/mono-runtimes.targets @@ -93,7 +93,7 @@ /> - <_MonoUtility Include="linkeranalyzer.exe" /> + <_MonoUtility Include="illinkanalyzer.exe" /> <_MonoUtility Include="mono-symbolicate.exe" /> <_MonoUtility Include="mkbundle.exe" /> diff --git a/tools/scripts/illinkanalyzer b/tools/scripts/illinkanalyzer index ad4934ff411..b84c7fb0f7a 100755 --- a/tools/scripts/illinkanalyzer +++ b/tools/scripts/illinkanalyzer @@ -3,4 +3,4 @@ BINDIR=`dirname "$0"` MANDROID_DIR="$BINDIR/.." unset MONO_PATH -exec mono $MONO_OPTIONS "$MANDROID_DIR/linkeranalyzer.exe" "$@" +exec mono $MONO_OPTIONS "$MANDROID_DIR/illinkanalyzer.exe" "$@" From faee6c69481634b2a3ffaa93edcc0defa72f6107 Mon Sep 17 00:00:00 2001 From: Martin Baulig Date: Wed, 21 Feb 2018 19:35:34 +0000 Subject: [PATCH 25/78] Squashed commit of the following: MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit commit d3ad5440942d7a52ecce05c969a84326253b56cf Author: Dean Ellis Date: Wed Feb 21 16:36:10 2018 +0000 [Xamarin.Android.Build.Tasks] Update `CalculateProjectDependencies` to match spec (#1323) The `GetAndroidDependencies` target (f9b2c972) is intended to be called by an IDE on project-load, so that the IDE can install project dependencies "in the background," and ideally have the dependencies installed before the project is actually built. As such, the semantics of the `@(AndroidDependency)` output item group need to be agreed upon by xamarin-android, the IDEs, and whatever the IDEs use to actually install the dependencies. The `%(AndroidDependency.Identity)` values need to be well-defined and consistent across these three different libraries. In commit f9b2c972, certain values would have a version number "embedded" within `%(AndroidDependency.Identity)`, using a `;` to separate the name from the version, e.g. `build-tools;26.0.1`. Use of `;` was chosen because that made it easier for the package installation code to use (e.g. it would be identical to what the Android SDK `sdkmanager` utility expects). Unfortunately, the use of `;` was counter to the [spec][spec], and also looks "weird" in the context of MSBuild, as `;` is *also* the item group separator. Change the version separator to instead be a `/`. This "looks" better and is also consistent with the [installer manifest][manifest] schema that we will use, wherein `%(AndroidDependency.Identity)` matches a `//xamarin-android/*/@filesystem-path` attribute value: `@(AndroidDependency)` could be equivalent to: 27.0.3 $(AndroidSdkPlatformToolsVersion) 27 $(AndroidSdkToolsVersion) [manifest]: https://gist.github.com/dellis1972/08ba76cc19cdce3dec89c68684664299 [spec]: https://microsoft-my.sharepoint.com/:w:/r/personal/mhutch_microsoft_com/_layouts/15/WopiFrame.aspx?sourcedoc=%7B0436dd38-c9ff-4cf2-b33c-ee4515b68546%7D&action=edit&wdPid=64869a58 commit e489aae3779300b3e282560a067371b979498538 Author: Jonathan Pryor Date: Wed Feb 21 10:41:32 2018 -0500 Bump to mono/2017-12/de4729fa (#1325) Context: https://github.com/xamarin/xamarin-android/pull/1078 Context: https://github.com/mono/mono/issues/7145 The primary impetus is that mono/de4729fa contains "ignore" improvements to `mono-api-html`, which will be needed in order to complete PR #1078. commit f7b24f7cc39cff6b1086049b3aade1a73a87a0b5 Author: Dean Ellis Date: Tue Feb 20 16:25:23 2018 +0000 [Xamarin.Android.Build.Tests] Add tests for (#1321) This commit adds a basic unit test for the `` task. commit d207275ba618aae149e38080901995d7176401bf Author: Atsushi Eno Date: Tue Feb 20 00:37:10 2018 +0900 [msbuild] Fix -ed filename, for case sensitivity. (#1322) There is a trivial difference between `msbuild` and `xbuild` - `msbuild` seems to respect (or ignorant of) the fact that filenames that are different in case are actually different on case-sensitive filesystem. Thus with `msbuild`, our binding projects don't build due to "missing" Microsoft.CSharp.Targets (there are only Microsoft.CSharp.targets even in `xbuild` support files in mono). This trivial fix should make it work. commit 49ecddaea61d789486d5d7b9724d842d495f1257 Author: Ludovic Henry Date: Fri Feb 16 17:09:43 2018 -0500 Bump to mono/2017-12/0d51a806 (#1318) To simplify integrating mono's SDKs feature. commit 8419f81606827fb489f67c807b610be01ea14bd2 Author: Jonathan Pryor Date: Fri Feb 16 16:07:12 2018 -0500 Bump $(ProductVersion) to 8.3.99 (Commercial) Xamarin.Android v8.3 is being tracked in the [xamarin-android/d15-7][0] branch, which was branched from commit 70ccc834. Bump `$(ProductVersion)` to 8.3.99 to track development progress of the *next* version of Xamarin.Android. [0]: https://github.com/xamarin/xamarin-android/commits/d15-7 commit 70ccc834f3f2dfd7b9299d2fc4fb19a77a27adb5 Author: Matt Sylvia Date: Fri Feb 16 11:56:35 2018 -0500 Bump to Java.Interop/master/15cf8c1, mono/2017-12/fbc4f05 (#1317) Context: https://github.com/mono/mono/issues/6948 Harmonizes on cecil/mono-2017-12/dfee11e. commit c960a6fc81b41d8f4fe70570cecd6743bf43d7cd Author: Jonathan Pryor Date: Fri Feb 16 10:43:11 2018 -0500 Bump to xamarin-android-api-compatibility/d15-7/dc5f0c2e Fixes an [ABI break][0] in 72ef39b0: [0]: https://jenkins.mono-project.com/view/Xamarin.Android/job/xamarin-android/877/

Type Changed: Microsoft.SqlServer.Server.SqlDataRecord

Removed method:

    	  public virtual System.Data.IDataReader GetData (int);
    	

Type Changed: System.Data.SqlClient.SqlConnectionStringBuilder

Removed property:

    	  public bool IsFixedSize { get; }
    	

Type Changed: System.Data.SqlClient.SqlParameterCollection

Removed properties:

    	  public bool IsFixedSize { get; }
    	  public bool IsReadOnly { get; }
    	  public bool IsSynchronized { get; }
    	
This doesn't fix the "ABI break"; there is no ABI break of consequence. This fixes the *reporting* of the ABI break. See also: https://github.com/xamarin/xamarin-android-api-compatibility/commit/5be4d43f6b93abe0d3cd8f6f2f90be7c1a64f94d commit 72ef39b02e170753505e662b05a49878d147f875 Author: Jonathan Pryor Date: Thu Feb 15 20:32:20 2018 -0500 Bump to xamarin-android-api-compatibility/d15-7/9d71e200 Context: https://github.com/xamarin/xamarin-android/pull/1303 Fixes an [ABI BREAK][0] from b2ca17a1:

Type Changed: Android.Widget.ListView

Modified fields:

    	
public const int ChoiceMode ChoiceModeMultiple = 2;
public const int ChoiceMode ChoiceModeNone = 0;
public const int ChoiceMode ChoiceModeSingle = 1;
The problem is that [xamarin-android-api-compatibility PR #13][ac-13] is part of PR #1303, but #1303 hasn't been merged yet. As such, it had no need to be in the xamarin-android-api-compatibility/d15-7 branch. It has been reverted, thus fixing the above ABI break. [0]: https://jenkins.mono-project.com/view/Xamarin.Android/job/xamarin-android/876/console [ac-13]: https://github.com/xamarin/xamarin-android-api-compatibility/pull/13 commit d0cb3ce3bc61ec14a1c9867ac4d29df841cf3727 Author: Jonathan Pryor Date: Thu Feb 15 14:12:30 2018 -0500 Bump to mono/2017-12/2ad3f0bf Context: https://bugzilla.xamarin.com/show_bug.cgi?id=60088 commit b2ca17a1b62bf262c0cbd1b49c8f445ea8e2dfb6 Author: Jonathan Pryor Date: Thu Feb 15 12:38:12 2018 -0500 Bump to xamarin-android-api-compatibility/d15-7/10df9b67 (#1314) Context: 34f437d97d6d5f56d684af99449de49b870b32cc Context: https://jenkins.mono-project.com/view/Xamarin.Android/job/xamarin-android/873/ The bump to mono/2017-12 in commit 34f437d9 included ABI "breakage" in `System.Data.dll` which wasn't *actual* breakage. Update xamarin-android-api-compatibility to so that we don't report warnings for this "breakage." commit 3a35c00741be4491e18806e7ae84b59514e045a0 Author: Jonathan Pryor Date: Thu Feb 15 12:36:24 2018 -0500 Bump to Java.Interop/master/0841c32f Bumps to cecil/master/dfee11e For d15-7 harmonization. commit 92949f4d96ed3ff6cbfb6e6aa6b33ed1c7d0fb7a Author: Jonathan Pryor Date: Thu Feb 15 12:27:55 2018 -0500 [mono-runtimes] Fix bundle usage Commit 34f437d9 inadvertently broke mono bundle usage. For example, the [first commit after the mono bump][xa-01be] *should* have taken around 3h to build. Instead, it took nearly 7h, because the bundle wasn't being used, causing the mono runtimes to be rebuilt: [xa-01be]: https://jenkins.mono-project.com/view/Xamarin.Android/job/xamarin-android/874/ Target _BuildUnlessCached needs to be built as output file '…/xamarin-android//bin/Debug/lib/xamarin.android//../../bcl-tests/System.Runtime.CompilerServices.Unsafe.pdb' does not exist. Indeed, `System.Runtime.CompilerServices.Usafe.pdb` *doesn't* exist, nor should it, as it's compiled from IL directly. Fix mono bundle usage by updating `@(_BclTestAssemblyDestination)` to exclude `System.Runtime.CompilerServices.Unsafe.pdb`. This allows the `_BuildUnlessCached` target to properly recognize that all required files *do* exist, thus skipping the mono-runtimes build (as desired). commit 01be8ac8314211095a3f69e020f2b2fcc5a66865 Author: Dean Ellis Date: Thu Feb 15 02:38:56 2018 +0000 [Xamarin.Android.Build.Tasks] Stop designtime designer being deleted. (#1307) Fixes: https://github.com/xamarin/xamarin-android/issues/1286 We have a number of problems with our DesignTime build system. The main one which this PR addresses is the designer file is deleted by `IncrementalClean` AND `CoreClean`. This them completely messes up the DesignTime system since it can no longer find the file. So what we should be doing is making sure we don't tell the build system about the designer file ;-). We do this by not writing the path to the `$(CleanFile)`. ~~ Some background on the [DesignTime build system][2] ~~ The primary entry point is the `CoreCompile` target, with occasional calls to the `RefreshReferences` target. In theory [`$(DesignTimeBuild)`][1] should be set to `true`; however, this is not always the case which is why we have the `_SetupForDesignTimeBuild` target which hooks into the `CoreCompile` target. Additionally, `$(BuildingProject)` should be False. ([Additional information][2]). However this document is not seem to be 100% accurate since the IDE's (namely Visual Studio) do not always set the required properties. One of the key requirements for design time builds seems to be that they are independent of the main builds. The files it uses should not be removed since the `CoreCompile` target does not seem to be called consistently. For example, if the designer file is removed and the `RefreshReferences` target is called, the design time build may well fail because the targets required to re-generate the designer file are not called. Now for the problem: the `IncrementalClean` target runs between builds. It seems to want to remove files from the previous build. I suspect the purpose is to remove files that are no longer needed. (For example an assembly which is no longer referenced.) The problem is that we have a file (the design time `Resource.designer.cs`) which is not built as part of the normal build. But this file was still being written to `$(CleanFile)` which is the driver for the `IncrementalClean` process. As a result, the file gets removed because its not in the list of current `@(FileWrites)`. Not writing the name of this file to `$(CleanFile)` seems to hide it from `IncrementalClean`. There was also another problem with the `CoreClean` target. This was also removing the designer files. Again this was down to the fact that the file was listed in `$(CleanFile)`. However our older workarounds did not work since they relied on `IncrementalClean` running. For a `Clean` target invocation it does not. Again the solution seems to be Don't Write the file to `$(CleanFile)`, which is counterintuitive since we are told to write all files we generate to that file. [1]: https://github.com/dotnet/project-system/blob/master/docs/design-time-builds.md#determining-whether-a-target-is-run-in-a-design-time-build [2]: https://github.com/dotnet/project-system/blob/master/docs/design-time-builds.md commit 34f437d97d6d5f56d684af99449de49b870b32cc Author: Ludovic Henry Date: Wed Feb 14 14:05:02 2018 -0500 Bump to mono/2017-12/a0af42ab (#1263) Context: https://bugzilla.xamarin.com/show_bug.cgi?id=6339 Context: https://bugzilla.xamarin.com/show_bug.cgi?id=6401 Context: https://bugzilla.xamarin.com/show_bug.cgi?id=8477 Context: https://bugzilla.xamarin.com/show_bug.cgi?id=19503 Context: https://bugzilla.xamarin.com/show_bug.cgi?id=20562 Context: https://bugzilla.xamarin.com/show_bug.cgi?id=31507 Context: https://bugzilla.xamarin.com/show_bug.cgi?id=35661 Context: https://bugzilla.xamarin.com/show_bug.cgi?id=40699 Context: https://bugzilla.xamarin.com/show_bug.cgi?id=45893 Context: https://bugzilla.xamarin.com/show_bug.cgi?id=49308 Context: https://bugzilla.xamarin.com/show_bug.cgi?id=52675 Context: https://bugzilla.xamarin.com/show_bug.cgi?id=53296 Context: https://bugzilla.xamarin.com/show_bug.cgi?id=56003 Context: https://bugzilla.xamarin.com/show_bug.cgi?id=56194 Context: https://bugzilla.xamarin.com/show_bug.cgi?id=57893 Context: https://bugzilla.xamarin.com/show_bug.cgi?id=57938 Context: https://bugzilla.xamarin.com/show_bug.cgi?id=58261 Context: https://bugzilla.xamarin.com/show_bug.cgi?id=58400 Context: https://bugzilla.xamarin.com/show_bug.cgi?id=58411 Context: https://bugzilla.xamarin.com/show_bug.cgi?id=58965 Context: https://bugzilla.xamarin.com/show_bug.cgi?id=59080 Context: https://bugzilla.xamarin.com/show_bug.cgi?id=59182 Context: https://bugzilla.xamarin.com/show_bug.cgi?id=59364 Context: https://bugzilla.xamarin.com/show_bug.cgi?id=59393 Context: https://bugzilla.xamarin.com/show_bug.cgi?id=59608 Context: https://bugzilla.xamarin.com/show_bug.cgi?id=59664 Context: https://bugzilla.xamarin.com/show_bug.cgi?id=59881 Context: https://bugzilla.xamarin.com/show_bug.cgi?id=59909 Context: https://bugzilla.xamarin.com/show_bug.cgi?id=59913 Context: https://bugzilla.xamarin.com/show_bug.cgi?id=59916 Context: https://bugzilla.xamarin.com/show_bug.cgi?id=59953 Context: https://bugzilla.xamarin.com/show_bug.cgi?id=59956 Context: https://bugzilla.xamarin.com/show_bug.cgi?id=59967 Context: https://bugzilla.xamarin.com/show_bug.cgi?id=60028 Context: https://bugzilla.xamarin.com/show_bug.cgi?id=60029 Context: https://bugzilla.xamarin.com/show_bug.cgi?id=60115 Context: https://bugzilla.xamarin.com/show_bug.cgi?id=60175 Context: https://bugzilla.xamarin.com/show_bug.cgi?id=60216 Context: https://bugzilla.xamarin.com/show_bug.cgi?id=60224 Context: https://bugzilla.xamarin.com/show_bug.cgi?id=60233 Context: https://bugzilla.xamarin.com/show_bug.cgi?id=60238 Context: https://bugzilla.xamarin.com/show_bug.cgi?id=60245 Context: https://bugzilla.xamarin.com/show_bug.cgi?id=60255 Context: https://bugzilla.xamarin.com/show_bug.cgi?id=60267 Context: https://bugzilla.xamarin.com/show_bug.cgi?id=60288 Context: https://bugzilla.xamarin.com/show_bug.cgi?id=60298 Context: https://bugzilla.xamarin.com/show_bug.cgi?id=60317 Context: https://bugzilla.xamarin.com/show_bug.cgi?id=60340 Context: https://bugzilla.xamarin.com/show_bug.cgi?id=60422 Context: https://bugzilla.xamarin.com/show_bug.cgi?id=60435 Context: https://bugzilla.xamarin.com/show_bug.cgi?id=60505 Context: https://bugzilla.xamarin.com/show_bug.cgi?id=60514 Context: https://bugzilla.xamarin.com/show_bug.cgi?id=60539 Context: https://bugzilla.xamarin.com/show_bug.cgi?id=60545 Context: https://bugzilla.xamarin.com/show_bug.cgi?id=60634 Context: https://bugzilla.xamarin.com/show_bug.cgi?id=60680 Context: https://bugzilla.xamarin.com/show_bug.cgi?id=60771 Context: https://bugzilla.xamarin.com/show_bug.cgi?id=60860 Context: https://bugzilla.xamarin.com/show_bug.cgi?id=60865 Context: https://bugzilla.xamarin.com/show_bug.cgi?id=60973 Context: https://bugzilla.xamarin.com/show_bug.cgi?id=61002 Bump minimum macOS Mono version to 5.10.0.47. commit f279ad30b29bb8dc6bb7bc82ae327c32781fa7fb Author: Dean Ellis Date: Wed Feb 14 15:04:45 2018 +0000 [Xamarin.Android.Build.Tasks] GetAndroidDependencies calls _SetLatestTargetFrameworkVersion (#1305) This is a bug in the `GetAndroidDependencies` target: it does not cause `MonoAndroidHelper.RefreshSupportedVersions()` to be invoked. As a result if called directly it will generate a `NullReferenceException` as `MonoAndroidHelper.SupportedVersions` will be `null`. The `GetAndroidDependencies` should thus depend upon the `_SetLatestTargetFrameworkVersion` target. This will initialize `MonoAndroidHelper.SupportedVersions`, and will also resolve the correct `$(TargetFrameworkVersion)` if the user has `$(AndroidUseLatestPlatformSdk)`=True. commit 0dee27d6cb21434fed1cf67aaf33dec2eebcef56 Author: Jonathan Pryor Date: Wed Feb 14 05:50:23 2018 -0500 [Xamarin.Android.Build.Tasks] Fragments & Shorter acw-map (#1301) Fixes: https://github.com/xamarin/xamarin-android/issues/1296 Xamarin.Android attempts to expose the Java-based Android API as a ".NET feeling" API. This takes many forms, such as prefixing interface names with `I`, mapping `get` and `set` methods to properties, mapping listener interfaces to events, and PascalCasing method names. This also affects Java package names and C# namespaces. When creating the `.apk` file, we philosophically need to go the opposite direction: PascalCased members need to be mapped to "something appropriate" within Java. For example, many Android Resource ids *must* be all lowercase, and Android doesn't support package names starting with an uppercase letter in all circumstances. At one point, we tried mapping C# PascalCased namespaces to camelCased namespaces, so e.g. `MyExampleNamespace` became the `myExampleNamesapce` Java package within Java Callable Wrappers. This turned out to be a Terrible Mistake, particularly on case-sensitive filesystems, as if casing was *inconsistent* (`MyExampleNamespace` vs `MyExamplenamespace`), files might not be packaged. By Mono for Android 1.0, we settled on just lowercasing the namespace name to produce Java package names within Android Callable Wrappers. This was not without it's own problems; in particular, the assembly name wasn't involved, so if the "same" type (namespace + type) were present in two different assemblies and we needed to generate Android Callable Wrappers, they'd "collide," the build would fail, and we'd have some unhappy customers. This was later addressed in Xamarin.Android 5.1 by changing the Java package name generation algorithm to be an MD5SUM of the assembly name and namespace name, thus allowing types to have assembly identity. (This was not without its own problems.) Then it gets slightly more complicated: Android allows type names to appear in various locations, such as in layout View XML. These don't allow "just" using the type name; the package name is required for types outside the `android.widget` Java package. Initially, we did nothing, so developers had to directly use the Android Callable Wrapper names: With the change in Xamarin.Android 5.1, *this couldn't work*; those types didn't exist anymore. To square this circle, we processed the resource files to "fixup" identifiers and replace them with the actual Android Callable Wrapper names. We'd replace any/all of: MyExampleNamespace.MyCustomCSharpView // Full name MyExampleNamespace.MyCustomCSharpView, MyAssembly // Partial assembly-qualified name MyExampleNamespace.MyCustomCSharpView, MyAssembly, Version=... // Full assembly qualified name myexamplenamespace.MyCustomCSharpView // compatibility name with the appropriate md5'd Android Callable Wrapper name. Brilliant as this was, there was a problem: [Bug #61073][61073]. If the assembly had a wildcard in the assembly version: [61073]: https://bugzilla.xamarin.com/show_bug.cgi?id=61073 [assembly: AssemblyVersion ("1.0.0.*")] then the "Full assembly qualified name" value would change on *every build*, which had numerious unintended knock-on effects. This was fixed in commit e5b1c92c, which worked largely by just killing the Full assembly qualified name version entirely. Xamarin.Android doesn't support embedding two different versions of the same assembly, so this was considered to be fine. ...except for one compatibility case: ``s can contain ~arbitrary strings, and we support replacing the entire Full assembly qualified name within them: However, in a post e5b1c92c world, the above now fails to load on the device, because it's *not* being appropriately fixed up! FATAL EXCEPTION: main Process: Mono.Samples.HelloTests, PID: 22977 java.lang.RuntimeException: Unable to start activity ComponentInfo{Mono.Samples.HelloTests/mono.samples.HelloApp}: android.view.InflateException: Binary XML file line #1: Binary XML file line #1: Error inflating class fragment ... Caused by: android.view.InflateException: Binary XML file line #1: Binary XML file line #1: Error inflating class fragment Caused by: android.view.InflateException: Binary XML file line #1: Error inflating class fragment Caused by: android.app.Fragment$InstantiationException: Unable to instantiate fragment Mono.Samples.Hello.MyFragment, Hello, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null: make sure class name exists, is public, and has an empty constructor that is public ... Caused by: java.lang.ClassNotFoundException: Didn't find class "Mono.Samples.Hello.MyFragment, Hello, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" on path: DexPathList[[zip file "/data/app/Mono.Samples.HelloTests-1/base.apk"],nativeLibraryDirectories=[/data/app/Mono.Samples.HelloTests-1/lib/arm64, /system/fake-libs64, /data/app/Mono.Samples.HelloTests-1/base.apk!/lib/arm64-v8a, /system/lib64, /vendor/lib64]] ... The problem is that what Android "sees" *should* be where `md5whatever.MyCustomCSharpFragment` *is* a valid Java type that Android is able to load successfully, but because of e5b1c92c this replacement was removed. The fix: simplify the Full assembly-qualified name case to an already supported example. If the `//fragment/@android:name` value contains a `,`, assume it's an assembly qualified name and compute the Full name from it, by stripping off the comma and everything after it, then use the Full name to lookup the correct Android Callable Wrapper type. commit 5c46ee394d7f1d927b0ef0b05f8325a0df58d01f Author: Jonathan Pryor Date: Wed Feb 14 05:42:22 2018 -0500 [api-xml-adjuster] Fix rebuilds (#1300) Ideally, project rebuilds when nothing has changed should be *fast*. `api-xml-adjuster` isn't: $ time (cd build-tools/api-xml-adjuster ; xbuild) real 2m1.084s user 1m55.916s sys 0m8.853s # and the rebuild! $ time (cd build-tools/api-xml-adjuster ; xbuild) real 2m0.824s user 1m56.140s sys 0m8.600s A *minimum* two minute+ rebuild -- when *nothing* has changed -- is a surefire way to get really annoyed. With diagnostic logging, we start to see the culprit: Target _ClassParse needs to be built as input file '@(ApiFileDefinition -> /Volumes/Seagate4TB/work/xamarin-android/build-tools/api-xml-adjuster/../../src/Mono.Android/Profiles/api-27.params.txt)' does not exist. This in turn causes `class-parse.exe` and `api-xml-adjuster.exe` to be *re-executed* on *every* `android.jar` on *every* build. Fix this by correcting the `//Target/@Inputs` and `//Target/@Outputs` for the `_ClassParse` and `_AdjustApiXml` tasks. After which, no-change rebuilds are *significantly* faster: $ time (cd build-tools/api-xml-adjuster ; xbuild) real 0m5.308s user 0m6.042s sys 0m1.237s commit 20b4190de494e96c807c5288e573ac2e5f548b26 Author: Peter Collins Date: Tue Feb 13 12:53:26 2018 -0500 [BCL-Tests] Remove '-s' from _GrantPermissions (#1299) The [semantics of the `$(AdbTarget)` property][adb-target] are the same as the [`adb` Target Device option][adb], which permits any of: [adb-target]: Documentation/build_process.md [adb]: https://developer.android.com/studio/command-line/adb.html#issuingcommands * `-d`: Only attached *device*. * `-e`: Only attached *emulator* * `-s SERIAL_NUMBER`: A specifically named target; needed if there is more than one attached device or emulator. The problem with commit c4e81655 is that it overrode the `$(InstallDependsOnTargets)` property to call the `_GrantPermissions` target, which doesn't properly use `$(AdbTarget)`; it instead *requires* using the `-s` option, which is inconsistent: adb -s $(AdbTarget) shell pm grant ... Remove `-s` from the `adb` invocation so that `$(AdbTarget)` can contain e.g. `-d` or `-e`, as is intended & documented. commit a4ed574707da90fab341d160cabfe291555910e0 Author: Dean Ellis Date: Tue Feb 13 16:04:44 2018 +0000 [Xamarin.Android.Build.Tasks] Only report `ndk-bundle` if required. (#1298) We should only list `ndk-bundle` in the `@(AndroidDependencies)` if the user is using AOT or MkBundle. Otherwise we will end up downloading a ton of stuff we don't need. This commit fixes the `CalculateProjectDependencies` to report `ndk-bundle` if needed. It also adds a unit test to make sure it is not included when it shouldn't be. commit cb68bc3b4c3a9d040dfb10cbb1e599d854c846de Author: Jonathan Pryor Date: Mon Feb 12 17:58:59 2018 -0500 Bump to Java.Interop/master/10647a5e (#1295) Fixes the `ObjectDisposedException` during process shutdown described in commit 0a9d1641. Moves the `ManagedPeer.Init()` invocation within the `JniRuntime` constructor so that a `NullReferenceException` is avoided. (Instead, a *different*, more meaningful exception should be thrown.) Bumps to cecil/mono-2017-12/1afa0668 for d15-7 harmonization. commit f9b2c972263f279aba52919d2b442a319d7c7ad0 Author: Dean Ellis Date: Mon Feb 12 16:20:35 2018 +0000 [Xamarin.Android.Build.Tasks] Add GetAndroidDependencies Target (#1290) Fixes: https://github.com/xamarin/xamarin-android/issues/1269 This commit adds the `GetAndroidDependencies` target to the `Xamarin.Android.Common.targets`. Its purpose is to examine the various settings in the project and report which Android SDK build-tools, platform-tools, etc. are required. `GetAndroidDependencies` will output an `@(AndroidDependency)` with `%(AndroidDependency.Version)` metadata. `@(AndroidDependency)` will contain `%(Identity)` values of: * `build-tools;{VERSION}`, where `{VERSION}` and `%(Version)` is controlled by the `$(AndroidSdkBuildToolsVersion)` property. * `ndk-bundle`: `%(Version)` is controlled by the `$(AndroidNdkVersion)` property. * `platform-tools`: `%(Version)` is controlled by the `$(AndroidSdkPlatformToolsVersion)` property. * `platforms;android-{API}`, where `{API}` and `%(Version)` is the API level for the `$(TargetFrameworkVersion)` in the `.csproj`. For example, `platforms;android-27` for `$(TargetFrameworkVersion)`=`v7.1`. * `tools`: `%(Version)` is controlled by the `$(AndroidSdkToolsVersion)` property. commit 0d822e20be3a0185af76590a1a359337de983482 Author: Jonathan Pryor Date: Mon Feb 12 10:39:48 2018 -0500 [Xamarin.Android.Build.Tasks] Improve `javac -version` parsing (#1292) The [Ubuntu build][0] is [failing][1]: warning : Failed to get the Java SDK version as it does not appear to contain a valid version number. `javac -version` returned: ```openjdk version "1.8.0_03-Ubuntu" OpenJDK Runtime Environment (build 1.8.0_03-Ubuntu-8u77-b03-3ubuntu3-b03) OpenJDK 64-Bit Server VM (build 25.03-b03, mixed mode) ``` ... Task "AdjustJavacVersionArguments" …/bin/Debug/lib/xamarin.android/xbuild/Xamarin/Android/Xamarin.Android.Common.targets: error : Error executing task AdjustJavacVersionArguments: Required property 'JdkVersion' not set. [0]: https://jenkins.mono-project.com/view/Xamarin.Android/job/xamarin-android-linux/779/ [1]: https://jenkins.mono-project.com/view/Xamarin.Android/job/xamarin-android-linux/779/consoleText This was introduced/broken by commit 0e1d1c8a, which turned `AdjustJavacVersionArguments.JdkVersion` into a `[Required]` parameter. The value for `AdjustJavacVersionArguments.JdkVersion` comes from the `` task `JdkVersion` output parameter, which itself comes from parsing `javac -version` output. The problem is that the regex we used to parse the output of `javac -version` wasn't properly parsing the output on Ubuntu: openjdk version "1.8.0_03-Ubuntu" Specifically, the `-Ubuntu` text was causing the regex to not match. Update the regex to be a bit more lenient, enabling it to work with the Ubuntu `javac -version` output, which *should* allow the build to progress further. commit 0114586eb0429bdd4dc018754c89d68cf462c608 Author: Jonathan Peppers Date: Sun Feb 11 12:53:52 2018 -0600 [build] fix api-xml-adjuster.targets on Windows (#1291) Since 7d705bf, the Windows builds on VSTS have seemed to be failing. I tested this locally, and noticed the use of command line arguments such as: -parameter-names='%(SomeVariable)' Unfortunately, this isn't working on Windows due to the single quote. It is more appropriately expressed as: -parameter-names="%(SomeVariable)" This isn't very pretty, but it should work on all platforms. I also fixed all the tabs I saw in this file--in favor of spaces, and fixed other XML code conventions. I will now return to my regularly scheduled baby duty. --- .gitmodules | 2 +- Configuration.props | 2 +- .../api-xml-adjuster/api-xml-adjuster.targets | 25 ++-- .../mono-runtimes/mono-runtimes.targets | 5 +- external/xamarin-android-api-compatibility | 2 +- .../Xamarin.Android.Windows.targets | 2 +- .../Tasks/CalculateProjectDependencies.cs | 69 +++++++++ .../Tasks/ResolveSdksTask.cs | 2 +- .../AndroidUpdateResourcesTest.cs | 6 +- .../GetDependenciesTests.cs | 137 ++++++++++++++++++ .../IncrementalBuildTest.cs | 41 ++++++ .../ResolveSdksTaskTests.cs | 80 ++++++++++ .../Utilities/BaseTest.cs | 26 +++- .../Utilities/MockBuildEngine.cs | 84 +++++++++++ ...marin.Android.Build.Tests.Shared.projitems | 3 +- .../Xamarin.Android.Build.Tests.csproj | 2 + .../Utilities/AndroidResource.cs | 9 ++ .../Xamarin.Android.Bindings.targets | 2 +- .../Xamarin.Android.Build.Tasks.csproj | 7 + .../Xamarin.Android.Common.targets | 30 +++- .../Xamarin.Android.Bcl-Tests.csproj | 2 +- .../Xamarin.Android.Bcl-Tests.targets | 8 +- 22 files changed, 509 insertions(+), 37 deletions(-) create mode 100644 src/Xamarin.Android.Build.Tasks/Tasks/CalculateProjectDependencies.cs create mode 100644 src/Xamarin.Android.Build.Tasks/Tests/Xamarin.Android.Build.Tests/GetDependenciesTests.cs create mode 100644 src/Xamarin.Android.Build.Tasks/Tests/Xamarin.Android.Build.Tests/ResolveSdksTaskTests.cs create mode 100644 src/Xamarin.Android.Build.Tasks/Tests/Xamarin.Android.Build.Tests/Utilities/MockBuildEngine.cs diff --git a/.gitmodules b/.gitmodules index 671292c3d54..c642ce9927b 100644 --- a/.gitmodules +++ b/.gitmodules @@ -36,7 +36,7 @@ [submodule "external/xamarin-android-api-compatibility"] path = external/xamarin-android-api-compatibility url = https://github.com/xamarin/xamarin-android-api-compatibility.git - branch = d15-6 + branch = d15-7 [submodule "external/xamarin-android-tools"] path = external/xamarin-android-tools url = https://github.com/xamarin/xamarin-android-tools diff --git a/Configuration.props b/Configuration.props index 54a0d223173..fb06e3dbae4 100644 --- a/Configuration.props +++ b/Configuration.props @@ -12,7 +12,7 @@ Condition=" Exists('$(MSBuildThisFileDirectory)Configuration.OperatingSystem.props') And '$(DoNotLoadOSProperties)' != 'True' " /> - 8.2.99 + 8.3.99 27 v8.1 diff --git a/build-tools/api-xml-adjuster/api-xml-adjuster.targets b/build-tools/api-xml-adjuster/api-xml-adjuster.targets index b0d7d47ba6e..a469c9782e4 100644 --- a/build-tools/api-xml-adjuster/api-xml-adjuster.targets +++ b/build-tools/api-xml-adjuster/api-xml-adjuster.targets @@ -8,43 +8,42 @@ - - - + + + + Inputs="%(ApiFileDefinition.ParameterDescription)" + Outputs="%(ApiFileDefinition.ClassParseXml)"> $(_TopDir)\bin\$(Configuration)\lib\xamarin.android\xbuild\Xamarin\Android\class-parse.exe + Inputs="%(ApiFileDefinition.ClassParseXml)" + Outputs="%(ApiFileDefinition.ApiAdjustedXml)"> $(_TopDir)\bin\Build$(Configuration)\api-xml-adjuster.exe + BeforeTargets="Clean"> diff --git a/build-tools/mono-runtimes/mono-runtimes.targets b/build-tools/mono-runtimes/mono-runtimes.targets index 570ca757c1d..d77c6c86cb2 100644 --- a/build-tools/mono-runtimes/mono-runtimes.targets +++ b/build-tools/mono-runtimes/mono-runtimes.targets @@ -58,7 +58,10 @@ <_BclExcludeDebugSymbols Include="System.Windows.dll" /> <_BclExcludeDebugSymbols Include="System.Xml.Serialization.dll" /> <_BclTestAssemblyDestination Include="@(MonoTestAssembly->'$(XAInstallPrefix)\..\..\bcl-tests\%(Identity)')" /> - <_BclTestAssemblyDestination Include="@(MonoTestAssembly->'$(XAInstallPrefix)\..\..\bcl-tests\%(Filename).pdb')" /> + <_BclTestAssemblyDestination + Include="@(MonoTestAssembly->'$(XAInstallPrefix)\..\..\bcl-tests\%(Filename).pdb')" + Exclude="$(XAInstallPrefix)\..\..\bcl-tests\System.Runtime.CompilerServices.Unsafe.pdb" + /> <_BclTestAssemblyDestination Include="@(MonoTestRunner->'$(XAInstallPrefix)\..\..\bcl-tests\%(Identity)')" /> <_BclTestAssemblyDestination Include="@(MonoTestRunner->'$(XAInstallPrefix)\..\..\bcl-tests\%(Filename).pdb')" /> diff --git a/external/xamarin-android-api-compatibility b/external/xamarin-android-api-compatibility index 9d71e200708..dc5f0c2e475 160000 --- a/external/xamarin-android-api-compatibility +++ b/external/xamarin-android-api-compatibility @@ -1 +1 @@ -Subproject commit 9d71e2007086737881c8085afd91fc0a5c9a1e6c +Subproject commit dc5f0c2e4751373c56485caff55db4236f456f68 diff --git a/src/Xamarin.Android.Build.Tasks/MSBuild/Xamarin/Android/Xamarin.Android.Common/ImportAfter/Xamarin.Android.Windows.targets b/src/Xamarin.Android.Build.Tasks/MSBuild/Xamarin/Android/Xamarin.Android.Common/ImportAfter/Xamarin.Android.Windows.targets index 7b16e67727c..623dda9c056 100644 --- a/src/Xamarin.Android.Build.Tasks/MSBuild/Xamarin/Android/Xamarin.Android.Common/ImportAfter/Xamarin.Android.Windows.targets +++ b/src/Xamarin.Android.Build.Tasks/MSBuild/Xamarin/Android/Xamarin.Android.Common/ImportAfter/Xamarin.Android.Windows.targets @@ -15,7 +15,7 @@ Copyright (C) 2014 Xamarin. All rights reserved. - + { + { "Version", version } + }); + } + + public override bool Execute () + { + var dependencies = new List (); + var targetApiLevel = MonoAndroidHelper.SupportedVersions.GetApiLevelFromFrameworkVersion (TargetFrameworkVersion); + var manifestApiLevel = DefaultMinSDKVersion; + if (File.Exists (ManifestFile.ItemSpec)) { + var manifest = AndroidAppManifest.Load (ManifestFile.ItemSpec, MonoAndroidHelper.SupportedVersions); + manifestApiLevel = manifest.TargetSdkVersion ?? manifest.MinSdkVersion ?? DefaultMinSDKVersion; + } + var sdkVersion = Math.Max (targetApiLevel.Value, manifestApiLevel); + dependencies.Add (CreateAndroidDependency ($"platforms/android-{sdkVersion}", $"")); + dependencies.Add (CreateAndroidDependency ($"build-tools/{BuildToolsVersion}", BuildToolsVersion)); + if (!string.IsNullOrEmpty (PlatformToolsVersion)) { + dependencies.Add (CreateAndroidDependency ("platform-tools", PlatformToolsVersion)); + } + if (!string.IsNullOrEmpty (ToolsVersion)) { + dependencies.Add (CreateAndroidDependency ("tools", ToolsVersion)); + } + if (!string.IsNullOrEmpty (NdkVersion) && NdkRequired) { + dependencies.Add (CreateAndroidDependency ("ndk-bundle", NdkVersion)); + } + Dependencies = dependencies.ToArray (); + return !Log.HasLoggedErrors; + } + } +} diff --git a/src/Xamarin.Android.Build.Tasks/Tasks/ResolveSdksTask.cs b/src/Xamarin.Android.Build.Tasks/Tasks/ResolveSdksTask.cs index 4239eae4ec3..55d83778b33 100644 --- a/src/Xamarin.Android.Build.Tasks/Tasks/ResolveSdksTask.cs +++ b/src/Xamarin.Android.Build.Tasks/Tasks/ResolveSdksTask.cs @@ -332,7 +332,7 @@ public bool RunTask () // `java -version` will produce values such as: // java version "9.0.4" // java version "1.8.0_77" - static readonly Regex javaVersionRegex = new Regex (@"version ""(?[\d\.]+)(_\d+)?"""); + static readonly Regex javaVersionRegex = new Regex (@"version ""(?[\d\.]+)(_d+)?[^""]*"""); Version GetJavaVersionForFramework (string targetFrameworkVersion) { diff --git a/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.Android.Build.Tests/AndroidUpdateResourcesTest.cs b/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.Android.Build.Tests/AndroidUpdateResourcesTest.cs index 7970c43c3a1..c51ba0e5c8b 100644 --- a/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.Android.Build.Tests/AndroidUpdateResourcesTest.cs +++ b/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.Android.Build.Tests/AndroidUpdateResourcesTest.cs @@ -1016,7 +1016,7 @@ public void BuildAppWithManagedResourceParser() "Target '_ManagedUpdateAndroidResgen' should not have run."); Assert.IsTrue (appBuilder.Clean (appProj), "Clean should have succeeded"); - Assert.IsFalse (File.Exists (designerFile), $"'{designerFile}' should have been cleaned."); + Assert.IsTrue (File.Exists (designerFile), $"'{designerFile}' should not have been cleaned."); } } @@ -1112,10 +1112,10 @@ public void BuildAppWithManagedResourceParserAndLibraries () Assert.IsTrue (appBuilder.Clean (appProj), "Clean should have succeeded"); - Assert.IsFalse (File.Exists (designerFile), $"'{designerFile}' should have been cleaned."); + Assert.IsTrue (File.Exists (designerFile), $"'{designerFile}' should not have been cleaned."); designerFile = Path.Combine (Root, path, libProj.ProjectName, libProj.IntermediateOutputPath, "designtime", "Resource.Designer.cs"); Assert.IsTrue (libBuilder.Clean (libProj), "Clean should have succeeded"); - Assert.IsFalse (File.Exists (designerFile), $"'{designerFile}' should have been cleaned."); + Assert.IsTrue (File.Exists (designerFile), $"'{designerFile}' should not have been cleaned."); } diff --git a/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.Android.Build.Tests/GetDependenciesTests.cs b/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.Android.Build.Tests/GetDependenciesTests.cs new file mode 100644 index 00000000000..1af4d3ca7d1 --- /dev/null +++ b/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.Android.Build.Tests/GetDependenciesTests.cs @@ -0,0 +1,137 @@ +using System; +using NUnit.Framework; +using Xamarin.ProjectTools; +using System.IO; +using System.Linq; +using Microsoft.Build.Framework; +using System.Text; +using Xamarin.Android.Tasks; +using Microsoft.Build.Utilities; + +namespace Xamarin.Android.Build.Tests { + + [TestFixture] + [Parallelizable (ParallelScope.Children)] + public class GetDependenciesTest : BaseTest { + + [Test] + public void CheckNdkBundle ([Values(true, false)] bool ndkRequred) + { + var path = Path.Combine ("temp", TestName); + var referencePath = CreateFauxReferencesDirectory (Path.Combine (path, "references"), new ApiInfo [] { + new ApiInfo () { Id = 26, Level = 26, Name = "Oreo", FrameworkVersion = "v8.0", Stable = true }, + }); + MonoAndroidHelper.RefreshSupportedVersions (new string [] { referencePath }); + IBuildEngine engine = new MockBuildEngine (TestContext.Out); + var task = new CalculateProjectDependencies { + BuildEngine = engine + }; + + task.PlatformToolsVersion = "26.0.3"; + task.ToolsVersion = "26.0.1"; + task.NdkVersion = "12.1"; + task.NdkRequired = ndkRequred; + task.BuildToolsVersion = "26.0.1"; + task.TargetFrameworkVersion = "v8.0"; + task.ManifestFile = new TaskItem (Path.Combine (path, "AndroidManifest.xml")); + Assert.IsTrue (task.Execute ()); + Assert.IsNotNull (task.Dependencies); + Assert.AreEqual (ndkRequred ? 5 : 4, task.Dependencies.Length); + Assert.IsNotNull (task.Dependencies.FirstOrDefault (x => x.ItemSpec == "build-tools/26.0.1" && x.GetMetadata ("Version") == "26.0.1"), + "Dependencies should contains a build-tools version 26.0.1"); + Assert.IsNotNull (task.Dependencies.FirstOrDefault (x => x.ItemSpec == "tools" && x.GetMetadata ("Version") == "26.0.1"), + "Dependencies should contains a tools version 26.0.1"); + Assert.IsNotNull (task.Dependencies.FirstOrDefault (x => x.ItemSpec == "platforms/android-26" && x.GetMetadata ("Version") == ""), + "Dependencies should contains a platform version android-26"); + Assert.IsNotNull (task.Dependencies.FirstOrDefault (x => x.ItemSpec == "platform-tools" && x.GetMetadata ("Version") == "26.0.3"), + "Dependencies should contains a platform-tools version 26.0.3"); + if (ndkRequred) { + Assert.IsNotNull (task.Dependencies.FirstOrDefault (x => x.ItemSpec == "ndk-bundle" && x.GetMetadata ("Version") == "12.1"), + "Dependencies should contain a ndk-bundle version 12.1"); + } else { + Assert.IsNull (task.Dependencies.FirstOrDefault (x => x.ItemSpec == "ndk-bundle"), + "Dependencies should not contain a ndk-bundle item"); + } + } + + [Test] + public void ManifestFileDoesNotExist () + { + var path = Path.Combine ("temp", TestName); + var referencePath = CreateFauxReferencesDirectory (Path.Combine (path, "references"), new ApiInfo[] { + new ApiInfo () { Id = 26, Level = 26, Name = "Oreo", FrameworkVersion = "v8.0", Stable = true }, + } ); + MonoAndroidHelper.RefreshSupportedVersions (new string [] { referencePath }); + IBuildEngine engine = new MockBuildEngine (TestContext.Out); + var task = new CalculateProjectDependencies { + BuildEngine = engine + }; + + task.PlatformToolsVersion = "26.0.3"; + task.ToolsVersion = "26.0.1"; + task.NdkVersion = "12.1"; + task.NdkRequired = true; + task.BuildToolsVersion = "26.0.1"; + task.TargetFrameworkVersion = "v8.0"; + task.ManifestFile = new TaskItem (Path.Combine (path, "AndroidManifest.xml")); + Assert.IsTrue (task.Execute ()); + Assert.IsNotNull (task.Dependencies); + Assert.AreEqual (5, task.Dependencies.Length); + Assert.IsNotNull (task.Dependencies.FirstOrDefault (x => x.ItemSpec == "build-tools/26.0.1" && x.GetMetadata ("Version") == "26.0.1"), + "Dependencies should contains a build-tools version 26.0.1"); + Assert.IsNotNull (task.Dependencies.FirstOrDefault (x => x.ItemSpec == "tools" && x.GetMetadata ("Version") == "26.0.1"), + "Dependencies should contains a tools version 26.0.1"); + Assert.IsNotNull (task.Dependencies.FirstOrDefault (x => x.ItemSpec == "platforms/android-26" && x.GetMetadata ("Version") == ""), + "Dependencies should contains a platform version android-26"); + Assert.IsNotNull (task.Dependencies.FirstOrDefault (x => x.ItemSpec == "platform-tools" && x.GetMetadata ("Version") == "26.0.3"), + "Dependencies should contains a platform-tools version 26.0.3"); + Assert.IsNotNull (task.Dependencies.FirstOrDefault (x => x.ItemSpec == "ndk-bundle" && x.GetMetadata ("Version") == "12.1"), + "Dependencies should contains a ndk-bundle version 12.1"); + } + + [Test] + public void ManifestFileExists () + { + var path = Path.Combine (Root, "temp", TestName); + var referencePath = CreateFauxReferencesDirectory (Path.Combine (path, "references"), new ApiInfo[] { + new ApiInfo () { Id = 26, Level = 26, Name = "Oreo", FrameworkVersion = "v8.0", Stable = true }, + } ); + MonoAndroidHelper.RefreshSupportedVersions (new string [] { referencePath }); + IBuildEngine engine = new MockBuildEngine (TestContext.Out); + var task = new CalculateProjectDependencies { + BuildEngine = engine + }; + + + Directory.CreateDirectory (path); + var manifestFile = Path.Combine (path, "AndroidManifest.xml"); + File.WriteAllText (manifestFile, @" + + +"); + + task.PlatformToolsVersion = "26.0.3"; + task.ToolsVersion = "26.0.1"; + task.NdkVersion = "12.1"; + task.NdkRequired = true; + task.BuildToolsVersion = "26.0.1"; + task.TargetFrameworkVersion = "v8.0"; + task.ManifestFile = new TaskItem (manifestFile); + Assert.IsTrue(task.Execute ()); + Assert.IsNotNull (task.Dependencies); + Assert.AreEqual (5, task.Dependencies.Length); + Assert.IsNotNull (task.Dependencies.FirstOrDefault (x => x.ItemSpec == "build-tools/26.0.1" && x.GetMetadata ("Version") == "26.0.1"), + "Dependencies should contains a build-tools version 26.0.1"); + Assert.IsNotNull (task.Dependencies.FirstOrDefault (x => x.ItemSpec == "tools" && x.GetMetadata ("Version") == "26.0.1"), + "Dependencies should contains a tools version 26.0.1"); + Assert.IsNotNull (task.Dependencies.FirstOrDefault (x => x.ItemSpec == "platforms/android-26" && x.GetMetadata ("Version") == ""), + "Dependencies should contains a platform version android-26"); + Assert.IsNotNull (task.Dependencies.FirstOrDefault (x => x.ItemSpec == "platform-tools" && x.GetMetadata ("Version") == "26.0.3"), + "Dependencies should contains a platform-tools version 26.0.3"); + Assert.IsNotNull (task.Dependencies.FirstOrDefault (x => x.ItemSpec == "ndk-bundle" && x.GetMetadata ("Version") == "12.1"), + "Dependencies should contains a ndk-bundle version 12.1"); + + Directory.Delete (path, recursive: true); + } + } +} diff --git a/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.Android.Build.Tests/IncrementalBuildTest.cs b/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.Android.Build.Tests/IncrementalBuildTest.cs index e3f81e71919..0ff5e01d6b6 100644 --- a/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.Android.Build.Tests/IncrementalBuildTest.cs +++ b/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.Android.Build.Tests/IncrementalBuildTest.cs @@ -12,6 +12,47 @@ namespace Xamarin.Android.Build.Tests [Parallelizable (ParallelScope.Children)] public class IncrementalBuildTest : BaseTest { + [Test] + public void IncrementalCleanDuringClean () + { + var path = Path.Combine ("temp", TestName); + var proj = new XamarinAndroidApplicationProject () { + ProjectName = "App1", + IsRelease = true, + }; + proj.SetProperty ("AndroidUseManagedDesignTimeResourceGenerator", "True"); + proj.SetProperty ("BuildingInsideVisualStudio", "True"); + using (var b = CreateApkBuilder (path)) { + b.Target = "Compile"; + Assert.IsTrue(b.Build (proj), "DesignTime Build should have succeeded"); + var designTimeDesigner = Path.Combine (Root, b.ProjectDirectory, proj.IntermediateOutputPath, "designtime", "Resource.designer.cs"); + FileAssert.Exists (designTimeDesigner, $"{designTimeDesigner} should have been created."); + b.Target = "Build"; + Assert.IsTrue(b.Build (proj), "Build should have succeeded"); + FileAssert.Exists (designTimeDesigner, $"{designTimeDesigner} should still exist after Build."); + b.Target = "Clean"; + Assert.IsTrue(b.Build (proj), "Clean should have succeeded"); + FileAssert.Exists (designTimeDesigner, $"{designTimeDesigner} should still exist after Clean."); + b.Target = "Compile"; + Assert.IsTrue(b.Build (proj), "Build should have succeeded"); + FileAssert.Exists (designTimeDesigner, $"{designTimeDesigner} should still exist after Compile."); + b.Target = "Build"; + Assert.IsTrue(b.Build (proj), "Build should have succeeded"); + FileAssert.Exists (designTimeDesigner, $"{designTimeDesigner} should still exist after second Build."); + Assert.IsTrue(b.Build (proj), "Build should have succeeded"); + FileAssert.Exists (designTimeDesigner, $"{designTimeDesigner} should still exist after third Build."); + b.Target = "Compile"; + Assert.IsTrue(b.Build (proj), "Build should have succeeded"); + FileAssert.Exists (designTimeDesigner, $"{designTimeDesigner} should still exist after second Compile."); + b.Target = "Clean"; + Assert.IsTrue(b.Build (proj), "Clean should have succeeded"); + FileAssert.Exists (designTimeDesigner, $"{designTimeDesigner} should still exist after second Clean."); + b.Target = "ReBuild"; + Assert.IsTrue(b.Build (proj), "ReBuild should have succeeded"); + FileAssert.Exists (designTimeDesigner, $"{designTimeDesigner} should still exist after ReBuild."); + } + + } [Test] public void LibraryIncrementalBuild () { diff --git a/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.Android.Build.Tests/ResolveSdksTaskTests.cs b/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.Android.Build.Tests/ResolveSdksTaskTests.cs new file mode 100644 index 00000000000..e642d56ec4e --- /dev/null +++ b/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.Android.Build.Tests/ResolveSdksTaskTests.cs @@ -0,0 +1,80 @@ +using System; +using NUnit.Framework; +using Xamarin.ProjectTools; +using System.IO; +using System.Linq; +using Microsoft.Build.Framework; +using System.Text; +using Xamarin.Android.Tasks; +using Microsoft.Build.Utilities; + +namespace Xamarin.Android.Build.Tests { + + [TestFixture] + [Parallelizable (ParallelScope.Children)] + public class ResolveSdksTaskTests : BaseTest { + [Test] + public void ResolveSdkTiming () + { + var path = Path.Combine ("temp", TestName); + var androidSdkPath = CreateFauxAndroidSdkDirectory (Path.Combine (path, "android-sdk"), "26.0.3"); + string javaExe = string.Empty; + var javaPath = CreateFauxJavaSdkDirectory (Path.Combine (path, "jdk"), "1.8.0", out javaExe); + var referencePath = CreateFauxReferencesDirectory (Path.Combine (path, "references"), new ApiInfo [] { + new ApiInfo () { Id = 26, Level = 26, Name = "Oreo", FrameworkVersion = "v8.0", Stable = true }, + new ApiInfo () { Id = 27, Level = 27, Name = "Oreo", FrameworkVersion = "v8.1", Stable = true }, + }); + IBuildEngine engine = new MockBuildEngine (TestContext.Out); + var task = new ResolveSdks { + BuildEngine = engine + }; + task.AndroidSdkPath = androidSdkPath; + task.AndroidNdkPath = androidSdkPath; + task.JavaSdkPath = javaPath; + task.TargetFrameworkVersion = "v8.0"; + task.AndroidSdkBuildToolsVersion = "26.0.3"; + task.BuildingInsideVisualStudio = "true"; + task.UseLatestAndroidPlatformSdk = false; + task.AotAssemblies = false; + task.LatestSupportedJavaVersion = "1.8.0"; + task.MinimumSupportedJavaVersion = "1.7.0"; + task.ReferenceAssemblyPaths = new string [] { + Path.Combine (referencePath, "MonoAndroid"), + }; + task.CacheFile = Path.Combine (Root, path, "sdk.xml"); + task.SequencePointsMode = "None"; + task.JavaToolExe = javaExe; + var start = DateTime.UtcNow; + Assert.IsTrue (task.Execute ()); + var executionTime = DateTime.UtcNow - start; + Assert.LessOrEqual (executionTime, TimeSpan.FromSeconds(1), "Task should not take more than 1 second to run."); + Assert.AreEqual (task.AndroidApiLevel, "26", "AndroidApiLevel should be 26"); + Assert.AreEqual (task.TargetFrameworkVersion, "v8.0", "TargetFrameworkVersion should be v8.0"); + Assert.AreEqual (task.AndroidApiLevelName, "26", "AndroidApiLevelName should be 26"); + Assert.AreEqual (task.SupportedApiLevel, "26", "SupportedApiLevel should be 26"); + Assert.NotNull (task.ReferenceAssemblyPaths, "ReferenceAssemblyPaths should not be null."); + Assert.AreEqual (task.ReferenceAssemblyPaths.Length, 1, "ReferenceAssemblyPaths should have 1 entry."); + Assert.AreEqual (task.ReferenceAssemblyPaths[0], Path.Combine (referencePath, "MonoAndroid"), $"ReferenceAssemblyPaths should be {Path.Combine (referencePath, "MonoAndroid")}."); + var expected = Path.Combine (Root); + Assert.AreEqual (task.MonoAndroidToolsPath, expected, $"MonoAndroidToolsPath should be {expected}"); + expected = Path.Combine (Root, "Darwin" + Path.DirectorySeparatorChar); + Assert.AreEqual (task.MonoAndroidBinPath, expected, $"MonoAndroidBinPath should be {expected}"); + Assert.AreEqual (task.MonoAndroidIncludePath, null, "MonoAndroidIncludePath should be null"); + //Assert.AreEqual (task.AndroidNdkPath, "26", "AndroidNdkPath should be 26"); + Assert.AreEqual (task.AndroidSdkPath, androidSdkPath, $"AndroidSdkPath should be {androidSdkPath}"); + Assert.AreEqual (task.JavaSdkPath, javaPath, $"JavaSdkPath should be {javaPath}"); + expected = Path.Combine (androidSdkPath, "build-tools", "26.0.3"); + Assert.AreEqual (task.AndroidSdkBuildToolsPath, expected, $"AndroidSdkBuildToolsPath should be {expected}"); + Assert.AreEqual (task.AndroidSdkBuildToolsBinPath, expected, "AndroidSdkBuildToolsBinPath should be {expected}"); + Assert.AreEqual (task.ZipAlignPath, expected, "ZipAlignPath should be {expected}"); + Assert.AreEqual (task.AndroidSequencePointsMode, "None", "AndroidSequencePointsMode should be None"); + expected = Path.Combine (androidSdkPath, "tools"); + Assert.AreEqual (task.LintToolPath, expected, $"LintToolPath should be {expected}"); + expected = Path.Combine (androidSdkPath, "build-tools", "26.0.3", "lib", "apksigner.jar"); + Assert.AreEqual (task.ApkSignerJar, expected, $"ApkSignerJar should be {expected}"); + Assert.AreEqual (task.AndroidUseApkSigner, false, "AndroidUseApkSigner should be false"); + Assert.AreEqual (task.JdkVersion, "1.8.0", "JdkVersion should be 1.8.0"); + Assert.AreEqual (task.MinimumRequiredJdkVersion, "1.8", "MinimumRequiredJdkVersion should be 1.8"); + } + } +} diff --git a/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.Android.Build.Tests/Utilities/BaseTest.cs b/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.Android.Build.Tests/Utilities/BaseTest.cs index d7160c07e37..41858b33412 100644 --- a/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.Android.Build.Tests/Utilities/BaseTest.cs +++ b/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.Android.Build.Tests/Utilities/BaseTest.cs @@ -122,6 +122,7 @@ protected string CreateFauxAndroidSdkDirectory (string path, string buildToolsVe File.WriteAllText (Path.Combine (androidSdkPlatformToolsPath, IsWindows ? "adb.exe" : "adb"), ""); File.WriteAllText (Path.Combine (androidSdkBuildToolsPath, IsWindows ? "zipalign.exe" : "zipalign"), ""); File.WriteAllText (Path.Combine (androidSdkBuildToolsPath, IsWindows ? "aapt.exe" : "aapt"), ""); + File.WriteAllText (Path.Combine (androidSdkToolsPath, IsWindows ? "lint.exe" : "lint"), ""); for (int i=minApiLevel; i < maxApiLevel; i++) { var dir = Path.Combine (androidSdkPlatformsPath, $"android-{i}"); @@ -131,14 +132,29 @@ protected string CreateFauxAndroidSdkDirectory (string path, string buildToolsVe return androidSdkDirectory; } - protected string CreateFauxReferencesDirectory (string path, string[] versions) + public struct ApiInfo { + public int Id; + public int Level; + public string Name; + public string FrameworkVersion; + public bool Stable; + } + + protected string CreateFauxReferencesDirectory (string path, ApiInfo [] versions) { + string referencesDirectory = Path.Combine (Root, path); Directory.CreateDirectory (referencesDirectory); - Directory.CreateDirectory (Path.Combine (referencesDirectory, "v1.0")); - File.WriteAllText (Path.Combine (referencesDirectory, "v1.0", "mscorlib.dll"), ""); - foreach (var v in versions){ - Directory.CreateDirectory (Path.Combine (referencesDirectory, v)); + Directory.CreateDirectory (Path.Combine (referencesDirectory, "MonoAndroid", "v1.0")); + File.WriteAllText (Path.Combine (referencesDirectory, "MonoAndroid", "v1.0", "mscorlib.dll"), ""); + foreach (var v in versions) { + Directory.CreateDirectory (Path.Combine (referencesDirectory, "MonoAndroid", v.FrameworkVersion)); + Directory.CreateDirectory (Path.Combine (referencesDirectory, "MonoAndroid", v.FrameworkVersion, "RedistList")); + File.WriteAllText (Path.Combine (referencesDirectory, "MonoAndroid", v.FrameworkVersion, "MonoAndroid.dll"), ""); + File.WriteAllText (Path.Combine (referencesDirectory, "MonoAndroid", v.FrameworkVersion, "AndroidApiInfo.xml"), + $"\n{v.Id}\n{v.Level}\n{v.Name}\n{v.FrameworkVersion}\n{v.Stable}\n"); + File.WriteAllText (Path.Combine (referencesDirectory, "MonoAndroid", v.FrameworkVersion, "RedistList", "FrameworkList.xml"), + $""); } return referencesDirectory; } diff --git a/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.Android.Build.Tests/Utilities/MockBuildEngine.cs b/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.Android.Build.Tests/Utilities/MockBuildEngine.cs new file mode 100644 index 00000000000..38f36c65d7e --- /dev/null +++ b/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.Android.Build.Tests/Utilities/MockBuildEngine.cs @@ -0,0 +1,84 @@ +using System; +using System.Collections; +using System.Collections.Generic; +using System.IO; +using System.Linq; +using System.Reflection; +using System.Text; +using System.Threading.Tasks; +using Microsoft.Build.Framework; + +namespace Xamarin.Android.Build.Tests { + public class MockBuildEngine : IBuildEngine, IBuildEngine2, IBuildEngine3, IBuildEngine4 { + public MockBuildEngine (TextWriter output) + { + this.Output = output; + } + + private TextWriter Output { get; } + + int IBuildEngine.ColumnNumberOfTaskNode => -1; + + bool IBuildEngine.ContinueOnError => false; + + int IBuildEngine.LineNumberOfTaskNode => -1; + + string IBuildEngine.ProjectFileOfTaskNode => "this.xml"; + + bool IBuildEngine2.IsRunningMultipleNodes => false; + + bool IBuildEngine.BuildProjectFile (string projectFileName, string [] targetNames, IDictionary globalProperties, IDictionary targetOutputs) => true; + + void IBuildEngine.LogCustomEvent (CustomBuildEventArgs e) + { + this.Output.WriteLine ($"Custom: {e.Message}"); + } + + void IBuildEngine.LogErrorEvent (BuildErrorEventArgs e) + { + this.Output.WriteLine ($"Error: {e.Message}"); + } + + void IBuildEngine.LogMessageEvent (BuildMessageEventArgs e) + { + this.Output.WriteLine ($"Message: {e.Message}"); + } + + void IBuildEngine.LogWarningEvent (BuildWarningEventArgs e) + { + this.Output.WriteLine ($"Warning: {e.Message}"); + } + + private Dictionary Tasks = new Dictionary (); + + void IBuildEngine4.RegisterTaskObject (object key, object obj, RegisteredTaskObjectLifetime lifetime, bool allowEarlyCollection) + { + Tasks.Add (key, obj); + } + + object IBuildEngine4.GetRegisteredTaskObject (object key, RegisteredTaskObjectLifetime lifetime) + { + return null; + } + + object IBuildEngine4.UnregisterTaskObject (object key, RegisteredTaskObjectLifetime lifetime) + { + var obj = Tasks [key]; + Tasks.Remove (key); + return obj; + } + + BuildEngineResult IBuildEngine3.BuildProjectFilesInParallel (string [] projectFileNames, string [] targetNames, IDictionary [] globalProperties, IList [] removeGlobalProperties, string [] toolsVersion, bool returnTargetOutputs) + { + throw new NotImplementedException (); + } + + void IBuildEngine3.Yield () { } + + void IBuildEngine3.Reacquire () { } + + bool IBuildEngine2.BuildProjectFile (string projectFileName, string [] targetNames, IDictionary globalProperties, IDictionary targetOutputs, string toolsVersion) => true; + + bool IBuildEngine2.BuildProjectFilesInParallel (string [] projectFileNames, string [] targetNames, IDictionary [] globalProperties, IDictionary [] targetOutputsPerProject, string [] toolsVersion, bool useResultsCache, bool unloadProjectsOnCompletion) => true; + } +} diff --git a/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.Android.Build.Tests/Xamarin.Android.Build.Tests.Shared.projitems b/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.Android.Build.Tests/Xamarin.Android.Build.Tests.Shared.projitems index fb84fb55378..4caedf0eed4 100644 --- a/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.Android.Build.Tests/Xamarin.Android.Build.Tests.Shared.projitems +++ b/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.Android.Build.Tests/Xamarin.Android.Build.Tests.Shared.projitems @@ -19,8 +19,9 @@ + - \ No newline at end of file + diff --git a/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.Android.Build.Tests/Xamarin.Android.Build.Tests.csproj b/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.Android.Build.Tests/Xamarin.Android.Build.Tests.csproj index 9a04c0c8228..c46e853f7be 100644 --- a/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.Android.Build.Tests/Xamarin.Android.Build.Tests.csproj +++ b/src/Xamarin.Android.Build.Tasks/Tests/Xamarin.Android.Build.Tests/Xamarin.Android.Build.Tests.csproj @@ -72,5 +72,7 @@ + + diff --git a/src/Xamarin.Android.Build.Tasks/Utilities/AndroidResource.cs b/src/Xamarin.Android.Build.Tasks/Utilities/AndroidResource.cs index 629be141b66..e9bcb993d9b 100644 --- a/src/Xamarin.Android.Build.Tasks/Utilities/AndroidResource.cs +++ b/src/Xamarin.Android.Build.Tasks/Utilities/AndroidResource.cs @@ -192,6 +192,15 @@ private static bool TryFixFragment (XAttribute attr, Dictionary return true; } + else if (attr.Value?.Contains (',') ?? false) { + // attr.Value could be an assembly-qualified name that isn't in acw-map.txt; + // see e5b1c92c, https://github.com/xamarin/xamarin-android/issues/1296#issuecomment-365091948 + var n = attr.Value.Substring (0, attr.Value.IndexOf (',')); + if (acwMap.ContainsKey (n)) { + attr.Value = acwMap [n]; + return true; + } + } } return false; diff --git a/src/Xamarin.Android.Build.Tasks/Xamarin.Android.Bindings.targets b/src/Xamarin.Android.Build.Tasks/Xamarin.Android.Bindings.targets index 7fa25ab2f9f..d7893fef261 100755 --- a/src/Xamarin.Android.Build.Tasks/Xamarin.Android.Bindings.targets +++ b/src/Xamarin.Android.Build.Tasks/Xamarin.Android.Bindings.targets @@ -82,7 +82,7 @@ Copyright (C) 2012 Xamarin Inc. All rights reserved. - + diff --git a/src/Xamarin.Android.Build.Tasks/Xamarin.Android.Build.Tasks.csproj b/src/Xamarin.Android.Build.Tasks/Xamarin.Android.Build.Tasks.csproj index 95e3703482d..41f9f0c9af6 100644 --- a/src/Xamarin.Android.Build.Tasks/Xamarin.Android.Build.Tasks.csproj +++ b/src/Xamarin.Android.Build.Tasks/Xamarin.Android.Build.Tasks.csproj @@ -187,6 +187,7 @@ + pdb2mdb\BitAccess.cs @@ -370,6 +371,12 @@ Linker\Linker\MarkingHelpers.cs + + Linker\Mono.Linker\MarkingHelpers.cs + + + Linker\Mono.Linker\Tracer.cs + diff --git a/src/Xamarin.Android.Build.Tasks/Xamarin.Android.Common.targets b/src/Xamarin.Android.Build.Tasks/Xamarin.Android.Common.targets index f000033f5b6..c95775e935b 100755 --- a/src/Xamarin.Android.Build.Tasks/Xamarin.Android.Common.targets +++ b/src/Xamarin.Android.Build.Tasks/Xamarin.Android.Common.targets @@ -32,6 +32,7 @@ Copyright (C) 2011-2012 Xamarin. All rights reserved. + @@ -237,7 +238,7 @@ Copyright (C) 2011-2012 Xamarin. All rights reserved. 27.0.3 27.0.1 26.1.1 - r14b + 16.1 None @@ -1115,11 +1116,6 @@ because xbuild doesn't support framework reference assemblies. - @@ -2767,6 +2763,28 @@ because xbuild doesn't support framework reference assemblies. DependsOnTargets="$(InstallDependsOnTargets)"> + + + + + <_ProjectAndroidManifest>$(ProjectDir)$(AndroidManifest) + <_NdkRequired Condition="'$(BundleAssemblies)' == 'True' Or '$(AotAssemblies)' == 'True'">true + <_NdkRequired Condition="'$(_NdkRequired)' == ''">false + + + + + + + diff --git a/tests/BCL-Tests/Xamarin.Android.Bcl-Tests/Xamarin.Android.Bcl-Tests.csproj b/tests/BCL-Tests/Xamarin.Android.Bcl-Tests/Xamarin.Android.Bcl-Tests.csproj index d3812a0cd14..684d972338d 100644 --- a/tests/BCL-Tests/Xamarin.Android.Bcl-Tests/Xamarin.Android.Bcl-Tests.csproj +++ b/tests/BCL-Tests/Xamarin.Android.Bcl-Tests/Xamarin.Android.Bcl-Tests.csproj @@ -134,7 +134,7 @@ - + diff --git a/tests/BCL-Tests/Xamarin.Android.Bcl-Tests/Xamarin.Android.Bcl-Tests.targets b/tests/BCL-Tests/Xamarin.Android.Bcl-Tests/Xamarin.Android.Bcl-Tests.targets index 3bc40818051..1b2115baaaf 100644 --- a/tests/BCL-Tests/Xamarin.Android.Bcl-Tests/Xamarin.Android.Bcl-Tests.targets +++ b/tests/BCL-Tests/Xamarin.Android.Bcl-Tests/Xamarin.Android.Bcl-Tests.targets @@ -28,8 +28,14 @@ + + <_DebugSymbol + Include="..\..\..\bin\$(Configuration)\bcl-tests\%(MonoTestAssembly.Filename).pdb" + Condition="Exists('..\..\..\bin\$(Configuration)\bcl-tests\%(MonoTestAssembly.Filename).pdb')" + /> + From 02684adc0bfa548369f26596116b0009b7c7ff6f Mon Sep 17 00:00:00 2001 From: Martin Baulig Date: Wed, 21 Feb 2018 19:36:16 +0000 Subject: [PATCH 26/78] Bump Mono. --- external/mono | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/external/mono b/external/mono index 72aea0056b8..b242e82ba48 160000 --- a/external/mono +++ b/external/mono @@ -1 +1 @@ -Subproject commit 72aea0056b84aa400d8367824f845724deeb8fb1 +Subproject commit b242e82ba4862f506e7ff93812aecd2288107db9 From d41ba7e904f244e4e0e3fedeb010ad6c2a4dd180 Mon Sep 17 00:00:00 2001 From: Martin Baulig Date: Wed, 21 Feb 2018 21:06:52 +0000 Subject: [PATCH 27/78] Make it build. --- .../Xamarin.Android.Build.Tasks.csproj | 3 --- 1 file changed, 3 deletions(-) diff --git a/src/Xamarin.Android.Build.Tasks/Xamarin.Android.Build.Tasks.csproj b/src/Xamarin.Android.Build.Tasks/Xamarin.Android.Build.Tasks.csproj index 41f9f0c9af6..e239e46f05c 100644 --- a/src/Xamarin.Android.Build.Tasks/Xamarin.Android.Build.Tasks.csproj +++ b/src/Xamarin.Android.Build.Tasks/Xamarin.Android.Build.Tasks.csproj @@ -371,9 +371,6 @@ Linker\Linker\MarkingHelpers.cs - - Linker\Mono.Linker\MarkingHelpers.cs - Linker\Mono.Linker\Tracer.cs From 676104bafd821fca02713ae2ce4d32bea69834ab Mon Sep 17 00:00:00 2001 From: Martin Baulig Date: Tue, 27 Feb 2018 23:04:59 +0000 Subject: [PATCH 28/78] FIXME: ignore missing symbol files. --- .../Linker/MonoDroid.Tuner/Linker.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Xamarin.Android.Build.Tasks/Linker/MonoDroid.Tuner/Linker.cs b/src/Xamarin.Android.Build.Tasks/Linker/MonoDroid.Tuner/Linker.cs index 352cda31492..6b90605fc5d 100644 --- a/src/Xamarin.Android.Build.Tasks/Linker/MonoDroid.Tuner/Linker.cs +++ b/src/Xamarin.Android.Build.Tasks/Linker/MonoDroid.Tuner/Linker.cs @@ -48,7 +48,7 @@ static LinkContext CreateLinkContext (LinkerOptions options, Pipeline pipeline, context.CoreAction = AssemblyAction.Link; context.UserAction = AssemblyAction.Link; context.LinkSymbols = true; - context.SymbolReaderProvider = new DefaultSymbolReaderProvider (true); + context.SymbolReaderProvider = new DefaultSymbolReaderProvider (false); context.SymbolWriterProvider = new DefaultSymbolWriterProvider (); context.OutputDirectory = options.OutputDirectory; return context; From 754f8c77b633ae886cb2a42cabeac256bb02c70b Mon Sep 17 00:00:00 2001 From: Martin Baulig Date: Thu, 1 Mar 2018 18:40:50 +0000 Subject: [PATCH 29/78] Revert "FIXME: ignore missing symbol files." This reverts commit 676104bafd821fca02713ae2ce4d32bea69834ab. --- .../Linker/MonoDroid.Tuner/Linker.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Xamarin.Android.Build.Tasks/Linker/MonoDroid.Tuner/Linker.cs b/src/Xamarin.Android.Build.Tasks/Linker/MonoDroid.Tuner/Linker.cs index 6b90605fc5d..352cda31492 100644 --- a/src/Xamarin.Android.Build.Tasks/Linker/MonoDroid.Tuner/Linker.cs +++ b/src/Xamarin.Android.Build.Tasks/Linker/MonoDroid.Tuner/Linker.cs @@ -48,7 +48,7 @@ static LinkContext CreateLinkContext (LinkerOptions options, Pipeline pipeline, context.CoreAction = AssemblyAction.Link; context.UserAction = AssemblyAction.Link; context.LinkSymbols = true; - context.SymbolReaderProvider = new DefaultSymbolReaderProvider (false); + context.SymbolReaderProvider = new DefaultSymbolReaderProvider (true); context.SymbolWriterProvider = new DefaultSymbolWriterProvider (); context.OutputDirectory = options.OutputDirectory; return context; From 8ffe62499803f5c8332a15ba8e644a2937d64abd Mon Sep 17 00:00:00 2001 From: Martin Baulig Date: Thu, 1 Mar 2018 18:49:03 +0000 Subject: [PATCH 30/78] Bump Mono. --- external/mono | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/external/mono b/external/mono index b242e82ba48..c0b76ff9aec 160000 --- a/external/mono +++ b/external/mono @@ -1 +1 @@ -Subproject commit b242e82ba4862f506e7ff93812aecd2288107db9 +Subproject commit c0b76ff9aec96f018155aa54c69e84c5bae2c81b From 5fb2e06aee5853f4e7353d3052b35dc8ad05587e Mon Sep 17 00:00:00 2001 From: Martin Baulig Date: Thu, 1 Mar 2018 20:43:58 +0000 Subject: [PATCH 31/78] Make it build. --- .../Linker/MonoDroid.Tuner/Linker.cs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/Xamarin.Android.Build.Tasks/Linker/MonoDroid.Tuner/Linker.cs b/src/Xamarin.Android.Build.Tasks/Linker/MonoDroid.Tuner/Linker.cs index 352cda31492..89b7b408171 100644 --- a/src/Xamarin.Android.Build.Tasks/Linker/MonoDroid.Tuner/Linker.cs +++ b/src/Xamarin.Android.Build.Tasks/Linker/MonoDroid.Tuner/Linker.cs @@ -43,7 +43,7 @@ static LinkContext CreateLinkContext (LinkerOptions options, Pipeline pipeline, if (prepareDependenciesDump != null) prepareDependenciesDump.Invoke (context.Annotations, null); } - context.LogInternalExceptions = true; + context.LogMessages = true; context.Logger = logger; context.CoreAction = AssemblyAction.Link; context.UserAction = AssemblyAction.Link; From a54509772b5ca9b29dd46c03b316a6cc4d994d35 Mon Sep 17 00:00:00 2001 From: Martin Baulig Date: Mon, 5 Mar 2018 22:42:05 +0000 Subject: [PATCH 32/78] Bump Mono. --- build-tools/dependencies/dependencies.projitems | 2 +- external/mono | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/build-tools/dependencies/dependencies.projitems b/build-tools/dependencies/dependencies.projitems index 5e5225a717e..e24d1b3288a 100644 --- a/build-tools/dependencies/dependencies.projitems +++ b/build-tools/dependencies/dependencies.projitems @@ -1,7 +1,7 @@ - <_DarwinMonoFramework>MonoFramework-MDK-5.12.0.28.macos10.xamarin.universal.pkg + <_DarwinMonoFramework>MonoFramework-MDK-5.12.0.74.macos10.xamarin.universal.pkg <_AptGetInstall>apt-get -f -u install diff --git a/external/mono b/external/mono index c0b76ff9aec..30aadcaa3a4 160000 --- a/external/mono +++ b/external/mono @@ -1 +1 @@ -Subproject commit c0b76ff9aec96f018155aa54c69e84c5bae2c81b +Subproject commit 30aadcaa3a40b52ea9d9a32f84fd29354f87e633 From fc093971a421dc15e2e7cfc6aa2819941467da88 Mon Sep 17 00:00:00 2001 From: Martin Baulig Date: Mon, 5 Mar 2018 22:47:23 +0000 Subject: [PATCH 33/78] Update DarwinMinimumUrl. --- build-tools/dependencies/dependencies.projitems | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build-tools/dependencies/dependencies.projitems b/build-tools/dependencies/dependencies.projitems index e24d1b3288a..a328665b98a 100644 --- a/build-tools/dependencies/dependencies.projitems +++ b/build-tools/dependencies/dependencies.projitems @@ -59,7 +59,7 @@ $(MonoRequiredMaximumVersion) $(MonoRequiredDarwinMinimumVersion) $(MSBuildThisFileDirectory)..\scripts\mono-version - https://xamjenkinsartifact.azureedge.net/build-package-osx-mono/2018-02/29/f0f76abc304dd768b8dbd18397329816006c682b/$(_DarwinMonoFramework) + https://xamjenkinsartifact.azureedge.net/build-package-osx-mono/2018-02/29/30aadcaa3a40b52ea9d9a32f84fd29354f87e633/$(_DarwinMonoFramework) installer -pkg "$(AndroidToolchainCacheDirectory)\$(_DarwinMonoFramework)" -target / From c7a0724bebfad0194c3fb28fa6d3017399837eb4 Mon Sep 17 00:00:00 2001 From: Martin Baulig Date: Tue, 6 Mar 2018 01:22:31 +0000 Subject: [PATCH 34/78] Fix package url. --- build-tools/dependencies/dependencies.projitems | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build-tools/dependencies/dependencies.projitems b/build-tools/dependencies/dependencies.projitems index a328665b98a..9b194a5578c 100644 --- a/build-tools/dependencies/dependencies.projitems +++ b/build-tools/dependencies/dependencies.projitems @@ -59,7 +59,7 @@ $(MonoRequiredMaximumVersion) $(MonoRequiredDarwinMinimumVersion) $(MSBuildThisFileDirectory)..\scripts\mono-version - https://xamjenkinsartifact.azureedge.net/build-package-osx-mono/2018-02/29/30aadcaa3a40b52ea9d9a32f84fd29354f87e633/$(_DarwinMonoFramework) + https://xamjenkinsartifact.azureedge.net/build-package-osx-mono/2018-02/68/30aadcaa3a40b52ea9d9a32f84fd29354f87e633/$(_DarwinMonoFramework) installer -pkg "$(AndroidToolchainCacheDirectory)\$(_DarwinMonoFramework)" -target / From 1b0426046564c1372cd94f2d619d9154798c34e8 Mon Sep 17 00:00:00 2001 From: Ludovic Henry Date: Thu, 8 Mar 2018 17:29:46 -0500 Subject: [PATCH 35/78] Bump to mono:2018-02 --- external/mono | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/external/mono b/external/mono index 30aadcaa3a4..91fe1eb5f58 160000 --- a/external/mono +++ b/external/mono @@ -1 +1 @@ -Subproject commit 30aadcaa3a40b52ea9d9a32f84fd29354f87e633 +Subproject commit 91fe1eb5f58b7ed26951cc996750a2a786ed7a1a From 5badf17dc2fbd2e42f23a0955b4fd31b222eac13 Mon Sep 17 00:00:00 2001 From: Ludovic Henry Date: Thu, 8 Mar 2018 22:23:16 -0500 Subject: [PATCH 36/78] Bump system mono to `mono:2018-02` --- build-tools/dependencies/dependencies.projitems | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/build-tools/dependencies/dependencies.projitems b/build-tools/dependencies/dependencies.projitems index 9b194a5578c..f4b737a09fa 100644 --- a/build-tools/dependencies/dependencies.projitems +++ b/build-tools/dependencies/dependencies.projitems @@ -1,7 +1,7 @@ - <_DarwinMonoFramework>MonoFramework-MDK-5.12.0.74.macos10.xamarin.universal.pkg + <_DarwinMonoFramework>MonoFramework-MDK-5.12.0.90.macos10.xamarin.universal.pkg <_AptGetInstall>apt-get -f -u install @@ -59,7 +59,7 @@ $(MonoRequiredMaximumVersion) $(MonoRequiredDarwinMinimumVersion) $(MSBuildThisFileDirectory)..\scripts\mono-version - https://xamjenkinsartifact.azureedge.net/build-package-osx-mono/2018-02/68/30aadcaa3a40b52ea9d9a32f84fd29354f87e633/$(_DarwinMonoFramework) + https://xamjenkinsartifact.azureedge.net/build-package-osx-mono/2018-02/79/91fe1eb5f58b7ed26951cc996750a2a786ed7a1a/$(_DarwinMonoFramework) installer -pkg "$(AndroidToolchainCacheDirectory)\$(_DarwinMonoFramework)" -target / From 371664e8d94a2e1850eda32886055f511bb274ef Mon Sep 17 00:00:00 2001 From: Ludovic Henry Date: Fri, 9 Mar 2018 18:58:56 -0500 Subject: [PATCH 37/78] Bump to mono:2018-02 --- external/mono | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/external/mono b/external/mono index 91fe1eb5f58..279d7e230fd 160000 --- a/external/mono +++ b/external/mono @@ -1 +1 @@ -Subproject commit 91fe1eb5f58b7ed26951cc996750a2a786ed7a1a +Subproject commit 279d7e230fd9d04650aceb1acf450a299dd16470 From c923c7bfd60fa14c9be8bbe4f3b2901a70e011de Mon Sep 17 00:00:00 2001 From: Ludovic Henry Date: Fri, 16 Mar 2018 18:12:20 -0400 Subject: [PATCH 38/78] Bump to mono:2018-02 --- external/mono | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/external/mono b/external/mono index 279d7e230fd..e9c512092df 160000 --- a/external/mono +++ b/external/mono @@ -1 +1 @@ -Subproject commit 279d7e230fd9d04650aceb1acf450a299dd16470 +Subproject commit e9c512092dfc408aa2124266f5ecf085e0693eb4 From a8de9a6b77632ef354b0da69efd313531c4b6525 Mon Sep 17 00:00:00 2001 From: Bernhard Urban Date: Tue, 20 Mar 2018 13:04:59 +0100 Subject: [PATCH 39/78] Bump to mono:2018-02 Commit list for mono/mono: * mono/mono@3577465fcd6 add LL suffix to constant in order to prevent overflowing on 32bit systems * mono/mono@7d9e106c032 1000ns = 1us and 1us = 10ticks * mono/mono@3931767dcab reduce compiler warnings * mono/mono@deb3474e7cc add regression test for github issue 7646 * mono/mono@27c7a4b01ed use utimes if available in order to set subsecond information on access and write time * mono/mono@da5b39d785f factor setfiletime * mono/mono@7f69ff87b57 use CONVERT_BASE in more places * mono/mono@e33bf27c9ad replace SECMULT with TICKS_PER_SECOND * mono/mono@79030a32843 remove unused mono_w32file_get_times () * mono/mono@e74d4a6e31f Merge pull request #7686 from mono/backport-gh-7584 * mono/mono@c2fe39f13ef Revert "Replace mono_msec_boottime() with CoreCLR implementation. Fixes https://bugzilla.xamarin.com/show_bug.cgi?id=58413" * mono/mono@0d8de253cbb [System.Net] Replace use of obsolete `SupportsIPv6` property. Diff: https://github.com/mono/mono/compare/e9c512092dfc408aa2124266f5ecf085e0693eb4...3577465fcd667fa01b15ee673aa93b55bf7b9f38 --- external/mono | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/external/mono b/external/mono index e9c512092df..3577465fcd6 160000 --- a/external/mono +++ b/external/mono @@ -1 +1 @@ -Subproject commit e9c512092dfc408aa2124266f5ecf085e0693eb4 +Subproject commit 3577465fcd667fa01b15ee673aa93b55bf7b9f38 From 5f657aa979f409a1e30f2abcbd8622ad7b6e4eb9 Mon Sep 17 00:00:00 2001 From: Bernhard Urban Date: Wed, 21 Mar 2018 10:49:43 +0100 Subject: [PATCH 40/78] Bump to mono:2018-02 Commit list for mono/mono: * mono/mono@c17d8c6dcdc remove WildcardConnect () on WatchOS * mono/mono@e29f146ab36 [2018-02] [sgen] Use current nursery size when computing allowance (#7648) * mono/mono@535bfc5d845 Add csc-dim as a prototype if default interface implementation * mono/mono@5b66de0bf08 [2018-02] [sdks] Fix concurrent building of MonoAotOffsetsDumper.exe + Simplify building of support library (#7688) * mono/mono@a6c7b9eca49 [msbuild] Bump msbuild to pick up fix for issue #7184 (#7666) Diff: https://github.com/mono/mono/compare/3577465fcd667fa01b15ee673aa93b55bf7b9f38...c17d8c6dcdc8089868e39316ad214edc7e42b3a3 --- external/mono | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/external/mono b/external/mono index 3577465fcd6..c17d8c6dcdc 160000 --- a/external/mono +++ b/external/mono @@ -1 +1 @@ -Subproject commit 3577465fcd667fa01b15ee673aa93b55bf7b9f38 +Subproject commit c17d8c6dcdc8089868e39316ad214edc7e42b3a3 From f131f291728131cf5b33df40905e484d0435c36f Mon Sep 17 00:00:00 2001 From: Ludovic Henry Date: Tue, 3 Apr 2018 18:48:40 -0400 Subject: [PATCH 41/78] Bump to mono/2018-04/59e6eb29 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Commit list for mono/mono: * mono/mono@59e6eb29e61 [2018-04] [Facades] Add System.Memory facade to mobile profiles (#7968) * mono/mono@5053d17e50f Bump version to 5.14 (#7954) * mono/mono@9cd9e3b0a13 [ppc] use ucontext_t * mono/mono@90b49aa3aeb Merge pull request #7946 from kumpera/wasm_fix_a_few_issues * mono/mono@21a9412a676 [sdb] Fix --enable-minimal=soft_debug build. Fixes #7920. (#7945) * mono/mono@95276e9ddb3 Merge pull request #7943 from filipnavara/corefx-sd-tests-1 * mono/mono@cdea795c0e4 [wasm] Make RuntimeInformation properly detect WebAssembly. * mono/mono@d8648776cc6 [wasm] Bump corert to pick fix for TaskCreationOptions.LongRunning. Fixes #7864. * mono/mono@106ef365e31 [wasm] Disable the degraded alloc warning under wasm. Fixes #7661 * mono/mono@2bf9a42fd3a [wasm] Fix the build. * mono/mono@5bdb87b6a67 [wasm] emcc has a broken clock_getime. Disable its usage. * mono/mono@a810739246b Include CoreFX GraphicsPath and Region tests. * mono/mono@4723e6603e6 Merge pull request #7915 from alexischr/fix-gh-7568 * mono/mono@2b4208feda5 [System.Windows.Forms] Set NotifyIcon.Icon in test to prevent warning * mono/mono@a914dbf1734 [System.Windows.Forms] Dispose forms opened during two tests * mono/mono@fcd52894d9b [System.Drawing] Remove failing jpeg flags tests (#7931) * mono/mono@254013b0fdf [runtime] Fix class visibility check for protected nested classes. (#7907) * mono/mono@ebef3ec4b18 [msvc] Update csproj files (#7929) * mono/mono@2cbd1706dcc [System.Drawing] Enable corefx xunit tests (#7924) * mono/mono@4d78aaf7b46 [genproj] When using fallback profile selection don't build the projects that were missing a profile (#7926) * mono/mono@1931cb1dcbc [Tests] Disable hijacking.exe and Jittailcall2.exe tailcall tests. (#7922) * mono/mono@938415c6d39 [test-runner] Don't output test result xml when no tests are run * mono/mono@a5a496695a0 Disable building btls/ and support/ on the bcl build, they are not needed. (#7921) * mono/mono@2e0182b5c06 Implement Field SetValueDirect on non-struct targets. Add test case from roslyn issue 19038. (#7866) * mono/mono@88cab36c200 [sdks] add Make.config to ignore file (#7901) * mono/mono@5c839fc1097 Bump msbuild to track xplat-master (#7900) * mono/mono@f83fbbd9b8a [sdks] Fix LLVM build for XA (#7917) * mono/mono@a36d08a55ac [perfcounters] fix alignment issue on 32bit * mono/mono@1e1893d683f [System.IO] Don't throw exception when FileSystemWatcher is disposed while the backend is still trying to use it * mono/mono@a1751d91c86 Revert "Disable some flaky tests." * mono/mono@2c14b1f82c2 Revert "Disable a flaky test." * mono/mono@86df754848d Revert "Disable bug-80307.exe" * mono/mono@60707875d59 Revert "[sdks] Disable btls and support/ on the bcl build, they are not needed. (#7892)" (#7904) * mono/mono@6f0fba8961a [Tailcall] Bring coreclr tests for tail calls to Mono source tree (#7204) * mono/mono@765ea257723 [sdks] Fix LLVM build on Linux for XA + Fix MXE usage on non-Darwin platforms (#7910) * mono/mono@1d36e15392d [msvc] Update csproj files * mono/mono@81a781bb02f add some OpenBSD patches (#7699) * mono/mono@792196320f4 [sdks] Disable btls and support/ on the bcl build, they are not needed. (#7892) * mono/mono@573e460e97c Fix tarball build * mono/mono@7ec24235351 [packaging] Bundle the msvc compiled monograph.exe on Windows * mono/mono@3dad276e2d2 Bump api-snapshot * mono/mono@77b2db73aaf Add BindingFlags.DoNotWrapExceptions (#7863) * mono/mono@9ff460b0049 [sdks] Disable wasm on the ios sdk lane. (#7894) * mono/mono@e70a872c533 [sdks] Fix usage of MXE for XA (#7897) * mono/mono@5841ffff038 [System.Windows.Forms] Ignore non-visible controls when computing ScrollableControl canvas size (#4247) * mono/mono@407e254643c [sdks] Pass LLVM_SRC from XA to use `xamarin-android/external/llvm` + Pass IGNORE_PACKAGE_MXE from XA + Only checkout specific MXE and LLVM commit when cloning (#7893) * mono/mono@6c901dbfc58 [sdks] Pass MXE_SRC from XA to use `xamarin-android/external/mxe` (#7888) * mono/mono@ff40ceff387 check for iconv only once (#7873) * mono/mono@e3e1fe1c16f [corlib] Moves DynamicMethod to mscorlib to work better with wasm (#7875) * mono/mono@ada6edbad87 [bcl] Fix the compilation of System tests in the mobile profile. (#7882) * mono/mono@2f66873ab2a [msvc] Update csproj files (#7811) * mono/mono@753cc874f64 [jit] Add signature checking for CALLI. (#7832) * mono/mono@ab62d30edb0 [genproj] Move obj to common folder and remove unnecessary properties (#7870) * mono/mono@8c86a805ff7 [mcs] Updates common array bounds unification to use universal type comparer * mono/mono@b42086d4504 Use __PASE__ for things i needs that AIX doesn't (#7858) * mono/mono@f00eba8a7cc Whitelist illinkanalyzer in macOS package (#7861) * mono/mono@4a247e7ed9a Merge pull request #7740 from alexischr/corefx-unknownunix-fsw * mono/mono@03a153c7b36 Bump API snapshot submodule * mono/mono@e6f90edfcd1 [System]: Disable the System.Net.ServicePoint tests from corefx. * mono/mono@0f9b7f730f8 mono_perfcounter_counter_names returns incorrect names, and restructure slightly for clarity (#6355) * mono/mono@9b36f1452f4 wcf: fix index of message body parts. Do not use MessageBodyMemberAttribute.Order as index. * mono/mono@3c8bf90a40e [System.IO] Use CoreFX FileSystemWatcher stub for mobile profile * mono/mono@6caa9bd8812 Disable a flaky FileSystemWatcher test * mono/mono@7e31c5d11f7 Merge pull request #7849 from marek-safar/corefx-fixes * mono/mono@294707cf882 [build] Fixes bootstrap invocation of cil-stringreplacer * mono/mono@dc1ef2ea3a2 [runtime] One more MonoClass getter fixup (#7836) * mono/mono@dc6700a799f [corlib] Restores ConcurrentDictionary serialization support. * mono/mono@32e6bccc2d1 [System] Makes TLS providers linker friendly * mono/mono@554690a64cd [build] Update monolite package to support cil-stringreplacer (#7847) * mono/mono@96e8fa67e2f [bcl] Fix Cscompmgd/I18N.Rare not having any tests (#7842) * mono/mono@3157302581e Pull in bug 53272 fix * mono/mono@16d5c314094 [ci] Bundle nunit xml results in a .tar file (#7843) * mono/mono@5e1acb47f5d [genproj] Deduplication of project references (#7844) * mono/mono@b20d5ce1e5d [runtime] Rework how the native-to-managed eh callback is called. (#5837) * mono/mono@2b663424a04 [threads] Remove suspicious mono_gchandle_free * mono/mono@f66032b7c0f Fix F# build. (#7826) * mono/mono@e610e443cd6 Structure field that cannot be marshalled throws exception instead of aborts\n Alllow structure pointer conversion for blittable multi-dimentional arrays (#7794) * mono/mono@febd5ac5358 MonoClass getters mop-up PR (#7806) * mono/mono@a5099ca2a44 [mini] Use MonoClass getters in method-to-ir.c (#7772) * mono/mono@2ce121ab7b1 [sre-save] Remove type_token assignment in mono_image_fill_export_table (#7803) * mono/mono@2f5077a1fba [sdks] Fix the ios sdk build. (#7801) * mono/mono@dde9ee5e79e [w32handle] Lower minimum memory usage (2nd attempt) (#7508) * mono/mono@30903764c24 [sdks] Fix Android build for toolchain (#7817) * mono/mono@2709d2309e6 [mini] Use MonoClass getters on non-AMD64 platforms (#7799) * mono/mono@506fc0b522f [genproj] Deduplication of sources (#7810) * mono/mono@331f3d9f27e Fix warnings and cleanup style. (#7800) * mono/mono@954911d3f1a Genproj updates for BCL build in Windows Visual Studio (#7755) * mono/mono@431c67415cf [mini] Use MonoClass getters in aot-compiler.c (#7773) * mono/mono@76f01933880 [ci] For checked builds, pass -k to make (#7802) * mono/mono@43d9c4737bc Imports FtpWebRequest from CoreFX (#7644) * mono/mono@bc25029b580 Disable some flaky tests. * mono/mono@901ccebb0ac [sdks] Disable the interpreter on ios device builds. (#7793) * mono/mono@e3c284c4e36 CodeOwners update (#7798) * mono/mono@74daf13fb29 Harden JIT job control against cctors deadlocking. (#7423) * mono/mono@7bb6e59e38c [runtime] Fix lock tracer compilation error (#7767) * mono/mono@1bdcf191697 [corlib] System.Collections from CoreFX (#7478) * mono/mono@3aeab61192b [mini] Use MonoClass getters in a few files (#7771) * mono/mono@158bb416eb0 [interp] Use MonoClass getters (#7774) * mono/mono@b06de64bf86 Fallback to listing drives in My Computer using System.IO.DriveInfo. * mono/mono@b8fdce6c053 [Tailcall] Fix virtual generic methods that F# tests uses. (#7524) * mono/mono@066ce338255 Add tailcall support & fix floating point ABI (#7695) * mono/mono@d233bdbf998 [icall] remove DISABLE_PROCESS_HANDLING (#7779) * mono/mono@7de72fbf3f0 [interp] support increment and decrement of nint/nuint * mono/mono@d4247747510 [interp] improve error message and add another interp_in signature * mono/mono@dfabaa59175 Remove incorrect docs (#7784) * mono/mono@67e995c6e27 [interp] Improve mixed mode execution support, using full-aot+interp as the configuration. (#7764) * mono/mono@9c63d1bf9df [sdks] Fix Android build for mxe (#7781) * mono/mono@8a3b4bf2af0 [sdks] Fix Android build on Linux (#7775) * mono/mono@95d450660be [interp] move variable decl into ifdef to avoid unused warning (#7763) * mono/mono@392e1c368c3 [Tailcall] Proper fix for F# regression, at least some architectures. (#7658) * mono/mono@45c94b22ab3 [sdks] Fix Android build (#7768) * mono/mono@d856789ccd4 Bump corefx to bring a fix for #7696 * mono/mono@9bc0a49bc78 [runtime] Fix the cross compiler build. (#7754) * mono/mono@3d2891097a7 Merge pull request #7748 from lambdageek/fix-gc-descr-object-c * mono/mono@3283af3449d [msvc] Update csproj files * mono/mono@3ec9fda3718 [System.Core] Guard against embedded NUL in strings for MemoryMappedFiles (#7318) * mono/mono@6822a57663b Disable a flaky test. * mono/mono@54e3eccc5d8 [build] Bump bootstrap mcs dependency for mcs builds to catch up with e6fb82b2c7b4a8f42827f9a952dec0a03ae9c8c9 * mono/mono@99d31278e35 [interp] always set old_frame in interp_entry (#7757) * mono/mono@c2698519b0c [interp] Allocate ThreadContext structures on the heap instead of on the stack, the latter doesn't work in mixed mode if the native frame gets unwound during exception handling, so the set_context (NULL) call is never executed, leaving a dangling ref in the tls variable. (#7747) * mono/mono@678576f5a8c [System.Windows.Forms] Reset check state of item when removing it. (#7744) * mono/mono@87fd0714126 Revert "Swap Close/Dispose calls so that the receiver_thread_main loop will be properly interrupted (#7390)" (#7745) * mono/mono@9b702e8052f Bump API snapshot submodule * mono/mono@e6fb82b2c7b Bump bootstrap dependency * mono/mono@7a9f8405d49 [corlib] String from CoreFX/CoreRT * mono/mono@20ba08543e4 [corlib] Use UTF8 bytes convertor directly * mono/mono@d9e3d7c4075 Remove dead code (#7738) * mono/mono@c732bd47584 This fixes an issue we are seeing with VSTU debgugging in Unity. (#7634) * mono/mono@7faa4620462 Fix bug #60843 and add test (#7640) * mono/mono@d26fb8a3eb3 Forward mono_string_new_wrapper to mono_string_new for error handling. (#7718) * mono/mono@d5d1fb290d0 Bump roslyn-binaries to include missing file * mono/mono@dd09fa9982d [mcs] Adds cloning for TupleLiteralElement expressions (#7746) * mono/mono@3fa3592376c Uncomment and fix ServiceHost creation via ServiceFactory in SvcHttpHandler.cs (#3465) * mono/mono@74dd088d400 [metadata] Add mono_class_publish_gc_descriptor * mono/mono@f42fdeca61b [mcs] Fixes codegen for null fixed string statement * mono/mono@8e3be153357 [metadata] Move mono_class_compute_gc_descriptor back to object.c * mono/mono@9e4eb1ca69a Bumps roslyn to 2.7.0 * mono/mono@dc0cf83b3a8 [arm] fix stack alignment for structs (#7691) * mono/mono@0dec8fda18c [sgen] Fix scanning of large arrays (#7672) * mono/mono@39c9f9d935d Merge pull request #7724 from lewurm/wildcardconnect-watchos * mono/mono@e40c97e7718 [interp] Disable pinvoke3.exe test on x64 (#7739) * mono/mono@06463f4ca2a [Tailcall] Add interface tailcall tests, and generics thereof. (#7703) * mono/mono@9914517a125 Remove obsolete code for getting TLS values from other threads. (#7714) * mono/mono@9fe7008d97f [HttpClientTest] remove WildcardConnect () on WatchOS * mono/mono@7dea71ce64b Touchup for https://github.com/mono/mono/pull/7599/ * mono/mono@37660898982 Merge pull request #7599 from lambdageek/abort-cctor-no-protection * mono/mono@f617929e9e2 [runtime] Don't use clock_gettime on WatchOS and tvOS. * mono/mono@081c79e6871 Add csc-dim script to .gitignore * mono/mono@7cc78d08b09 Merge pull request #7707 from mono/fix-boottime-osx-10.7 * mono/mono@9cf2550ba2d Update man page, MONO_DISABLE_AIO is now MONO_ENABLE_AIO. (#7715) * mono/mono@16e6e7df70a [sgen] Finish thread pool work before shutting down threads (#7647) * mono/mono@e480620040e [System]: Fix a race condition that was exposed by #7358 (see #7668). * mono/mono@120aa248fa5 [sdks] Fix building the ios device tests. (#7706) * mono/mono@a5c6f5c5ca2 [w32file] do not discard sub-second resolution for access- and writetime if possible (#7650) * mono/mono@b37166882de [runtime] Fix file handle leak with dedup+aot (#7694) * mono/mono@feb8b568bab [mprof-report] Fix reading of TYPE_JITHELPER events in v13 files. (#7677) * mono/mono@b77313855c2 [loader] Don't load framework Facade assemblies that are older than expected. (#7663) * mono/mono@62921c8a62e [runtime] Don't use clock_gettime in MacOS. * mono/mono@7528656820c [msbuild] Bump msbuild to pick up fix for issue #7184 (#7665) * mono/mono@53a59ccf766 [sdks] Fix building the ios tests. (#7701) * mono/mono@1c8b460b4cf [version.h] Support .git being a submodule (#7689) * mono/mono@e99ac890e6a Add csc-dim as a prototype if default interface implementation * mono/mono@7aeaafd2819 [runtime] Fix mono_msec_boottime () so it compiles on older ios versions, clock_gettime () is only available from ios 10. (#7671) * mono/mono@8ae317a1e82 [arm64] Add a known TLS offset. (#7530) * mono/mono@b6f56a115fc [Tailcall] Cleanup, handle varargs, cleanup varargs handling, be sure not to use unsupported tailcall_membase, pass r11 through, align patches. (#7600) * mono/mono@249a02d9366 Updates codeowners (#7679) * mono/mono@5232bef2825 Disable a flaky FileSystemWatcher test (#7578) * mono/mono@540ef385faa If a bad header is received from the client or the connection is broken, send an internal VM_DISPOSE command to shut down the debugger thread properly. This prevents runtime hangs that occur during profile events after the debugger shuts down. * mono/mono@68a9bbe69f8 Update Server.py to run on both python 2 and 3 * mono/mono@2f211770198 Merge pull request #7584 from alexischr/fix-gh-6940 * mono/mono@fe3c5134bf5 Implement C#7 binary literals (#7659) * mono/mono@421e0174793 [System.Windows.Forms] Fix bounds manipulation in Control.DrawToBitmap (#7629) * mono/mono@d3e2518fb60 [sdks] Fix concurrent building of MonoAotOffsetsDumper.exe + Simplify building of support library (#7652) * mono/mono@e36148dbd26 [tests] Prevent starvation by thread doing GCs (#7651) * mono/mono@ec4c990af3e [System.Net] Replace use of obsolete `SupportsIPv6` property. * mono/mono@43415f5f2b5 [threads] Add mono_uninstall_current_handler_block_guard * mono/mono@92042c97323 [threads] Delay abort via handler block guard when in abort protected block. * mono/mono@b0734593de5 [tests] Run abort-cctor.exe on the coop Jenkins job * mono/mono@ea4274f2eb7 Revert "[Tailcall] Proper fix for F# regression." (#7656) * mono/mono@fdbf51184ac [msvc] Update csproj files (#7654) * mono/mono@b2271853c33 [Tailcall] Proper fix for F# regression. (#7621) * mono/mono@9b3893f84a1 [tests] Class should be viable even if cctor is aborted in in nested finally clause * mono/mono@247a13b081f [System.Windows.Forms] Improve logic for closing complex ToolStripDropDown layouts. (#7630) * mono/mono@5d23a12446d [System.Windows.Forms] Unify layout engines for Controls and ToolStripItems (#7612) * mono/mono@6bdeea15030 [jit] Incorrect code under mono --trace. (#7627) * mono/mono@395b37c2865 Fix issue #7596 on Windows x64. (#7625) * mono/mono@5820d1fc668 [sgen] Use current nursery size when computing allowance (#7601) * mono/mono@52429673dc6 [mini] Don't inline methods if they're going to be instrumented for coverage. (#7554) * mono/mono@851b36ecb25 [mini] Improve error reporting by using MonoError around more places. (#7607) * mono/mono@6906c9dc40a [interp] Don't crash when freeing delegate ftnptr (#7586) * mono/mono@2883e562e2d Fix platform-specific build issues (#7342) * mono/mono@2d0eee9ae33 [jit] Fix partially shared constrained calls in llvmonly mode. (#7561) * mono/mono@ec319e6de7a [aot] Increase the buffer size in emit_exception_debug_info (). (#7638) * mono/mono@ff61c7751a6 [build] Fixes mcs only dist build * mono/mono@4b88e2a0e29 [System]: Introduce `WebCompletionSource` and use it in `WebOperation`. (#7358) * mono/mono@29c2ba9387f Merge pull request #7520 from alexischr/use-coreclr-GetTickCount * mono/mono@7e3a1ddaa09 [mcs] Fixes parsing ref-struct with partial keyword * mono/mono@87282805504 [sdks] IOS fixes. (#7617) * mono/mono@40b53bd2e0e [corlib] Handle multiple segments in IsolatedStored::GetFileNames. Fixes bxc #11771 * mono/mono@8ceead93e3e [Tailcall] Quick fix for building F#. Do not tailcall any method with a vtable_arg. (#7609) * mono/mono@1c88a115453 [Coop thread threadpool mmap] Convert more functions to coop/handle. (#7097) * mono/mono@239aad5265b [msvc] Update csproj files * mono/mono@34b4d35fb78 [runtime] Clean up symbol names to not pollute the global namespace. * mono/mono@1d70b627704 [profiler] Increment ref count of an image's method while we're keeping around pointers to it. * mono/mono@6b116cca186 [merp] only target macOS, HOST_DARWIN includes iOS etc. as well * mono/mono@40924c47ba0 [Mono.Data.Sqlite] Throw better exception for missing mobile support * mono/mono@a856f8d8e48 [Tailcall] Cleanup is_supported_tail_call, put more logic in it, and be sure not to tailcall_mem_base if not supported (i.e. virtual_ not just CALLVIRT) (#7608) * mono/mono@7e7d8a3b4fc [Facades] Make System.Net.Http.Rtc.dll a net_4_x only facade (#7590) * mono/mono@5f572ff7a62 [msvc] Update csproj files * mono/mono@6e246cf6134 [Facades] Move types from Facades into class libraries (#7574) * mono/mono@4e3389667f6 [System.Xml] Update source file location from commit d4816ef1abcfc5b3dea41a87fe5a7a4c4a3781ed * mono/mono@8c3d7c81af7 [System.Windows.Forms] Fix custom test targets in makefile. (#7571) * mono/mono@9dbd080c293 [System.Windows.Forms] Update code for top-level windows (#7570) * mono/mono@e85dbca0f2f Disable TestBug8592BasicOperations test * mono/mono@b1d2b858251 Make Form scaling tests platform independent. * mono/mono@cdb9b90baa4 Correcting typos for ISSUE_TEMPLATE.md (#7575) * mono/mono@99198da52be [msvc] Update csproj files (#7559) * mono/mono@16b3884854c Disable bug-80307.exe * mono/mono@a601516ca1f [tests] Disable delegate-15.exe in the full-aot profile. (#7529) * mono/mono@8f926ed4648 [ppdb] Set the column number in mono_ppdb_lookup_location (). * mono/mono@78de6719641 Swap bytes for port number as Win32 API returns in network order. * mono/mono@3b0c0bd1cff Build system tweaks for AIX (#7542) * mono/mono@486036b6964 Revert "[Tailcall] Do not create never-executed trampoline for tail.call self. (#7331)" (#7550) * mono/mono@06a4273d73c [mono-time] Replace mono_msec_boottime() with CoreCLR implementation. Fixes https://bugzilla.xamarin.com/show_bug.cgi?id=58413 * mono/mono@e456f910530 Bump api-snapshot * mono/mono@9a2b5324ee3 [Facades] Add missing Facades that exist in .NET 4.7.1 (#7541) * mono/mono@b6be2e11a79 [threads] Fix race between abort socket syscall and thread shutdown (#7507) * mono/mono@4ae98fb31b5 Merge pull request #7515 from kumpera/le_debugger_cleanup * mono/mono@868a402137d [metadata] split IL generation code into seperate compilation units. (#7487) * mono/mono@826f15a509a [interp] Fix return of value type from interp to native (#7519) * mono/mono@f24a6d622be gboolean g_is_usermode_native_debugger_present (void). (#7488) * mono/mono@03914603a3b [runtime] Add MS telemetry reporter for unmanaged exceptions (#7451) * mono/mono@d3a4e19f3ca Merge pull request #7533 from akoeplinger/disable-test * mono/mono@63e5e80d3a6 [bcl] Fix test build with mcs (#7512) * mono/mono@14485be705f [System.Windows.Forms] Fix lifetime of Graphics objects in TextBox controls (#7491) * mono/mono@b9d52fc4f12 [System] Disable SocketTest.AcceptBlockingStatus * mono/mono@91b64b4560b [System.Windows.Forms] Fix bugs in PrintPreviewControl. (#7493) * mono/mono@ee30689c181 Implement native ValueType Equals and GetHashCode support for pointer fields * mono/mono@4532cf5fd55 [interp] Fix stack usage after throw (#7461) * mono/mono@523ba159c2b [sgen] Fix the clearing of bits in the gc descriptor bitmap when using weak fields. * mono/mono@660e166c7b6 [eglib] Fix typo in g_assertf (#7458) * mono/mono@c745a9575d0 [jit] Move the check for open constructed types later in mono_jit_compile_method_with_opt (), this function can receive (#7494) * mono/mono@25f4ef27897 [wasm] Make switching between debug/release builds easy. Build pdb files. * mono/mono@eba41fd88a6 [wasm] Update SDK driver to handle debugging. * mono/mono@334ddbd3ef6 [wasm] Initial support for debugging. * mono/mono@1a56fe6a159 [wasm] Fix unwinding to work with the general unwinder. * mono/mono@ccbb873498b [interp] Fix pinvoke from dynamic methods * mono/mono@4ad92ef05f7 [interp] Fix detection of pinvoke call * mono/mono@940f2d1a9fe [interp] Fix runtime invoke of pinvoke method * mono/mono@e0f8597e9c9 Fix generated file when passing --bundled-header (#6736) * mono/mono@b4ee86154fc [Tailcall] tail.callvirt support for AMD64 JIT (#7426) * mono/mono@c2bf82fb98f [System]: WebRequestStream now throws correct exception on cancellation (#7074). * mono/mono@8e4f0d8ff44 [Tailcall] Do not create never-executed trampoline for tail.call self. (#7331) * mono/mono@ab67bcfd0bf Provide compile-tests-parallel that honors the command line so e.g. (#7479) * mono/mono@3e8f4f7db8d [msvc] Update csproj files (#7497) * mono/mono@a5f980dc00f [interp] Let the backend deal with thiscall cconv * mono/mono@8b2ca1344f7 [interp] Fix EH with exception thrown from icall * mono/mono@da7650d3d96 Bump API snapshot submodule * mono/mono@03b030d9213 TaskAwaiter from CoreFX * mono/mono@12557bec396 [metadata] An array is not an IEnumerator`1 * mono/mono@1140ec53948 [test] An array is not an IEnumerator`1 * mono/mono@c0a5753b02a [metadata] Add IEnumerator`1 to MonoDefaults struct * mono/mono@36a471f14e5 [System] Remove compiler config sections for types which cannot be instantiated * mono/mono@32d06fd8036 [corlib] Fix Type.GetInterface() to find implemented interface when "ignoreCase: true" is used (#7464) * mono/mono@1181815eeda [w32handle] Lower minimum memory usage (#7465) * mono/mono@e6de24c2d19 [build] Unify DEFAULT_REFERENCE handling so I can override it with TARGET_NET_REFERENCE for individual tools * mono/mono@73859e3df28 [msvc] Update csproj files * mono/mono@e64cd8cc8da [profiler] Use accessor functions for MonoClass fields * mono/mono@4e6f5f10fd2 nuget-hash-extractor: Add msbuild extensions nuget version from vs15.6 msbuild branch * mono/mono@45f30c307b9 nuget-hash-extractor: Change the nuget repo name to use for * mono/mono@695acd0a0b9 System.Text.RegularExpressions from CoreFX (#7363) * mono/mono@85b605042b7 [acceptance-tests] Actually disable gcsuppressfinalize.exe test * mono/mono@c89abe54670 Bump boringssl submodule. * mono/mono@47df243579f [mini] unpack function pointers for jump patching * mono/mono@095519c8996 [ppc] update define usages for creating/unpacking function descriptors * mono/mono@4fea7fb7451 [ppc] use new patching machinery * mono/mono@ffaf5ffe0f8 [mini-runtime] unbreak platforms where MONO_ARCH_HAVE_PATCH_CODE_NEW isn't defined * mono/mono@8ba4947f7a3 [metadata] Use MonoClass getters in the rest of metadata/ (#7354) * mono/mono@6f225e6176a [System.Windows.Forms] Fix inconsistent state of Document object (#7422) * mono/mono@9e1ba501ffd Fix for gcc 4.4; nominal support for older. (#7419) * mono/mono@56263d4a756 [mini] Virtual call target is never known, remove dead code. (#7424) * mono/mono@62c8557a7a3 [System.Security] Fixes decoding of CMS/PKCS #7 messages with an explicit cryptographic object identifier * mono/mono@02abf28216f [corlib] Ignore TimeZoneTest.TestCtors on iOS under certain conditions due to an Apple bug. (#7429) * mono/mono@d1ed53624bf [acceptance-tests] Disable gcsuppressfinalize.exe test that started failing * mono/mono@b664dfe79ff [System.Windows.Forms] Updated unit tests (#7405) * mono/mono@30ad2195339 [mixed mode] skip gsharedvt_out_sig_wrapper frames and improve regression test * mono/mono@dab1ffc081c [interp] use mini infrastructure for stack walking * mono/mono@a785bd16e94 Merge pull request #7401 from filipnavara/swf-layout * mono/mono@d2bf59dd3f4 PPC support for BoringTLS * mono/mono@ee4ed72695d [acceptance-tests] Add an env var to turn on some Mono debugging options. (#7386) * mono/mono@4af9e3a5114 [Coop] Convert System.Enum to coop/handle. (#7131) * mono/mono@7c34f0c7467 [packaging] Support setting the FULL_VERSION number via env vars (#7414) * mono/mono@f546b95edfe [runtime] Increase the BCL trampoline count (#7409) * mono/mono@fe95e4b34b0 [jit] Fix the patching of tail calls for gshared methods, the caller and the caller were using different instantiations to search the jump_target_hash. * mono/mono@56bf6d3a738 Bump API snapshot submodule * mono/mono@ff60734df40 Add unit test for TextBox.PreferredSize property and fix updating the preferred size cache on Text change. * mono/mono@58f25ff1f0f Add makefile rule to build and run the notepad sample. * mono/mono@7b6b6075672 Remove obsolete code from FlowLayoutPanel that is no longer necessary with the corrected nested layouts. * mono/mono@ae972579de4 When Form is set to AutoSize enforce it also as the minimum size for the window manager. * mono/mono@f1de56d31cb Update XplatUI backends to properly send WM_WINDOWPOSCHANGED for zero-sized windows. * mono/mono@e563776f62f Avoid couple of size recalculations by streamlining the SetBounds, SetBoundsInternal and SetBoundsCore methods. Now explicit bounds are only updated in SetBoundsCore, no more all the updating and restoring with UpdateBounds calls. Rely on the WM_WINDOWSPOSCHANGED message to be sent from XplatUI.SetWindowPos to call UpdateBounds. This avoids an explicit call to XplatUI.GetWindowPos and UpdateBounds in SetBoundsCore. * mono/mono@ff38080cc07 Fix for bug_82326 unit test. * mono/mono@af26d754ae1 Fix couple of relayouts causing incorrectly cached control preferred size. Fix events triggered in incorrect order when Control.Controls.Remove is called. Update Dispose behavior with events and exceptions to match the reference implementation more closely. * mono/mono@5feb428acd5 Update DisposeTest to work on latest version of .NET Framework. * mono/mono@4f3adb750d1 Add test for label self-sizing behavior. * mono/mono@376002afb4a Call LayoutEngine.InitLayout when appropriate and move the dist_right and dist_bottom calculation there. * mono/mono@a859588486d Add cache for PreferredSize value. * mono/mono@016a5a86792 Fix propagating layout to parents and then back to children when PreferredSize changes. * mono/mono@71931189fa7 Remove obsolete code for layout of AutoSize forms. * mono/mono@622ad5480da Unify the code for layout of anchored controls to avoid setting the bounds twice for controls with AutoSize set to true. * mono/mono@78ad684762f Fix the default layout engine and its quirks enough to pass all unit tests again. * mono/mono@cbb07605df2 Move GetPreferredSize implementations from container classes to respective LayoutEngine implementations. Rework the layout engines to use AutoSizeInternal property since TextBoxBase has its own AutoSize that should not be respected by layout engines. Rework automatic sizing behavior of TextBoxBase to return correct values. Rework TableLayout completely to use same code for layout and calculation of preferred size. * mono/mono@d758a6d65fb Fix updating panel references when assigning TableLayoutSettings to TableLayoutPanel. * mono/mono@71989c037e7 Ignore invisible controls in FlowLayout. * mono/mono@ca957c45b42 Apply size constrains to control sizes when calculating flow layout. * mono/mono@4b093a9d2d2 Apply size constrains to control sizes when calculating flow layout preferred size. * mono/mono@6943077ab90 Added missing support for flow breaks in FlowLayoutPanel's preferred size calculation. * mono/mono@eed14424e50 Add tests for FlowLayoutPanel.PreferredSize. * mono/mono@a3690115557 Apply the constraints when setting MinimumSize/MaximumSize and update the unit test to demonstrate it. * mono/mono@78f4b60e6ca Reduce memory pressure by reusing the LayoutEngine objects. * mono/mono@f56b7109424 Added missing PerformLayout() calls to Control.MinimumSize and MaximumSize setters. * mono/mono@18001b61a3a Apply Maximum/MinimumSize constraints when calculating the preferred size. * mono/mono@1417a68137c Update Label.InternalGetPreferredSize to take the proposed size into account. * mono/mono@73c8e1f6156 Fix Label automatic sizing code. * mono/mono@baf431b393a [metadata] Use mono_atomic_store_release to initialize gparam cache * mono/mono@486be78f8a9 Update README.md with current directory structure * mono/mono@965a813f51d [msvc] Update csproj files (#7404) * mono/mono@0c6f7fa7c53 [mcs tests] fix runtime arguments passing to test harness (#7400) * mono/mono@9725d50c872 [sre] Use MonoClass getters in sre-save.c (#7352) * mono/mono@15578eab17c Bump corert * mono/mono@43ac34b36e2 [sdks] Unify targets to build runtimes (#7394) * mono/mono@e7ba41d14c7 Swap Close/Dispose calls so that the receiver_thread_main loop will be properly interrupted (#7390) * mono/mono@24c52e28c0b Use VSCMD_ARG_TGT_ARCH env in mkbundle on Windows when trying to autoetect target architecture. (#7281) * mono/mono@4874e18fd23 [corlib] Remove IVT for S.R.I.RuntimeInformation facade (#7385) * mono/mono@a9c37afaa45 [sdks] Fix the ios build. * mono/mono@16e5f049600 [interp] remove `method` field from `InterpFrame` * mono/mono@182a7485865 [runtime] Use MonoClass getters in object.c * mono/mono@2713dfc5776 [metadata] Move MonoClass:gc_descr and runtime_info initialization to class-init.c * mono/mono@9abe6ebf590 [appdomain] Fix path clobbering when trying to shadow copy siblings * mono/mono@76d5a164473 [Test] Reenable HttpRequestIgnoreBadCookies in monotouch. (#7330) * mono/mono@bbb882b0181 [sdks] Add watch device build. * mono/mono@b4d53f4d7c8 [sdks] Add watch simulator build. * mono/mono@dd5e5c8239d [sdks] Add tv simulator build. * mono/mono@6cc113a4b35 Ios sdk changes (#7258) * mono/mono@d8e49b1c279 Fix build from tarballs due to missing corefx.unix.sources * mono/mono@076557c37f4 Use attribute(deprecated) instead of attribute(error). (#7362) * mono/mono@68376f1f9b2 [msvc] Update csproj files (#7367) * mono/mono@319749c3148 Make it build. * mono/mono@d51e55d4a31 Bump linker to its latest master. * mono/mono@a838b6fb39e [interp] Enable more tests (#7315) * mono/mono@8ddcea29564 [profiler] A few low-hanging enhancements. (#7314) * mono/mono@ddf4e7be31b Update ppc badge to correct URL in README * mono/mono@db635611434 Merge pull request #7341 from akoeplinger/dont-throw-in-dispose * mono/mono@fa21013d7f0 Don't throw NotImplementedException in Dispose() * mono/mono@2c2fac29ebc [msvc] Update csproj files (#7337) * mono/mono@4f9b89adc17 CoreFX System.Runtime.CompilerServices (#7118) * mono/mono@cb956b58a6a Revert "Revert "[System.IO] Integrate FileSystemWatchers from CoreFX The FSEvent CoreFX watcher becomes the new default for MacOS."" * mono/mono@fdefcf1f25b Fix build * mono/mono@2174a521a3e Revert "[System.IO] Integrate FileSystemWatchers from CoreFX The FSEvent CoreFX watcher becomes the new default for MacOS." * mono/mono@f5b10f34a98 [System.IO] Integrate FileSystemWatchers from CoreFX The FSEvent CoreFX watcher becomes the new default for MacOS. * mono/mono@872c0488308 [wasm] Add a missing dependency in wasm. * mono/mono@8facc4afb2c [System]: Use new `WebCompletionSource` instead of `TaskCompletionSource`. (#7293) * mono/mono@dfe6e2d4a2c Merge pull request #7321 from mono/fix-linuxarm-native-stacktrace * mono/mono@9648645fb38 [System]: Enable some System.Net.Requests tests from CoreFX. (#7080) * mono/mono@ce2584911fb Fix gdb not being used for native stacktraces in some cases * mono/mono@096147d4286 [tests] Add --repeat parameter to enable runtime tests to run multiple times (#7291) * mono/mono@a5da7b21f4b [runtime] Implement thread info flags and get rid of tools threads. (#7226) * mono/mono@e8141fc31da [sdb] Fix VirtualMachine.CreateEnumMirror () so it works with types from non-root domains. * mono/mono@b8da9736209 [marshal] Use MonoClass getters in marshal.c (#7253) * mono/mono@2f9b9142cde [msvc] Update csproj files (#7310) * mono/mono@6ca674ed686 Update the random checking code in autoconf to this decade (#7250) * mono/mono@b1801b78044 Always enable explicit null checks for AIX (#7300) * mono/mono@31c03a9cbe7 [System.Windows.Forms] Remove dependency on Hwnd objects outside of XplatUI code. (#7243) * mono/mono@6ac20034175 bump nunitlite * mono/mono@216b5c5db8b Merge pull request #7286 from lambdageek/fix-gh-7095 * mono/mono@909b30b5ba0 [wasm] Fix v8 provisioning. (#7244) * mono/mono@cfaa28e1d81 [threads] Reduce race window with async abort (#7274) * mono/mono@f901c70548b [runtime] Don't assert in mono_class_is_assignable_from on iface gtd * mono/mono@8d37ddbf1dd [runtime] Use MonoClass getters in a few small files (#7254) * mono/mono@375304d501f [test] System.Type.IsAssignableFrom of gtd array special interfaces. * mono/mono@d63e8b6f5ae [corlib] CompareInfo from CoreFX (#7272) * mono/mono@c152f67574c Merge pull request #7263 from filipnavara/swf-carbontests * mono/mono@de8dc8311da Merge branch 'master' into swf-carbontests * mono/mono@ffbb3d90aee Merge pull request #7234 from filipnavara/swf-painteventend * mono/mono@5705b3d2070 Update CODEOWNERS * mono/mono@905077f90fc Add zlib.lib/zlibstatic.lib in Windows VS mkbundle build when using -z argument. * mono/mono@d69c1568f62 Remove mention of MONO_THEME from man page. (#7282) * mono/mono@dabdacd99b4 [metadata] Cache GenericParamInfo for anonymous gparams in MonoImage (#7155) * mono/mono@94f8dcf102d [wasm] Add LTO release configuration. Saves 15% of binary size. (#7221) * mono/mono@ba40177a44c Merge pull request #7269 from filipnavara/swf-theme-obsolete * mono/mono@8ebc608febb [Tailcall] Add 11 tests that are all runnable, never crash, are self checking. (#7232) * mono/mono@120be0fa4e6 Remove obsolete Nice theme code. * mono/mono@e2e66cb4f8f [wcf] use ConcurrentDictionary for wait handles (#7265) * mono/mono@8739c9b05a5 Bump api-snapshot * mono/mono@5aafe83bbdd Activate MDI child windows after showing them (fixes 7 unit tests failures). * mono/mono@cb48d78dc66 Return dummy value in XplatUICarbon.IconSize to let System.Windows.Forms.SystemInformationTest.IconSizeTest pass. * mono/mono@091595f3d8f Fix the default font value in test. * mono/mono@0d524452c54 Make XplatUICarbon.SetFocus send messages synchronously, fixes 9 unit tests. * mono/mono@bb99dcade28 Fix windows creating, destroying and message processing in Carbon driver to be stable enough not to freeze the test suite. * mono/mono@cde44408a4a Spit out the name of a test along with the error about undisposed forms. * mono/mono@0a2d57ed674 Call XplatUI.PaintEventEnd when an exception happens in OnPaint. * mono/mono@931380017f7 Unregister thread exception handler at the end of test. * mono/mono@0129c25e435 [tests] Use RemoteExecutor from corefx * mono/mono@335ca28eaf9 [llvm] Pass only the imt argument if both imt and rgctx arguments are required. * mono/mono@c99ac6a87e5 Add missing XplatUI.EndLoop call. * mono/mono@a974057d929 [sdks] Merge mxe-Win32 and mxe-Win64 targets since we are building both in XA anyway * mono/mono@1af92912945 Fix layout of ColorDialog on systems with different window border sizes. * mono/mono@657c7637fb2 Fix typo in implementation of Disposing property. * mono/mono@67e557fa2e3 Handle more special keys in KeysConverter to ensure compatibility with designer generated resource files. * mono/mono@6d889314b2e Remove obsolete theme code (disabled by commits 910c669 and 93724d2) and the last remaining usage of MONO_THEME environment variable. * mono/mono@67c1708677a Add PointerValue.Value to dereference and access pointer value. (#6840) * mono/mono@9bbe5e5e5f8 Bump API snapshot submodule * mono/mono@392d3452f24 [System.Net.Http] Better exception message for invalid header value * mono/mono@798c5efa52a Fix bug 18941: Marshal.OffsetOf and Marshal.SizeOf return incorrect results (#7142) * mono/mono@bfdbc1e6768 Update the method signatures in the new X11 backend. * mono/mono@1f0fc93de4c [sgen] Check if we are exceeding the worker count limit (#7180) * mono/mono@12cbe9a7bd2 [msvc] Update csproj files (#7238) * mono/mono@d45fb4e882f Fix xamarin-android issue 1130 and add test (#6326) * mono/mono@a32ca3e2c28 [tests] Avoid false pinning in weak-fields test * mono/mono@1e9816a10e9 [tests] Avoid false pinning in tests * mono/mono@38846ee7548 Properly handle non-quoted multipart content dispositions * mono/mono@bf12b6318af Simplify System.Windows.Forms XplatUI code by adding PaintEventArgs parameter to PaintEventEnd. * mono/mono@9c55770f3fd [icall table] add ldflags for bitcode * mono/mono@a9aa188ab22 Make field tokens sequential in SRE. (#7055) * mono/mono@1804219600c [xbuild] add property that is available in msbuild (#7223) * mono/mono@03371921a18 Problem building on Arch linux #7200 (#7230) * mono/mono@481827b6af1 [runtime] Don't prepend '0x' to %p-formatted numbers. * mono/mono@5eb41919438 [build] Remove multi stage build from Mono.Security (#7171) * mono/mono@218ffb98835 Merge pull request #7225 from alexischr/bump-bockbuild * mono/mono@2b068cb5a44 Fix some enable minimal. (#7195) * mono/mono@ca47362a921 Fix mono_arch_setup_async_callback and add mono_arch_setup_resume_sighandler_ctx on PPC (#7159) * mono/mono@6e0c91f0533 [interp] add another signature for interp_in wrappers * mono/mono@c382b03fd51 [coop] Rename mono_threads_is_coop_enabled to convay better its semantic (#7178) * mono/mono@8900231c8b0 [mini] More minor JIT cleanups. (#7130) * mono/mono@983966c7ca1 [bockbuild] Detect HTTP errors when using curl * mono/mono@0a8126c2094 [WASM] Implement timers. (#7193) * mono/mono@f0b78251899 Updates to support building the BCL using Visual Studio 2017 on windows (#6877) * mono/mono@123d086e27e Merge pull request #6892 from lambdageek/use-getters * mono/mono@c1cbe060f61 Merge pull request #7218 from mono/revert-6018-fix_10087 * mono/mono@49a1c8423cd Disable a flaky test on Windows https://github.com/mono/mono/issues/7199 * mono/mono@199dad7e84e Revert "Run the ProcessExit events in the threadpool and enforce a 3 seconds limit. Fixes #10087" * mono/mono@72e5ca60b89 [msvc] Update csproj files * mono/mono@c6f91eaa58c Fix unknown-length requests being treated as if they are fully preloaded. (#6822) * mono/mono@119cf5259e9 [aot] Emit the same instances in hybrid aot mode as in full aot mode. * mono/mono@f90612e047e [bcl] Comment/stub out some unused icalls to prevent problems with AOT. (#7183) * mono/mono@3addbfe6279 Merge pull request #7181 from mono/bockbuild-download-using-curl * mono/mono@8a52f590fc4 Bump bockbuild for https://github.com/mono/bockbuild/pull/62 * mono/mono@d4816ef1abc [System.Xml] Remove reflection calls for value has to be set * mono/mono@8ce0775a031 [jit] Disable partial sharing during JITting, its only been tested in full aot mode, and doesn't seem to work with JITted methods. (#7161) * mono/mono@2d2033e4401 Use proper sized integer for ioctlsocket on Win32. (#7153) * mono/mono@89804e62bbd [mono-api-html] Expand "ignore" functionality (#7154) (#7175) * mono/mono@df273181b52 Merge pull request #6018 from kumpera/fix_10087 * mono/mono@03b6095e3eb [runtime] Magic interfaces requires the complex stelemref to handle arrays. Fixes gh #6266 (#7038) * mono/mono@761ddc60f9d [corlib] Make MissingMember exceptions working again after #6123 * mono/mono@735337d5e68 [metadata] Implement MONO_CLASS_IS_INTERFACE(c) in terms of public API * mono/mono@bae5cd2d6e0 [metadata] (class.c) Use MonoClass getters * mono/mono@f6364860459 [metadata] add missing MONO_ENTER/EXIT_GC_SAFE guards around access(2) in is_file_writable (#7126) * mono/mono@d2383c037df [corlib] Support terminals without color support * mono/mono@705223f6d55 [interp] Use frame_addr as base pointer in more places (#7128) * mono/mono@5b0503a5b39 [profiler] Some minor housekeeping. (#7123) * mono/mono@ec2faf03880 [wasm] Fix master and add sample. (#7160) * mono/mono@ad03afd96ed [msvc] Update csproj files (#7173) * mono/mono@a85911f480e Merge pull request #6034 from alexischr/bug-59400 * mono/mono@8658bb6048f [build] Don't add specific support file to all xunit test builds (#7163) * mono/mono@a19fad65f3f Fix copyright * mono/mono@7de96dd4121 Merge pull request #7150 from alexischr/bug-46473 * mono/mono@5fabb059cfc Add Mono-specific System.Net.Test.Common.Configuration.Http. (#7156) * mono/mono@d7551cc9bf0 [metadata] Improve error message for loading unresolved types (#7147) * mono/mono@2837f433d94 [corlib] Fix RuntimeFeatureTest.NoNewFeaturesAdded on mobile (#7149) * mono/mono@1426d6a8da8 [remoting] Synchronize serializer/deserializer usage for call data. Fixes #46473 * mono/mono@18e274b14b7 Bump corefx submodule * mono/mono@045acb8f198 [jit] Handle more cases for gsharedvt constrained calls. (#7081) * mono/mono@3b8ec9e97b1 [wasm] Fix the port to work with the latest version of emcc. (#7091) * mono/mono@eef0801f3e3 Assorted fixes for AIX and i (#6934) * mono/mono@38989b012ff [Coop] Convert many simple mono_object_new_checked to mono_object_new_handle. (#7129) * mono/mono@dd4dbd8d4b1 [System.ServiceModel] Prevent crash in Dispatcher.ListenerLoopManager… (#7136) * mono/mono@1791e50b56b [class] Fix resolution of interfaces in classes implementing IEnumerator. Fixes #59400 * mono/mono@7b120ae2d46 [msvc] Update csproj files (#7140) * mono/mono@98cadff5f6a bump nunit-lite * mono/mono@ecadc6cf319 [wasm] Make .stamp-depot-tools more reliable. (#7078) * mono/mono@9b1e845740d [corlib] order sources content * mono/mono@bf3ed7115b2 [corlib] Add System.Runtime.ProfileOptimization APIs (#7120) * mono/mono@6a01a0b314b WinForms: Enable external CocoaDriver external driver (#7100) * mono/mono@a65c354f7b2 Bump api-snapshot submodule * mono/mono@4d52a10ca04 [mini] Move some arch-specific interpreter logic into backends and provide stubs. * mono/mono@4358581865b [mini] Don't use arch_target to point to arch/ subdirs. * mono/mono@e9c51fa3e5f [mini] Use a MONO_ARCH_INTERPRETER_SUPPORTED define instead of checking archs in driver.c. * mono/mono@23acd0f78be Fix for XA integration * mono/mono@7da8b503c6d [msvc] Update csproj files * mono/mono@f6a6779ff5b [corlib] CoreRT System.Threading.Tasks (#6672) * mono/mono@ed951069656 Coop/handle conversion of ByteArrayToCurrentDomain and ByteArrayToRootDomain. (#6692) * mono/mono@c4d1da6ef3c [master] [sdks] Fix for XA integration (#7103) * mono/mono@a7ed34f4db6 Centralize handle-based post-object creation code. (#7096) * mono/mono@79ef9d5105d Fix race condition in mono_thread_execute_interruption. (#6833) * mono/mono@d7626e8217f [coop] Add handle-based object create functions. (#6876) * mono/mono@aec2773e1db Revert "[System.Drawing] Disable tests except on ARM64 (#6909)" * mono/mono@83ed33ba2c0 [Coop] Convert Console to Coop/Handles. (#7060) * mono/mono@b043ff5f747 [aot] Bump aot file format version because of 7cac757e60cd61aa070f7e0fffca225364f58c0c. (#7079) * mono/mono@ded74c0b12a Use the preallocated domain->out_of_memory_ex instead of allocating. (#6819) * mono/mono@52514effbf1 [marshal] For generic method icalls, handle generic param arguments when using coop handles * mono/mono@e01355eead8 [Cplusplus] Fix possible race condition and add casts between void* and function pointers. (#6871) * mono/mono@9209ea06298 Merge pull request #7073 from mono/disable-test-sleep * mono/mono@cfa087bfd74 [aot] Rename mono_aot_get_method_checked () to mono_aot_get_method (), there is no non-checked version anymore. (#7071) * mono/mono@e2419dee784 [interp] Add missing exception checkpoints (#6917) * mono/mono@1028994a882 Disable a flaky test on PRs (https://github.com/mono/mono/issues/6999) * mono/mono@cf644472f9f [msvc] Update csproj files (#7070) * mono/mono@23e6f6f4b58 Revert "[jit] Make some JIT regression test files compile in the mobile profile (#7059)" (#7069) * mono/mono@b7385ba797b [sdks] Add targets for the watch cross compiler. (#7061) * mono/mono@fc7bda62d35 [coop] Convert some `mono_exception_*` functions Reduce managed exposure in utils a little. * mono/mono@e2874db5227 [jit] Make some JIT regression test files compile in the mobile profile (#7059) * mono/mono@ea1fac3d898 [coop] Remove unnecessary write barriers against thread locals and cleanup a little. (#6874) * mono/mono@3bd630eba79 [mkbundle] Automatically bundle config files and machine.config files (#7002) * mono/mono@b90d8ec387a Remove GetNLSocket which is unused and produces a warning because it is unprototyped. (#6691) * mono/mono@4a83009a036 WSL does not nul terminate uname.release. memset(0) it first. (#7023) * mono/mono@8d826997362 Merge pull request #7057 from lewurm/interp-disable-flaky-pinvoke-test * mono/mono@62bf8bd4d52 [System.ServiceModel.Activation] Move ServiceHostFactory.cs where it's used (#7044) * mono/mono@2322177e6ae [interp] disable flaky pinvoke test * mono/mono@8ad191dfbb2 mono_get_exception_runtime_wrapped_checked contains an unnecessary 16 (#6659) * mono/mono@20e69fa1996 Centralize post-object creation code in mono_object_new_common_tail. (#6903) * mono/mono@a33cbb873c4 [interp] Fix native to interp transition (#6868) * mono/mono@7cac757e60c [aot] Emit the weak field indexes table using the MONO_AOT_TABLE code, so it works with separate aot data files/bitcode. * mono/mono@8c90350d114 Add denied assembly versions from previous ms extensions nugets * mono/mono@47187bbc9b5 [Mono.Posix] .NET Core compatibility - Use [In,Out] for arrays of structures * mono/mono@57f3f34e60e Revert "[coop] Remove support for invoke thunk wrapper" (#6927) * mono/mono@8d19e5a1c59 [runtime] Unboxing of nullable enums should throw for boxed ints. (#6958) * mono/mono@8f35227b886 [debugger] disable StepOutAsync test because it's flaky * mono/mono@545191f7732 Pass null-terminated string for logging * mono/mono@2c1f45f3791 [TermInfo] support new file format terminfo2 introduced with ncurses6.1 (#6960) * mono/mono@3012ce06e43 Update F# to 4.1.33 * mono/mono@ff989895794 [runtime] Avoid recreating the icall table in lookup_icall_symbol (). (#6988) * mono/mono@17b4b28f050 [sdk] Fix the invocation of run-step.sh, the --timeout argument is mandatory. (#7013) * mono/mono@3fdbbe5e44b [sdks] Fix the tar command since the llvm binaries are in different directories now. (#7010) * mono/mono@f4d3da6d4ac [runtime] Fix merge conflict and Move code to its right place. * mono/mono@c3c6e6c9cdf [runtime] Ignore FireProcessExit if the method is missing on corlib. * mono/mono@b9b08c0d02e [runtime] Implement a domain resistant version of mono_domain_foreach and switch the unloading code to use it. * mono/mono@755c5bd7137 [runtime] Fix docstring for mono_unhandled_exception_checked. * mono/mono@4f8968cf6c9 [corlib] Fix minor style issue. * mono/mono@1fd32df7d1a [runtime] Introduce a non-fatal unhandled exceptions and use it for AppDomain::ProcessExit. * mono/mono@c9c7dad3a3a Bump mono/NUnitLite * mono/mono@dd2c320aa39 [runtime] Change domain before firing ProcessExit. * mono/mono@7500341ec03 [runtime] Run the ProcessExit events in the threadpool and enforce a 3 seconds limit. Fixes #10087 * mono/mono@6e28ccb4e5b [utils] Add "exec" log category for misc runtime activity. * mono/mono@96f2d163a33 Merge pull request #6970 from dsyme/patch-1 * mono/mono@e52ef6aedd1 [build] Fixes monolite build (#6982) * mono/mono@36cbab657f4 [msvc] Update csproj files * mono/mono@f61bc393d34 Simplify MonoError and managed Exception creation (#6123) * mono/mono@60d4907f48e [runtime] Revert mkbundle defaulting behavior made in ca8b8bd346 (#6687) * mono/mono@d8d3e29f382 Bump api-snapshot * mono/mono@03549126030 Bump F# mono version to 4.1.32 * mono/mono@d573dec96ea Bump linker and update linker-analyzer references * mono/mono@d6e74834549 [interp] Fix CEE_UNBOX * mono/mono@7a528f6f97d [sre] Unlock loader lock on error paths (#6951) * mono/mono@e572acca552 [ci] Only create artifacts.json GitHub status on release branches * mono/mono@939d7207708 [ci] Disable monodoc tests on Windows for now * mono/mono@ea7b3849c48 Cleanup recent JIT fix to get it done in the right place. (#6895) * mono/mono@29d402d8e0d [handle] Have `MONO_HANDLE_*` macros use a uintptr_t instead of int (#6906) * mono/mono@25c41cbf419 Fix gshared support for default interface methods by always passing an mrgctx to them. (#6935) * mono/mono@1c631424d26 Merge pull request #6929 from mono/disable-test-TaskCancelWait1 * mono/mono@dcecd8ff83b Disable flaky test * mono/mono@b97d0c43d1c [System]: WebConnection.Connect() needs to probe all IP addresses. * mono/mono@e43adf3cd5a Change mono_thread_resume_interruption to return void, one less raw pointer to worry about. (#6690) * mono/mono@c944c358f13 [scripts] Fix scripts/update_submodules.sh for use with git worktree * mono/mono@7f9167bc5b6 [runtime] Fix the --enable-icall-symbol-map build. (#6943) * mono/mono@921132a3622 [runtime] Make icall tables loadable. (#6905) * mono/mono@d8beb3ef110 [profiler] Remove obsolete code coverage support from the log profiler. (#6896) * mono/mono@48898cb810c [sdks] Fix ios+llvm. (#6939) * mono/mono@7f47f190859 [runtime] Fix a warning. (#6937) * mono/mono@b970e766fad [interp] Add class failure checks * mono/mono@52ebab86031 [interp] Fix varargs passing * mono/mono@3369b6e2143 [interp] Align vt stack in some places * mono/mono@6ffa48f6ada [interp] Add define for value type alignment * mono/mono@9f2b8595a34 [jit] Fix the DISABLE_JIT build. (#6933) * mono/mono@5c4510a8a7f [runtime] Implement support for conflict detection for Default Interface Methods. (#6897) * mono/mono@284c5afdf43 Bug 60088 - Assertion at ../../../../external/mono/mono/mini/debugger-agent.c:4765, condition `array->len == 1' not met (#6902) * mono/mono@6a5a14bea78 [System.Threading.Tasks] Disable a flaky test * mono/mono@dcda4c77bc9 Disable some PngCodecTest that have trouble on CI right now * mono/mono@5e7483f3542 [System.Drawing] Disable tests except on ARM64 (#6909) * mono/mono@dd5b5ca52e0 Set NetworkStream.ReadTimeout in WebConnection.InitConnection(). (#6904) * mono/mono@2a3b0812a40 [jit] Simplify some gshared code. (#6899) * mono/mono@2a3c498cbfb [interp] disable test_42_arm64_dyncall_vtypebyval * mono/mono@43617b0123a nuget-hash-extractor: Add msbuild extensions nuget to list of nugets to * mono/mono@4cb78844774 nuget-hash-extractor: Add support for handling nuget with multiple * mono/mono@d2998f5089d [msvc] Update csproj files * mono/mono@71ad99f7206 [build] Narrow recursive dependencies * mono/mono@b3d60257e57 [Mono.Security] Remove unused using * mono/mono@06b836ed912 [wasm] Make v8 build verbose and fix zip package root. (#6900) * mono/mono@06a89a59bcd Adjust tabbing. * mono/mono@b2ec39daa5a Add ordinal comparison when matching request path to listener paths * mono/mono@8917ddfb0c7 Fixes WCF methods with path parameters in UriTemplate annotation. Bugzilla bug #25444 [https://bugzilla.xamarin.com/show_bug.cgi?id=25444] * mono/mono@f3b1c9bd880 Pick the Listener that matches the start of the request URL * mono/mono@c84e6c81a2b [bcl] Fix more assembly identity mismatches (#6870) * mono/mono@9adf4bd3220 [wasm] Add system test suite exclude file. (#6847) * mono/mono@b6784b27a52 [sdks] Fix build for iOS (#6878) * mono/mono@3f61f9ff5df configure.ac: Only use library path in libgdiplus_loc * mono/mono@af03c6ae83c Detect libgdiplus in configure.ac by default on MacOSX (darwin). (#6873) * mono/mono@b3eabd51c36 Bump bockbuild * mono/mono@8bfcb271470 [System]: Revert my latest WebResponseStream changes. * mono/mono@b9d463acb50 Bump bockbuild to get new gtk+ repo location * mono/mono@8e678de3f39 [msvc] Update csproj files * mono/mono@a5078a28154 Bump bockbuild to add gtk# generator fix (#6880) * mono/mono@3203c8bfb30 Merge pull request #6835 from alexischr/disable-monitor-wait-test * mono/mono@fcb97b22799 [sdks] Add Android build for CI (#6846) * mono/mono@149073b84c6 Use gpointer (void*) as a generic pointer, not char*. (#6704) * mono/mono@31784ba06c0 [reference-assemblies] Fix public key for some newer v4.7.1 facades (#6863) * mono/mono@1ad2fc48918 [sdks] Fix download-llvm.sh * mono/mono@9cab3d73c6e [timezone] ignore LocalId test on XAMMAC_4_5 too * mono/mono@2c96890aff2 [sdks] Fix execution permission of download-llvm.sh * mono/mono@e9235144ca2 Bump corefx. (#6810) * mono/mono@766bf49afbe [metadata] Define getters for MonoClass fields (#6652) * mono/mono@c1fd4b064de Add stubs for Interop.NetSecurityNative (#6824) * mono/mono@d813c533b9e [arm64] Handle arguments of type ArgVtypeOnStack in the dyn call code. Part of the fix for #59184. (#6826) * mono/mono@d79a892d775 [configure.ac] Do not always enable ninja (#6823) * mono/mono@0a3d7c0da6e Disable a couple of flaky tests (monitor-*abort) * mono/mono@43026da5d4c [sdks] Bring back download of llvm for iOS (#6818) * mono/mono@f8a4bbd3573 [ci] Add setting artifacts.json status * mono/mono@687dc212dc0 [ci] Add Windows .msi PR build (#6815) * mono/mono@4b8e0bea198 [interp] Add support for vararg call convention * mono/mono@f6786099a59 [glib] Include ALIGN_TO and ALIGN_PTR_TO * mono/mono@d3647fa17e5 [interp] Add storage fetching for typedbyref * mono/mono@c8b7d6eece1 [interp] Add class check for refanyval * mono/mono@b66cbf955f5 [interp] Remove virtual call duplicated code * mono/mono@c3c2819da70 [interp] Remove void call duplicated code * mono/mono@ed9e0d101d0 [interp] Rename variable * mono/mono@f6964ef658e [interp] Remove some null checks * mono/mono@e8cdc382a74 Bump API snapshot submodule * mono/mono@1dd3fd1c644 Add missing api to System.Data (fixes 6767) * mono/mono@386b4d2bc64 [Mono.Posix] Fix the Android xattr check to not disable it on all other platforms. * mono/mono@9317773e68a [tests] Disable threads-init.exe, it runs out of system threads. (#6803) * mono/mono@63652bfc259 [utils/threads] Gracefully handle ENOTSUP from pthread_kill () on Apple platforms. (#6754) * mono/mono@96082e34954 Fix some function pointer types to match, i.e. so C++ compiles w/o extra casts. (#6732) * mono/mono@ed4331a3d8d [ide] Add setup file for VSCode * mono/mono@993ed19a6ff [metadata] Move MonoClass initialization to a separate file (#6611) * mono/mono@f01083ac485 [runtime] Add a 'frame_addr' field to MonoStackFrameInfo, which is equal to either interp_frame or ctx->sp. (#6644) * mono/mono@c0bd5f8a5a6 [sdks] Script lldb android integration (#6310) * mono/mono@c7f89e78379 [ci] Make sure packageFileName is a string * mono/mono@51ec3ddf99e Bump version to 5.13 (#6792) * mono/mono@da037803709 [System]: WebResponseStream now correctly reads the chunk trailer when using gzip/deflate. (#6771) * mono/mono@0bfda265b76 [ci] Report pending/failed status on GitHub for pkg/msi * mono/mono@46823915996 [ci] Include commit hash in blob URL of pkg/msi Diff: https://github.com/mono/mono/compare/c17d8c6dcdc8089868e39316ad214edc7e42b3a3...59e6eb29e6182dc65df6c91d07ce24ad17d539e7 https://bugzilla.xamarin.com/show_bug.cgi?id=46473 https://bugzilla.xamarin.com/show_bug.cgi?id=59184 https://bugzilla.xamarin.com/show_bug.cgi?id=59400 https://bugzilla.xamarin.com/show_bug.cgi?id=60843 --- .gitmodules | 2 +- Configuration.props | 4 ++-- build-tools/dependencies/dependencies.projitems | 4 ++-- external/mono | 2 +- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/.gitmodules b/.gitmodules index 940c650d3a4..914b8fe5aa5 100644 --- a/.gitmodules +++ b/.gitmodules @@ -5,7 +5,7 @@ [submodule "external/mono"] path = external/mono url = https://github.com/mono/mono.git - branch = 2018-02 + branch = 2018-04 [submodule "external/mxe"] path = external/mxe url = https://github.com/xamarin/mxe.git diff --git a/Configuration.props b/Configuration.props index 1eb8737c1c9..0cc66ebee33 100644 --- a/Configuration.props +++ b/Configuration.props @@ -62,8 +62,8 @@ $(MSBuildThisFileDirectory)external\Java.Interop $(MSBuildThisFileDirectory)external\llvm $(MSBuildThisFileDirectory)external\mono - 5.12.0 - 5.13.0 + 5.14.0 + 5.15.0 True $(MonoRequiredMinimumVersion).0 $(MSBuildThisFileDirectory)external\mono\external\linker diff --git a/build-tools/dependencies/dependencies.projitems b/build-tools/dependencies/dependencies.projitems index f4b737a09fa..4cc031f7ceb 100644 --- a/build-tools/dependencies/dependencies.projitems +++ b/build-tools/dependencies/dependencies.projitems @@ -1,7 +1,7 @@ - <_DarwinMonoFramework>MonoFramework-MDK-5.12.0.90.macos10.xamarin.universal.pkg + <_DarwinMonoFramework>MonoFramework-MDK-5.14.0.1.macos10.xamarin.universal.pkg <_AptGetInstall>apt-get -f -u install @@ -59,7 +59,7 @@ $(MonoRequiredMaximumVersion) $(MonoRequiredDarwinMinimumVersion) $(MSBuildThisFileDirectory)..\scripts\mono-version - https://xamjenkinsartifact.azureedge.net/build-package-osx-mono/2018-02/79/91fe1eb5f58b7ed26951cc996750a2a786ed7a1a/$(_DarwinMonoFramework) + https://xamjenkinsartifact.azureedge.net/build-package-osx-mono/2018-04/4/59e6eb29e6182dc65df6c91d07ce24ad17d539e7/$(_DarwinMonoFramework) installer -pkg "$(AndroidToolchainCacheDirectory)\$(_DarwinMonoFramework)" -target / diff --git a/external/mono b/external/mono index c17d8c6dcdc..59e6eb29e61 160000 --- a/external/mono +++ b/external/mono @@ -1 +1 @@ -Subproject commit c17d8c6dcdc8089868e39316ad214edc7e42b3a3 +Subproject commit 59e6eb29e6182dc65df6c91d07ce24ad17d539e7 From 0e08b2e039bb0872499da3cb21100df12701713d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alex=20R=C3=B8nne=20Petersen?= Date: Thu, 12 Apr 2018 20:21:40 +0200 Subject: [PATCH 42/78] Bump external/mono. --- external/mono | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/external/mono b/external/mono index 59e6eb29e61..99a992605f0 160000 --- a/external/mono +++ b/external/mono @@ -1 +1 @@ -Subproject commit 59e6eb29e6182dc65df6c91d07ce24ad17d539e7 +Subproject commit 99a992605f00313ca0ae82124075016e8ea58b0f From 7de6e082f8414742a9384ba10f5a1728359d8a32 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alex=20R=C3=B8nne=20Petersen?= Date: Fri, 13 Apr 2018 14:21:36 +0200 Subject: [PATCH 43/78] [Xamarin.Android.Build.Tasks] Add new linker source file to the build. --- .../Xamarin.Android.Build.Tasks.csproj | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/Xamarin.Android.Build.Tasks/Xamarin.Android.Build.Tasks.csproj b/src/Xamarin.Android.Build.Tasks/Xamarin.Android.Build.Tasks.csproj index a2aa5f6f32d..b58cae17964 100644 --- a/src/Xamarin.Android.Build.Tasks/Xamarin.Android.Build.Tasks.csproj +++ b/src/Xamarin.Android.Build.Tasks/Xamarin.Android.Build.Tasks.csproj @@ -332,6 +332,9 @@ Linker\Linker\AssemblyResolver.cs + + Linker\Linker\AssemblyUtilities.cs + Linker\Linker\I18nAssemblies.cs From cc79649a8a9a9e15b1485d1ea20c5eefcc77788c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alex=20R=C3=B8nne=20Petersen?= Date: Fri, 13 Apr 2018 14:22:36 +0200 Subject: [PATCH 44/78] Bump external/Java.Interop. --- external/Java.Interop | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/external/Java.Interop b/external/Java.Interop index 56e978fceea..43ebfdd6663 160000 --- a/external/Java.Interop +++ b/external/Java.Interop @@ -1 +1 @@ -Subproject commit 56e978fceeae14acb7b7992c555c787e699ecfd9 +Subproject commit 43ebfdd6663fa0bca445a576fb8dceca6ef34719 From 6965cc7f743511f2f51863cd4aca2826eb97996d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alex=20R=C3=B8nne=20Petersen?= Date: Fri, 13 Apr 2018 15:46:30 +0200 Subject: [PATCH 45/78] Bump external/llvm. --- external/llvm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/external/llvm b/external/llvm index bdb3a116dbf..fbbfbae4fea 160000 --- a/external/llvm +++ b/external/llvm @@ -1 +1 @@ -Subproject commit bdb3a116dbf4a77ef5f6f70d7f845bdaca2b24ca +Subproject commit fbbfbae4fea3902d069d50cf882edf09e19131d2 From 86062ea569a8e18d4b370244b5df45c16a012780 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alex=20R=C3=B8nne=20Petersen?= Date: Fri, 13 Apr 2018 15:52:40 +0200 Subject: [PATCH 46/78] Update _DarwinMonoFramework. --- build-tools/dependencies/dependencies.projitems | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/build-tools/dependencies/dependencies.projitems b/build-tools/dependencies/dependencies.projitems index 4cc031f7ceb..9645c20073f 100644 --- a/build-tools/dependencies/dependencies.projitems +++ b/build-tools/dependencies/dependencies.projitems @@ -1,7 +1,7 @@ - <_DarwinMonoFramework>MonoFramework-MDK-5.14.0.1.macos10.xamarin.universal.pkg + <_DarwinMonoFramework>MonoFramework-MDK-5.14.0.38.macos10.xamarin.universal.pkg <_AptGetInstall>apt-get -f -u install @@ -59,7 +59,7 @@ $(MonoRequiredMaximumVersion) $(MonoRequiredDarwinMinimumVersion) $(MSBuildThisFileDirectory)..\scripts\mono-version - https://xamjenkinsartifact.azureedge.net/build-package-osx-mono/2018-04/4/59e6eb29e6182dc65df6c91d07ce24ad17d539e7/$(_DarwinMonoFramework) + https://xamjenkinsartifact.azureedge.net/build-package-osx-mono/2018-04/40/bfa85bcaaa009a8313b9ecf751b7a3f56ab64dfa/$(_DarwinMonoFramework) installer -pkg "$(AndroidToolchainCacheDirectory)\$(_DarwinMonoFramework)" -target / From c756c5f0f38fc06fd9187f86da265f2faff791dd Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alex=20R=C3=B8nne=20Petersen?= Date: Mon, 16 Apr 2018 16:34:04 +0200 Subject: [PATCH 47/78] Bump external/Java.Interop. --- external/Java.Interop | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/external/Java.Interop b/external/Java.Interop index 43ebfdd6663..13479ff2eb0 160000 --- a/external/Java.Interop +++ b/external/Java.Interop @@ -1 +1 @@ -Subproject commit 43ebfdd6663fa0bca445a576fb8dceca6ef34719 +Subproject commit 13479ff2eb03f364ed7066ab066ce5815fa638e8 From 8aeaf17920d3f95bedd933091c79f8b54ff17623 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Alex=20R=C3=B8nne=20Petersen?= Date: Mon, 16 Apr 2018 16:34:13 +0200 Subject: [PATCH 48/78] Bump external/mono. --- external/mono | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/external/mono b/external/mono index 99a992605f0..d835b7d55f0 160000 --- a/external/mono +++ b/external/mono @@ -1 +1 @@ -Subproject commit 99a992605f00313ca0ae82124075016e8ea58b0f +Subproject commit d835b7d55f03a21f7949dfc313da7108776c33fe From de87018af5161b11963449acbad6d8c977f256ca Mon Sep 17 00:00:00 2001 From: Ludovic Henry Date: Wed, 25 Apr 2018 10:30:21 -0400 Subject: [PATCH 49/78] Bump to mono/2018-04/61fa43b9 Commit list for mono/mono: * mono/mono@61fa43b9099 Merge pull request #8423 from luhenry/backport-pr-8411-to-2018-04 * mono/mono@196ea0219b3 Merge branch '2018-04' into backport-pr-8411-to-2018-04 * mono/mono@b7db3364a0d [2018-04] Backport float32 changes. (#8398) * mono/mono@20ae78fcc83 Merge pull request #8394 from monojenkins/backport-pr-8318-to-2018-04 * mono/mono@a5af7f28dc3 [arm] Fix a regression introduced by: (#8414) * mono/mono@869e019e158 [mini] Add regression test for punting a type system check. * mono/mono@3ddda667e12 [mini] Don't verify types if you store to a pointer byref. Workarounds #8403. * mono/mono@599f3dd3afe [watch] Align cinfo->stack_usage to 16 on watchos. (#8375) * mono/mono@efdd8353ed3 [packaging] Apply F# patch that fixes #8310 (#8400) * mono/mono@cf3e776887f [2018-04] [runtime] Add a signal handler for sigterm (#8384) * mono/mono@38ffddd6c74 [runtime] Set the error if the class has a failure. * mono/mono@f2943b182aa [runtime] Use m_class_has_failure (). * mono/mono@584b77e4024 [runtime] Handle failed classes in mono_type_get_checked (). Fixes https://github.com/mono/mono/issues/8311. * mono/mono@34bb601d181 [sdks] Match more closely the pre-SDKs configure flags passed to LLVM (#8381) * mono/mono@b759166b96e [System.Net] do not use Thread for SocketTest.TestSelect1 (#8368) * mono/mono@b7015d6fd2e Merge pull request #8336 from monojenkins/backport-pr-8302-to-2018-04 * mono/mono@68f94932b7b Remove unused signal.h include in interp.c * mono/mono@de3c8c587a6 [corlib] Disable failing test on XA (#8353) * mono/mono@766778b5453 Fix mono_perfcounter_instance_exists to match prototype when #ifndef DISABLE_PERFCOUNTERS. * mono/mono@3693fb14f4b [sdks] Fix mktemp parameters (#8323) * mono/mono@98a3dd7f34a [corlib] Fix TimeZoneInfo.Local when /usr/share/zoneinfo is a symlink (#8305) * mono/mono@32ba15ee0be [corlib] SynchronizationContext does not work on non-root AppDomain on Android (#8297) * mono/mono@0931f21c4c5 [w32file-unix] fix mistake in 8430155946c31f0f3f5f04017eebd79ac15e566d (#8300) * mono/mono@85e13e6e2f0 [2018-04] [runtime] Add public API to set the pending exception. (#8279) Diff: https://github.com/mono/mono/compare/d835b7d55f03a21f7949dfc313da7108776c33fe...61fa43b90994950548a0dc126ea04e4928e74ec2 --- external/mono | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/external/mono b/external/mono index d835b7d55f0..61fa43b9099 160000 --- a/external/mono +++ b/external/mono @@ -1 +1 @@ -Subproject commit d835b7d55f03a21f7949dfc313da7108776c33fe +Subproject commit 61fa43b90994950548a0dc126ea04e4928e74ec2 From 8d90f12d1cf25018b6094b21c251838844964c23 Mon Sep 17 00:00:00 2001 From: "ankj@micrososft.com" Date: Wed, 9 May 2018 13:28:01 -0400 Subject: [PATCH 50/78] Bump to mono/2018-04/f3577389f6d76c70312418dafd6d877e9ef53eb6 --- external/mono | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/external/mono b/external/mono index 61fa43b9099..f3577389f6d 160000 --- a/external/mono +++ b/external/mono @@ -1 +1 @@ -Subproject commit 61fa43b90994950548a0dc126ea04e4928e74ec2 +Subproject commit f3577389f6d76c70312418dafd6d877e9ef53eb6 From a00d65aea25ec022f97b40777d736b2feb3f8862 Mon Sep 17 00:00:00 2001 From: "ankj@micrososft.com" Date: Thu, 10 May 2018 13:52:20 -0400 Subject: [PATCH 51/78] Bump mono to pick up linker bump --- external/mono | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/external/mono b/external/mono index f3577389f6d..0304562b69d 160000 --- a/external/mono +++ b/external/mono @@ -1 +1 @@ -Subproject commit f3577389f6d76c70312418dafd6d877e9ef53eb6 +Subproject commit 0304562b69d2e3cf2f0000f595facee159bcce7a From 89de816e0ecf81967c77c981251e19aeef4b6f44 Mon Sep 17 00:00:00 2001 From: "ankj@micrososft.com" Date: Thu, 10 May 2018 14:23:47 -0400 Subject: [PATCH 52/78] Bump mono to correctly pick up linker bump --- external/mono | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/external/mono b/external/mono index 0304562b69d..549cdb4842b 160000 --- a/external/mono +++ b/external/mono @@ -1 +1 @@ -Subproject commit 0304562b69d2e3cf2f0000f595facee159bcce7a +Subproject commit 549cdb4842bc20688369b1902e4b9579487ff5af From 08b187d5249b41d5d0e2d89a7724074bf042892d Mon Sep 17 00:00:00 2001 From: "ankj@micrososft.com" Date: Thu, 10 May 2018 15:22:57 -0400 Subject: [PATCH 53/78] Bump mono to pick up linker bump --- external/mono | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/external/mono b/external/mono index 549cdb4842b..cda7adac06e 160000 --- a/external/mono +++ b/external/mono @@ -1 +1 @@ -Subproject commit 549cdb4842bc20688369b1902e4b9579487ff5af +Subproject commit cda7adac06e347d9aa6af486cc9cf05dd2760a4b From 8a45b3c2129849c1498099f854ee3e00f8d0b1a3 Mon Sep 17 00:00:00 2001 From: "ankj@micrososft.com" Date: Thu, 10 May 2018 15:52:26 -0400 Subject: [PATCH 54/78] Bump mono to f58049675ee090399fec2718835b28dd0cf0ac81 and pick up linker fix --- external/mono | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/external/mono b/external/mono index cda7adac06e..f58049675ee 160000 --- a/external/mono +++ b/external/mono @@ -1 +1 @@ -Subproject commit cda7adac06e347d9aa6af486cc9cf05dd2760a4b +Subproject commit f58049675ee090399fec2718835b28dd0cf0ac81 From 301e4f5c3d57fabf21696c24a9b7f0d42c0f5d0b Mon Sep 17 00:00:00 2001 From: "ankj@micrososft.com" Date: Thu, 10 May 2018 17:20:23 -0400 Subject: [PATCH 55/78] bump mono to 1aa3993057e679fb8534d37bf911c3ec3980569b --- external/mono | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/external/mono b/external/mono index f58049675ee..1aa3993057e 160000 --- a/external/mono +++ b/external/mono @@ -1 +1 @@ -Subproject commit f58049675ee090399fec2718835b28dd0cf0ac81 +Subproject commit 1aa3993057e679fb8534d37bf911c3ec3980569b From be48c75c6c781046cea20bbe2f4d424b9e04b2f5 Mon Sep 17 00:00:00 2001 From: "ankj@micrososft.com" Date: Thu, 10 May 2018 20:21:13 -0400 Subject: [PATCH 56/78] Bump mono to 0aa2949744a9f934fc620de5ae41f0876f7c6b35 --- external/mono | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/external/mono b/external/mono index 1aa3993057e..0aa2949744a 160000 --- a/external/mono +++ b/external/mono @@ -1 +1 @@ -Subproject commit 1aa3993057e679fb8534d37bf911c3ec3980569b +Subproject commit 0aa2949744a9f934fc620de5ae41f0876f7c6b35 From 956184c5bc73bbd65fbb234d141a0b8913d8e8ce Mon Sep 17 00:00:00 2001 From: "ankj@micrososft.com" Date: Thu, 10 May 2018 20:23:21 -0400 Subject: [PATCH 57/78] Add missing linker cs file to Xamarin.Android.Build.Tasks.csproj --- .../Xamarin.Android.Build.Tasks.csproj | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/Xamarin.Android.Build.Tasks/Xamarin.Android.Build.Tasks.csproj b/src/Xamarin.Android.Build.Tasks/Xamarin.Android.Build.Tasks.csproj index 836770b4fb0..1b99222bc33 100644 --- a/src/Xamarin.Android.Build.Tasks/Xamarin.Android.Build.Tasks.csproj +++ b/src/Xamarin.Android.Build.Tasks/Xamarin.Android.Build.Tasks.csproj @@ -355,6 +355,9 @@ Linker\Linker\Pipeline.cs + + Linker\Linker\TypeNameParser.cs + Linker\Linker\TypePreserve.cs From a0a709d47ea4d243d42df885c89348b3429dd95a Mon Sep 17 00:00:00 2001 From: "ankj@micrososft.com" Date: Fri, 11 May 2018 13:00:29 -0400 Subject: [PATCH 58/78] Bump mono to pick up new linker .. to help linker failure --- external/mono | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/external/mono b/external/mono index 0aa2949744a..9e828307b98 160000 --- a/external/mono +++ b/external/mono @@ -1 +1 @@ -Subproject commit 0aa2949744a9f934fc620de5ae41f0876f7c6b35 +Subproject commit 9e828307b9840e2a773e6b903e6c7def4b71ea4c From b1f66807113f87c110fbdc5c674b80b189993f4f Mon Sep 17 00:00:00 2001 From: Marek Safar Date: Thu, 24 May 2018 19:21:47 +0200 Subject: [PATCH 59/78] Bump mono --- external/mono | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/external/mono b/external/mono index 9e828307b98..8c55e41d50f 160000 --- a/external/mono +++ b/external/mono @@ -1 +1 @@ -Subproject commit 9e828307b9840e2a773e6b903e6c7def4b71ea4c +Subproject commit 8c55e41d50ff52c97c6115161bee7b182da8c70b From 2533ef47d165041a7122c04124aa6775c1e49fc1 Mon Sep 17 00:00:00 2001 From: Ankit Jain Date: Wed, 30 May 2018 14:44:41 -0400 Subject: [PATCH 60/78] Fixup submodule refs for llvm, libzip and LibZipSharp to match master --- external/LibZipSharp | 2 +- external/libzip | 2 +- external/llvm | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/external/LibZipSharp b/external/LibZipSharp index b7aab1e26ae..4d3e59c8960 160000 --- a/external/LibZipSharp +++ b/external/LibZipSharp @@ -1 +1 @@ -Subproject commit b7aab1e26aed3e0269a73cc6f8ce973169741f76 +Subproject commit 4d3e59c8960562309c817a4c367300e6a20bf9b7 diff --git a/external/libzip b/external/libzip index 1d8b1ac4d20..b95cf3fdd4c 160000 --- a/external/libzip +++ b/external/libzip @@ -1 +1 @@ -Subproject commit 1d8b1ac4d20b8ef8d3f5d496dabebaa0ff9019ff +Subproject commit b95cf3fdd4c1271f922017f092d02a878873425c diff --git a/external/llvm b/external/llvm index fbbfbae4fea..bdb3a116dbf 160000 --- a/external/llvm +++ b/external/llvm @@ -1 +1 @@ -Subproject commit fbbfbae4fea3902d069d50cf882edf09e19131d2 +Subproject commit bdb3a116dbf4a77ef5f6f70d7f845bdaca2b24ca From fc1084551d6c117de577145e0dfab0dda490fcfb Mon Sep 17 00:00:00 2001 From: Ankit Jain Date: Wed, 30 May 2018 17:00:30 -0400 Subject: [PATCH 61/78] Bump mono to 2018-04/2987232bc146c37d93df87badf83555e08da94d4 --- external/mono | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/external/mono b/external/mono index 7bdb7dd7658..2987232bc14 160000 --- a/external/mono +++ b/external/mono @@ -1 +1 @@ -Subproject commit 7bdb7dd76582f305f86e35ac7bfe120d68557954 +Subproject commit 2987232bc146c37d93df87badf83555e08da94d4 From 7805980d2d744cf6866f2926fd9e677a2dbd52c7 Mon Sep 17 00:00:00 2001 From: Jo Shields Date: Fri, 15 Jun 2018 13:31:47 -0400 Subject: [PATCH 62/78] Bump to mono:2018-06 --- .gitmodules | 2 +- Configuration.props | 4 ++-- build-tools/dependencies/dependencies.projitems | 4 ++-- external/llvm | 2 +- external/mono | 2 +- 5 files changed, 7 insertions(+), 7 deletions(-) diff --git a/.gitmodules b/.gitmodules index f8fca965e9d..90fc294c5d6 100644 --- a/.gitmodules +++ b/.gitmodules @@ -5,7 +5,7 @@ [submodule "external/mono"] path = external/mono url = https://github.com/mono/mono.git - branch = 2018-02 + branch = 2018-06 [submodule "external/mxe"] path = external/mxe url = https://github.com/xamarin/mxe.git diff --git a/Configuration.props b/Configuration.props index cb17fb3805d..bcebe7f51f5 100644 --- a/Configuration.props +++ b/Configuration.props @@ -63,8 +63,8 @@ $(MSBuildThisFileDirectory)external\Java.Interop $(MSBuildThisFileDirectory)external\llvm $(MSBuildThisFileDirectory)external\mono - 5.12.0 - 5.13.0 + 5.16.0 + 5.17.0 True $(MonoRequiredMinimumVersion).0 $(MSBuildThisFileDirectory)external\mono\external\linker diff --git a/build-tools/dependencies/dependencies.projitems b/build-tools/dependencies/dependencies.projitems index ab1ed36ad08..f19fa2f62fb 100644 --- a/build-tools/dependencies/dependencies.projitems +++ b/build-tools/dependencies/dependencies.projitems @@ -1,7 +1,7 @@ - <_DarwinMonoFramework>MonoFramework-MDK-5.12.0.210.macos10.xamarin.universal.pkg + <_DarwinMonoFramework>MonoFramework-MDK-5.16.0.5.macos10.xamarin.universal.pkg <_AptGetInstall>apt-get -f -u install @@ -59,7 +59,7 @@ $(MonoRequiredMaximumVersion) $(MonoRequiredDarwinMinimumVersion) $(MSBuildThisFileDirectory)..\scripts\mono-version - https://xamjenkinsartifact.azureedge.net/build-package-osx-mono/2018-02/177/9bbc930d620487446f537e729f018eb965523fcd/$(_DarwinMonoFramework) + https://xamjenkinsartifact.azureedge.net/build-package-osx-mono/2018-06/7/7627a5f9eeba0fd846731ad0c498556f55be1a34/$(_DarwinMonoFramework) installer -pkg "$(AndroidToolchainCacheDirectory)\$(_DarwinMonoFramework)" -target / diff --git a/external/llvm b/external/llvm index bdb3a116dbf..0b3cb8ac12c 160000 --- a/external/llvm +++ b/external/llvm @@ -1 +1 @@ -Subproject commit bdb3a116dbf4a77ef5f6f70d7f845bdaca2b24ca +Subproject commit 0b3cb8ac12cd839f8110775d4085e822e8af4d7b diff --git a/external/mono b/external/mono index 6f9bef3bdb8..7627a5f9eeb 160000 --- a/external/mono +++ b/external/mono @@ -1 +1 @@ -Subproject commit 6f9bef3bdb83d53578417ea7039081da4e7c9a3d +Subproject commit 7627a5f9eeba0fd846731ad0c498556f55be1a34 From 9efeb0ff3382307ed7105a108e59aec6f58b7532 Mon Sep 17 00:00:00 2001 From: Ludovic Henry Date: Fri, 15 Jun 2018 17:31:57 -0400 Subject: [PATCH 63/78] Bump to mono/2018-02/569bd3bc --- external/mono | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/external/mono b/external/mono index 2987232bc14..569bd3bc52f 160000 --- a/external/mono +++ b/external/mono @@ -1 +1 @@ -Subproject commit 2987232bc146c37d93df87badf83555e08da94d4 +Subproject commit 569bd3bc52fad89536c7aa07f30870d3d8b6603a From 2d76938f04bdb43661915918b2f1da6e5b07bf17 Mon Sep 17 00:00:00 2001 From: Ludovic Henry Date: Thu, 9 Aug 2018 13:22:45 -0400 Subject: [PATCH 64/78] Bump to mono/2018-06/bd332119 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Commit list for mono/mono: * mono/mono@bd3321192a5 [2018-06] [Facades] Adds System.Threading.Tasks.Extensions for mobile profiles (#9977) * mono/mono@a8b65e127b5 [build] Bump bootstrap mcs version * mono/mono@679f19711d3 [sdks] Install the llvm36 versions of opt/llc as well. * mono/mono@925d10ba9c4 [sdks] Make download-llvm36.sh use different temporary files/directories. * mono/mono@481131ab0db [sdks] Switch the 32 bit cross compilers back to the old llvm 3.6, the new version has too many problems. * mono/mono@9ae1e9e796b [tests] AOT assembly-load-reference tests * mono/mono@263244a53a6 [tests] Test loading references from LoadFrom and LoadFile contexts * mono/mono@88ef07a501e [loader] Use appdomain base dir and loadfrom asmctx hooks * mono/mono@aa33b264e02 [loader] Add mono_install_asmctx_from_path_hook * mono/mono@5d3dd6494cd [utils] Add mono_path_filename_in_basedir * mono/mono@efe65c3d325 [loader] Pass requesting assembly to mono_assembly_open_predicate * mono/mono@2d8bc639e22 [loader] Assemblies in individual asmctx can reference assemblies in application base * mono/mono@0713611287b [loader] Consult asmctx of executing assembly for Assembly.Load * mono/mono@c2b0be8c252 [runtime] Add mono_runtime_get_caller_no_system_or_reflection * mono/mono@36665cc7773 [llvm] Fix OP_ABSF. (#9882) * mono/mono@093c0dc3b78 backport #9800 to 2018-06 * mono/mono@e59ebf54139 [msbuild] Bump to point to HEAD of mono-2018-04 msbuild … (#9846) * mono/mono@dc815ae5623 [interp] Fix span exception throwing * mono/mono@0e0e4a68f94 [LinkerDescriptor] remove remoting feature from MonoMethodMessage * mono/mono@7bcda192a06 Bump llvm to release_60/fc854b8ec5873d294b80afa3e6cf6a88c5c48886. (#9786). (#9804) * mono/mono@23e95ec7ad7 Apply F# portable pdb debug fix for pinvokes & bump (#9797) * mono/mono@295f6d32afd [2018-06] [MacOS] On Mac, use the copyfile API to copy files (#9696) * mono/mono@7d5f4b61366 [2018-06] [interp] add Span\u003cT\u003e intrinsics for get_Item and get_Length (#9686) * mono/mono@1569c8957e2 [mini] return gracefully from compile_special if a method can not be compiled * mono/mono@cd7f2e39ced [interp] Remove unused code added recently * mono/mono@07144a08405 [interp] Simplify call * mono/mono@31bb7caeb5d [interp] Remove exception checking from pinvoke code * mono/mono@3b2e09e46ac [interp] Fix stackframe iteration * mono/mono@78b279d3acc [interp] Transform more calls in interp_transform_calls * mono/mono@b02990a2b66 [interp] Move MINT_CALLRUN emitting inside transform * mono/mono@3c7dbafd13e [interp] Extract some code from big function * mono/mono@428eb397557 [TermInfo] fix reading integer value for new file format * mono/mono@ab1a051d857 Bump bockbuild * mono/mono@e2c2b51c5d3 [llvm] Avoid using the preserveall calling convention in another place on watchos. (#9577) * mono/mono@2ae7a8d425d [2018-06] interp delegate fixes (#9600) * mono/mono@f4dbef76c98 [System] Update mobile tests to reflect missing DesignerAttribute * mono/mono@a98fecbb2b5 [corlib] Remove incorrectly included Interop.GetRandomBytes.Mono.cs file from .sources * mono/mono@0266011065e Fix LogcatTextWriter_Log interpreting messages it logs, potentially writing random garbage and/or crashing (introduced by https://github.com/mono/mono/commit/984f6484666c2ee6fefec949c81fdff1189c9488) (Fixes https://github.com/xamarin/xamarin-android/issues/1951) (#9615) * mono/mono@db81ac1b42f [runtime] Make sigterm dumper send file to merp (#9609) * mono/mono@6716456162b [csproj] Update project files * mono/mono@49a36f94148 [corlib] Include all span helpers optimizations (#9548) * mono/mono@bb47db880fa [runtime] Allow --enable-llvm to work with newer llvm versions as well. * mono/mono@e74de955c29 [csproj] Update project files * mono/mono@38b9b1a2031 Bump API snapshot submodule * mono/mono@a1eb29aff41 Bump corert * mono/mono@894e552a6bf Fixes windows build * mono/mono@de669c45a1f [mscorlib] Adds PreserveDependencyAttribute * mono/mono@2e3c4398a9d [corlib] Default to fast Span (#9204) * mono/mono@d7985272b7a [System.Data] Add missing API in PNS version of SqlConnection * mono/mono@b9dd9d11a70 [sdb] Add back the mono_debugger_agent_parse_options () API function which was mistakenly removed by #7673. * mono/mono@d735f2f1042 [2018-06] [sdks] add interp-mixed to iOS SDK (#9514) * mono/mono@2214d1fa74f [2018-06] [dist] Ensure gensources.cs is included in tarballs (#9516) * mono/mono@c25f8e32899 [arm64] Make OP_CHECK_THIS read only a byte, to prevent unaligned access errors. (#9544) * mono/mono@32ce5c4dfc0 [2018-06] [interp] Optimise allocation path (#9513) * mono/mono@f126e2e3c77 [sdk] Do not fix android platform-tools version. Make it configurable. * mono/mono@fa45833f9bd Restore the ability to regenerate opcode.def form Perl/XML, though CI cannot and does not. * mono/mono@604d5e516b0 Merge pull request #9485 from alexanderkyte/2018-06-merp_params * mono/mono@7c379ca7ca1 [2018-06] [jit] Add Span\u003cT\u003e intrinsics. (#9515) * mono/mono@d1db5c5c903 [mcs] Implements awaited expression check for indirections * mono/mono@633745f1b7b [runtime] Enable application to register path for MERP restart * mono/mono@81499e9509f [runtime] Make merp eventType icall argument * mono/mono@308794335c7 Mixed testing * mono/mono@8bb5d2b97ef [ios sdk] add interp-only support * mono/mono@28c3ba27b9f [interp] fullaotmixedcheck fixes * mono/mono@78a5be344a4 [runtime] Store the interpreter method invoked by the delegate in MonoDelegate.interp_method, make MonoDelegate.method_ptr always point to a JIT callable entry point. (#9019) * mono/mono@a520836ddb8 [sdks] build more runtimes, simulators and cross compilers on CI * mono/mono@a5370bdc532 [bitcode] fix build regression of tvos and watchos * mono/mono@69640dfafdb [llvm] Avoid using the preserveall calling convention on watchos, xcode10 asserts on it. * mono/mono@de745ad3e39 [interp] fix scope issue regarding `klass` var * mono/mono@6e514dcc645 [mini] make interp work with AOT image generated with aot=interp * mono/mono@adf9b386ad8 [mini] signature cache does not do need_direct_wrapper and virtual_. but needs info to identify signatures for valuetypes * mono/mono@7c3a3b100ed [mini] respect additional flags when caching runtime invoke wrappers * mono/mono@2115f2790c7 Merge pull request #9446 from monojenkins/backport-pr-9440-to-2018-06 * mono/mono@329ff0292bb Add another Darwin file system * mono/mono@9cf74ba9295 Bump bockbuild * mono/mono@972cb658d44 [mini] add workaround for AMD Ryzen Threadripper issue (#9359) * mono/mono@6da47b0ac01 [build] Skips RemoteExecuted bases tests on monodroid * mono/mono@bff2c0f348d [2018-06] [sdks] Only rebuild MXE when it doesn't exist, not when we just cloned the sources (#9366) * mono/mono@331fd2a800c [2018-06] Make requested MERP file format changes (#9331) * mono/mono@3a56983dc7e Bump linker * mono/mono@8df9adc649b [runtime] Make mono-state dumper abandon stuck threads (#9272) * mono/mono@04d8499a2f3 [2018-06] [runtime] Package merp params in 3 ways needed (#9269) * mono/mono@ebf5f386c93 Formatting * mono/mono@907ca9a6092 Fixes #9277 with @marek-safar recommendations * mono/mono@2e15d8e8793 Unix-only exception on Windows fix #9277 * mono/mono@b5483fb5e90 [profiler] account for nullbyte in allocated buffer (#9201) * mono/mono@fcc7e6f7636 [2018-06] [System]: `HttpWebRequest` now throws `WebExceptionStatus.RequestCanceled` on abort. (#9294) * mono/mono@18906e72420 [2018-06] [System]: Renegotiation in AppleTls requires OS X 10.12+. (#9255) * mono/mono@d4471210acd [2018-06] [System]: Fix bug in `WebResponseStream.GetResponse()` that will make some people happy. (#9242) * mono/mono@df1b71eff4a Bump msbuild to track xplat-master (#9247) * mono/mono@9ec4d30693e [loader] LoadFrom of problematic images should reprobe (correctly) * mono/mono@3ee5a5cc3d9 [corlib] Allow DM with an extra param to have the first one bound to null. Fixes #9033. * mono/mono@bedea5a1d4c [interp] check existence of InterpMethod before removing it from interp code hastable * mono/mono@41615187770 Bump corefx (#9117) * mono/mono@a23bc0b3b40 [System] Fix another `SocketAsyncEventArgs` issue for #8871. (#9126) * mono/mono@13f35792911 [Linux,XA build] Fix building of Windows cross-compilers on Ubuntu Linux (#9174) * mono/mono@d904e6b30de [SDKS,Android] Install cmake when provisioning Android SDK (#9141) * mono/mono@cd81c99bacb Bump bockbuild to fix environment variables expansion bug (#9178) Diff: https://github.com/mono/mono/compare/7627a5f9eeba0fd846731ad0c498556f55be1a34...bd3321192a5833aeaeda8bf0ff1f3499a2be0c5f --- external/mono | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/external/mono b/external/mono index 7627a5f9eeb..bd3321192a5 160000 --- a/external/mono +++ b/external/mono @@ -1 +1 @@ -Subproject commit 7627a5f9eeba0fd846731ad0c498556f55be1a34 +Subproject commit bd3321192a5833aeaeda8bf0ff1f3499a2be0c5f From 59ef581761a1f5c2943f8de29162ae64a9843c4f Mon Sep 17 00:00:00 2001 From: Ludovic Henry Date: Thu, 9 Aug 2018 13:29:02 -0400 Subject: [PATCH 65/78] Bump to system mono/2018-06/a8b65e12 --- build-tools/dependencies/dependencies.projitems | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/build-tools/dependencies/dependencies.projitems b/build-tools/dependencies/dependencies.projitems index f19fa2f62fb..51e80ed9970 100644 --- a/build-tools/dependencies/dependencies.projitems +++ b/build-tools/dependencies/dependencies.projitems @@ -1,7 +1,7 @@ - <_DarwinMonoFramework>MonoFramework-MDK-5.16.0.5.macos10.xamarin.universal.pkg + <_DarwinMonoFramework>MonoFramework-MDK-5.16.0.102.macos10.xamarin.universal.pkg <_AptGetInstall>apt-get -f -u install @@ -59,7 +59,7 @@ $(MonoRequiredMaximumVersion) $(MonoRequiredDarwinMinimumVersion) $(MSBuildThisFileDirectory)..\scripts\mono-version - https://xamjenkinsartifact.azureedge.net/build-package-osx-mono/2018-06/7/7627a5f9eeba0fd846731ad0c498556f55be1a34/$(_DarwinMonoFramework) + https://xamjenkinsartifact.azureedge.net/build-package-osx-mono/2018-06/74/a8b65e127b5e4ce072bef31359dfa18073996159/$(_DarwinMonoFramework) installer -pkg "$(AndroidToolchainCacheDirectory)\$(_DarwinMonoFramework)" -target / From aaf495e0cac3b962d923319b4e6f166c661037fd Mon Sep 17 00:00:00 2001 From: Ludovic Henry Date: Thu, 9 Aug 2018 16:44:37 -0400 Subject: [PATCH 66/78] Bump to mono/2018-06/0456d75b Commit list for mono/mono: * mono/mono@0456d75b08a [w32file] Fix typo (#10002) * mono/mono@333df6b3812 [coop] Thread.JoinInternal should not call mono_error_set_pending_exception (#9972) Diff: https://github.com/mono/mono/compare/bd3321192a5833aeaeda8bf0ff1f3499a2be0c5f...0456d75b08af9411adfa268df2b8525de304c33b --- external/mono | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/external/mono b/external/mono index bd3321192a5..0456d75b08a 160000 --- a/external/mono +++ b/external/mono @@ -1 +1 @@ -Subproject commit bd3321192a5833aeaeda8bf0ff1f3499a2be0c5f +Subproject commit 0456d75b08af9411adfa268df2b8525de304c33b From 93ae5ed46c761a721d1ba3676f4e28ade08be490 Mon Sep 17 00:00:00 2001 From: Ludovic Henry Date: Fri, 10 Aug 2018 16:14:24 -0400 Subject: [PATCH 67/78] Bump to system mono/2018-06/341142d7 --- build-tools/dependencies/dependencies.projitems | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/build-tools/dependencies/dependencies.projitems b/build-tools/dependencies/dependencies.projitems index 51e80ed9970..1bd5d8c2e38 100644 --- a/build-tools/dependencies/dependencies.projitems +++ b/build-tools/dependencies/dependencies.projitems @@ -1,7 +1,7 @@ - <_DarwinMonoFramework>MonoFramework-MDK-5.16.0.102.macos10.xamarin.universal.pkg + <_DarwinMonoFramework>MonoFramework-MDK-5.16.0.106.macos10.xamarin.universal.pkg <_AptGetInstall>apt-get -f -u install @@ -59,7 +59,7 @@ $(MonoRequiredMaximumVersion) $(MonoRequiredDarwinMinimumVersion) $(MSBuildThisFileDirectory)..\scripts\mono-version - https://xamjenkinsartifact.azureedge.net/build-package-osx-mono/2018-06/74/a8b65e127b5e4ce072bef31359dfa18073996159/$(_DarwinMonoFramework) + https://xamjenkinsartifact.azureedge.net/build-package-osx-mono/2018-06/78/341142d7656f43239a041b2c44f00acfb8fa7c59/$(_DarwinMonoFramework) installer -pkg "$(AndroidToolchainCacheDirectory)\$(_DarwinMonoFramework)" -target / From 9ea37264350bb4f3e8777c78bc6fcf1352fd786d Mon Sep 17 00:00:00 2001 From: Ludovic Henry Date: Wed, 15 Aug 2018 08:52:20 -0400 Subject: [PATCH 68/78] Bump to mono/2018-06/b59ae600 Commit list for mono/mono: * mono/mono@b59ae60011a [sdks] Fix llvm build with MXE (#10106) * mono/mono@53a0e8f7a86 [2018-06][reflection] Implement RuntimeType.IsSubclassOf in native (#10078) * mono/mono@bf5706e3da5 [bcl] Disable a test which fails with linking. (#10104) * mono/mono@6dc3229b415 Add .gitignore for mono/tests/assembly-load-reference * mono/mono@7a9c54ebd45 [ppc] Lower OP_LMUL_IMM. (#10067) * mono/mono@3707b814d25 [sdb] Disable an assert to avoid breaking debugging. (#9987) * mono/mono@341142d7656 [w32file] Fix usage of copyfile (#10010) Diff: https://github.com/mono/mono/compare/0456d75b08af9411adfa268df2b8525de304c33b...b59ae60011ad17e94529951fd3df1137159ae8d1 --- external/mono | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/external/mono b/external/mono index 0456d75b08a..b59ae60011a 160000 --- a/external/mono +++ b/external/mono @@ -1 +1 @@ -Subproject commit 0456d75b08af9411adfa268df2b8525de304c33b +Subproject commit b59ae60011ad17e94529951fd3df1137159ae8d1 From fd765884a9fd829712493c40854f222531e74d63 Mon Sep 17 00:00:00 2001 From: Ludovic Henry Date: Wed, 15 Aug 2018 15:11:52 -0400 Subject: [PATCH 69/78] Bump to llvm/release_60/fc854b8e --- .gitmodules | 2 +- external/llvm | 2 +- external/llvm.tpnitems | 4 ---- src/mono-runtimes/mono-runtimes.targets | 8 ++++---- 4 files changed, 6 insertions(+), 10 deletions(-) diff --git a/.gitmodules b/.gitmodules index 90fc294c5d6..5e9a57de757 100644 --- a/.gitmodules +++ b/.gitmodules @@ -28,7 +28,7 @@ [submodule "external/llvm"] path = external/llvm url = https://github.com/mono/llvm.git - branch = master + branch = release_60 [submodule "external/proguard"] path = external/proguard url = https://github.com/xamarin/proguard.git diff --git a/external/llvm b/external/llvm index 0b3cb8ac12c..fc854b8ec58 160000 --- a/external/llvm +++ b/external/llvm @@ -1 +1 @@ -Subproject commit 0b3cb8ac12cd839f8110775d4085e822e8af4d7b +Subproject commit fc854b8ec5873d294b80afa3e6cf6a88c5c48886 diff --git a/external/llvm.tpnitems b/external/llvm.tpnitems index 4ec2d798d6b..ab9691a8440 100644 --- a/external/llvm.tpnitems +++ b/external/llvm.tpnitems @@ -8,10 +8,6 @@ $(MSBuildThisFileDirectory)\llvm\LICENSE.TXT https://github.com/mono/llvm/ - - $(MSBuildThisFileDirectory)\llvm\autoconf\LICENSE.TXT - https://github.com/mono/llvm/tree/master/autoconf/ - $(MSBuildThisFileDirectory)\llvm\utils\unittest\googletest\LICENSE.TXT https://github.com/mono/llvm/tree/master/utils/unittest/googletest/ diff --git a/src/mono-runtimes/mono-runtimes.targets b/src/mono-runtimes/mono-runtimes.targets index 605e9a4c560..7a6334d5533 100644 --- a/src/mono-runtimes/mono-runtimes.targets +++ b/src/mono-runtimes/mono-runtimes.targets @@ -148,7 +148,7 @@ ToolExe="$(GitToolExe)"> - + @@ -164,7 +164,7 @@ <_Now>$([System.DateTime]::Now.Ticks) From f89e343a1687fc577274060a2c683cb2cdc53071 Mon Sep 17 00:00:00 2001 From: Ludovic Henry Date: Fri, 7 Sep 2018 07:03:29 -0400 Subject: [PATCH 70/78] [mono-2018-06] [llvm] Fix mxe+release_60 build (#2146) * Bump to mono/2018-06/5ce89020 * [sdks] Do not pass -S to mxe strip This creates a SIGSEGV for some reasons. There is also no visible size difference between the stripped binary with and without '-S'. * [sdks] Update IGNORE_PACKAGE_LLVM to IGNORE_PROVISION_LLVM * Bump to mono/2018-06/033a5184 Commit list for mono/mono: * mono/mono@033a5184d1f [2018-06] [runtime] Fix mxe+release_60 llvm build (#10402) * mono/mono@9439ee6dca2 Merge pull request #10455 from lewurm/2018-06-osx-clonefile * mono/mono@d02452fc8fd Reapply #10254 to 2018-06 and include change in #10393 (#10469) * mono/mono@3671c04b8eb Update framework assemblies list in assembly.c * mono/mono@6029509bab8 [System]Fix `MonoBtlsProvider.CheckValidationResult ()` logic. * mono/mono@4cd817955f5 [2018-06] Truncate MachineName (and UserDomainName) at first period (#10419) * mono/mono@fc2c8b6435a [2018-06] [corlib] Bring back String.Concat with __arglist (#10458) * mono/mono@0d9c68bf13c Use clonefile instead of copyfile on macOS. (#10020) * mono/mono@99f30863300 Revert "[w32file] Fix usage of copyfile (#10010)" * mono/mono@330eec3b4c9 Bump to llvm/master/acb33f34 (#10440) * mono/mono@3a18dce5832 [interp] white list nfloat::IsNaN () (#10384) * mono/mono@b7043700bf3 [sgen] Fix string size inconsistency between alloc/scan (#10409) Diff: https://github.com/mono/mono/compare/5ce89020ebe4afe87c9d18bb0cd0eb8c14bcefab...033a5184d1fb7fcbde1f098ec32d5c41d8eb70c3 --- external/mono | 2 +- src/mono-runtimes/mono-runtimes.projitems | 8 ++++---- src/mono-runtimes/mono-runtimes.targets | 2 +- 3 files changed, 6 insertions(+), 6 deletions(-) diff --git a/external/mono b/external/mono index b59ae60011a..033a5184d1f 160000 --- a/external/mono +++ b/external/mono @@ -1 +1 @@ -Subproject commit b59ae60011ad17e94529951fd3df1137159ae8d1 +Subproject commit 033a5184d1fb7fcbde1f098ec32d5c41d8eb70c3 diff --git a/src/mono-runtimes/mono-runtimes.projitems b/src/mono-runtimes/mono-runtimes.projitems index 60d04c497d9..be3fbbf13db 100644 --- a/src/mono-runtimes/mono-runtimes.projitems +++ b/src/mono-runtimes/mono-runtimes.projitems @@ -159,7 +159,7 @@ <_MonoCrossRuntime Include="cross-arm-win" Condition="$(AndroidSupportedTargetAotAbisForConditionalChecks.Contains (':win-armeabi-v7a:'))"> $(AndroidMxeFullPath)\bin\$(MingwCommandPrefix32)-strip - -S + armv7-linux-android- .exe @@ -168,7 +168,7 @@ <_MonoCrossRuntime Include="cross-arm64-win" Condition="$(AndroidSupportedTargetAotAbisForConditionalChecks.Contains (':win-arm64:'))"> $(AndroidMxeFullPath)\bin\$(MingwCommandPrefix64)-strip - -S + aarch64-v8a-linux-android- .exe @@ -177,7 +177,7 @@ <_MonoCrossRuntime Include="cross-x86-win" Condition="$(AndroidSupportedTargetAotAbisForConditionalChecks.Contains (':win-x86:'))"> $(AndroidMxeFullPath)\bin\$(MingwCommandPrefix32)-strip - -S + i686-linux-android- .exe @@ -186,7 +186,7 @@ <_MonoCrossRuntime Include="cross-x86_64-win" Condition="$(AndroidSupportedTargetAotAbisForConditionalChecks.Contains (':win-x86_64:'))"> $(AndroidMxeFullPath)\bin\$(MingwCommandPrefix64)-strip - -S + x86_64-linux-android- .exe diff --git a/src/mono-runtimes/mono-runtimes.targets b/src/mono-runtimes/mono-runtimes.targets index fb940b4bb55..cf1f796d602 100644 --- a/src/mono-runtimes/mono-runtimes.targets +++ b/src/mono-runtimes/mono-runtimes.targets @@ -44,7 +44,7 @@ <_MonoSdksMxePrefixDir>$(AndroidToolchainDirectory) <_MonoSdksMxeSrc>$(MSBuildThisFileDirectory)..\..\external\mxe - <_MonoSdksParameters>CONFIGURATION=$(_MonoSdksConfiguration) IGNORE_PROVISION_MXE=true IGNORE_PROVISION_ANDROID=true IGNORE_PACKAGE_LLVM=true ANDROID_TOOLCHAIN_DIR="$(_MonoSdksAndroidToolchainDir)" ANDROID_TOOLCHAIN_CACHE_DIR="$(_MonoSdksAndroidToolchainCacheDir)" ANDROID_TOOLCHAIN_PREFIX="$(_MonoSdksAndroidToolchainPrefix)" LLVM_SRC="$(_MonoSdksLlvmSrc)" MXE_PREFIX_DIR="$(_MonoSdksMxePrefixDir)" MXE_SRC="$(_MonoSdksMxeSrc)" + <_MonoSdksParameters>CONFIGURATION=$(_MonoSdksConfiguration) IGNORE_PROVISION_MXE=true IGNORE_PROVISION_ANDROID=true IGNORE_PROVISION_LLVM=true ANDROID_TOOLCHAIN_DIR="$(_MonoSdksAndroidToolchainDir)" ANDROID_TOOLCHAIN_CACHE_DIR="$(_MonoSdksAndroidToolchainCacheDir)" ANDROID_TOOLCHAIN_PREFIX="$(_MonoSdksAndroidToolchainPrefix)" LLVM_SRC="$(_MonoSdksLlvmSrc)" MXE_PREFIX_DIR="$(_MonoSdksMxePrefixDir)" MXE_SRC="$(_MonoSdksMxeSrc)" From baf2bb193c63d7b818b1fa89ee3feb8115636fa4 Mon Sep 17 00:00:00 2001 From: Ludovic Henry Date: Mon, 17 Sep 2018 13:26:07 -0400 Subject: [PATCH 71/78] Bump to llvm/release_60/117a508c Commit list for mono/llvm: * mono/llvm@117a508c0ca Merge pull request #15 from mono/android-eh * mono/llvm@7dd82303e5e Emit .fnstart/.fnend directives on arm ELF platforms in the mono EH writer since the ARM backends depends on ARMException doing it, and ARMException is not ran when --disable-gnu-eh-frame is given. * mono/llvm@81376d161cb Pack 32bits llc, opt and llvm-dis in archive as well * mono/llvm@339b7ba45f4 [ci] Build the wasm backend as well. Diff: https://github.com/mono/llvm/compare/fc854b8ec5873d294b80afa3e6cf6a88c5c48886...117a508c0ca65b754008e94e3eb97e77edfef04b --- external/llvm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/external/llvm b/external/llvm index fc854b8ec58..117a508c0ca 160000 --- a/external/llvm +++ b/external/llvm @@ -1 +1 @@ -Subproject commit fc854b8ec5873d294b80afa3e6cf6a88c5c48886 +Subproject commit 117a508c0ca65b754008e94e3eb97e77edfef04b From a954bbd2892ae0cda5ec95b623ff4532110600f1 Mon Sep 17 00:00:00 2001 From: Ludovic Henry Date: Thu, 20 Sep 2018 16:53:10 -0400 Subject: [PATCH 72/78] Bump to mono/2018-06/8f36212a Commit list for mono/mono: * mono/mono@8f36212ad3a [2018-06] Ignore some xunit tests for XA (non compatible with xunit 2.4) (#10721) * mono/mono@410792459a8 [corlib] Makes remoting test more robust (and disable it on mobile) * mono/mono@7dd65f79a53 [mono-api-html] Render something for fields with marshalling info. (#10698) * mono/mono@7c898271e73 [offset-tool] Error out when parsing fails. (#10696) * mono/mono@adbb8f72c8b [2018-06] Implement IEnumerable for ConditionalWeakTable (#10657) * mono/mono@1b18f39e46e [arm64] Fix the alignment of valuetypes passed after small primitive types on IOS. (#10591) * mono/mono@e0221129db0 [runtime] Fix Marshal.SizeOf (typeof (void)). (#10601) * mono/mono@fbaeba4fec1 [2018-06][Facades] Removes duplicate entry * mono/mono@e944415e262 [csproj] Update project files * mono/mono@01d8b4ca559 Bump API snapshot submodule * mono/mono@b84f201e1bb [Facades] Adds System.Buffers mobile facade * mono/mono@e6e4f154742 Treat EXDEV from clonefile the same way as ENOTSUP. (#10530) * mono/mono@89cabf42056 [arm64] Add dyncall support for ArgVtypeByRefOnStack arguments. * mono/mono@8d13a8428df Bump msbuild 2018-06 branch to track xplat-master (#10383) * mono/mono@5e81afa90df [ci] Fix run-test-mac-sdk.sh build * mono/mono@6b3dfce0c8b [2018-06] Ensure the finalization in DeflateStream is performed in the correct order. (#10491) * mono/mono@b34a4d9f57f [2018-06] Bump corefx to get https://github.com/mono/corefx/pull/131 (#10473) Diff: https://github.com/mono/mono/compare/033a5184d1fb7fcbde1f098ec32d5c41d8eb70c3...8f36212ad3ab85c60c2b56cea3527467cb08ed9b --- external/mono | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/external/mono b/external/mono index 033a5184d1f..8f36212ad3a 160000 --- a/external/mono +++ b/external/mono @@ -1 +1 @@ -Subproject commit 033a5184d1fb7fcbde1f098ec32d5c41d8eb70c3 +Subproject commit 8f36212ad3ab85c60c2b56cea3527467cb08ed9b From 6a57d2cd09b1791d8fcbfefbade331c48c0a2899 Mon Sep 17 00:00:00 2001 From: Marek Safar Date: Wed, 26 Sep 2018 08:12:14 +0200 Subject: [PATCH 73/78] Bump mono --- external/mono | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/external/mono b/external/mono index 8f36212ad3a..65737564b04 160000 --- a/external/mono +++ b/external/mono @@ -1 +1 @@ -Subproject commit 8f36212ad3ab85c60c2b56cea3527467cb08ed9b +Subproject commit 65737564b04315d79671ef223c0ff10ecfa04d03 From c89f94e5cbb5ead56e6fb6ddd02603988e5ffd21 Mon Sep 17 00:00:00 2001 From: Marek Safar Date: Sat, 29 Sep 2018 10:04:24 +0200 Subject: [PATCH 74/78] Bump mono --- external/mono | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/external/mono b/external/mono index 65737564b04..46e0249d4cd 160000 --- a/external/mono +++ b/external/mono @@ -1 +1 @@ -Subproject commit 65737564b04315d79671ef223c0ff10ecfa04d03 +Subproject commit 46e0249d4cdf8ed3e1f1ad2f62e27a75309f41b5 From 936e5d4e70243f03bc4ba4cf167f9ae3323bf4dd Mon Sep 17 00:00:00 2001 From: Marek Safar Date: Tue, 2 Oct 2018 12:26:28 +0200 Subject: [PATCH 75/78] Bump Mono --- external/mono | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/external/mono b/external/mono index 46e0249d4cd..0dffbef2690 160000 --- a/external/mono +++ b/external/mono @@ -1 +1 @@ -Subproject commit 46e0249d4cdf8ed3e1f1ad2f62e27a75309f41b5 +Subproject commit 0dffbef269079364673d113f1fb4d135eb769424 From 4d54727bf297db1b73b1df7ea7a1a75c9c3283d8 Mon Sep 17 00:00:00 2001 From: Ludovic Henry Date: Thu, 4 Oct 2018 11:12:53 -0400 Subject: [PATCH 76/78] Bump to mono/2018-06/6e48ad4f Commit list for mono/mono: * mono/mono@6e48ad4f7b1 Merge pull request #10905 from monojenkins/backport-pr-10899-to-2018-06 * mono/mono@d050e323ed9 [runtime] Fix undefined pthread_main_np (#10930) * mono/mono@b549fa7f32a [Reflection] Fix issue with finding types in module using an asterisk as filter criteria * mono/mono@6c46acfe697 [runtime] Disable stack guard for main thread on osx Diff: https://github.com/mono/mono/compare/0dffbef269079364673d113f1fb4d135eb769424...6e48ad4f7b1bf86b2b073b7dc68c5701d5999c07 --- external/mono | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/external/mono b/external/mono index 0dffbef2690..6e48ad4f7b1 160000 --- a/external/mono +++ b/external/mono @@ -1 +1 @@ -Subproject commit 0dffbef269079364673d113f1fb4d135eb769424 +Subproject commit 6e48ad4f7b1bf86b2b073b7dc68c5701d5999c07 From 7e3c5b3cac5cd9a12eab555a8fc6ee81f2eb47c1 Mon Sep 17 00:00:00 2001 From: Ludovic Henry Date: Mon, 8 Oct 2018 14:13:09 -0400 Subject: [PATCH 77/78] Bump to mono/2018-06/ab3c897d Commit list for mono/mono: * mono/mono@ab3c897d685 Merge pull request #10997 from lewurm/2018-06-interp-fixes-for-native-type * mono/mono@914a62ab2e7 [interp] introduce float R4 stack type * mono/mono@62f23a83652 [interp] support ntype.ToString () * mono/mono@2c48c62e66f [interp] support nfloat.*Infinity * mono/mono@5c5a48b1449 [interp] support ntype.Equals () * mono/mono@13e412ee52a [interp] support ntype.CompareTo () * mono/mono@a576a799b16 [interp] fix op_implicit/op_explicit conversions for native types * mono/mono@1d9378713e6 [sdks/ios] Build libMonoPosixHelper for device architectures, so that zlib-helper.o is created. (#10921) (#10970) Diff: https://github.com/mono/mono/compare/6e48ad4f7b1bf86b2b073b7dc68c5701d5999c07...ab3c897d6851ccf75e840d8b767aafa0d0a32d53 --- external/mono | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/external/mono b/external/mono index 6e48ad4f7b1..ab3c897d685 160000 --- a/external/mono +++ b/external/mono @@ -1 +1 @@ -Subproject commit 6e48ad4f7b1bf86b2b073b7dc68c5701d5999c07 +Subproject commit ab3c897d6851ccf75e840d8b767aafa0d0a32d53 From f4266c3d2baee365ee8f2357e0626c57b1e85ed4 Mon Sep 17 00:00:00 2001 From: Ludovic Henry Date: Mon, 8 Oct 2018 14:14:19 -0400 Subject: [PATCH 78/78] Bump to xamarin-android-api-compatibility/master/7ccb4802 Commit list for xamarin/xamarin-android-api-compatibility: * xamarin/xamarin-android-api-compatibility@7ccb480 Update BCL assemblies for mono/mono:2018-06@70fe915d breakage (#19) Diff: https://github.com/xamarin/xamarin-android-api-compatibility/compare/c550d1bdab4299e42cb6fce83c828fef313e6678...7ccb4802f3efe0ee7a0d5d87c4cfe78832d68aec --- external/xamarin-android-api-compatibility | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/external/xamarin-android-api-compatibility b/external/xamarin-android-api-compatibility index c550d1bdab4..7ccb4802f3e 160000 --- a/external/xamarin-android-api-compatibility +++ b/external/xamarin-android-api-compatibility @@ -1 +1 @@ -Subproject commit c550d1bdab4299e42cb6fce83c828fef313e6678 +Subproject commit 7ccb4802f3efe0ee7a0d5d87c4cfe78832d68aec