Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[xtro] Report missing-protocol-conformance when protocols are defined… #3187

Merged
merged 18 commits into from
Jan 18, 2018
Merged
Changes from 1 commit
Commits
Show all changes
18 commits
Select commit Hold shift + click to select a range
d9c3c68
[xtro] Report missing-protocol-conformance when protocols are defined…
VincentDondain Jan 8, 2018
d9ce8eb
Fix indentation
VincentDondain Jan 10, 2018
0f00cb1
Fix encodeWithCoder not found
VincentDondain Jan 10, 2018
b641107
Remove Internal check from VisitObjCCategoryDecl and VisitObjCInterfa…
VincentDondain Jan 10, 2018
75e4646
Ignore NSSecureCoding missing-protocol-conformance (not available on …
VincentDondain Jan 10, 2018
a391212
Fix GKSavedGameListener
VincentDondain Jan 10, 2018
9b80dc8
Ignore previewItemTitle failure (normal since it's optional)
VincentDondain Jan 10, 2018
90d1d8e
Only skip UIStateRestoring for subclasses of UIViewController
VincentDondain Jan 10, 2018
6996ac0
Ignore UIStateRestoring test on watchOS (UIViewController not available)
VincentDondain Jan 11, 2018
6268870
Properly implement NSSecureCoding for MKMapItem (ignore encodeWithCod…
VincentDondain Jan 11, 2018
ac6346e
Cleanup MapKit.ignore files
VincentDondain Jan 11, 2018
cd007c3
Fix newline noise
VincentDondain Jan 11, 2018
57ef7c4
Remove protocol conformances that generated wrong availability attrib…
VincentDondain Jan 12, 2018
fc3aee5
Avoid new virtual or virtual when adding protocol conformance
VincentDondain Jan 12, 2018
e942535
Removed objectRestorationClass and restorationParent (optional)
VincentDondain Jan 12, 2018
4fe8324
Fix indentation in webkit
VincentDondain Jan 18, 2018
94bb764
Add XAMCORE_4_0 to previewItemTitle case
VincentDondain Jan 18, 2018
0f89482
Revert "Fix GKSavedGameListener"
VincentDondain Jan 18, 2018
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 6 additions & 3 deletions src/mapkit.cs
Original file line number Diff line number Diff line change
Expand Up @@ -280,11 +280,14 @@ interface MKDirectionsRequest {
[TV (9,2)]
[Mac (10,9, onlyOn64 : true)]
interface MKMapItem
#if !MONOMAC
: NSSecureCoding
#if IOS // #if TARGET_OS_IOS
, NSItemProviderReading, NSItemProviderWriting
: NSItemProviderReading, NSItemProviderWriting
#if ARCH_64 // [FAIL] Selector not found for MapKit.MKMapItem : encodeWithCoder: on 32-bit iOS
, NSSecureCoding
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We can't do that in public API, e.g. if 32bits and 64bits signatures are different then this leaks into user code
It also becomes impossible (or at least harder) to de-duplicate the platform assemblies (for fat apps)

This needs to be considered a OS version change (which it is) e.g. when a new version of iOS adds conformance then we add the API (and fix up introspection not to report it for older versions)

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

My guess is that it's actually tied to the OS version (it works in iOS 11 (64-bit only), but not iOS 10.3 (where we run our 32-bit tests))

Copy link
Contributor Author

@VincentDondain VincentDondain Jan 11, 2018

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

That explains why I couldn't find many ARCH_64, thought I was being clever here :P

But yes I now remember how we usually handle NSSecureCoding, I was distracted.

#endif
#endif
#if WATCH || TVOS || MONOMAC && ARCH_64
: NSSecureCoding
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

same

#endif
{
[Export ("placemark", ArgumentSemantic.Retain)]
Expand Down