{"push_id":1223957643,"size":11,"distinct_size":11,"ref":"refs/heads/master","head":"cb82efbd9a967337fef2ddf703a7ea8b74dcf698","before":"a16673d3eb2c4945c3a74f5f8154603d7658fc9a","commits":[{"sha":"6aecb2152f71a60357618bb16e98013d840e6b53","author":{"name":"Atsushi Eno","email":"f63ecc1f0c2cde37bdb6d4b59274a415b09dc690@gmail.com"},"message":"Bump to mono/df2b5d52 (#123)\n\nCurrent external/mono has unwanted `System.Drawing.Primitives.dll`\r\nimplementation in Facades and results in:\r\n\r\n\t/sources/xamarin-android/Xamarin.Android.sln (default targets) ->\r\n    (Build target) ->\r\n    /sources/xamarin-android/src/OpenTK-1.0/OpenTK.csproj (default targets) ->\r\n    /devel/lib/mono/4.5/Microsoft.CSharp.targets (CoreCompile target) ->\r\n\r\n    /sources/xamarin-android/external/opentk/Source/OpenTK/DisplayDevice.cs(47,9): error CS0433: The imported type `System.Drawing.Rectangle' is defined multiple times\r\n    /sources/xamarin-android/external/opentk/Source/OpenTK/Graphics/ES20.Android/Helper.cs(448,52): error CS0433: The imported type `System.Drawing.Size' is defined multiple times\r\n    /sources/xamarin-android/external/opentk/Source/OpenTK/Graphics/ES20.Android/Helper.cs(453,52): error CS0433: The imported type `System.Drawing.Point' is defined multiple times\r\n\r\n    /sources/xamarin-android/Xamarin.Android.sln (default targets) ->\r\n    (Build target) ->\r\n    /sources/xamarin-android/src/System.Drawing.Primitives/System.Drawing.Primitives.csproj (default targets) ->\r\n    /devel/lib/mono/4.5/Microsoft.CSharp.targets (CoreCompile target) ->\r\n\r\n    Properties/AssemblyInfo.cs(5,52): error CS0433: The imported type `System.Drawing.Point' is defined multiple times\r\n    Properties/AssemblyInfo.cs(6,52): error CS0433: The imported type `System.Drawing.PointF' is defined multiple times\r\n    Properties/AssemblyInfo.cs(7,52): error CS0433: The imported type `System.Drawing.Rectangle' is defined multiple times\r\n    Properties/AssemblyInfo.cs(8,52): error CS0433: The imported type `System.Drawing.RectangleF' is defined multiple times\r\n    Properties/AssemblyInfo.cs(9,52): error CS0433: The imported type `System.Drawing.Size' is defined multiple times\r\n    Properties/AssemblyInfo.cs(10,52): error CS0433: The imported type `System.Drawing.SizeF' is defined multiple times\r\n\r\n     4788 Warning(s)\r\n     9 Error(s)\r\n\r\nUse the latest HEAD from mono-4.6.0-branch to fix the issue.","distinct":true,"url":"https://api.github.com/repos/jonpryor/xamarin-android/commits/6aecb2152f71a60357618bb16e98013d840e6b53"},{"sha":"b4cbf5cda5f10ccfa07dabe67799139c2209304c","author":{"name":"Marek Habersack","email":"a0adefb222d4aa27b2264f7711606ac0316ae02d@twistedcode.net"},"message":"Update Mono to bring fixes for AOT offset dumper","distinct":true,"url":"https://api.github.com/repos/jonpryor/xamarin-android/commits/b4cbf5cda5f10ccfa07dabe67799139c2209304c"},{"sha":"64fb4b7166816d75d414a03aa9526b411429ab1b","author":{"name":"Dean Ellis","email":"fa2f64d85c77f347bc42c5afff40d47aea50facd@googlemail.com"},"message":"[Xamarin.Android.Build.Tasks] .targets file should be an Inputs to cache-generating tasks (#126)\n\nFixes https://bugzilla.xamarin.com/show_bug.cgi?id=42671\r\n\r\nWhen Xamarin.Android is updted we really should invalidate the\r\nsdk cache just in case things changes/updated.\r\n\r\nThis commit adds the `Xamarin.Android.Common.targets` to the\r\nlist of inputs for the `_BuildSdkCache` target. This means if\r\nthe .targets file is newer than the Sdk cache it will auto\r\nrebuild it.","distinct":true,"url":"https://api.github.com/repos/jonpryor/xamarin-android/commits/64fb4b7166816d75d414a03aa9526b411429ab1b"},{"sha":"d262ff00434f323ece74936493beea735256afd8","author":{"name":"Atsushi Eno","email":"f63ecc1f0c2cde37bdb6d4b59274a415b09dc690@gmail.com"},"message":"[Xamarin.Android.Build.Utilities] Fix Android N version identifier. (#127)\n\nSince we don't build 6.0.99 anymore, it simply fails to lookup Android N\r\nbecause our MSBuild tasks still tries to find 6.0.99 because of this code.","distinct":true,"url":"https://api.github.com/repos/jonpryor/xamarin-android/commits/d262ff00434f323ece74936493beea735256afd8"},{"sha":"71bb55742a0a8cc4f8cdc793b8820d3daab30d97","author":{"name":"Andi McClure","email":"51cd209e0b1b6ec980adda5cb16996869ed5d38e@xamarin.com"},"message":"Fix periodic crash on Monodroid appdomain unload\n\nWhen the Designer unloads the Monodroid assembly, mono_java_gc_bridge_info continues pointing to data in the now-invalid assembly image. This currently causes a semi-consistent crash in the Designer tests because the appdomain is unloaded and then reloaded, create_domain (which creates the AppDomain managed object, and therefore implicitly depends on mono_java_gc_bridge_info) is called before init_android_runtime (which populates mono_java_gc_bridge_info with the new data).\n\nThe solution is to clear mono_java_gc_bridge_info when Monodroid is unloaded. This means all objects will be marked transparent until a new Monodroid is loaded, which is fine because only pure C# objects are being created anyway if Monodroid is unloaded (with one edge case which may still need to be fixed-- see the FIXME comment in this commit).","distinct":true,"url":"https://api.github.com/repos/jonpryor/xamarin-android/commits/71bb55742a0a8cc4f8cdc793b8820d3daab30d97"},{"sha":"e813d418a7f152a64bd1b4cfd6026b182b2f2ba5","author":{"name":"Andi McClure","email":"51cd209e0b1b6ec980adda5cb16996869ed5d38e@xamarin.com"},"message":"Merge pull request #129 from xamarin/appdomain-unload-crash\n\nFix periodic crash on Monodroid appdomain unload","distinct":true,"url":"https://api.github.com/repos/jonpryor/xamarin-android/commits/e813d418a7f152a64bd1b4cfd6026b182b2f2ba5"},{"sha":"4f93312f43e53fcc6989d40fe67903da35ffc306","author":{"name":"Dean Ellis","email":"fa2f64d85c77f347bc42c5afff40d47aea50facd@googlemail.com"},"message":"Bump LibZipSharp/c6379dee (#130)\n\nFixes: https://bugzilla.xamarin.com/show_bug.cgi?id=42643\r\n\r\nFixes VS crashing randomly while Archiving the application.","distinct":true,"url":"https://api.github.com/repos/jonpryor/xamarin-android/commits/4f93312f43e53fcc6989d40fe67903da35ffc306"},{"sha":"37b5fd51866ffcdd076862fa2d58cf0cae434c9b","author":{"name":"Marek Habersack","email":"a0adefb222d4aa27b2264f7711606ac0316ae02d@twistedcode.net"},"message":"[mono-runtimes] Build AOT+LLVM cross-compilers (#125)\n\nThe commit implements building of LLVM and cross-compilers to support\r\nXamarin.Android/Mono AOT. LLVM and cross-compilers can be built for\r\nboth the host platform (Linux and OS/X at the moment) as well as\r\ncross-compiled for 32-bit and 64-bit Windows platforms.\r\n\r\nWindows builds are done with MXE toolchain on OS/X and with the packaged\r\nmingw-w64 toolchain on Linux (tested on Ubuntu 16.04 ONLY).\r\n\r\nAlso introducing a new set of MSBuild properties that contain information\r\nabout the host system. Some of those properties (HostOS, HostCC, HostCXX\r\nfor instance) have been moved from Configuration.props to better support\r\nauto-detection. A new script, build-tools/scripts/generate-os-info, is\r\ninvoked as part of `make prepare` to generate file that contains the\r\nnew properties. The generated file is required for the build to work and\r\nis also host-specific (it mustn't be moved between different machines)\r\n\r\nCross compiler builds require access to a configured Mono build tree, in\r\norder to generate C structure offsets header file that is used by the AOT\r\ncompilers to properly generate AOT-ed binaries. Therefore, even if a JIT\r\ntarget is not enabled in the configuration, enabling a cross-compiler for\r\nsome target will configure Mono for that JIT target but it will NOT build\r\nit, to save time. To facilitate this, the _MonoRuntimes items defined in\r\nbuild-tools/mono-runtimes/mono-runtimes.projitems gain an additional metadata\r\nitem called `DoBuild` which will be set to `true` if the runtime actually needs\r\nto be built, as opposed to just configured.\r\n\r\nMXE builds are disabled on Linux as mingw-w64 works just fine.\r\n\r\nA `make prepare` warning is issued for Linux hosts which have the binfmt_misc\r\nmodule enabled and either Wine of Mono (cli) registered as PE32/PE32+ binary\r\ninterpreters. In such instance building of the Windows cross-compilers will\r\nfail because Autotools determine whether software is being cross compiled by\r\nbuilding a test program and attempting to execute it. In normal circumstances\r\nsuch an attempt will fail, but with Windows cross-compilation and either Wine\r\nor Mono registered to handle the PE32 executables this attempt will succeed\r\nthus causing the cross compilation detection to fail.\r\n\r\nCurrently to build cross compilers on Linux you need to generate the C structure\r\noffsets header file on OS/X and copy the resulting headers to appropriate places\r\non Linux. The header files should be placed in\r\n\r\n  build-tools/mono-runtimes/obj/Debug/cross-*/\r\n\r\ndirectories. The header files are:\r\n\r\n   {cross-arm,cross-arm-win}/aarch64-v8a-linux-android.h\r\n   {cross-arm64,cross-arm64-win}/armv5-none-linux-androideabi.h\r\n   {cross-x86,cross-x86-win}/i686-none-linux-android.h\r\n   {cross-x86_64,cross-x86_64-win}/x86_64-none-linux-android.h\r\n\r\nOffsets header generation doesn't work on Linux atm because of missing support\r\nfor it in the Mono utility used to generate the offsets. Hopefully this limitation\r\nwill be removed in the near future and a start-to-end build of everything will be\r\npossible on Linux.\r\n\r\nIt is now mandatory to run at least `make prepare-props` before Xamarin.Android\r\ncan be built. The target generates the OS-specific props file which is required\r\nby the build. `make prepare` depends on the target.","distinct":true,"url":"https://api.github.com/repos/jonpryor/xamarin-android/commits/37b5fd51866ffcdd076862fa2d58cf0cae434c9b"},{"sha":"29addc7f872655e82ca7a26996f54a54d83ad408","author":{"name":"Jonathan Pryor","email":"69e3f626213518b6a6c0b4db98d6430d9edc0042@vt.edu"},"message":"[build] Ensure submodules init'd before using them (#131)\n\n`make jenkins` after a fresh checkout was failing:\r\n\r\n\t$ make jenkins\r\n\tcp Configuration.Java.Interop.Override.props external/Java.Interop/Configuration.Override.props\r\n\t./build-tools/scripts/generate-os-info Configuration.OperatingSystem.props\r\n\tcp `xbuild /p:Configuration=Debug  /nologo /v:minimal /t:GetMonoSourceFullPath build-tools/scripts/Paths.targets`/mcs/class/msfinal.pub .\r\n\tcp: /Volumes/Seagate4TB/work/xamarin-android/external/mono/mcs/class/msfinal.pub: No such file or directory\r\n\tmake: *** [prepare-props] Error 1\r\n\r\nThe reason it failed is because `make prepare-props` ran *before*\r\n`git submodule update` ran, meaning the file\r\n`external/mono/mcs/class/msfinal.pub` didn't exist yet.\r\n\r\nMove the git submodule initialization logic into a new\r\n`make prepare-external` target, which is run before\r\n`make prepare-props`. This ensures that required files exist before\r\nthey are used.\r\n\r\nAdditionally, fix the `make prepare-external` logic so that if the\r\n`$(JavaInteropSourceDirectory)` MSBuild property is overridden, we run\r\n`nuget restore` from the appropriate directory.","distinct":true,"url":"https://api.github.com/repos/jonpryor/xamarin-android/commits/29addc7f872655e82ca7a26996f54a54d83ad408"},{"sha":"dbc104ff034b50b3bdd1aca2062c258070996bb9","author":{"name":"Jonathan Pryor","email":"69e3f626213518b6a6c0b4db98d6430d9edc0042@vt.edu"},"message":"[build] Fix `make prepare`\n\nCommit 29addc7f broke `make jenkins`:\n\n\tbuild-tools/scripts/Paths.targets: error :\n\t.../xamarin-android/build-tools/scripts/Paths.targets:\n\tException has been thrown by the target of an invocation.\n\nThe cause was due to the use of `build-tools/scripts/Paths.targets`\nfrom `make prepare-external`, which runs before `make prepare-props`,\nand thus before `Configuration.OperatingSystem.props` is created.\n\nNot including `Configuration.OperatingSystem.props` in turn meant that\n`$(HostOS)` wasn't set, and thus `$(AndroidMxeInstallPrefix)` wasn't\nset, causing the `Path.GetFullPath()` for `$(AndroidMxeFullPath)` to\nthrow, and nothing worked.\n\nFix that by altering `$(AndroidMxeFullPath)` to be conditional on\n`$(AndroidMxeInstallPrefix)` containing a value, and make importing of\n`Configuration.OperatingSystem.props` conditional on the\n`$(DoNotLoadOSProperties)` MSBuild property *not* being True.\n(By default, it won't be set, and thus\n`Configuration.OperatingSystem.props` will be included.)","distinct":true,"url":"https://api.github.com/repos/jonpryor/xamarin-android/commits/dbc104ff034b50b3bdd1aca2062c258070996bb9"},{"sha":"cb82efbd9a967337fef2ddf703a7ea8b74dcf698","author":{"name":"Radek Doulik","email":"657e7296bfb8bedccea1f058ba12df8fe0cab1a1@users.noreply.github.com"},"message":"[Xamarin.Android.Build.Tasks] Preserve Link action for assemblies (#133)\n\nFixes: http://bugzilla.xamarin.com/show_bug.cgi?id=42788\r\n\r\nPreserve Link action for assemblies, so that they are rewritten\r\nwith the resolved references.\r\n\r\nThe issue in this bug looks like this:\r\n\r\n* `[mscorlib]System.MonoTODOAttribute` is referenced from\r\n    `System.Core.dll`.\r\n\r\n* Because `ResolveFromAssemblyStep.ProcessLibrary()` sets the action\r\n    to Copy, the `System.Core.dll` is only copied from original place\r\n\t\tand not saved with resolved references.\r\n\r\n* The `System.MonoTODOAttribute` resolves to reference inside the\r\n    `Microsoft.CSharp.dll` assembly (where it is kept, it is stripped\r\n    from `mscorlib.dll`) and thus the reflection fails at runtime,\r\n\t\twhen attempting to load the `System.Core.dll` assembly\r\n\r\nThe result is a `TypeLoadException`:\r\n\r\n    System.TypeLoadException: Failed for unknown reasons.\r\n      at (wrapper managed-to-native) System.MonoCustomAttrs:GetCustomAttributesDataInternal (System.Reflection.ICustomAttributeProvider)\r\n      at System.MonoCustomAttrs.GetCustomAttributesData (ICustomAttributeProvider obj) [0x00011] in <filename unknown>:0 \r\n      at System.Reflection.CustomAttributeData.GetCustomAttributes (System.Reflection.MemberInfo target) [0x00000] in <filename unknown>:0 \r\n      at Mono.CSharp.MetadataImporter.ImportTypes (System.Type[] types, Mono.CSharp.Namespace targetNamespace, Boolean importExtensionTypes) [0x000c3] in <filename unknown>:0 \r\n      at Mono.CSharp.ReflectionImporter.ImportAssembly (System.Reflection.Assembly assembly, Mono.CSharp.RootNamespace targetNamespace) [0x00021] in <filename unknown>:0 \r\n      at Microsoft.CSharp.RuntimeBinder.DynamicContext.Create () [0x000d1] in <filename unknown>:0 \r\n      at Microsoft.CSharp.RuntimeBinder.CSharpInvokeMemberBinder.FallbackInvokeMember (System.Dynamic.DynamicMetaObject target, System.Dynamic.DynamicMetaObject[] args, System.Dynamic.DynamicMetaObject errorSuggestion) [0x00006] in <filename unknown>:0 \r\n      at System.Dynamic.InvokeMemberBinder.FallbackInvokeMember (System.Dynamic.DynamicMetaObject target, System.Dynamic.DynamicMetaObject[] args) [0x00000] in <filename unknown>:0 \r\n      at System.Dynamic.DynamicMetaObject.BindInvokeMember (System.Dynamic.InvokeMemberBinder binder, System.Dynamic.DynamicMetaObject[] args) [0x0000b] in <filename unknown>:0 \r\n      at System.Dynamic.InvokeMemberBinder.Bind (System.Dynamic.DynamicMetaObject target, System.Dynamic.DynamicMetaObject[] args) [0x00016] in <filename unknown>:0 \r\n      at System.Dynamic.DynamicMetaObjectBinder.Bind (System.Object[] args, System.Collections.ObjectModel.ReadOnlyCollection`1 parameters, System.Linq.Expressions.LabelTarget returnLabel) [0x000de] in <filename unknown>:0 \r\n      at System.Runtime.CompilerServices.CallSiteBinder.BindCore[T] (System.Runtime.CompilerServices.CallSite`1 site, System.Object[] args) [0x0001c] in <filename unknown>:0 \r\n      at System.Dynamic.UpdateDelegates.UpdateAndExecuteVoid3[T0,T1,T2] (System.Runtime.CompilerServices.CallSite site, System.Dynamic.T0 arg0, System.Dynamic.T1 arg1, System.Dynamic.T2 arg2) [0x00120] in <filename unknown>:0 \r\n      at DynamicTest.MainActivity+<OnCreate>c__AnonStorey0.<>m__0 (System.Object sender, System.Net.DownloadStringCompletedEventArgs e) [0x0029f] in /Users/petercollins/git/monodroid-samples/DynamicTest/DynamicTest/MainActivity.cs:69 \r\n      at System.Net.WebClient.OnDownloadStringCompleted (System.Net.DownloadStringCompletedEventArgs e) [0x0000b] in <filename unknown>:0 \r\n      at System.Net.WebClient.DownloadStringOperationCompleted (System.Object arg) [0x00000] in <filename unknown>:0 \r\n      at Android.App.SyncContext+<Post>c__AnonStorey0.<>m__0 () [0x00000] in <filename unknown>:0 \r\n      at Java.Lang.Thread+RunnableImplementor.Run () [0x0000b] in <filename unknown>:0 \r\n      at Java.Lang.IRunnableInvoker.n_Run (IntPtr jnienv, IntPtr native__this) [0x00009] in <filename unknown>:0 \r\n      at (wrapper dynamic-method) System.Object:8fac3e9d-0d86-4913-8b38-60c3330d5f9d (intptr,intptr)","distinct":true,"url":"https://api.github.com/repos/jonpryor/xamarin-android/commits/cb82efbd9a967337fef2ddf703a7ea8b74dcf698"}]}
{"actor":{"display_login":"jonpryor"}}