Beta Release: Xamarin.iOS 9.0, iOS 9.0 upstream release

BrendanZagaeskiBrendanZagaeski USForum Administrator, Xamarin Team Xamurai
edited September 2015 in Xamarin.iOS

This thread has now been closed to direct all further updates about this release onto the new Stable release thread:

http://forums.xamarin.com/discussion/50971/stable-release-xamarin-ios-9-0-ios-9-0-upstream-release/p1


Visual Studio Extension

  • Xamarin.VisualStudio_3.11.1439.msi (bc486a5)

Mac

  • monotouch-9.0.1.9.pkg (da2cabb)

Reason for release: Updated SDK bindings and compatibility support for upstream iOS 9.0 and Xcode 7.0 GM versions.

Release notes: http://developer.xamarin.com/releases/ios/xamarin.ios_9/xamarin.ios_9.0/

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

NOTE: This is a feature release that contains a large number of changes compared to the current Stable version. In addition to support for iOS 9 and Xcode 7, it contains larger changes to the existing parts of Xamarin.iOS than any of the recent smaller service releases. On top of that, as with any Xamarin version that is published in response to an upstream release, these builds have primarily been tested against preview versions of the upstream components. As usual, these "Beta" versions have not yet completed the full suite of tests by the Xamarin QA team. Customer reports of any regressions (or bugs that are incorrectly marked fixed) are still much appreciated, even if the problem would have eventually been caught during the full QA testing process.

Previous versions, downgrading

You can downgrade back to the current Stable version by switching updater channels.

Older versions (from before April 29)

If needed, you can 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 Stable release thread for the older downgrade links.

Guidelines for this thread

  1. This first post will be updated regularly.

  2. The goal of this thread is to help answer "what might break if I update to this release?"

  3. If you find a new problem that is specific to this version:

    a. If you can share some specific error messages or can reproduce the problem consistently, please email the information you have so far to contact+xamarinios9.0@xamarin.com.

    b. If you only have a general description of the problem, you can post it directly on this forum thread so that hopefully a member of the Xamarin team or another user will recognize it and be able to help fill in some details.

Important known issues in the Beta builds

  • Non-public Bug 33984 - [XamarinVS] [iOS] Building an iOS class library that uses string resources fails with an error similar to "Error reading resource ... MyStrings.strings ... The system cannot find the path specified."

  • Non-public Bug 33819 - [XamarinVS] [iOS] Attempting to stop a WatchKit app in Glance mode does not stop the app.

  • Non-public Bug 31424 - [Xamarin Studio] [iOS] Classic API on Mac only: "Resource rules files "" not found". Partial workaround: Enable "Project Options -> General -> Use MSBuild build engine (unsupported for this project type)" and clean and rebuild the project. (The MSBuild build engine does now work for many Classic API projects.)

  • Non-public Bug 33880 - [Upstream] [iOS] Attempting to stop a WatchKit app in Notification mode does not stop the app. (The same problem occurs with an Objective-C or Swift app deployed from Xcode, so this is an upstream issue.)

  • Non-public Bug 33888 - [XamarinVS] [iOS] VS 2010 only. Opening a second Xamarin.iOS solution when already connected to the build host causes VS to disconnect from the build host. The user must refresh the connection manually via the "Refresh build server info" button.

New issues in the Beta builds reported by users

  • Forum discussion 50492 - [Xamarin Studio] [iOS] "/Library/Frameworks/Mono.framework/External/xbuild/Xamarin/iOS/Xamarin.iOS.Common.targets: error : Error executing task DetectSdkLocations: Task does not have property "TargetFrameworkIdentifier" defined". Possible workarounds: Reboot the Mac. If that doesn't work, try reinstalling Xamarin.iOS.

Fixes for known issues from recent release threads

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

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

  • 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.

Remaining known issues from Cycle 5 – Service Release 2

  • 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. The results to date suggest that it is a bug in Visual Studio itself rather than in the Xamarin extensions. For example, it appears to be possible to hit the problem using a Windows Phone project, with no Xamarin involvement at all. The recent changes to the Xamarin "Clean project" process to properly remove stale files might have caused this to become easier to hit with Xamarin projects. In any case, it is still under investigation.

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.


EDIT Sep 11: XamarinVS installer now available. Add forum discussion 50492.
EDIT Sep 14: Remove iOS Bug 33853 (fixed). Relabel iOS Bug 33880 as upstream. Add XamarinVS.iOS Bug 33884.
EDIT Sep 16: Update for new builds. Add Mac-only iOS Bug 31424. Remove XamarinVS.iOS Bug 33884 (fixed). Add XamarinVS.iOS bugs 33984 and 33819.

Posts

  • I get this error when I try and submit to itunesConnect - is this a Xamarin issue or iTunes?

    Invalid sdk value. The value provided for the sdk portion of LC_VERSION_MIN_IPHONEOS in Challenge.iOS.app/Challenge.iOS is 9.0 which is greater than the maximum allowed value of 8.4.
    Invalid Toolchain. New apps and app updates must be built with the public (GM) versions of Xcode 6 or later, and iOS 8 SDK or later. Don't submit apps built with beta software

  • DaveDunkinDaveDunkin USMember, Beta

    What are the changes from 9.0.0.32 to 9.0.0.40?

  • BrendanZagaeskiBrendanZagaeski USForum Administrator, Xamarin Team Xamurai

    YBMDeveloper, here's an Apple forum discussion (thanks to Google) that might be informative: https://forums.developer.apple.com/thread/17063.

  • BrendanZagaeskiBrendanZagaeski USForum Administrator, Xamarin Team Xamurai
    edited September 2015

    DaveDunkin, by default new release notes are only provided for Beta versions if the subversion changes (the 3rd number in the version).

    For details about differences between builds (the 4th number), you can email the Support Team.

    Since the change set is quite small for the particular case of 9.0.0.32 to 9.0.0.40, I'll just list it here:

    • Update for XamarinVS build host compatibility.
    • [HealthKit] Remove generics in NSSet arguments for GetPredicateForObjectsFromSources(NSSet sources) and GetPredicateForObjects(NSSet objectUuids).
    • Fix "Wrapper type 'UIKit.UIViewControllerPreviewing' is missing its native ObjectiveC class 'UIViewControllerPreviewing'."
    • Fix "Wrapper type 'UIKit.UIPreviewActionItem' is missing its native ObjectiveC class 'UIPreviewActionItem'."
    • Fix non-public Bug 33853 that caused WatchKit apps to crash on launch.

    (I forgot to remove Bug 33853 from the first post in the thread when I updated it on Friday. I have corrected that now.)

  • FrankBuckleyFrankBuckley GBUniversity ✭✭

    I am seeing a couple of thousand warnings similar to the following after updating to 9.0.0.40:

    /dsedev/src/dse-apps/DSE/Apps/SeeAndLearn/Speech/SayingWords/App.iOS/MTOUCH: Warning MT5203: Native linking warning: warning: object file (/dsedev/src/dse-apps/DSE/Apps/SeeAndLearn/Speech/SayingWords/App.iOS/obj/iPhone/Release/mtouch-cache/libRaygun4iOS.a(protobuf-c.o)) was built for newer iOS version (8.3) than being linked (7.0) (MT5203) (SayingWords.App.iOS)

    All apps in the solution build OK despite all the warnings and (so far) seem to work OK.

    Any ideas?

  • Oleg_DemchenkoOleg_Demchenko RUMember ✭✭

    Hi Frank, it appears to be a known issue in Xcode 7/7.1. To separate false warnings from real warnings you can provide additional "-w" option to the linker in mtouch arguments in project settings.

  • SylvainGravelSylvainGravel CAMember ✭✭
    edited September 2015

    My install failed and my registry still points to the old version (3.11.458) but the DLLs have been deleted. So VS cannot load my iOS project. I fixed this partially by re-running the VS extension installer (3.11.1439) but can't find the iOS 9 installer. Can anybody help (apart from changing all the registry keys to point to the new version)?

    Thanks

  • SylvainGravelSylvainGravel CAMember ✭✭

    I copied all my 1439 files to the 458 build install folder and everything works. However, there seems to be a lot of stuff that's missing like VS toolbars and menus. I guess it'll get fixed with the next stable release... Hopefully!

  • NealCulinerNealCuliner USBeta ✭✭✭

    Over 36,000 warnings which seems the same as @FrankBuckley reported.

  • Oleg_DemchenkoOleg_Demchenko RUMember ✭✭

    Few important notes about Xcode 7/7.1 linker warnings. If you want to set the minimum version of your app to iOS X then you should not be linking libraries compiled targeting newer version of iOS X+1. Otherwise there is a risk running into compatibility issues.

    There are two possible ways to fix warnings:
    1) Set application target to iOS X+1. But it make sense only if application really use API features supported by iOS X+1.
    2) Native library should be recompiled for iOS X.

    Frank, exactly in your case I think you should contact guys from Raygun or use version of libRaygun4iOS.a compiled targeting iOS 7.0. Probably https://raygun.io/forums/thread/24606 is the right place to poke them.

    Apologies for false information in my previous comment, warnings look correct but they were not reported in previous versions of Xcode.

  • BrendanZagaeskiBrendanZagaeski USForum Administrator, Xamarin Team Xamurai

    This thread has now been closed to direct all further updates about this release onto the new Stable release thread:

    http://forums.xamarin.com/discussion/50971/stable-release-xamarin-ios-9-0-ios-9-0-upstream-release/p1

This discussion has been closed.