Mac Build Host
Date published: See https://releases.xamarin.com/.
You can downgrade back to the previous Stable version by manually reinstalling each old package. See the KB article on downgrading. If you have a Trial or Starter subscription, feel free to contact [email protected] to request the older versions.
Older Mono package versions are not currently listed on https://store.xamarin.com/account/my/subscription/downloads. The Mono package for the previous Stable version ("Service Release 1") is available here:
If needed, you can also downgrade back to older versions (from before April 29) by manually reinstalling each old package. See the "Previous versions, downgrading" section on the April 29 release thread for the older downgrade links.
This first post will be updated regularly.
Hopefully this thread will help answer "what might break if I update to this release?"
If you find a new problem that is specific to this version, please file a bug report.
Please discuss older bugs that are unchanged in this release compared to the previous Stable version in Bugzilla instead.
Of course for questions and discussions about topics other than bugs, feel free start new forum threads.
.dllfiles rather than
Bug 28961 - [iOS] "error MT3001: Could not AOT the assembly", "error: invalid symbol redefinition". (This can also appear as "System.ArgumentOutOfRangeException: startIndex > this.length" in the "Output -> Xamarin Log" in VS.) One common cause of this error is the use of
[MethodImplAttribute(MethodImplOptions.Synchronized)]. Workaround for projects that use [MethodImplAttribute(MethodImplOptions.Synchronized)]: remove
[MethodImplAttribute(MethodImplOptions.Synchronized)] and manually synchronize the methods using
lock statements instead (https://bugzilla.xamarin.com/show_bug.cgi?id=28961#c6).
Non-public Bug 28995 - [Android] On certain devices, certain apps crash frequently due to "System.ExecutionEngineException: SIGILL".
Bug 30318 - [Android] Windows only: Breakpoints in PCL projects do not work after cleaning solution, redeploying, and restarting debugging. Partial workaround: delete all the
bin folders in the solution after cleaning. (The next Alpha build should include this fix.)
Bug 30371 - [XamarinVS] [Android] Project Properties display incorrect default values for "BundleAssemblies" and "EmbedAssembliesIntoApk" if they are not explicitly specified. This means that these properties can "automatically" change to incorrect values when you update other properties under "Project Properties -> Android Options". The incorrect values can cause secondary symptoms like Bug 30334 where breakpoints are not hit in the Debug configuration.
Non-public Bug 30057 - [Android] Windows only: the debugger will not be able resolve breakpoints unless "Shared Runtime" is ON and the Linker is OFF (under "Project Properties -> Android Options" in Visual Studio or "Project Options -> Android Build" in Xamarin Studio). (The next Alpha build should include this fix.)
Bug 29211 - [iOS] Enabling the linker when the solution includes a PCL that uses System.IO.Compression causes "Could not load file or assembly 'System.IO.Compression' or one of its dependencies" at run time. The same problem can also happen with System.Threading.Tasks (and probably also several other assemblies). Workaround: add
-linkskip=System.Threading.Tasks for System.Threading.Tasks) under "project options -> iOS Build -> Additional mtouch arguments".
Bug 30420 - [iOS]
this.TableView is called in the TableView constructor. Workaround: perform all initialization operations for the TableView in the
ViewWillAppear() methods rather than the constructor.
Non-public Bug 29538 - [Android] Profiling via the graphical Xamarin Profiler ("Run -> Start Profiling") causes the app to crash at startup.
Bug 29849 - [XamarinVS] [iOS] The "Visual C# -> Mobile Apps -> Blank App (Xamarin.Forms Portable)" template includes an iOS project that has a non-empty value for the
<CodesignEntitlements> property for the iPhoneSimulator configurations, meaning that the iPhoneSimulator configuration will attempt to perform code signing. This is inconsistent with the other templates and also with the corresponding Xamarin Studio template on Mac. Workaround: open the
.csproj file in a text editor and delete the
<CodesignEntitlements> property from all of the iPhoneSimulator configurations.
Bug 30513 - [Android] The logged stack traces from exceptions thrown within async methods do not include the actual location where the exception was thrown. Partial workaround: switch back to the old Xamarin.Android 4.x exception propagation style by setting the
XA_BROKEN_EXCEPTION_TRANSITIONS environment variable to
true (see also Bug 30513, Comment 11).
Non-public Bug 30059 - [XamarinVS] [iOS] "Mono.Debugger.Soft.CommandException: Debuggee returned error code 200." when hitting breakpoints in PCLs in certain projects when running XamarinVS on certain computers.
Bug 29326 - [Android] String resources defined in NuGet packages overwrite string resources defined in app project, causing the displayed app name to be incorrect for example. Workaround: avoid using the same string key that is used in the NuGet packages.
Non-public Bug 30481, Bug 29557 - [Mono] [Android] [iOS]
SqlConnection.GetSchema() fails with "SourceTable is required to be a non-empty string". (A fix for this issue is planned for the upcoming "Service Release 3.")
Bug 30548 - [Android] Under certain conditions new threads take several seconds to start. This problem seems to be triggered by Xamarin.Insights 1.10. Partial workarounds: upgrade Xamarin.Insights to version 1.10.3, downgrade to version 1.9, or remove it entirely.
Bug 29745 - [iOS] Error due to duplicate symbols during native compilation for device: "duplicate symbol _monoeg_g_array_new" (and many similar messages). Workarounds: disable profiling under "Project Properties -> iOS Build", or if your app uses the
-all_load linker flag (via either
LinkerFlags) try removing it.
Bug 29731 - [Android]
Android.Bluetooth.BluetoothAdapter.Enable is incorrectly marked as
[Obsolete("deprecated")] for API level 20 and higher.
(For issues that might behave differently for some customers after updating to this new release, or that might be difficult to find via Bugzilla.)
Bug 28027 - [XamarinVS] [iOS] The debugger sometimes fails to connect properly after the app launches. This means breakpoints will not be hit during that launch of the app and the "Output -> Debug" window will be blank. Repeating the steps of (a) stopping the debugger and (b) relaunching the app will eventually lead to a successful connection. This problem has existed since at least XamarinVS 3.9.483, but some recent reports suggest that it has become more common for certain users recently. The problem might be caused by a race condition. Based on that guess, the recent releases might have changed some timings and increased the probability of hitting the issue on a wider range of system configurations. The bug is under active investigation.
Bug 31423 - [XamarinVS] [Android] [iOS] Locked
.dll files: "Could not copy "... PortableClassLibrary1.dll" to "bin\Debug\PortableClassLibrary1.dll". Exceeded retry count of 10. Failed." This is a different problem than Bug 26841 because it affects
.dll files rather than
.dll.mdb files. It appears to be less common than Bug 26841, but it is under active investigation for the next service release ("Service Release 3").
Bug 31527 - [Android] "The following assembly referenced from ... could not be loaded: Assembly: System.Runtime ... Version: 188.8.131.52" when using the "Shared Runtime" with the linker enabled. Workaround: set "Project Options -> Android Build -> Linker [tab] -> Linker behavior" to "Don't link" in Xamarin Studio or "Project Properties -> Android Options -> Linker [tab] -> Linking") to "None" in Visual Studio. Enabling linking when the "Shared Runtime" is enabled is an intentionally untested scenario (partly because the on-device "shared runtime" assemblies will necessarily never be linked). )
Bug 31597 - [Android] For some projects the generated
.mdb files are incorrect, causing breakpoints to be skipped or incorrect line numbers to appear in the call stacks. Candidate fix now on the Alpha channel. (Old workaround: add
Condition="'$(AndroidLinkMode)' != 'None' AND '$(AndroidUseSharedRuntime)' != 'true'" to the
StripEmbeddedLibraries task in
C:\Program Files (x86)\MSBuild\Xamarin\Android\Xamarin.Android.Common.targets on Windows or
/Library/Frameworks/Xamarin.Android.framework/Versions/Current/lib/xbuild/Xamarin/Android/Xamarin.Android.Common.targets on Mac.
Bug 31379, Bug 31560 - [iOS] Enabling the linker when the app references PCL projects that include "duplicate" System.Threading.Tasks references (for example when using the "Microsoft.Net.Http" NuGet in a .NET 4.0 PCL) causes "Could not load file or assembly 'System.Threading.Tasks'" on the simulator. This bug has in fact existed since the original April 29 release of Cycle 5, but until Service Release 2 it had been obscured by the closely related Bug 29211. The bug only affects simulator builds and has fairly easy workarounds, so it is minor in severity. Workarounds: disable the linker in the iPhoneSimulator configurations or add
-linkskip=System.Threading.Tasks under "project options -> iOS Build -> Additional mtouch arguments".
EDIT July 01: Update version numbers for Xamarin.iOS Xcode 6.4, iOS 8.4 compatibility release. Typo correction. Add iOS Bug 31379.
EDIT July 07: Add Android bug 31527. Add Android bug 31597.
EDIT July 17: Mark bug fixes from new Alpha channel release: 31597. Add "release announcement" tag.
EDIT July 21: Add Android bug 30513.