* [cloudkit] Some fixes after auditing
* Fix and simplify CKUserIdentityLookupInfo creation from email / phone#
* Call InitializeHandle to "handle" null handles (and throw instead of
crashing)
* Reduce internal metadata (and code) to create them
* CKNotificationType: Remove extra [Watch (3,0)] on member (all new in 3.0)
* CKSubscriptionType: Fix inconsistency in wrt watchOS (type not available)
* CKRecord: Remove `Record` prefix from new fields (consistency)
* Fix build
The generator does not currently offer flexibility for constraints.
That's made harder since binding files uses attributes, [BaseType], to
define the type hierarchy.
Here we cheat as we can add, non-decorated, interfaces in the bindings
that won't generate anything - they are only to please the compiler or,
in this case, it let us fool the generator into producing the code we
need (because it does not consider the namespace)
Based on Alex elegant attempt to fix this in:
https://github.com/xamarin/xamarin-macios/pull/780
Generated code diff:
https://gist.github.com/spouliot/eeef3491a6e08d9344a19e9bbc632848
* [runtime] Use printf on watchOS, NSLog doesn't shown up (by default).
* [runtime] Use a wrapper function for logging.
So that we can chose between printf and NSLog at runtime,
depending on where we're running.
Due to the deprecation of classic we needed to provide a better and single error message
rather than the countless msbuild errors you'd have because you'd be missing monotouch.dll
* Migrate MySingleView & MyLibrary to Unified
* [AVFundation] Add TV OS missing apis.
* As per review, added missing constructor and renamed method.
* As per review, add 'Get' verb to method.
* As per review bump tv os attr to 10.0
The watchOS device has limited networking support; in particular
it does not allow inbound/output network connections using 'bind'
(kernel-level sandbox restrictions).
This means that we can't use BSD sockets to connect to the debugger
in the IDE on the desktop. Instead we create an http tunnel that
knows how to convert socket send/recv data into http requests on
both sides.
https://bugzilla.xamarin.com/show_bug.cgi?id=41554
Launching a watchOS extension on device with the managed debugger
attached is slow, which means that the launch watchdog will kick in
and kill the app before it has launched.
So we attach the native debugger as well, which prevents the launch
watchdog from killing the app. Incidentally it also makes watchOS
not background the app.
We're using private API to determine whether a native debugger is
attached, but it's only in debug code, and as such would not be
included in release builds for customer apps. Also the code is
currently limited to watchOS since it's not needed on other
platforms for now.
* [healthkit] Change binding for HKDetailedCdaErrors
* Hide [Fields]
* Easier access to the information from NSError
* Unit test (mostly to make sure of the returned type)
* [healthkit] Remove HKDetailedCDAValidationErrorKey from watchOS profile
It's used from an NSError returned from an API that is not available in
watchOS.
When using WrapAttribute on methods generator still tries to create
signatures to interop with ObjC which is incorrect since the pruppose
of Wrap attribute is to create nicer signatures on top of an "ugly"
API so user gets a delightful coding experience.
When generator tries to create a signature for a decorated method with
WrapAttribute to interop with objc and the signature contains a NET Type
(i.e System.Type) it throws a BindingException but it was swallowed
by a try/catch that only printed a not so useful description of the
the problem. Now it throws the actual BindingException when it really
does not know how to create a signature to interop with ObjC on a
*not* decorated method with WrapAttribute.
Internalize VSErrorInfoKeys by adding a [StrongDictionary] on it
NSError err = ...;
var new VSErrorInfo (err.UserInfo);
Console.WriteLine (SamlResponse);
Internalize VSCheckAccessOptionKeys as it already has a [StrongDictionary]
Methods that override a virtual method that doesn't have an `[Export]`
attribute will not be called by Objective-C, so make those methods non-virtual
to prevent confusion.
Remove EAWiFiUnconfiguredAccessoryBrowser from the tvOS API,
because it's unusable (no way to create instances, no static methods,
not even any usable instance methods).
* [msbuild] Move detection of network configuration to a separate task.
* [msbuild] Set NSAllowArbitraryLoads when debugging watchOS apps.
The only way to have reliable http connections from the watchOS 2 device
to the mac is to set NSAllowArbitraryLoads.
See also: https://forums.developer.apple.com/thread/6205
Note: using [Wrap] on the constructors generated incorrect (and non
compilable) code. Ideally this will be moved into the generator in
a future release and we could make the `bool?` properties virtual
then (it's not a breaking change to do so)