* [xharness] Make sure generated mac projects have different project guids.
* [introspection] Change the project guid so that it doesn't match the dontlink-mac project guid.
* [tests] Add all test project variations to tests-mac.sln.
* [xharness] Fix else condition.
* This framework was a private framework before iOS 11.
This framework was a private framework before iOS 11, yet the headers claim
many API were introduced in iOS 10.
So take account of this difference by using the private framework location in
iOS 10.3 or earlier.
Testing these API from Xcode works fine when run on an iOS 10.3 device, and
I've confirmed the IOSurface framework is loaded from the private frameworks
path on older devices (and when built using Xcode 9 and linked with the public
framework path).
* Disable code to make IOSurface work on iOS 10.
Disable the code to make IOSurface work on iOS 10, since it may be rejected by
the App Store.
This also means adjusting the availability attributes, so that the
introspection tests pass (and to document that technically these API won't
work when used with Xamarin.iOS in iOS 10).
I've filed bug #[59201][1] to keep track of this, maybe we can re-enable this later.
[1]: https://bugzilla.xamarin.com/show_bug.cgi?id=59201
* Update AppKit bindings based on radar 33271241 results
- The header comment was updated to note it was NSSliderTouchBarItem view that has the protocol
* Remove NSUserInterfaceCompression where not listed in header
* Move NSTouch ctor to code-behind and obsolete
* Remove XAMCORE_4_0 check for NSTouch DisableDefaultCtor
* Add NSTouch.cs to frameworks.sources
* Skip NSSpellCheckerCanidates in typo test
The latest Sierra had a few surprises:
* CITextFeature is now 64bits only;
* The MediaPlayer framework is now 64bits only [1]
Both made the classic tests fails for XM.
[1] https://bugzilla.xamarin.com/show_bug.cgi?id=52065
* [XM] Add 32-bit variants of apitest and introspection and fix bindings
- Previous to this we were only running 64-bit tests, which caused us
to make mistakes
* Fix cherry-pick to build
* Correctly skip jenkins XM45 when asked
* Fix logic
* Run 32-bit tests on Jenkins
* Fix Jenkins grouping by respecting -32 suffix
* More fixing of jenkins. This time make enum for 32-bit types
This reverts commit abb0449b6c.
_Seriously_ this time. Here's the story:
- TouchBar support was breaking tests in master, even after my static
registrar fix in 6422000c27
- However, the fix wasn't broad enough, because the TouchBar APIs were
in Xcode 8.1 as well.
- Confusion on my end (You need latest macOS but not latest Xcode) and
confusion on others (since there were changes in Xcode 8.2 to touchbar,
but they were subtractive, caused us to think this needed to go in
Xcode 8.2
Runtime
- Added support for Vector2d, Vector3d and Vector4d SIMD types
- Added support for GKBox, GKQuad and GKTriangle SIMD types
GameplayKit
- Apple introduced GKQuadTreeNode and GKQuadTree in Xcode 7.1 and
removed those types in a later Xcode (7.2?) but we kept them around.
Now apple introduced again both types but renamed them to GKQuadtreeNode
and GKQuadtree (lowercase t), this is a breaking change and since we do
care about binary compat we are just changing the registration name and
keeping the same managed name deprecating old methods and introducing
the new ones.
- Added tests for new SIMD types
* [XM] AppKit Xcode8 Beta3 changes
* [XM] Update intents.cs with macOS attributes
* [XM] Fix bindings caught by introspection test
* [XM] Fix classic introspection tests by marking safariservices as 64-bit only
* [XM] Async upgrade
* [XM] Fix apitest on classic by noting IntentsLibrary is 64-bit only
- https://trello.com/c/9JANewiM
- My analysis was incorrect, the binding was wrong and the test caught it.
- If you have [Model] you must have [BaseType], and if you don't want [Model] you must not use [BaseType]
[FAIL] Selector not found for AppKit.NSCell : accessibilityNotifiesWhenDestroyed
[FAIL] Selector not found for AppKit.NSView : accessibilityNotifiesWhenDestroyed
Location changed and the duplicated files were removed (but I missed this
change on dontlink-mac)
Those tests needs to be run with the linker disabled since they use
reflection for most of their work.
The original dontlink (for linker tests) was becoming too large in
some configuration (e.g. tvOS release with bitcode) but this was
due to other BCL assemblies (not the introspection tests)