* [IntentsUI] Update bindings to Xcode 10 Beta 1
This commit also adds a strong dictionary version to
INPlayMediaIntentResponse.WeakNowPlayingInfo.
* Implement feedback
* [generator] Properly set the IsDirectBinding value.
Properly set the IsDirectBinding value to false for models and synthetic types.
This also means we can now stop excluding models when testing if the
IsDirectBinding value is correct.
Also set IsDirectBinding value to true for sealed wrapper types, since those
will always be direct bindings since they can't be subclassed.
https://gist.github.com/rolfbjarne/24028bf944db848fed4083c460d0ec71
* [tests] Add introspection exclusion for XM.
* [introspection] Add back exclusions for Classic, since we can't modify/fix Classic assemblies anymore.
* [generator] Print the correct protocol name with the protocol attribute.
Fixes this test failure:
[FAIL] Foundation.NSUrlDownloadDelegate : ConformsToProtocol(null) failed
because our binding code claimed that our `NSUrlDownloadDelegate` class
implemented the `NSUrlDownloadDelegate` protocol, but since the
`NSUrlDownloadDelegate` protocol doesn't exist (it's `NSURLDownloadDelegate` -
different case), we'd verify against a null protocol (and return true from
`ConformsToProtocol(null)`, which would fail the test).
* [xtro] Only treat interfaces as protocols.
Unfortunately we add [Protocol] to [Model]s as well as on interfaces, but we
must not process those in xtro, since they don't correspond with the actual protocol.
* [MetalPerformanceShaders] Activate bindings for Xamarin.Mac and add n… (#2816)
* [MetalPerformaceShaders] Several MPSCnnKernel properties should be readonly (#2938)
The subclasses versions of the properties need Override, cannot be removed since it would break visibility for iOS 10
* Remove some [Model] attributes that sholdn't be needed
* Fix introspection test crashes
* More introspection fixes
* NN does not need to be PascalCased
Remove unneeded Models and BaseTypes
* PR Whitespace fixes and renamings
* Paste fail
* More fixes from PR comments
* [MPS] Adds new intro test, fixes ctors and xtro output
* Removes duplicated availability attributes.
* Removes obsoleted API from macOS since mps is new to it.
* Fixes xtro output.
* Adds missing API.
* Fixes parameterless ctors, some of them do not really work, found
by our new intro test and disabled the one that seem to not make
sense due to the presence of DesignatedInitializers.
* Fixes a selector typo.
* Adds new `ShouldNotExposeDefaultCtorTest` to intro.
ShouldNotExposeDefaultCtorTest
==============================
This test checks for types with a parameterless ctor that are subclasses
of `NSObject` and then cheks if the BaseType of said objects also expose
a parameterless ctor (all in .NET land), if this is not the case it reports
them and so they can manually audited. Also this test has the ability to
print alloc/init ObjC code by setting `genObjCTestCode` to `true` so you can
take this code into an Xcode project and easily tests the ctors.
It seems that xtro (sharpie) does not have a complete picture of when a ctor
must be exposed hence the hability to generate this code and manually test.
Right now this test is just enabled for MPS since it is the scope of this PR.
In the future it should be enabled for all other frameworks and the output be
manually audited.
* [MPS] Fixes premature collection possible in bindings (bug 59547) and implements feedback.
https://bugzilla.xamarin.com/show_bug.cgi?id=59547
* Fixes premature collection possible in bindings im MPSKernel.cs
* Fixes MPSImageHistogramTest from using deprecated API.
* Removes renamed selectors and typos from ApiSelectorTest and ApiTypoTest.
* [MPS] Reenable Copy API and DesignatedInitializer xtro feedback
* Implement more feedback
* More feedback
* [Test][Intro] Fix introspection test on API changes for Xcode 9 Beta 1
* [introspection] Fix feedback from PR and bot tests
Removed XAMCORE_4_0 checks from our api definition, and added
a file with stubs for all of them instead. Cleaner binding file
and easier to remove in the future
Fixed introspection also for mac by moving some check into base test definition
* [CoreImage] Add CoreImage stubs so introspection test are happy
These need to be manually reviewed by whoever takes CoreImage framework
tracked in bugzilla so we do not forget
* Do the same API cleanup as in NSUnit
* [test][introspection] Enable MtouchNoSymbolStrip for device builds in order to avoid linking symbols meeded by test (#2196)
Rolf Kvinge [8:59 AM]
@dalexsoto the fix is to not strip the executable please PR that
(it should probably go into master as well). This probably started
happening when Jeff implemented support for stripping debug builds
(previously the setting was ignored)
* [foundation] Provide better messages
* [CoreImage] Fix Availability of CIEdgePreserveUpsampleFilter
* Enable default constructor on NEPacketTunnelProvider
* NEPacketTunnelNetworkSettings needs the same constructor as parent class
* skip NEPacketTunnelProvider in ctor init test
From @VincentDondain
`NEPacketTunnelProvider *a = [[NEPacketTunnelProvider alloc] init];` return `nil` without these entitlements:
```
<key>com.apple.developer.networking.networkextension</key>
<array>
<string>packet-tunnel-provider</string>
<string>app-proxy-provider</string>
<string>content-filter-provider</string>
</array>
```
Note: you're also supposed to call it from its "extension process" otherwise you get: `NEProvider objects cannot be instantiated from non-extension processes.`
Hence from an iOS App Extension that has the `com.apple.networkextension.packet-tunnel` extension point.
Fix a false positive when a .ctor is exposed with paramaters using a
subclass of what the designated initializer is exposing.
reference:
[FAIL] UIKit.UIGraphicsPdfRenderer should re-expose UIGraphicsRenderer::.ctor(CGRect, UIGraphicsRendererFormat)
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)