Stable Release: XamarinVS 3.11.666, Cycle 5 – Service Release 2

BrendanZagaeskiBrendanZagaeski Brendan ZagaeskiUSForum Administrator, Xamarin Team Xamurai

Windows

  • Xamarin.VisualStudio_3.11.666.msi (ebae43a)

Mac Build Host

  • monotouch-8.10.2.37.pkg (ef8c2f7)
  • monotouch-8.10.3.2.pkg (8b265d6) (Xcode 6.4 and iOS 8.4 support)

Reason for release: Additional bug fixes for the "Cycle 5" Stable Release on April 29. (See the release blog for a short description of "Cycles" and "Service Releases.")

Release notes: http://developer.xamarin.com/releases/vs/xamarin.vs_3/xamarin.vs_3.11/

Date published: See https://releases.xamarin.com/.

Previous versions, downgrading

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 hello@xamarin.com 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:

Older versions (from before April 29)

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.

Guidelines for this thread

  1. This first post will be updated regularly.

  2. Hopefully this thread will help answer "what might break if I update to this release?"

  3. If you find a new problem that is specific to this version, please file a bug report.

  4. Please discuss older bugs that are unchanged in this release compared to the previous Stable version in Bugzilla instead.

  5. Of course for questions and discussions about topics other than bugs, feel free start new forum threads.

Fixes for widely reported known issues from older releases

  • Bug 26841 - [XamarinVS] [Android] [iOS] "The process cannot access the file ... MyApplication.dll.mdb because it is being used by another process" after debugging an app, stopping debugging, and starting debugging again. Note: see Bug 31423 under "New known issues" for a similar problem that has appeared recently for .dll files rather than .dll.mdb files.

Fixes for remaining known issues from the April 29 Stable Channel release

  • 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.IO.Compression (or -linkskip=System.Threading.Tasks for System.Threading.Tasks) under "project options -> iOS Build -> Additional mtouch arguments".

  • Bug 30420 - [iOS] DequeueReusableCell(cellIdentifier) returns null if this.TableView is called in the TableView constructor. Workaround: perform all initialization operations for the TableView in the ViewDidLoad() or 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.

Remaining known issues from the April 29 Stable Channel release, with more common or severe issues near the top

  • 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 gcc_flags or LinkerFlags) try removing it.

  • Bug 29731 - [Android] Android.Bluetooth.BluetoothAdapter.Enable is incorrectly marked as [Obsolete("deprecated")] for API level 20 and higher.

Remaining known issues from before the April 29 Stable Channel release

(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 29897 - [XamarinVS] [iOS] Breakpoints sometimes don't work when debugging on iOS device. Based on the observed behavior of this problem, it appears to have the same underlying cause as Bug 28027.

New known issues

  • 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: 4.0.0.0" 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.

Posts

  • WesselOosthuizenWesselOosthuizen Wessel Oosthuizen USMember ✭✭

    I just installed this release, and for some reason visual studio is hanging again, when debugging on a real device. It will build and deploy just fine the first time, and I can run and debug the app. But the second time, it will hang every time on "Copying application to device".

    It does copy the new app over, but visual studio hangs. This happens every time.

    I'm using a samsung galaxy s4 with lollipop...

  • BrendanZagaeskiBrendanZagaeski Brendan Zagaeski USForum Administrator, Xamarin Team Xamurai

    @WesselOosthuizen, thanks for the preliminary report. I have copied this initial information into a new bug report here: https://bugzilla.xamarin.com/show_bug.cgi?id=31514. I have included some follow-up questions about the issue on the bug report.

  • RaphaelSchindlerRaphaelSchindler Raphael Schindler USMember ✭✭✭

    @BrendanZagaeski I'm still encountering Bug 29211 after installing the newest stable release. I tried the workaround with adding -linkskip=System.Threading.Tasks to mtouch arguments.
    I've added the stacktrace as a .txt document.

    Is there any ETA on fixing this? Sorry if I'm annoying :smile:

  • AxelCharpentierAxelCharpentier Axel Charpentier FRMember ✭✭
    edited July 2015

    @BrendanZagaeski With this new release I am unable to debug on iOS Device from VS2013.....
    When I start the debugger that app is copied to the Device (iPhone 6, iOS 8.3) and I get :

    Erreur 7 error MT0000: Unexpected error - Please file a bug report at http://bugzilla.xamarin.com Xamarin.iOS Extension 0 0

    The app dont even start.
    It works fine on the simulator.

    This is very very annyoing because my app use bunch of core motion senors than I can't simulate.
    I was using 3.9.547 just before and it worked fine.


    EDIT Jul 01 by @BrendanZagaeski: Remove the verbose version information from the thread readability. I have instead copied the version information into a bug report.

  • AxelCharpentierAxelCharpentier Axel Charpentier FRMember ✭✭

    It also happens with a brand new Forms template....

  • BrendanZagaeskiBrendanZagaeski Brendan Zagaeski USForum Administrator, Xamarin Team Xamurai

    @AxelCharpentier, thanks for the preliminary report. I have copied this initial information into a new bug report here: https://bugzilla.xamarin.com/show_bug.cgi?id=31558. I have included some follow-up questions about the issue on the bug report.

  • BrendanZagaeskiBrendanZagaeski Brendan Zagaeski USForum Administrator, Xamarin Team Xamurai

    @RapaelSchindler, thanks for the report. It turns out that Bug 29211 did not cover all of the possible ways to hit this issue.

    I recently found another way to hit the problem in Bug 31379. Using this second approach, I can indeed still reproduce the exception for System.Threading.Tasks in Cycle 5 Service Release 2. To make certain that the specific case of System.Threading.Tasks gets fixed, I filed another dependent bug that reproduces that particular exception under Bug 31560. I have now added a new note about these bugs to the first post in the thread.

  • RaphaelSchindlerRaphaelSchindler Raphael Schindler USMember ✭✭✭
    edited July 2015

    @BrendanZagaeski Using "Don't link" for the Linker behaviour resolved the issue on my side. It's good that I can debug again :smile: But since this is just a workaround it would be great if we can fix this

    Edit// I'm encountering Bug 31423 now again :(

  • AxelCharpentierAxelCharpentier Axel Charpentier FRMember ✭✭

    @BrendanZagaeski Thx for creating the bug, I have attached the VS logs and the Build Host logs.
    After a quicks scan, here what I have found on the build host logs :

    [02-juil.-2015 02:18:00] Command [DeployApplication: CommmandUrl=DeployApplication] finished (67)
    [02-juil.-2015 02:18:00] Request handled in 7072,365ms
    [02-juil.-2015 02:18:00] Handling with command: [DebugApplication: CommmandUrl=DebugApplication] (67)
    [02-juil.-2015 02:18:00] Attempting to acquire command execution lock, timeout set to 00:10:00
    [02-juil.-2015 02:18:00] Waiting for application to connect to us. Timeout set to 00:05:00
    [02-juil.-2015 02:18:00] Starting /Developer/MonoTouch/usr/bin/mtouch -sdkroot "/Applications/Xcode.app/Contents/Developer" --devname "iPhone de Axel" --killdev "com.yourcompany.App7" --launchdev "com.yourcompany.App7" -argument=-monodevelop-port -argument=10000 -argument=-connection-mode -argument=usb -sdk 8.3
    [02-juil.-2015 02:18:01] stderr: warning MT1003: Could not kill the application 'com.yourcompany.App7'. You may have to kill the application manually.
    error MT0000: Unexpected error - Please file a bug report at http://bugzilla.xamarin.com
    MonoTouch.MobileDevice.MobileDeviceException: Invalid Disk Image Error (error: 0xe8000033)
    at MonoTouch.Installation.Device.MountDeveloperImage () [0x00000] in :0
    at MonoTouch.Installation.Installer.FindApplication (MonoTouch.Installation.Device d, System.String appId) [0x00000] in :0
    at MonoTouch.Installation.Installer+c__AnonStorey3.<>m__0 (MonoTouch.Installation.Device d) [0x00000] in :0

  • MartinRothschinkMartinRothschink Martin Rothschink DEMember ✭✭
  • BrendanZagaeskiBrendanZagaeski Brendan Zagaeski USForum Administrator, Xamarin Team Xamurai

    @MartinRothschink, that issue can happen if the Android SDK tools version is mismatched with the current installed version of Xamarin. There are reports of another cause of the issue too, though the precise conditions necessary to reproduce that second issue are not yet clear.

    I have added a post on that forum thread with additional details.

This discussion has been closed.