locked
When can we expect fixes for El Capitan to arrive on Xamarin.Mac? RRS feed

  • Question

  • User73089 posted

    As many users are finding since yesterday, all Xamarin.Mac applications crash upon start when running on the El Capitan beta. The issue is already fixed in mono, as it can be seen in this commit, so I don't know if it's worth to open a new issue in the Bugzilla.

    Given that this is a public beta, it's relatively stable, increases performance relatively to 10.10 and most applications are working correctly, a lot of users are already upgrading (so many that Apple's beta servers have been down for most of the day due to overload). In my case, today I got around 200 users telling me that my applications are broken on El Capitan - in less than 24 hours since the beta was released! - and I'd guess other developers are on the same situation. I'd really like Xamarin to give a high priority to this problem and fix it as soon as possible, even when it's happening on a beta OS release. Most end users won't care or understand the issue and will blame us, the developers.

    So, can we expect a hotfix release to be issued soon or should I start working on finding a workaround on my own?

    Friday, July 10, 2015 10:30 PM

All replies

  • User35201 posted

    @AlbertoGarcia Unfortunately, El Capitan caused more than a few issues with changes they made under the hood. That TLS fix was one, but not the only one. To give a short concrete example, we've had to make multiple changes due to the new "rootless" feature.

    We realize that Xamarin.Mac support is important, and are working to get things ready for a preview release. I hope to have at least a more concrete timetable to give sometime next week.

    Saturday, July 11, 2015 4:34 AM
  • User73089 posted

    @ChrisHamons To my knowledge, the "rootless" change might affect your SDK (since it installs quite a bit of stuff into the newly protected folders), but not the applications built with Xamarin.Mac that don't write to those folders.

    What I'm asking you is to prioritise the latter, since it's literally a 4 line patch that can easily be applied to rev c99aa0c (the commit on which the latest mono runtime in the stable channel is based on), since the only affected file wasn't changed since June 2013 (see history here https://github.com/mono/mono/commits/96a96d2ef0a88d1a9289a773647551ac04b8c4da/mono/utils/mach-support-x86.c). I think it's pretty reasonable to ask for this to be fixed ASAP, since there are a lot of users upgrading to the public beta.

    If you don't have plans to do prioritise this problem or the fix is going to take several weeks to arrive, please at least be clear about it, so I can start working on a fix on my own.

    Saturday, July 11, 2015 9:05 AM
  • User73089 posted

    @ChrisHamons I went ahead and fixed it on my own.

    To others facing this same problem, don't try building a mono runtime pkg from the github sources if you're targeting amd64, since the open source runtime for mach only covers i386. Instead, I opted for patching the entry binary (e.g. MyApp.app/Contents/MacOS/MyApp) to add an additional offset check for the 0x100 value.

    At the end of monomachinit there are some instructions for setting up the error message and the infinite loop when the tls offset can't be found. Just overwrite that section with the additional check and you're good to go.

    Saturday, July 11, 2015 9:04 PM
  • User35201 posted

    @AlbertoGarcia Yes, you are correct, you can break down 10.11 support into to buckets:

    • Runtime support (able to run built packages on 10.11)
    • Development support (about to develop packages on 10.11).

    We are not blocking the first on the second. I've been speaking to the runtime lead on getting a runtime fix out as soon as possible, but things are a bit trickier than just:

    git cherry-pick 96a96d2ef0a88d1a9289a773647551ac04b8c4da

    and rebuild, or we would indeed have a built out already. :)

    I'm glad you can hack around it for now. Once I have more details to announce, I'll post them on the forum.

    Monday, July 13, 2015 2:23 PM
  • User35201 posted

    @AlbertoGarcia - See http://forums.xamarin.com/discussion/45683/xamarin-mac-10-11-fix-preview

    Tuesday, July 14, 2015 7:23 PM