-
Notifications
You must be signed in to change notification settings - Fork 514
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
[arkit] Update for Xcode 9 beta 5 - Part 2 #2505
Conversation
VincentDondain
commented
Aug 18, 2017
- Add last missing selector.
- Add tests for manual code.
Build failure |
Vector3* addr = (Vector3*)gch.AddrOfPinnedObject (); | ||
return (IntPtr)addr; | ||
} finally { | ||
gch.Free (); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is not safe: you're freeing the data before returning a pointer to it to the caller.
You need to store the vector and the GCHandle in an instance variable, and free it in Dispose
.
ulong* addr = (ulong*)gch.AddrOfPinnedObject (); | ||
return (IntPtr)addr; | ||
} finally { | ||
gch.Free (); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Same: this is not safe.
protected unsafe override IntPtr GetRawPoints () | ||
{ | ||
vectorArray = new Vector3 [] { new Vector3 (1, 2, 3), new Vector3 (4, 5, 6) }; | ||
vectorArrayHandle = GCHandle.Alloc (vectorArray, GCHandleType.Pinned); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This leaks when GetRawPoints is called again, because it overwrites the previous GCHandle.
Build failure |
1 similar comment
Build failure |
// Copyright 2017 Microsoft. All rights reserved. | ||
// | ||
|
||
#if XAMCORE_2_0 && !__TVOS__ && !__WATCHOS__ && !MONOMAC |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
minor (no need to update) but #if XAMCORE_2_0 && __IOS__
should cover it
build |
Build failure |
2 similar comments
Build failure |
Build failure |
@MSylvia is aware of it, the Xcode beta 5 was deleted. Guess the beta 6 bump is coming soon anyway. |
build |
Build failure |
build |
Build failure |
The monotouchtest crash looks related to the new test:
|
Vector3 [] vectorArray; | ||
ulong [] identifiers; | ||
|
||
public ARPointCloudPoker () : base (IntPtr.Zero) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
^ that IntPtr.Zero
is not the way to subclass a native type and (likely) why the test failed
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@spouliot as we discussed, IntPtr.Zero
wasn't the cause of the issue and we're not calling Objective-C code so a handle is not needed. Can you approve this PR please?
- Add last missing selector. - Add tests for manual code.
5c5332b
to
62bbdd9
Compare
Build failure |
* [FileProvider] Add Xcode 9 Beta 1, 2 & 3 Bindings (#2279) * [FileProvider] Add Xcode 9 Beta 1 Bindings * Better naming * Feedback not related to BindAs * [FileProvider] Removes BindAs, add manual code for it and updated to Beta 3 * [FileProvider] Implement feedback * [CoreSpotlight] Updated spotlight bindings for xcode 9 beta 3. (#2193) Updated spotlight bindings for xcode 9 beta 3. * Fix warning caused by duplicate (#2354) * [FileProviderUI] Add Xcode 9 Beta 1 to 3 bindings (#2356) * Bump to Xcode 9 beta 4 * [arkit] ARLightEstimate does not conform to NSCopying anymore (fix unit test) * [uikit] NSFileProviderExtension.ReparentItem got a new parameter in beta4 (fix unit test) * [coreimage] CIImageAccumulator init returns nil in beta 4 There's no header change to mention `init` is not allowed but it's not clear how this default initializer could be used. Also make public some other API to construct this type (outside of XM). It's not clear why there were `internal` as they are (at least now) part of the header files. * [photos] Add helpers when PHLivePhotoEditingOption/NSDictionary is null (to avoid ambiguous API) (#2360) Adding a strongly typed `PHLivePhotoEditingOption` (a strongly typed version of an `NSDictionary`) can cause a `CS0121` (call is ambiguous) since using a `null` argument is common (only one option exist so far). This PR adds overloads that makes the code nicer in such case, e.g. before Xcode9: > // null is used when no options are given > _foo.SaveLivePhoto (output, null, completion); current (Xcode 9) > // casting required to remove ambiguity with PHLivePhotoEditingOption > _foo.SaveLivePhoto (output, (NSDictionary)null, completion); with this PR > // no option, no argument > _foo.SaveLivePhoto (output, completion); The same applies to `PrepareLivePhotoForPlayback`. * [tests] Disable/tweak two tests that breaks on (almost) all Xcode updates Those tests were not added to validate xOS so just keep the parts that helps us (without constantly checking back the new break flavor) * Disable watchOS to check if this hides others issues * [mapkit] Update for beta 4 * [coredata] Update for beta 4 * [wkwebkit] Update for beta 4 Note: WKWindowFeatures.h is not compiled (part of the framework umbrella) and the `@interface WKWindowFeatures (WKPrivate)` sounds like it should not have been exposed (it's all fields starting with `_`) * [corelocation] Update for beta 4 * Revert "Disable watchOS to check if this hides others issues" This reverts commit fed2249fa43290a1956ab2fe0d48f83ab6db9711. * [tests] Disable watchOS from harness only. Workaround #58348 https://bugzilla.xamarin.com/show_bug.cgi?id=58348 * [spritekit] Update for beta 4 (#2368) * [arkit] Update for beta 4 (#2370) * Bump version before preview 3 (#2375) * [generator] Fix smart enum FieldAttribute LibraryName generation (#2376) This fix is needed by PDFKit because it is a remapped framework[0], the current code generates incorrect FieldAttribute on smart enums because it uses `fa.LibraryName` as first option and this causes remmaped frameworks have incorrect LibraryName generated for example if a Field uses `+CoreImage` as `LibraryName` the following incorrect code is generated: ``` [Field ("First", "+CoreImage")] internal unsafe static IntPtr First { get { fixed (IntPtr *storage = &values [0]) return Dlfcn.CachePointer (Libraries.+CoreImage.Handle, "First", storage); } } ``` [0]: https://github.com/xamarin/xamarin-macios/blob/f5956d6cc1eb5dfa7bab16628cf282d40237f64e/src/generator.cs#L5985 * [FinderSync] Update to beta 4 (#2377) * [ImageIO] Update to Xcode 9 (#2353) * [PhotosUI] Move macOS photosui bindings out of photos.cs into photosui.cs (#2358) * [quicklook] Update up to beta 4 (#2374) * [uikit] UIDragInteraction & UIDragInteractionDelegate (Xcode 9 b1,2,3) (#2357) * [safariservices] Update up to beta 4 (#2380) * [coreanimation] Update to beta 4 (#2382) Apple removed (mistake?) some API in beta 1. Filed as rdar 33590997 Internal tracking in https://trello.com/c/J8BDDUV9/86-33590997-coreanimation-quartzcore-api-removals * [storekit] Update up to beta 4 (#2379) * [CoreML] Update to Xcode 9 Beta 4 (#2387) * [uikit] UICollectionView/UITableView Drag & Drop (Xcode 9 b1,2,3 & 4) (#2355) * Update code after radar 32929318 and 32897776 are fixed in b4 (#2394) * [xcode9 CoreAudio] New definitions from Beta1 to Beta3 (#2359) * [Vision] Strongify VNBarcodeSymbology API, Fixes Bug 58512 (#2397) * [Vision] Strongify VNBarcodeSymbology API, Fixes Bug 58512 https://bugzilla.xamarin.com/show_bug.cgi?id=58512 Created strong API (VNBarcodeSymbology) on the following properties * VNDetectBarcodesRequest.SupportedSymbologies * VNDetectBarcodesRequest.Symbologies * VNBarcodeObservation.Symbology * Remove modern C# because classic can't do it 😡 * [mediaplayer] Update up to beta 4 (#2388) * [watchkit] Update to beta 4 (#2398) * Bump Visual Studio for Mac max version (#2408) * [coreimage] Add CIBarcodeDescriptor and enabled missing API for VNBarcodeObservation. Fix #58197 (#2411) https://bugzilla.xamarin.com/show_bug.cgi?id=58197 * [uikit] Update UIFocus related APIs to Xcode 9 beta 4 (#2407) * [uikit] Update UIFocus related APIs to Xcode 9 beta 4 * [uikit] Fixes based on comments * [coreimage] CIImageAccumulator API fixes. Fix #58349 (#2412) * Obsolete the default `init`; * XM exposed some older APIs using `int` instead of `CIFormat`. This is fixed and old APIs are obsoleted; * Both new & old APIs are now using `CIFormat` for both XI and XM. https://bugzilla.xamarin.com/show_bug.cgi?id=58349 * [uikit] UIText drag & drop - up to Xcode 9 beta 4 (#2410) * [uikit] UISplitView & UIStackView up to Xcode 9 beta 4 (#2425) * Bump XI/XM versions before preview 4 (#2422) * [PDFKit] Update to Xcode 9 Beta 1, 2, 3 & 4 (#2378) * [PDFKit] Update to Xcode 9 Beta 1, 2, 3 & 4 * [PDFKit] Implement feedback * [PDFKit] the forgotten enum * [PDFKit] More feedback * [PDFKit] Add Mac changes * Missing change * Fix test RectangleF VS CGRect * Pass -Wunguarded-availability-new to quiet a new clang warning (#2424) - https://bugzilla.xamarin.com/show_bug.cgi?id=58574 * [mtouch/mmp] Ignore warnings about unguarded code section with regards to availability. (#2441) * [monotouch-test] Remove workaround for fixed Apple bug. (#2445) * Bump to Xcode 9 beta 5. (#2447) * Bump to Xcode 9 beta 5. * [mmp] Disable the partial static registrar, because Apple's macOS SDK is broken. > In file included from Xamarin.Mac.registrar.mobile.i386.m:1: > In file included from ./Xamarin.Mac.registrar.mobile.i386.h:11: > /Applications/Xcode9-beta5.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVFoundation.h:88:9: fatal error: 'AVFoundation/AVRouteDetector.h' file not found https://bugzilla.xamarin.com/show_bug.cgi?id=58629 * [mmp] Fix partial static registrar removal. * [CallKit] Update to Xcode 9 beta 5. * [ARKit] ARPointCloud doesn't conform to NSCopying anymore in Xcode 9 beta 5. * [ARKit] Update to Xcode 9 beta 5 enough to make tests happy. * [CoreImage] Stub out new filters in Xcode 9 beta 5. * [tests][monotouch] Simplify some MDLMesh asserts since values change a lot between OS versions. * [mmp] Default to the dynamic registrar for release builds again, due to bug #58629. https://bugzilla.xamarin.com/show_bug.cgi?id=58629 * [tests][introspection] CXCall started implementing NSCopying without saying so in the headers. * Disable mmp static registrar tests due to 58629 for now * [quicklook] Update to beta 5 (#2450) * [photos] Update for beta 5 (#2452) Also update some existing enum members were added in beta 1 on macOS * [safariservices] Update for beta 5 (#2455) * [mediaplayer] Update to beta 5 (#2456) * [CoreLocation] Update Xcode 9 Beta 5 (#2453) * [CoreML] Update to Xcode 9 Beta 5 (#2454) * [Contacts] Update to Xcode 9 Beta 5 (#2451) * [Vision] Update to Xcode 9 Beta 5 (#2458) * [builds] Tell LLVM to stay away from newer macOS functions. (#2459) Fixes this build problem on Sierra: > ld: weak import of symbol '_futimens' not supported because of option: -no_weak_imports for architecture x86_64 This is a symbol that was (will be?) introduced in High Sierra. Interestingly this only occurs if the Xcode 8.X Command Line Tools haven't been manually installed. Because if the Xcode 8.X Command Line Tools are installed, this happens: 1. llvm's configure script detects that 'futimens' is not usable. 2. llvm's configure script detects that 'futimens' is not usable, because xcrun sets SDKROOT=/ when calling clang. a. When the SDKROOT variable is set, clang passes '-syslibroot /usr/lib' to ld. b. When ld gets '-syslibroot /usr/lib', ld looks in '/usr/lib' for a library that contains 'futimens' in the OS itself, and since we're on Sierra, that fails to link. c. So when llvm's configure script creates a test program that checks if 'futimens' is present, the program fails. This is correct, and makes llvm *not* use futimens. 3. xcrun sets SDKROOT=/ because /usr/share/current-os.sdk/Info.plist exists. If that file does not exist, then xcrun sets SDKROOT to Xcode9's macOS SDK (because that's what xcode-select reports). a. When SDKROOT is set to Xcode9's macOS SDK, the configure check for 'futimens' succeeds, because the macOS 10.13 SDK contains that function. b. llvm happily uses 'futimens', and then the final link fails because we're using a symbol not available on all target platforms. * [arkit] Update for Xcode 9 beta 5 - Part 1 (#2460) * [tests] The container app for watchOS tests should be 64-bit. (#2463) * [xharness] watchOS tests need to run in a clean environment. Works around #58348. (#2462) https://bugzilla.xamarin.com/show_bug.cgi?id=58348 * [xharness] It watchOS tests don't need to be clean anymore. Fixes #58348. (#2473) https://bugzilla.xamarin.com/show_bug.cgi?id=58348 * [uikit] UIView/UIScrollView/UIViewController up to Xcode 9 beta 5 (#2431) - Add NSDirectionalEdgeInsets type. - Includes DirectionalEdgeInsetsTest. * [AudioToolbox] Update bindings to Xcode 9 beta3 (not later changes). (#2294) * [xharness] Add a file existence check. (#2478) Fixes this exception: ``` Harness exception for 'introspection': System.IO.FileNotFoundException: Could not find file '/Users/builder/Library/Logs/CoreSimulator/27618A4A-7E49-4BAB-8F77-FA938CE88682/system.log'. File name: '/Users/builder/Library/Logs/CoreSimulator/27618A4A-7E49-4BAB-8F77-FA938CE88682/system.log' at System.IO.__Error.WinIOError (System.Int32 errorCode, System.String maybeFullPath) [0x00207] in /private/tmp/source-mono-2017-04/bockbuild-2017-04/profiles/mono-mac-xamarin/build-root/mono-x64/mcs/class/referencesource/mscorlib/system/io/__error.cs:188 at System.IO.FileInfo.get_Length () [0x00038] in /private/tmp/source-mono-2017-04/bockbuild-2017-04/profiles/mono-mac-xamarin/build-root/mono-x64/mcs/class/referencesource/mscorlib/system/io/fileinfo.cs:171 at xharness.CaptureLog.StopCapture () [0x00021] in /Users/builder/jenkins/workspace/xamarin-macios-pr-builder/tests/xharness/Log.cs:252 at (wrapper remoting-invoke-with-check) xharness.CaptureLog:StopCapture () at xharness.AppRunner+<RunAsync>d__68.MoveNext () [0x0127f] in /Users/builder/jenkins/workspace/xamarin-macios-pr-builder/tests/xharness/AppRunner.cs:642 --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x0000c] in /private/tmp/source-mono-2017-04/bockbuild-2017-04/profiles/mono-mac-xamarin/build-root/mono-x64/mcs/class/referencesource/mscorlib/system/runtime/exceptionservices/exceptionservicescommon.cs:151 at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Threading.Tasks.Task task) [0x00037] in /private/tmp/source-mono-2017-04/bockbuild-2017-04/profiles/mono-mac-xamarin/build-root/mono-x64/mcs/class/referencesource/mscorlib/system/runtime/compilerservices/TaskAwaiter.cs:187 at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Threading.Tasks.Task task) [0x00028] in /private/tmp/source-mono-2017-04/bockbuild-2017-04/profiles/mono-mac-xamarin/build-root/mono-x64/mcs/class/referencesource/mscorlib/system/runtime/compilerservices/TaskAwaiter.cs:156 at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd (System.Threading.Tasks.Task task) [0x00008] in /private/tmp/source-mono-2017-04/bockbuild-2017-04/profiles/mono-mac-xamarin/build-root/mono-x64/mcs/class/referencesource/mscorlib/system/runtime/compilerservices/TaskAwaiter.cs:128 at System.Runtime.CompilerServices.TaskAwaiter`1[TResult].GetResult () [0x00000] in /private/tmp/source-mono-2017-04/bockbuild-2017-04/profiles/mono-mac-xamarin/build-root/mono-x64/mcs/class/referencesource/mscorlib/system/runtime/compilerservices/TaskAwaiter.cs:357 at xharness.RunSimulatorTask+<RunTestAsync>d__7.MoveNext () [0x0029d] in /Users/builder/jenkins/workspace/xamarin-macios-pr-builder/tests/xharness/Jenkins.cs:2894 --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x0000c] in /private/tmp/source-mono-2017-04/bockbuild-2017-04/profiles/mono-mac-xamarin/build-root/mono-x64/mcs/class/referencesource/mscorlib/system/runtime/exceptionservices/exceptionservicescommon.cs:151 at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Threading.Tasks.Task task) [0x00037] in /private/tmp/source-mono-2017-04/bockbuild-2017-04/profiles/mono-mac-xamarin/build-root/mono-x64/mcs/class/referencesource/mscorlib/system/runtime/compilerservices/TaskAwaiter.cs:187 at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Threading.Tasks.Task task) [0x00028] in /private/tmp/source-mono-2017-04/bockbuild-2017-04/profiles/mono-mac-xamarin/build-root/mono-x64/mcs/class/referencesource/mscorlib/system/runtime/compilerservices/TaskAwaiter.cs:156 at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd (System.Threading.Tasks.Task task) [0x00008] in /private/tmp/source-mono-2017-04/bockbuild-2017-04/profiles/mono-mac-xamarin/build-root/mono-x64/mcs/class/referencesource/mscorlib/system/runtime/compilerservices/TaskAwaiter.cs:128 at System.Runtime.CompilerServices.TaskAwaiter.GetResult () [0x00000] in /private/tmp/source-mono-2017-04/bockbuild-2017-04/profiles/mono-mac-xamarin/build-root/mono-x64/mcs/class/referencesource/mscorlib/system/runtime/compilerservices/TaskAwaiter.cs:113 at xharness.RunTestTask+<ExecuteAsync>d__8.MoveNext () [0x0010b] in /Users/builder/jenkins/workspace/xamarin-macios-pr-builder/tests/xharness/Jenkins.cs:2538 --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x0000c] in /private/tmp/source-mono-2017-04/bockbuild-2017-04/profiles/mono-mac-xamarin/build-root/mono-x64/mcs/class/referencesource/mscorlib/system/runtime/exceptionservices/exceptionservicescommon.cs:151 at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Threading.Tasks.Task task) [0x00037] in /private/tmp/source-mono-2017-04/bockbuild-2017-04/profiles/mono-mac-xamarin/build-root/mono-x64/mcs/class/referencesource/mscorlib/system/runtime/compilerservices/TaskAwaiter.cs:187 at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Threading.Tasks.Task task) [0x00028] in /private/tmp/source-mono-2017-04/bockbuild-2017-04/profiles/mono-mac-xamarin/build-root/mono-x64/mcs/class/referencesource/mscorlib/system/runtime/compilerservices/TaskAwaiter.cs:156 at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd (System.Threading.Tasks.Task task) [0x00008] in /private/tmp/source-mono-2017-04/bockbuild-2017-04/profiles/mono-mac-xamarin/build-root/mono-x64/mcs/class/referencesource/mscorlib/system/runtime/compilerservices/TaskAwaiter.cs:128 at System.Runtime.CompilerServices.TaskAwaiter.GetResult () [0x00000] in /private/tmp/source-mono-2017-04/bockbuild-2017-04/profiles/mono-mac-xamarin/build-root/mono-x64/mcs/class/referencesource/mscorlib/system/runtime/compilerservices/TaskAwaiter.cs:113 at xharness.TestTask+<RunInternalAsync>d__87.MoveNext () [0x0010d] in /Users/builder/jenkins/workspace/xamarin-macios-pr-builder/tests/xharness/Jenkins.cs:1870 ``` I'm not sure how this can happen, but it has on the bots [1]. [1] https://jenkins.mono-project.com/job/xamarin-macios-pr-builder/4548/Test_Report/ * Bump versions for preview 5 (#2479) * [passkit] Update to beta 5 (#2481) * [tests] Remove workaround for radar #32688391. (#2486) * [replaykit] Update up to beta 5 (#2484) * Bump maccore to get fix for bug #55064. (#2487) * [apidiff] Update definition to new 10.12 (d15-3) stable release (#2490) * [SceneKit] basic work (#2483) * [coredata] Update to beta 5 (#2488) * [homekit] Update for Xcode 9 beta 5 (#2492) * [Foundation] Update for xcode9 (#2468) * [Intents] Add bindings for Xcode 9 Beta 1, 2, 3, 4 & 5 (#2493) * [Intents] Add bindings for Xcode 9 Beta 1, 2, 3, 4 & 5 * [Intents] Implement feedback * [Intents] Add a generic version for INInteraction.GetParameterValue * [Intents] Missing check * [Contacts] Add missing foundation NSItemProviderWriting protocol to CNContact (#2496) https://bugzilla.xamarin.com/show_bug.cgi?id=58203 This is available on all Contacts supported platforms ``` ./iPhoneOS.platform/Developer/SDKs/iPhoneOS11.0.sdk/System/Library/Frameworks/Contacts.framework/Headers/CNContact+NSItemProvider.h:@interface CNContact (NSItemProvider) <NSItemProviderReading, NSItemProviderWriting> ./iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.0.sdk/System/Library/Frameworks/Contacts.framework/Headers/CNContact+NSItemProvider.h:@interface CNContact (NSItemProvider) <NSItemProviderReading, NSItemProviderWriting> ./MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/Contacts.framework/Headers/CNContact+NSItemProvider.h:@interface CNContact (NSItemProvider) <NSItemProviderReading, NSItemProviderWriting> ./WatchOS.platform/Developer/SDKs/WatchOS4.0.sdk/System/Library/Frameworks/Contacts.framework/Headers/CNContact+NSItemProvider.h:@interface CNContact (NSItemProvider) <NSItemProviderReading, NSItemProviderWriting> ./WatchSimulator.platform/Developer/SDKs/WatchSimulator4.0.sdk/System/Library/Frameworks/Contacts.framework/Headers/CNContact+NSItemProvider.h:@interface CNContact (NSItemProvider) <NSItemProviderReading, NSItemProviderWriting> ``` * [IntentsUI] Update to Xcode 9 Beta 1 & 2 (No changes on later betas) (#2497) * [IntentsUI] Update to Xcode 9 Beta 1 & 2 (No changes on later betas) * [IntentsUI] Better use a delegate instead so we have named params * Bump versions before 6th preview (#2514) * [arkit] Add missing MarshalDirective to ARPlaneAnchor (#2517) - Fixes bug #58648: ARPlaneAnchor.Extent property seems incorrect but changes to correct value after Debug access (https://bugzilla.xamarin.com/show_bug.cgi?id=58648) * [xtro-sharpie] Fix a compiler warning. (#2516) Fixes these warnings: Runner.cs(197,5): warning CS0642: Possible mistaken empty statement Runner.cs(199,5): warning CS0642: Possible mistaken empty statement Runner.cs(201,5): warning CS0642: Possible mistaken empty statement Runner.cs(203,5): warning CS0642: Possible mistaken empty statement Runner.cs(205,5): warning CS0642: Possible mistaken empty statement * [uikit] Update for Xcode 9 beta 5 - Part 3 (#2511) - UIKeyCommand - UINavigationBar - UINavigationItem - UIPasteboard - UITableViewHeaderFooterView * [xtro-sharpie] Remove xtro-plugin and misc other fixes. (#2522) * [xtro-sharpie] Build with msbuild and be as quiet as requested when building. * [xtro-sharpie] Must run as a 64-bit process, since the required native libraries are 64-bit. * [xtro-sharpie] Add run configurations to the project file to ease debugging in the IDE. * [xtro-sharpie] Remove xtro-plugin and the related commands. This was needed when there wasn't a 64-bit mono, in order to run xtro-sharpie in a 64-bit process. Now there is a 64-bit mono, so it's not needed anymore. Also improve makefile targets a bit, to auto-build stuff when needed, by setting the right dependencies. * Bump Xcode 9 to beta 6 (#2519) Disable watchOS tests again It seems like the Carousel crash from beta 4 is back to haunt us. This was working fine with beta 5. * Backport d15-3 SR2 fixes (#2515) * [coredata] Update to beta 6 (#2528) This seems to only revert some nullability changes from beta 5. * [coreml] Update to beta 6 (#2531) Fix our rdar 33643011 where additional setters were added in the headers but did not exists. * [videosubscriberaccount] Update to beta 6 (#2533) Only b1 and b2 introduced some additions/changes * [uikit] Update for Xcode 9 beta 6 - Part 4 (#2527) The following headers are now up to date: - UICollectionViewFlowLayout.h - UIDocumentPickerViewController.h - UIFontDescriptor.h - UIImage.h - UIImageView.h - UIImagePickerController.h * [xharness] Re-enable the watchOS tests. (#2534) It works fine for me locally, so let's see what Jenkins says. * [macos] Add new APIs in CoreWlan from Xcode9b3 (#2525) * Update AppKit bindings based on radar 33271241 results (#2518) * 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 * [vision] Update to beta 6 (#2532) Removal of some deprecated (during beta) `init*` selectors. Also sync the versions that were inlined in subclasses - the old ones were not removed and the new ones were not added. * [xtro-sharpie] Many methods don't have selectors in Clang's API, so default to the name if no selector. (#2523) This makes a few more unclassified entries show up (mostly missing designated initializers): https://gist.github.com/rolfbjarne/07aa20f9b50b75bf3e69ac6a825e873a * [macos] Add ExternalAccessory APIs from xcode9 (#2526) * [58851] Disable NSMenuView in AllItemsWithNSMenuShouldAllowNull (#2504) * [arkit] Update for Xcode 9 beta 5 - Part 2 (#2505) - Add last missing selector. - Add tests for manual code. * [monotouch-test] Disable FontDescriptorTest.WithFeature (#2537) Disabled because it looks like the tvOS font we use: "Gujarati Sangam MN" does not have rare ligatures anymore (and the entire test is based on it). Before getting an actual fix for that, let's disable the test so it doesn't break all current builds. See: https://bugzilla.xamarin.com/show_bug.cgi?id=58929 * [xtro-sharpie] Teach xtro-sharpie about how to get protocol name from the ProtocolAttribute. (#2524) Teach xtro-sharpie about how to get protocol name from the ProtocolAttribute to calculate the native name for a TypeDefinition. Unclassified changes: https://gist.github.com/rolfbjarne/828f8ee41eebb0a3b60a38d71822fe59 * [foundation/uikit] Inline NSItemProvider_UIKitAdditions in NSItemProvider (#2538) As suggested here: https://github.com/xamarin/xamarin-macios/pull/2527#discussion_r134670981 * [intents] Fix breaking changes (api-diff) (#2543) Additions of @required members inside `INSpeakable` cannot be `[Abstract]` * [contacts] Fix breaking change (api-diff) (#2542) Type Changed: Contacts.CNPostalAddress Removed method: public static string LocalizeProperty (CNPostalAddressKeyOption option); * [macos] Reenable static registrar since Xcode9b6 un-broke SDK headers (#2544) - Fix a subtle spacing issues in PartialStaticLibrary property * [corebluetooth] Update up to beta 6 and enable it on watchOS (#2540) macOS 10.13 has finally catch up with iOS and this simplifies the bindings a bit. * [foundation] API fixes (apidiff) (#2545) 1. Let's not add new, already [Obsolete] API Type Changed: Foundation.NSDimension Added constructors: [Obsolete ("Not intended to be directly instantiated, this is an abstract class.")] public NSDimension (); 2. Fix inconsistently named API, e.g. Type Changed: Foundation.NSAttributedString Added properties: public static string[] ReadableTypeIdentifiersForItemProvider { get; } public static string[] WritableTypeIdentifiers { get; } * [pdfkit] Do not add already [Obsolete] API in new profiles (#2547) and ensure using the newer, correct API works cross-platforms iOS (before) [Obsolete ("Use 'Find (string, NSStringCompareOptions)' instead.")] public virtual PdfSelection[] Find (string text, nint options); public PdfSelection Find (string text, PdfSelection selection, Foundation.NSStringCompareOptions compareOptions); [Obsolete ("Use 'Find (string, PdfSelection, NSStringCompareOptions)' instead.")] public virtual PdfSelection Find (string text, PdfSelection selection, nint options); public void FindAsync (string text, Foundation.NSStringCompareOptions compareOptions); [Obsolete ("Use 'FindAsync (string, NSStringCompareOptions)' instead.")] public virtual void FindAsync (string text, nint options); public void FindAsync (string[] text, Foundation.NSStringCompareOptions compareOptions); [Obsolete ("Use 'FindAsync (string [], NSStringCompareOptions)' instead.")] public virtual void FindAsync (string[] text, nint options); iOS (after) public virtual PdfSelection[] Find (string text, Foundation.NSStringCompareOptions compareOptions); public virtual PdfSelection Find (string text, PdfSelection selection, Foundation.NSStringCompareOptions compareOptions); public virtual void FindAsync (string text, Foundation.NSStringCompareOptions compareOptions); public virtual void FindAsync (string[] text, Foundation.NSStringCompareOptions compareOptions); * Bump versions for the 7th preview (#2541) * Remove additions of AVKit removed in beta5 (#2536) * NSUrlSessionTask should implement NSProgressReporting for iOS (#2548) NSUrlSessionTask implements NSProgressReporting on iOS as well as Mac, so the #if MONOMAC isn't needed. * Add missing availability attributes causing failures on older iOS versions (#2550) * [vision] Minor fix wrt xtro (#2551) including some things we need to ignore manually !missing-field! VNVisionVersionNumber not bound !missing-pinvoke! VNImagePointForFaceLandmarkPoint is not bound !missing-pinvoke! VNNormalizedFaceBoundingBoxPointForLandmarkPoint is not bound * [uikit] NSFileProviderMessaging was removed in beta 2. Fixes #58222 (#2552) reference: https://bugzilla.xamarin.com/show_bug.cgi?id=58222 * [uikit] Update for Xcode 9 - Part 5 (#2546) Bindings for the following headers: - UIActivity.h - UIActivityItemProvider.h - UIAlertController.h - UIApplication.h - UIBarButtonItem.h - UIButton.h - UICollectionViewLayout.h - UIColor.h - UIControl.h - UIDocumentMenuViewController.h - UIFontMetrics.h - UIGestureRecognizer.h - UIGraphicsImageRenderer.h - UIInputViewController.h * [CoreText] Fix an extraneous free in CTFont.GetDefaultCascadeList. (#2555) We do not own the return value from CFArrayGetValueAtIndex, so don't say we do when creating CTFontDescriptor instances, since that leads to angry dragons: 2017-08-28 20:15:20.293 monotouchtest[33186:2311738] A_FontTest 2017-08-28 20:15:20.294 monotouchtest[33186:2311738] [PASS] A_FontTest.CTFontCreateWithFontDescriptorAndOptions 2017-08-28 20:15:20.295 monotouchtest[33186:2311738] [PASS] A_FontTest.CTFontCreateWithNameAndOptions 2017-08-28 20:15:20.296 monotouchtest[33186:2311738] critical: Stacktrace: at <unknown> <0xffffffff> at (wrapper managed-to-native) CoreText.CTFont.CTFontCopyDefaultCascadeListForLanguages (intptr,intptr) [0x0000a] in <ae65a2b1eea242d2b68fe784749543bf>:0 at CoreText.CTFont.GetDefaultCascadeList (string[]) [0x00013] in /work/maccore/xcode9/xamarin-macios/src/CoreText/CTFont.cs:2185 at MonoTouchFixtures.CoreText.A_FontTest.GetCascadeList () [0x0001e] in /work/maccore/xcode9/xamarin-macios/tests/monotouch-test/CoreText/FontTest.cs:78 at (wrapper runtime-invoke) object.runtime_invoke_void__this__ (object,intptr,intptr,intptr) [0x0004f] in <7c58d77f8ca548d5b9b32e70a64ba2fd>:0 at <unknown> <0xffffffff> at (wrapper managed-to-native) System.Reflection.MonoMethod.InternalInvoke (System.Reflection.MonoMethod,object,object[],System.Exception&) [0x00016] in <7c58d77f8ca548d5b9b32e70a64ba2fd>:0 at System.Reflection.MonoMethod.Invoke (object,System.Reflection.BindingFlags,System.Reflection.Binder,object[],System.Globalization.CultureInfo) [0x00032] in /work/maccore/xcode9/xamarin-macios/external/mono/mcs/class/corlib/System.Reflection/MonoMethod.cs:305 at System.Reflection.MethodBase.Invoke (object,object[]) [0x00000] in /work/maccore/xcode9/xamarin-macios/external/mono/mcs/class/referencesource/mscorlib/system/reflection/methodbase.cs:229 at NUnit.Framework.Internal.Reflect.InvokeMethod (System.Reflection.MethodInfo,object,object[]) [0x00009] in /work/maccore/xcode9/xamarin-macios/external/mono/external/nunit-lite/NUnitLite-1.0.0/src/framework/Internal/Reflect.cs:215 at NUnit.Framework.Internal.Commands.TestMethodCommand.RunNonAsyncTestMethod (NUnit.Framework.Internal.TestExecutionContext) [0x00025] in /work/maccore/xcode9/xamarin-macios/external/mono/external/nunit-lite/NUnitLite-1.0.0/src/framework/Internal/Commands/TestMethodCommand.cs:116 at NUnit.Framework.Internal.Commands.TestMethodCommand.RunTestMethod (NUnit.Framework.Internal.TestExecutionContext) [0x0001a] in /work/maccore/xcode9/xamarin-macios/external/mono/external/nunit-lite/NUnitLite-1.0.0/src/framework/Internal/Commands/TestMethodCommand.cs:90 at NUnit.Framework.Internal.Commands.TestMethodCommand.Execute (NUnit.Framework.Internal.TestExecutionContext) [0x00000] in /work/maccore/xcode9/xamarin-macios/external/mono/external/nunit-lite/NUnitLite-1.0.0/src/framework/Internal/Commands/TestMethodCommand.cs:66 at NUnit.Framework.Internal.Commands.SetUpTearDownCommand.Execute (NUnit.Framework.Internal.TestExecutionContext) [0x00007] in /work/maccore/xcode9/xamarin-macios/external/mono/external/nunit-lite/NUnitLite-1.0.0/src/framework/Internal/Commands/SetUpTearDownCommand.cs:84 at NUnit.Framework.Internal.WorkItems.SimpleWorkItem.PerformWork () [0x00000] in /work/maccore/xcode9/xamarin-macios/external/mono/external/nunit-lite/NUnitLite-1.0.0/src/framework/Internal/WorkItems/SimpleWorkItem.cs:64 at NUnit.Framework.Internal.WorkItems.WorkItem.RunTest () [0x00071] in /work/maccore/xcode9/xamarin-macios/external/mono/external/nunit-lite/NUnitLite-1.0.0/src/framework/Internal/WorkItems/WorkItem.cs:196 at NUnit.Framework.Internal.WorkItems.WorkItem.Execute (NUnit.Framework.Internal.TestExecutionContext) [0x00063] in /work/maccore/xcode9/xamarin-macios/external/mono/external/nunit-lite/NUnitLite-1.0.0/src/framework/Internal/WorkItems/WorkItem.cs:136 at NUnit.Framework.Internal.WorkItems.CompositeWorkItem.RunChildren () [0x00035] in /work/maccore/xcode9/xamarin-macios/external/mono/external/nunit-lite/NUnitLite-1.0.0/src/framework/Internal/WorkItems/CompositeWorkItem.cs:154 at NUnit.Framework.Internal.WorkItems.CompositeWorkItem.PerformWork () [0x000de] in /work/maccore/xcode9/xamarin-macios/external/mono/external/nunit-lite/NUnitLite-1.0.0/src/framework/Internal/WorkItems/CompositeWorkItem.cs:93 at NUnit.Framework.Internal.WorkItems.WorkItem.RunTest () [0x00071] in /work/maccore/xcode9/xamarin-macios/external/mono/external/nunit-lite/NUnitLite-1.0.0/src/framework/Internal/WorkItems/WorkItem.cs:196 at NUnit.Framework.Internal.WorkItems.WorkItem.Execute (NUnit.Framework.Internal.TestExecutionContext) [0x00063] in /work/maccore/xcode9/xamarin-macios/external/mono/external/nunit-lite/NUnitLite-1.0.0/src/framework/Internal/WorkItems/WorkItem.cs:136 at NUnit.Framework.Internal.WorkItems.CompositeWorkItem.RunChildren () [0x00035] in /work/maccore/xcode9/xamarin-macios/external/mono/external/nunit-lite/NUnitLite-1.0.0/src/framework/Internal/WorkItems/CompositeWorkItem.cs:154 at NUnit.Framework.Internal.WorkItems.CompositeWorkItem.PerformWork () [0x000de] in /work/maccore/xcode9/xamarin-macios/external/mono/external/nunit-lite/NUnitLite-1.0.0/src/framework/Internal/WorkItems/CompositeWorkItem.cs:93 at NUnit.Framework.Internal.WorkItems.WorkItem.RunTest () [0x00071] in /work/maccore/xcode9/xamarin-macios/external/mono/external/nunit-lite/NUnitLite-1.0.0/src/framework/Internal/WorkItems/WorkItem.cs:196 at NUnit.Framework.Internal.WorkItems.WorkItem.Execute (NUnit.Framework.Internal.TestExecutionContext) [0x00063] in /work/maccore/xcode9/xamarin-macios/external/mono/external/nunit-lite/NUnitLite-1.0.0/src/framework/Internal/WorkItems/WorkItem.cs:136 at NUnit.Framework.Internal.WorkItems.CompositeWorkItem.RunChildren () [0x00035] in /work/maccore/xcode9/xamarin-macios/external/mono/external/nunit-lite/NUnitLite-1.0.0/src/framework/Internal/WorkItems/CompositeWorkItem.cs:154 at NUnit.Framework.Internal.WorkItems.CompositeWorkItem.PerformWork () [0x000de] in /work/maccore/xcode9/xamarin-macios/external/mono/external/nunit-lite/NUnitLite-1.0.0/src/framework/Internal/WorkItems/CompositeWorkItem.cs:93 at NUnit.Framework.Internal.WorkItems.WorkItem.RunTest () [0x00071] in /work/maccore/xcode9/xamarin-macios/external/mono/external/nunit-lite/NUnitLite-1.0.0/src/framework/Internal/WorkItems/WorkItem.cs:196 at NUnit.Framework.Internal.WorkItems.WorkItem.Execute (NUnit.Framework.Internal.TestExecutionContext) [0x00063] in /work/maccore/xcode9/xamarin-macios/external/mono/external/nunit-lite/NUnitLite-1.0.0/src/framework/Internal/WorkItems/WorkItem.cs:136 at MonoTouch.NUnit.UI.BaseTouchRunner.Run (NUnit.Framework.Internal.Test) [0x0004d] in /work/maccore/xcode9/xamarin-macios/external/Touch.Unit/NUnitLite/TouchRunner/TouchRunner.cs:442 at MonoTouch.NUnit.UI.BaseTouchRunner.Run () [0x00030] in /work/maccore/xcode9/xamarin-macios/external/Touch.Unit/NUnitLite/TouchRunner/TouchRunner.cs:171 at MonoTouch.Dialog.StringElement.Selected (MonoTouch.Dialog.DialogViewController,UIKit.UITableView,Foundation.NSIndexPath) [0x00008] in /work/maccore/xcode9/xamarin-macios/external/MonoTouch.Dialog/MonoTouch.Dialog/Elements.cs:765 at MonoTouch.Dialog.DialogViewController.Selected (Foundation.NSIndexPath) [0x00026] in /work/maccore/xcode9/xamarin-macios/external/MonoTouch.Dialog/MonoTouch.Dialog/DialogViewController.cs:577 at MonoTouch.Dialog.DialogViewController/Source.RowSelected (UIKit.UITableView,Foundation.NSIndexPath) [0x00016] in /work/maccore/xcode9/xamarin-macios/external/MonoTouch.Dialog/MonoTouch.Dialog/DialogViewController.cs:402 at (wrapper runtime-invoke) <Module>.runtime_invoke_void__this___object_object (object,intptr,intptr,intptr) [0x0005d] in <32f0c196c5bc4aa18daea2ee64a7814e>:0 at <unknown> <0xffffffff> at (wrapper managed-to-native) UIKit.UIApplication.UIApplicationMain (int,string[],intptr,intptr) [0x0005c] in <ae65a2b1eea242d2b68fe784749543bf>:0 at UIKit.UIApplication.Main (string[],intptr,intptr) [0x00005] in /work/maccore/xcode9/xamarin-macios/src/UIKit/UIApplication.cs:79 at UIKit.UIApplication.Main (string[],string,string) [0x00038] in /work/maccore/xcode9/xamarin-macios/src/UIKit/UIApplication.cs:63 at monotouchtest.Application.Main (string[]) [0x00011] in /work/maccore/xcode9/xamarin-macios/tests/monotouch-test/Main.cs:27 at (wrapper runtime-invoke) <Module>.runtime_invoke_void_object (object,intptr,intptr,intptr) [0x00051] in <30a7f7e09de9467b8b454221034a0e38>:0 Native stacktrace: 0 monotouchtest 0x000000010fca03c4 mono_handle_native_crash + 244 1 monotouchtest 0x000000010fcadd30 mono_sigsegv_signal_handler + 288 2 libsystem_platform.dylib 0x000000011feb3b3a _sigtramp + 26 3 CoreFoundation 0x000000011de035a2 computeSanitizedString + 146 4 CoreText 0x00000001168df314 _ZN15TPurgeableCache19RetainedValueForKeyEPKv + 54 5 CoreText 0x00000001168def85 _ZNK17TDescriptorSource22CopyDescriptorUncachedEPK7__CFURLbPK10__CFString + 55 6 CoreText 0x00000001168df34f _ZNK17TDescriptorSource14CopyDescriptorEPK7__CFURLbPK10__CFString + 27 7 CoreText 0x00000001168e20ad _ZNK17TDescriptorSource35CopyFontDescriptorPerPostScriptNameEPK10__CFStringmm + 297 8 CoreText 0x00000001168dfd9e _ZNK17TDescriptorSource30CopySystemFontDescriptorByNameEPK10__CFString10UIFontFlag + 54 9 CoreText 0x00000001168e54c4 _ZNK14TFontFallbacks17CopyFontFallbacksEPK10__CFStringS2_PK9__CFArray + 652 10 CoreText 0x00000001168e4a00 _ZNK14TFontFallbacks29CopyFontFallbacksForLanguagesEPK10__CFStringPK9__CFArray + 122 11 CoreText 0x00000001168e4971 _ZN17TDescriptorSource39CopyDefaultSubstitutionListForLanguagesEPK10__CFStringPK9__CFArray + 61 12 CoreText 0x00000001169397a7 _ZNK9TBaseFont28CreateSystemDefaultFallbacksEPK10__CFStringPK9__CFArray + 51 13 CoreText 0x000000011693999c _ZNK9TBaseFont15CreateFallbacksE10UIFontFlagPPK16__CFCharacterSetPK9__CFArray + 346 14 CoreText 0x00000001168c1036 _ZNK5TFont24CreateDefaultCascadeListEPK9__CFArray + 242 15 CoreText 0x00000001168b8ff9 CTFontCopyDefaultCascadeListForLanguages + 97 16 ??? 0x0000000140eaefd3 0x0 + 5384105939 17 ??? 0x0000000140eae761 0x0 + 5384103777 18 ??? 0x000000013c9c8e74 0x0 + 5311860340 19 monotouchtest 0x000000010fcb0c89 mono_jit_runtime_invoke + 1273 20 monotouchtest 0x000000010fd6e3a8 do_runtime_invoke + 88 21 monotouchtest 0x000000010fd71bac mono_runtime_try_invoke_array + 1292 22 monotouchtest 0x000000010fd15587 ves_icall_InternalInvoke + 647 23 ??? 0x000000013e9fcd13 0x0 + 5345627411 24 ??? 0x000000013e9fc738 0x0 + 5345625912 25 ??? 0x000000013e9fded5 0x0 + 5345631957 26 ??? 0x000000013e9fbb76 0x0 + 5345622902 27 ??? 0x000000013e9e237e 0x0 + 5345518462 28 ??? 0x000000013e9e237e 0x0 + 5345518462 29 ??? 0x000000013e9e237e 0x0 + 5345518462 30 ??? 0x000000013e9e237e 0x0 + 5345518462 31 ??? 0x000000013e873006 0x0 + 5344014342 32 monotouchtest 0x000000010fcb0c89 mono_jit_runtime_invoke + 1273 33 monotouchtest 0x000000010fd6e3a8 do_runtime_invoke + 88 34 monotouchtest 0x000000010fd6e320 mono_runtime_invoke + 208 35 monotouchtest 0x000000010fe71af1 xamarin_invoke_trampoline + 5617 36 monotouchtest 0x000000010fe79ddd xamarin_arch_trampoline + 189 37 monotouchtest 0x000000010fe7b1a1 xamarin_x86_64_common_trampoline + 110 38 UIKit 0x0000000111b9876b -[UITableView _selectRowAtIndexPath:animated:scrollPosition:notifyDelegate:] + 1810 39 UIKit 0x0000000111b98986 -[UITableView _userSelectRowAtPendingSelectionIndexPath:] + 344 40 UIKit 0x0000000111a6b5c9 _runAfterCACommitDeferredBlocks + 318 41 UIKit 0x0000000111a59dad _cleanUpAfterCAFlushAndRunDeferredBlocks + 280 42 UIKit 0x0000000111a89f68 _afterCACommitHandler + 137 43 CoreFoundation 0x000000011de3ddb7 __CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION__ + 23 44 CoreFoundation 0x000000011de3dd0e __CFRunLoopDoObservers + 430 45 CoreFoundation 0x000000011de22324 __CFRunLoopRun + 1572 46 CoreFoundation 0x000000011de21a89 CFRunLoopRunSpecific + 409 47 GraphicsServices 0x0000000121b7e9c6 GSEventRunModal + 62 48 UIKit 0x0000000111a5f7d0 UIApplicationMain + 159 49 ??? 0x000000013c9c4474 0x0 + 5311841396 50 ??? 0x000000013c9c40ad 0x0 + 5311840429 ================================================================= Got a SIGSEGV while executing native code. This usually indicates a fatal error in the mono runtime or one of the native libraries used by your application. ================================================================= * [monotouch-test] Don't subclass MKMapView. (#2556) MKMapView doesn't like being subclassed (Apple says "you should not subclass the MKMapView class itself"). Bad things like this starts happening: Thread 0 name: tid_303 Dispatch queue: com.apple.main-thread Thread 0 Crashed: 0 libsystem_kernel.dylib 0x0000000186b25348 __pthread_kill + 8 1 libsystem_pthread.dylib 0x0000000186c39354 pthread_kill$VARIANT$mp + 396 2 libsystem_c.dylib 0x0000000186a94fd8 abort + 140 3 monotouchtest 0x0000000101c02c14 mono_handle_native_crash + 22047764 (mini-exceptions.c:2548) 4 monotouchtest 0x0000000101c0d02c mono_sigsegv_signal_handler + 22089772 (mini-runtime.c:2886) 5 libsystem_platform.dylib 0x0000000186c33b60 _sigtramp + 52 6 CoreFoundation 0x0000000186f93108 cow_cleanup + 112 7 CoreFoundation 0x0000000186f93108 cow_cleanup + 112 8 CoreFoundation 0x0000000186eda51c -[__NSArrayM dealloc] + 68 9 CoreFoundation 0x000000018703f5c8 __CFBasicHashDrain + 312 10 CoreFoundation 0x0000000186fb5b44 _CFRelease + 224 11 CoreText 0x000000018a808404 TDescriptorSource::PurgeFontFallbacksCache+ 488452 () + 92 12 CoreText 0x000000018a808374 TDescriptorSource::PurgeFromCaches+ 488308 (__CFURL const*) const + 176 13 CoreText 0x000000018a7eec74 CTFontRemoveFromCaches + 168 14 VectorKit 0x0000000196a539b0 +[VKSharedResourcesManager removeResourceUser:] + 324 15 VectorKit 0x0000000196ca27a4 md::MapEngine::~MapEngine+ 2643876 () + 360 16 VectorKit 0x0000000196ca2634 md::MapEngine::~MapEngine+ 2643508 () + 12 17 libobjc.A.dylib 0x000000018651eef4 object_cxxDestructFromClass+ 28404 (objc_object*, objc_class*) + 148 18 libobjc.A.dylib 0x000000018652c638 objc_destructInstance + 88 19 libobjc.A.dylib 0x000000018652c690 object_dispose + 16 20 QuartzCore 0x000000018afca3ac -[CALayer dealloc] + 116 21 VectorKit 0x0000000196a43294 -[VKMapView dealloc] + 940 22 QuartzCore 0x000000018af6aafc CA::release_objects+ 744188 (X::List<void const*>*) + 32 23 QuartzCore 0x000000018afd97d8 CA::Layer::~Layer+ 1198040 () + 276 24 QuartzCore 0x000000018afca37c -[CALayer dealloc] + 68 25 QuartzCore 0x000000018af6b16c CA::Transaction::commit+ 745836 () + 1052 26 UIKit 0x0000000190393290 _afterCACommitHandler + 256 27 CoreFoundation 0x0000000186fb38b8 __CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION__ + 32 28 CoreFoundation 0x0000000186fb1270 __CFRunLoopDoObservers + 412 29 CoreFoundation 0x0000000186fb182c __CFRunLoopRun + 1292 30 CoreFoundation 0x0000000186ed22d8 CFRunLoopRunSpecific + 436 31 GraphicsServices 0x0000000188d58f84 GSEventRunModal + 100 32 UIKit 0x000000019040427c UIApplicationMain + 208 33 monotouchtest 0x000000010106eb90 wrapper_managed_to_native_UIKit_UIApplication_UIApplicationMain_int_string___intptr_intptr + 9907088 (/<unknown>:1) 34 monotouchtest 0x0000000100f0d6ac UIKit_UIApplication_Main_string___intptr_intptr + 8459948 (UIApplication.cs:79) 35 monotouchtest 0x0000000100f0d66c UIKit_UIApplication_Main_string___string_string + 8459884 (UIApplication.cs:63) 36 monotouchtest 0x0000000100b10450 monotouchtest_Application_Main_string__ + 4277328 (Main.cs:27) 37 monotouchtest 0x0000000100e0c244 wrapper_runtime_invoke_object_runtime_invoke_dynamic_intptr_intptr_intptr_intptr + 244 38 monotouchtest 0x0000000101c10048 mono_jit_runtime_invoke + 22102088 (mini-runtime.c:2526) 39 monotouchtest 0x0000000101c75eec do_runtime_invoke + 22519532 (object.c:2829) 40 monotouchtest 0x0000000101c78a3c do_exec_main_checked + 22530620 (object.c:4623) 41 monotouchtest 0x0000000101bf9a1c mono_jit_exec + 22010396 (driver.g.c:1040) 42 monotouchtest 0x0000000101d13d60 xamarin_main + 23166304 (monotouch-main.m:482) 43 monotouchtest 0x00000001007de710 main + 927504 (main.m:67) 44 libdyld.dylib 0x00000001869f656c start + 4 * [introspection] Let SkipDueToAttributeInProperty skip setters too (#2557) `SkipDueToAttributeInProperty` which is used to check the availability attribute of properties when the Availability info only exist on the property and not on the property Getter or Setter was wrong. This lead to `setSpringLoaded` (which was introduced in iOS 11) to not be ignored by the test (making it fail). - Fix bug #59085: [introspection-ios] selector not found for UIKit.UIBarButtonItem : setSpringLoaded: - Broken test (https://bugzilla.xamarin.com/show_bug.cgi?id=59085) * [corevideo][watchos] Enable CoreVideo on watchOS (#2553) * [storekit] Fix CampaignToken typo (#2559) (#2560) - Fixes bug #59078: StoreProductParameters and invalid property for CampaignToken (https://bugzilla.xamarin.com/show_bug.cgi?id=59078) * [coreml][watchos] Enable API using CoreVideo on watchOS. Fix #58097 (#2561) https://bugzilla.xamarin.com/show_bug.cgi?id=58097 * Add missing [MarshalDirective] attributes. (#2558) * [bindings-generator] Improve build & project file. * Add missing [MarshalDirective] attributes. Add missing [MarshalDirective] attributes, which also requires implementing support for out parameters in the binding generator, since one of the signatures missing the [MarshalDirective] contains such an out parameter. Also add tests for all the API I've added [MarshalDirective] to. * [bindings-generator] Remove redundant if check. * [monotouch-test] Rename file to end with 'Test.cs'. * [tests] Fix a few build errors for Xamarin.Mac. * [uikit] Fix UIColor and UIInputViewController tvOS availability (#2569) - Fixes introspection tests on tvOS 10. * [storekit] Fix SKCloudServiceSetupMessageIdentifier and SKProductStorePromotionController tvOS availability (#2568) - Fixes introspection tests on tvOS 10. * [mapkit] Fix MKMapItemTypeIdentifier tvOS availability (#2566) - Also remove double [Mac] availability attribute. - Fixes introspection tests on tvOS 10. * [ARKit] Fix marshalling for ARPointCloud.RawFeaturePoints. (#2565) ARPointCloud.RawFeaturePoints is an array of Vector3, but each vector is 16-byte aligned (as if it were an array of Vector4). This means we need to account for this when creating a managed array from pointer to the native C-style array. * [ModelIO] Fix MDLVoxelIndexExtent struct. (#2564) The MDLVoxelIndexExtent is a struct containing two 4-dimensional vectors of integers (not floats, as originally and incorrectly implemented). Fix this my creating a new MDLVoxelIndexExtent2 struct with the right fields, re-implement all the API that exposes this struct and obsolete the old API. Also add missing [MarshalDirective] attributes. And write a test to make sure it works fine now and forever. * [coredata] Enable new fields since rdar #33878590 is fixed w/beta 6 (#2570) reference: https://trello.com/c/dlSRYPFx * [xtro-sharpie] Add a Simd check class to verify signatures with Simd types. * [Simd] Add simd matrix types. The OpenTK matrices (Matrix2/3/4) has a different memory layout than Apple's matrix_float2x2/matrix_float3x3/matrix_float4x4 matrices: the OpenTK versions are row-major, while Apple's versions are column-major. This means that when blitting memory from one to the other, the matrix will appear to have been transposed. See bug #[58599][2] for an example. Unfortunately we've already bound several API with Apple's matrix_floatXxX matrices using OpenTK's matrices, and although they're bound wrong, and the matrices appear transposed on input/output, we can't change the behavior because we have to maintain compatibility. This means we have to introduce new API, and then also just define new matrix types with the right memory layout (column-major). Additionally, in the future we might be able to mark these matrices as Simd-matrixes, so that the JIT/AOT compiler can generate the correct alignment for them, avoiding having to define a native conversion method (using the [MarshalDirective] hack). The matrices have been designed to match API-wise the matrices in the System.Numerics.Vectors namespace [1], but for the moment with only a few basic operations implemented (Determinant/Transpose/Multiply) defined (we can always add more later if we want to). In addition explicit conversion operators to and from the corresponding OpenTK.MatrixX are implemented, which means any operation defined in the OpenTK matrices can be used by converting back and forth. [1]: https://msdn.microsoft.com/en-us/library/system.numerics.matrix4x4(v=vs.111).aspx [2]: https://bugzilla.xamarin.com/show_bug.cgi?id=58599 * [ARKit] Use the new Simd matrix types. * [Vision] Use the new Simd matrix types. * [ModelIO] Use the new Simd-compatible matrix types, and deprecate the old API. * [GameplayKit] Use the new Simd-compatible matrix types, and deprecate the old API. * [SpriteKit] Use the new Simd-compatible matrix types, and deprecate the old API. * [xtro] Don't report missing [MarshalDirective] for obsolete methods. * [xtro] Remove unnecessary ignores. The implementation changed, and these stayed accidentally. * [wkwebkit] Fix (native) protocol names (#2572) Also ignore xtro's WKSnapshotConfiguration since it's an Apple bug 34185961 reference (xtro) !missing-protocol! WKURLSchemeHandler not bound !missing-protocol! WKURLSchemeTask not bound !unknown-protocol! WKUrlSchemeHandler bound !unknown-protocol! WKUrlSchemeTask bound !unknown-type! WKSnapshotConfiguration bound * [uikit] Fix enums availability attributes (#2575) - Fixes bug #59132: [uikit] Extra types in watchOS (https://bugzilla.xamarin.com/show_bug.cgi?id=59132) * [watchkit] Add missing designated initializers (#2574) references (xtro) !missing-designated-initializer! WKInterfaceController::init is missing an [DesignatedInitializer] attribute !missing-designated-initializer! WKUserNotificationInterfaceController::init is missing an [DesignatedInitializer] attribute * [xtro] Reword some of the Simd diagnostic messages according to review. * [tests] Make sure test symbols don't clash between different test libraries. Fixes this build problem for framework-test: clang: error: linker command failed with exit code 1 (use -v to see invocation) MTOUCH: error MT5212: Native linking failed, duplicate symbol: '_x_mdltransform_get_rotation_matrix'. MTOUCH: error MT5213: Duplicate symbol in: /Users/builder/jenkins/workspace/xamarin-macios-pr-builder/tests/framework-test/obj/iPhoneSimulator/Debug-unified/mtouch-cache/XStaticObjectTest.framework/XStaticObjectTest (Location related to previous error) MTOUCH: error MT5213: Duplicate symbol in: /Users/builder/jenkins/workspace/xamarin-macios-pr-builder/tests/framework-test/obj/iPhoneSimulator/Debug-unified/mtouch-cache/XStaticArTest.framework/XStaticArTest(libtest-ar.x86_64.o) (Location related to previous error) MTOUCH: error MT5212: Native linking failed, duplicate symbol: '_x_mdltransformcomponent_get_local_transform'. MTOUCH: error MT5212: Native linking failed, duplicate symbol: '_x_mdltransform_create_global_transform'. MTOUCH: error MT5212: Native linking failed, duplicate symbol: '_x_get_matrix_float4x4'. MTOUCH: error MT5212: Native linking failed, duplicate symbol: '_x_get_matrix_float3x3'. MTOUCH: error MT5212: Native linking failed, duplicate symbol: '_x_get_matrix_float2x2'. MTOUCH: error MT5209: Native linking error: 6 duplicate symbols for architecture x86_64 MTOUCH: error MT5202: Native linking failed. Please review the build log. * [tests] Since libtest.a need ModelIO now, the corresponding LinkWith attributes need to state that too. * [introspection] Don't check native signatures on obsolete members, and ignore the right simd matrix types. Fixes this introspection/Mac problem: ***** ApiSignatureTest.NativeSignatures Selector: uniformWithName:matrixFloat2x2: on type SpriteKit.SKUniform, Type: Simd.MatrixFloat2x2, nothing encoded Selector: uniformWithName:matrixFloat3x3: on type SpriteKit.SKUniform, Type: Simd.MatrixFloat3x3, nothing encoded Selector: uniformWithName:matrixFloat4x4: on type SpriteKit.SKUniform, Type: Simd.MatrixFloat4x4, nothing encoded Selector: setMatrixFloat2x2Value: on type SpriteKit.SKUniform, Type: Simd.MatrixFloat2x2, nothing encoded Selector: setMatrixFloat3x3Value: on type SpriteKit.SKUniform, Type: Simd.MatrixFloat3x3, nothing encoded Selector: setMatrixFloat4x4Value: on type SpriteKit.SKUniform, Type: Simd.MatrixFloat4x4, nothing encoded Selector: initWithName:matrixFloat2x2: on type SpriteKit.SKUniform, Type: Simd.MatrixFloat2x2, nothing encoded Selector: initWithName:matrixFloat3x3: on type SpriteKit.SKUniform, Type: Simd.MatrixFloat3x3, nothing encoded Selector: initWithName:matrixFloat4x4: on type SpriteKit.SKUniform, Type: Simd.MatrixFloat4x4, nothing encoded * [monotouch-tests] Include more custom asserts for watchOS to make the build work. Fixes this: Simd/MatrixFloat4x4Test.cs(28,12): error CS0117: 'Asserts' does not contain a definition for 'AreEqual' Simd/MatrixFloat4x4Test.cs(29,12): error CS0117: 'Asserts' does not contain a definition for 'AreEqual' Simd/MatrixFloat4x4Test.cs(37,12): error CS0117: 'Asserts' does not contain a definition for 'AreEqual' Simd/MatrixFloat4x4Test.cs(48,12): error CS0117: 'Asserts' does not contain a definition for 'AreEqual' [...] * [monotouch-test] Exclude code that requires the binding project from xammac tests. Exclude code that requires the test binding project from xammac tests because there's currently no XM version of the test binding project. Fixes this: tests/monotouch-test/SpriteKit/UniformTest.cs(20,7): error CS0246: The type or namespace name 'Bindings' could not be found (are you missing a using directive or an assembly reference?) tests/monotouch-test/ModelIO/MDLMaterialProperty.cs(37,7): error CS0246: The type or namespace name 'Bindings' could not be found (are you missing a using directive or an assembly reference?) tests/monotouch-test/ModelIO/MDLTransform.cs(34,7): error CS0246: The type or namespace name 'Bindings' could not be found (are you missing a using directive or an assembly reference?) * Bump version for preview #8 (#2576) * [spritekit] Audit fixes (xtro) (#2577) 1. SKVideoNode is now, partially, available on watchOS and does not require the extra, manual code to swicth selectors depending on the OS version being run. !missing-type! SKVideoNode not bound !missing-selector! SKVideoNode::anchorPoint not bound !missing-selector! SKVideoNode::initWithCoder: not bound !missing-selector! SKVideoNode::initWithFileNamed: not bound !missing-selector! SKVideoNode::initWithURL: not bound !missing-selector! SKVideoNode::setAnchorPoint: not bound !missing-selector! SKVideoNode::setSize: not bound !missing-selector! SKVideoNode::size not bound !missing-selector! +SKVideoNode::videoNodeWithFileNamed: not bound !missing-selector! +SKVideoNode::videoNodeWithURL: not bound 2. SKNodeFocusBehavior is exposed needlessly on watchOS because SpriteKit/Enums.cs was not processed by the generator, so [NoWatch] did not matter. !unknown-native-enum! SKNodeFocusBehavior bound It's also visible on macOS but nothing uses it (so we do not expose it needlessly) !missing-enum! SKNodeFocusBehavior not bound 3. Add missing designated initializer on default `init` !missing-designated-initializer! SKAttributeValue::init is missing an [DesignatedInitializer] attribute !missing-designated-initializer! SKNode::init is missing an [DesignatedInitializer] attribute 4. Remove inconsistency for SKNode subclasses wrt XAMCORE_4_0 The trio attributeValues, setAttributeValues and setValue:forAttributeNamed: that was moved from SKNode (deprecated) into its subclasses. This was done using XAMCORE_4_0 but not on every subclasses. This adds them everywhere to be consistent (only SKNode versions are not defined in XAMCORE_4_0) !missing-selector! SKEffectNode::attributeValues not bound !missing-selector! SKEffectNode::setAttributeValues: not bound !missing-selector! SKEffectNode::setValue:forAttributeNamed: not bound !missing-selector! SKEffectNode::valueForAttributeNamed: not bound !missing-selector! SKEmitterNode::attributeValues not bound !missing-selector! SKEmitterNode::setAttributeValues: not bound !missing-selector! SKEmitterNode::setValue:forAttributeNamed: not bound !missing-selector! SKEmitterNode::valueForAttributeNamed: not bound !missing-selector! SKSpriteNode::attributeValues not bound !missing-selector! SKSpriteNode::setAttributeValues: not bound !missing-selector! SKSpriteNode::setValue:forAttributeNamed: not bound !missing-selector! SKSpriteNode::valueForAttributeNamed: not bound * [introspection] Make sure '[FAIL]' is printed before every failure. (#2578) This makes xharness able to list the failures in the inline summary. * [xtro] Reword some of the Simd diagnostic messages according to review. * [xharness] Add a missing IsServerMode check to generate correct html. (#2581) * [SpriteKit] SKTransformNode is new in Xcode 9 so no need to keep the broken (and obsolete) non-simd version of RotationMatrix. * [intents] Fix some (partial) xtro issues and #59156 (#2585) reference https://bugzilla.xamarin.com/show_bug.cgi?id=59156 Remaining issues are filled in https://bugzilla.xamarin.com/show_bug.cgi?id=59183 !missing-selector! +INCarSeatResolutionResult::confirmationRequiredWithCarSeatToConfirm: not bound !missing-selector! +INCarSeatResolutionResult::successWithResolvedCarSeat: not bound !missing-selector! +INNotebookItemTypeResolutionResult::disambiguationWithValuesToDisambiguate: not bound * [Intents] Confirm* interface methods should be bound as Confirm, Fixes Bug 59164 (#2591) * [Intents] Confirm* interface methods should probably be bound as Confirm, Fixes Bug 59164 https://bugzilla.xamarin.com/show_bug.cgi?id=59164 All Confirm* methods from *IntentHandling interfaces should be named just `Confirm` to avoid confusion because most of them do not directly confirm as an acion, but instead they **ask** for confirmation also we would follow swift's naming by doing this. * [Intents] XAMCORE_4_0 all Confirm* methods from *IntentHandling Turns any Confirm* into just Confirm inside a XAMCORE_4_0 block, * [Intents] Fix breaking changes in Intents added in Xcode 9 Bindings (#2590) Apple added more protocol conformances to INRidesharingDomainHandling and INPaymentsDomainHandling protocols in Xcode 9, I introduced these breaking changes back when I did intents binding so fixing them :) * [Metal] New bindings from Xcode 9 betas (#2457) * [AVFoundation] Updated bindings for xcode9. (#2272) * [Xcode9] Add IOSurface bindings (#2363) * 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 * [CoreMedia] Fix leak in CMAttachmentBearer.GetAttachments. (#2593) The caller owns the return value from CMCopyDictionaryOfAttachments, so tell Runtime.GetNSObject that. * [Intents] Adds missing API found by xtro, fixes Bug 59183 (#2596) https://bugzilla.xamarin.com/show_bug.cgi?id=59183 Fixes !missing-selector! +INNotebookItemTypeResolutionResult::disambiguationWithValuesToDisambiguate: not bound !missing-selector! +INCarSeatResolutionResult::confirmationRequiredWithCarSeatToConfirm: not bound !missing-selector! +INCarSeatResolutionResult::successWithResolvedCarSeat: not bound !incorrect-protocol-member! INUIHostedViewControlling::configureWithInteraction:context:completion: is OPTIONAL and should NOT be abstract * [xtro] Fix StartWorkingDirectory to enable debugging (#2598) * [iosurface] Enable for tvOS and XM classic (to avoid multiple defines around consumer API) (#2597) * [xtro] Fix EnumCheck (#2600) * [ARKit] Rename a few method to make them nicer. (#2604) * DisplayTransform -> GetDisplayTransform since methods should have verbs. * SessionWasInterrupted -> WasInterrupted and SessionInterruptionEnded -> InterruptionEnded since these names match better with the other names (CameraDidChangeTrackingState / DidFail / DidOutputAudioSampleBuffer: none are prefixed with 'Session'). Additionally, the type is a Model (for the delegate pattern), which means all methods are more-or-less event-like, and the first argument is always the same (the protocol itself), which is another indicator the methods should be named similarly. * [Foundation] Remove 'Key' suffix from some fields. (#2606) Of the 168 fields in NSMetadataItem, only these 5 hadn't removed the 'Key' suffix. So make them all equivalent by removing the 'Key' suffix from these 5 fields. * [ImageIO] Fix API to not duplicate the instance in instance methods. (#2609) An instance method does not need to take the instance as a parameter, so remove the first (instance) parameter for CGImageDestination.AddAuxiliaryDataInfo and CGImageSource.CopyAuxiliaryDataInfo. An alternative solution would be to make the methods static, but I like the instance API better. * [UIKit] De-model UIDataSourceTranslating. (#2603) It's not clear from neither the documentation nor the headers how this protocol is supposed to be used, and since it doesn't correspond to the delegate pattern, remove the [Model] attribute for now. We can always add it back later. * [CoreML] Improve API. (#2592) * [CoreML] Improve API. * The indices, shape and stride properties for MLMultiArray and MLMultiArrayConstraint can logi…
* Fix warning caused by duplicate (#2354) * [FileProviderUI] Add Xcode 9 Beta 1 to 3 bindings (#2356) * Bump to Xcode 9 beta 4 * [arkit] ARLightEstimate does not conform to NSCopying anymore (fix unit test) * [uikit] NSFileProviderExtension.ReparentItem got a new parameter in beta4 (fix unit test) * [coreimage] CIImageAccumulator init returns nil in beta 4 There's no header change to mention `init` is not allowed but it's not clear how this default initializer could be used. Also make public some other API to construct this type (outside of XM). It's not clear why there were `internal` as they are (at least now) part of the header files. * [photos] Add helpers when PHLivePhotoEditingOption/NSDictionary is null (to avoid ambiguous API) (#2360) Adding a strongly typed `PHLivePhotoEditingOption` (a strongly typed version of an `NSDictionary`) can cause a `CS0121` (call is ambiguous) since using a `null` argument is common (only one option exist so far). This PR adds overloads that makes the code nicer in such case, e.g. before Xcode9: > // null is used when no options are given > _foo.SaveLivePhoto (output, null, completion); current (Xcode 9) > // casting required to remove ambiguity with PHLivePhotoEditingOption > _foo.SaveLivePhoto (output, (NSDictionary)null, completion); with this PR > // no option, no argument > _foo.SaveLivePhoto (output, completion); The same applies to `PrepareLivePhotoForPlayback`. * [tests] Disable/tweak two tests that breaks on (almost) all Xcode updates Those tests were not added to validate xOS so just keep the parts that helps us (without constantly checking back the new break flavor) * Disable watchOS to check if this hides others issues * [mapkit] Update for beta 4 * [coredata] Update for beta 4 * [wkwebkit] Update for beta 4 Note: WKWindowFeatures.h is not compiled (part of the framework umbrella) and the `@interface WKWindowFeatures (WKPrivate)` sounds like it should not have been exposed (it's all fields starting with `_`) * [corelocation] Update for beta 4 * Revert "Disable watchOS to check if this hides others issues" This reverts commit fed2249fa43290a1956ab2fe0d48f83ab6db9711. * [tests] Disable watchOS from harness only. Workaround #58348 https://bugzilla.xamarin.com/show_bug.cgi?id=58348 * [spritekit] Update for beta 4 (#2368) * [arkit] Update for beta 4 (#2370) * Bump version before preview 3 (#2375) * [generator] Fix smart enum FieldAttribute LibraryName generation (#2376) This fix is needed by PDFKit because it is a remapped framework[0], the current code generates incorrect FieldAttribute on smart enums because it uses `fa.LibraryName` as first option and this causes remmaped frameworks have incorrect LibraryName generated for example if a Field uses `+CoreImage` as `LibraryName` the following incorrect code is generated: ``` [Field ("First", "+CoreImage")] internal unsafe static IntPtr First { get { fixed (IntPtr *storage = &values [0]) return Dlfcn.CachePointer (Libraries.+CoreImage.Handle, "First", storage); } } ``` [0]: https://github.com/xamarin/xamarin-macios/blob/f5956d6cc1eb5dfa7bab16628cf282d40237f64e/src/generator.cs#L5985 * [FinderSync] Update to beta 4 (#2377) * [ImageIO] Update to Xcode 9 (#2353) * [PhotosUI] Move macOS photosui bindings out of photos.cs into photosui.cs (#2358) * [quicklook] Update up to beta 4 (#2374) * [uikit] UIDragInteraction & UIDragInteractionDelegate (Xcode 9 b1,2,3) (#2357) * [safariservices] Update up to beta 4 (#2380) * [coreanimation] Update to beta 4 (#2382) Apple removed (mistake?) some API in beta 1. Filed as rdar 33590997 Internal tracking in https://trello.com/c/J8BDDUV9/86-33590997-coreanimation-quartzcore-api-removals * [storekit] Update up to beta 4 (#2379) * [CoreML] Update to Xcode 9 Beta 4 (#2387) * [uikit] UICollectionView/UITableView Drag & Drop (Xcode 9 b1,2,3 & 4) (#2355) * Update code after radar 32929318 and 32897776 are fixed in b4 (#2394) * [xcode9 CoreAudio] New definitions from Beta1 to Beta3 (#2359) * [Vision] Strongify VNBarcodeSymbology API, Fixes Bug 58512 (#2397) * [Vision] Strongify VNBarcodeSymbology API, Fixes Bug 58512 https://bugzilla.xamarin.com/show_bug.cgi?id=58512 Created strong API (VNBarcodeSymbology) on the following properties * VNDetectBarcodesRequest.SupportedSymbologies * VNDetectBarcodesRequest.Symbologies * VNBarcodeObservation.Symbology * Remove modern C# because classic can't do it 😡 * [mediaplayer] Update up to beta 4 (#2388) * [watchkit] Update to beta 4 (#2398) * Bump Visual Studio for Mac max version (#2408) * [coreimage] Add CIBarcodeDescriptor and enabled missing API for VNBarcodeObservation. Fix #58197 (#2411) https://bugzilla.xamarin.com/show_bug.cgi?id=58197 * [uikit] Update UIFocus related APIs to Xcode 9 beta 4 (#2407) * [uikit] Update UIFocus related APIs to Xcode 9 beta 4 * [uikit] Fixes based on comments * [coreimage] CIImageAccumulator API fixes. Fix #58349 (#2412) * Obsolete the default `init`; * XM exposed some older APIs using `int` instead of `CIFormat`. This is fixed and old APIs are obsoleted; * Both new & old APIs are now using `CIFormat` for both XI and XM. https://bugzilla.xamarin.com/show_bug.cgi?id=58349 * [uikit] UIText drag & drop - up to Xcode 9 beta 4 (#2410) * [uikit] UISplitView & UIStackView up to Xcode 9 beta 4 (#2425) * Bump XI/XM versions before preview 4 (#2422) * [PDFKit] Update to Xcode 9 Beta 1, 2, 3 & 4 (#2378) * [PDFKit] Update to Xcode 9 Beta 1, 2, 3 & 4 * [PDFKit] Implement feedback * [PDFKit] the forgotten enum * [PDFKit] More feedback * [PDFKit] Add Mac changes * Missing change * Fix test RectangleF VS CGRect * Pass -Wunguarded-availability-new to quiet a new clang warning (#2424) - https://bugzilla.xamarin.com/show_bug.cgi?id=58574 * [mtouch/mmp] Ignore warnings about unguarded code section with regards to availability. (#2441) * [monotouch-test] Remove workaround for fixed Apple bug. (#2445) * Bump to Xcode 9 beta 5. (#2447) * Bump to Xcode 9 beta 5. * [mmp] Disable the partial static registrar, because Apple's macOS SDK is broken. > In file included from Xamarin.Mac.registrar.mobile.i386.m:1: > In file included from ./Xamarin.Mac.registrar.mobile.i386.h:11: > /Applications/Xcode9-beta5.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/AVFoundation.framework/Headers/AVFoundation.h:88:9: fatal error: 'AVFoundation/AVRouteDetector.h' file not found https://bugzilla.xamarin.com/show_bug.cgi?id=58629 * [mmp] Fix partial static registrar removal. * [CallKit] Update to Xcode 9 beta 5. * [ARKit] ARPointCloud doesn't conform to NSCopying anymore in Xcode 9 beta 5. * [ARKit] Update to Xcode 9 beta 5 enough to make tests happy. * [CoreImage] Stub out new filters in Xcode 9 beta 5. * [tests][monotouch] Simplify some MDLMesh asserts since values change a lot between OS versions. * [mmp] Default to the dynamic registrar for release builds again, due to bug #58629. https://bugzilla.xamarin.com/show_bug.cgi?id=58629 * [tests][introspection] CXCall started implementing NSCopying without saying so in the headers. * Disable mmp static registrar tests due to 58629 for now * [quicklook] Update to beta 5 (#2450) * [photos] Update for beta 5 (#2452) Also update some existing enum members were added in beta 1 on macOS * [safariservices] Update for beta 5 (#2455) * [mediaplayer] Update to beta 5 (#2456) * [CoreLocation] Update Xcode 9 Beta 5 (#2453) * [CoreML] Update to Xcode 9 Beta 5 (#2454) * [Contacts] Update to Xcode 9 Beta 5 (#2451) * [Vision] Update to Xcode 9 Beta 5 (#2458) * [builds] Tell LLVM to stay away from newer macOS functions. (#2459) Fixes this build problem on Sierra: > ld: weak import of symbol '_futimens' not supported because of option: -no_weak_imports for architecture x86_64 This is a symbol that was (will be?) introduced in High Sierra. Interestingly this only occurs if the Xcode 8.X Command Line Tools haven't been manually installed. Because if the Xcode 8.X Command Line Tools are installed, this happens: 1. llvm's configure script detects that 'futimens' is not usable. 2. llvm's configure script detects that 'futimens' is not usable, because xcrun sets SDKROOT=/ when calling clang. a. When the SDKROOT variable is set, clang passes '-syslibroot /usr/lib' to ld. b. When ld gets '-syslibroot /usr/lib', ld looks in '/usr/lib' for a library that contains 'futimens' in the OS itself, and since we're on Sierra, that fails to link. c. So when llvm's configure script creates a test program that checks if 'futimens' is present, the program fails. This is correct, and makes llvm *not* use futimens. 3. xcrun sets SDKROOT=/ because /usr/share/current-os.sdk/Info.plist exists. If that file does not exist, then xcrun sets SDKROOT to Xcode9's macOS SDK (because that's what xcode-select reports). a. When SDKROOT is set to Xcode9's macOS SDK, the configure check for 'futimens' succeeds, because the macOS 10.13 SDK contains that function. b. llvm happily uses 'futimens', and then the final link fails because we're using a symbol not available on all target platforms. * [arkit] Update for Xcode 9 beta 5 - Part 1 (#2460) * [tests] The container app for watchOS tests should be 64-bit. (#2463) * [xharness] watchOS tests need to run in a clean environment. Works around #58348. (#2462) https://bugzilla.xamarin.com/show_bug.cgi?id=58348 * [xharness] It watchOS tests don't need to be clean anymore. Fixes #58348. (#2473) https://bugzilla.xamarin.com/show_bug.cgi?id=58348 * [uikit] UIView/UIScrollView/UIViewController up to Xcode 9 beta 5 (#2431) - Add NSDirectionalEdgeInsets type. - Includes DirectionalEdgeInsetsTest. * [AudioToolbox] Update bindings to Xcode 9 beta3 (not later changes). (#2294) * [xharness] Add a file existence check. (#2478) Fixes this exception: ``` Harness exception for 'introspection': System.IO.FileNotFoundException: Could not find file '/Users/builder/Library/Logs/CoreSimulator/27618A4A-7E49-4BAB-8F77-FA938CE88682/system.log'. File name: '/Users/builder/Library/Logs/CoreSimulator/27618A4A-7E49-4BAB-8F77-FA938CE88682/system.log' at System.IO.__Error.WinIOError (System.Int32 errorCode, System.String maybeFullPath) [0x00207] in /private/tmp/source-mono-2017-04/bockbuild-2017-04/profiles/mono-mac-xamarin/build-root/mono-x64/mcs/class/referencesource/mscorlib/system/io/__error.cs:188 at System.IO.FileInfo.get_Length () [0x00038] in /private/tmp/source-mono-2017-04/bockbuild-2017-04/profiles/mono-mac-xamarin/build-root/mono-x64/mcs/class/referencesource/mscorlib/system/io/fileinfo.cs:171 at xharness.CaptureLog.StopCapture () [0x00021] in /Users/builder/jenkins/workspace/xamarin-macios-pr-builder/tests/xharness/Log.cs:252 at (wrapper remoting-invoke-with-check) xharness.CaptureLog:StopCapture () at xharness.AppRunner+<RunAsync>d__68.MoveNext () [0x0127f] in /Users/builder/jenkins/workspace/xamarin-macios-pr-builder/tests/xharness/AppRunner.cs:642 --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x0000c] in /private/tmp/source-mono-2017-04/bockbuild-2017-04/profiles/mono-mac-xamarin/build-root/mono-x64/mcs/class/referencesource/mscorlib/system/runtime/exceptionservices/exceptionservicescommon.cs:151 at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Threading.Tasks.Task task) [0x00037] in /private/tmp/source-mono-2017-04/bockbuild-2017-04/profiles/mono-mac-xamarin/build-root/mono-x64/mcs/class/referencesource/mscorlib/system/runtime/compilerservices/TaskAwaiter.cs:187 at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Threading.Tasks.Task task) [0x00028] in /private/tmp/source-mono-2017-04/bockbuild-2017-04/profiles/mono-mac-xamarin/build-root/mono-x64/mcs/class/referencesource/mscorlib/system/runtime/compilerservices/TaskAwaiter.cs:156 at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd (System.Threading.Tasks.Task task) [0x00008] in /private/tmp/source-mono-2017-04/bockbuild-2017-04/profiles/mono-mac-xamarin/build-root/mono-x64/mcs/class/referencesource/mscorlib/system/runtime/compilerservices/TaskAwaiter.cs:128 at System.Runtime.CompilerServices.TaskAwaiter`1[TResult].GetResult () [0x00000] in /private/tmp/source-mono-2017-04/bockbuild-2017-04/profiles/mono-mac-xamarin/build-root/mono-x64/mcs/class/referencesource/mscorlib/system/runtime/compilerservices/TaskAwaiter.cs:357 at xharness.RunSimulatorTask+<RunTestAsync>d__7.MoveNext () [0x0029d] in /Users/builder/jenkins/workspace/xamarin-macios-pr-builder/tests/xharness/Jenkins.cs:2894 --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x0000c] in /private/tmp/source-mono-2017-04/bockbuild-2017-04/profiles/mono-mac-xamarin/build-root/mono-x64/mcs/class/referencesource/mscorlib/system/runtime/exceptionservices/exceptionservicescommon.cs:151 at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Threading.Tasks.Task task) [0x00037] in /private/tmp/source-mono-2017-04/bockbuild-2017-04/profiles/mono-mac-xamarin/build-root/mono-x64/mcs/class/referencesource/mscorlib/system/runtime/compilerservices/TaskAwaiter.cs:187 at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Threading.Tasks.Task task) [0x00028] in /private/tmp/source-mono-2017-04/bockbuild-2017-04/profiles/mono-mac-xamarin/build-root/mono-x64/mcs/class/referencesource/mscorlib/system/runtime/compilerservices/TaskAwaiter.cs:156 at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd (System.Threading.Tasks.Task task) [0x00008] in /private/tmp/source-mono-2017-04/bockbuild-2017-04/profiles/mono-mac-xamarin/build-root/mono-x64/mcs/class/referencesource/mscorlib/system/runtime/compilerservices/TaskAwaiter.cs:128 at System.Runtime.CompilerServices.TaskAwaiter.GetResult () [0x00000] in /private/tmp/source-mono-2017-04/bockbuild-2017-04/profiles/mono-mac-xamarin/build-root/mono-x64/mcs/class/referencesource/mscorlib/system/runtime/compilerservices/TaskAwaiter.cs:113 at xharness.RunTestTask+<ExecuteAsync>d__8.MoveNext () [0x0010b] in /Users/builder/jenkins/workspace/xamarin-macios-pr-builder/tests/xharness/Jenkins.cs:2538 --- End of stack trace from previous location where exception was thrown --- at System.Runtime.ExceptionServices.ExceptionDispatchInfo.Throw () [0x0000c] in /private/tmp/source-mono-2017-04/bockbuild-2017-04/profiles/mono-mac-xamarin/build-root/mono-x64/mcs/class/referencesource/mscorlib/system/runtime/exceptionservices/exceptionservicescommon.cs:151 at System.Runtime.CompilerServices.TaskAwaiter.ThrowForNonSuccess (System.Threading.Tasks.Task task) [0x00037] in /private/tmp/source-mono-2017-04/bockbuild-2017-04/profiles/mono-mac-xamarin/build-root/mono-x64/mcs/class/referencesource/mscorlib/system/runtime/compilerservices/TaskAwaiter.cs:187 at System.Runtime.CompilerServices.TaskAwaiter.HandleNonSuccessAndDebuggerNotification (System.Threading.Tasks.Task task) [0x00028] in /private/tmp/source-mono-2017-04/bockbuild-2017-04/profiles/mono-mac-xamarin/build-root/mono-x64/mcs/class/referencesource/mscorlib/system/runtime/compilerservices/TaskAwaiter.cs:156 at System.Runtime.CompilerServices.TaskAwaiter.ValidateEnd (System.Threading.Tasks.Task task) [0x00008] in /private/tmp/source-mono-2017-04/bockbuild-2017-04/profiles/mono-mac-xamarin/build-root/mono-x64/mcs/class/referencesource/mscorlib/system/runtime/compilerservices/TaskAwaiter.cs:128 at System.Runtime.CompilerServices.TaskAwaiter.GetResult () [0x00000] in /private/tmp/source-mono-2017-04/bockbuild-2017-04/profiles/mono-mac-xamarin/build-root/mono-x64/mcs/class/referencesource/mscorlib/system/runtime/compilerservices/TaskAwaiter.cs:113 at xharness.TestTask+<RunInternalAsync>d__87.MoveNext () [0x0010d] in /Users/builder/jenkins/workspace/xamarin-macios-pr-builder/tests/xharness/Jenkins.cs:1870 ``` I'm not sure how this can happen, but it has on the bots [1]. [1] https://jenkins.mono-project.com/job/xamarin-macios-pr-builder/4548/Test_Report/ * Bump versions for preview 5 (#2479) * [passkit] Update to beta 5 (#2481) * [tests] Remove workaround for radar #32688391. (#2486) * [replaykit] Update up to beta 5 (#2484) * Bump maccore to get fix for bug #55064. (#2487) * [apidiff] Update definition to new 10.12 (d15-3) stable release (#2490) * [SceneKit] basic work (#2483) * [coredata] Update to beta 5 (#2488) * [homekit] Update for Xcode 9 beta 5 (#2492) * [Foundation] Update for xcode9 (#2468) * [Intents] Add bindings for Xcode 9 Beta 1, 2, 3, 4 & 5 (#2493) * [Intents] Add bindings for Xcode 9 Beta 1, 2, 3, 4 & 5 * [Intents] Implement feedback * [Intents] Add a generic version for INInteraction.GetParameterValue * [Intents] Missing check * [Contacts] Add missing foundation NSItemProviderWriting protocol to CNContact (#2496) https://bugzilla.xamarin.com/show_bug.cgi?id=58203 This is available on all Contacts supported platforms ``` ./iPhoneOS.platform/Developer/SDKs/iPhoneOS11.0.sdk/System/Library/Frameworks/Contacts.framework/Headers/CNContact+NSItemProvider.h:@interface CNContact (NSItemProvider) <NSItemProviderReading, NSItemProviderWriting> ./iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.0.sdk/System/Library/Frameworks/Contacts.framework/Headers/CNContact+NSItemProvider.h:@interface CNContact (NSItemProvider) <NSItemProviderReading, NSItemProviderWriting> ./MacOSX.platform/Developer/SDKs/MacOSX10.13.sdk/System/Library/Frameworks/Contacts.framework/Headers/CNContact+NSItemProvider.h:@interface CNContact (NSItemProvider) <NSItemProviderReading, NSItemProviderWriting> ./WatchOS.platform/Developer/SDKs/WatchOS4.0.sdk/System/Library/Frameworks/Contacts.framework/Headers/CNContact+NSItemProvider.h:@interface CNContact (NSItemProvider) <NSItemProviderReading, NSItemProviderWriting> ./WatchSimulator.platform/Developer/SDKs/WatchSimulator4.0.sdk/System/Library/Frameworks/Contacts.framework/Headers/CNContact+NSItemProvider.h:@interface CNContact (NSItemProvider) <NSItemProviderReading, NSItemProviderWriting> ``` * [IntentsUI] Update to Xcode 9 Beta 1 & 2 (No changes on later betas) (#2497) * [IntentsUI] Update to Xcode 9 Beta 1 & 2 (No changes on later betas) * [IntentsUI] Better use a delegate instead so we have named params * Bump versions before 6th preview (#2514) * [arkit] Add missing MarshalDirective to ARPlaneAnchor (#2517) - Fixes bug #58648: ARPlaneAnchor.Extent property seems incorrect but changes to correct value after Debug access (https://bugzilla.xamarin.com/show_bug.cgi?id=58648) * [xtro-sharpie] Fix a compiler warning. (#2516) Fixes these warnings: Runner.cs(197,5): warning CS0642: Possible mistaken empty statement Runner.cs(199,5): warning CS0642: Possible mistaken empty statement Runner.cs(201,5): warning CS0642: Possible mistaken empty statement Runner.cs(203,5): warning CS0642: Possible mistaken empty statement Runner.cs(205,5): warning CS0642: Possible mistaken empty statement * [uikit] Update for Xcode 9 beta 5 - Part 3 (#2511) - UIKeyCommand - UINavigationBar - UINavigationItem - UIPasteboard - UITableViewHeaderFooterView * [xtro-sharpie] Remove xtro-plugin and misc other fixes. (#2522) * [xtro-sharpie] Build with msbuild and be as quiet as requested when building. * [xtro-sharpie] Must run as a 64-bit process, since the required native libraries are 64-bit. * [xtro-sharpie] Add run configurations to the project file to ease debugging in the IDE. * [xtro-sharpie] Remove xtro-plugin and the related commands. This was needed when there wasn't a 64-bit mono, in order to run xtro-sharpie in a 64-bit process. Now there is a 64-bit mono, so it's not needed anymore. Also improve makefile targets a bit, to auto-build stuff when needed, by setting the right dependencies. * Bump Xcode 9 to beta 6 (#2519) Disable watchOS tests again It seems like the Carousel crash from beta 4 is back to haunt us. This was working fine with beta 5. * Backport d15-3 SR2 fixes (#2515) * [coredata] Update to beta 6 (#2528) This seems to only revert some nullability changes from beta 5. * [coreml] Update to beta 6 (#2531) Fix our rdar 33643011 where additional setters were added in the headers but did not exists. * [videosubscriberaccount] Update to beta 6 (#2533) Only b1 and b2 introduced some additions/changes * [uikit] Update for Xcode 9 beta 6 - Part 4 (#2527) The following headers are now up to date: - UICollectionViewFlowLayout.h - UIDocumentPickerViewController.h - UIFontDescriptor.h - UIImage.h - UIImageView.h - UIImagePickerController.h * [xharness] Re-enable the watchOS tests. (#2534) It works fine for me locally, so let's see what Jenkins says. * [macos] Add new APIs in CoreWlan from Xcode9b3 (#2525) * Update AppKit bindings based on radar 33271241 results (#2518) * 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 * [vision] Update to beta 6 (#2532) Removal of some deprecated (during beta) `init*` selectors. Also sync the versions that were inlined in subclasses - the old ones were not removed and the new ones were not added. * [xtro-sharpie] Many methods don't have selectors in Clang's API, so default to the name if no selector. (#2523) This makes a few more unclassified entries show up (mostly missing designated initializers): https://gist.github.com/rolfbjarne/07aa20f9b50b75bf3e69ac6a825e873a * [macos] Add ExternalAccessory APIs from xcode9 (#2526) * [58851] Disable NSMenuView in AllItemsWithNSMenuShouldAllowNull (#2504) * [arkit] Update for Xcode 9 beta 5 - Part 2 (#2505) - Add last missing selector. - Add tests for manual code. * [monotouch-test] Disable FontDescriptorTest.WithFeature (#2537) Disabled because it looks like the tvOS font we use: "Gujarati Sangam MN" does not have rare ligatures anymore (and the entire test is based on it). Before getting an actual fix for that, let's disable the test so it doesn't break all current builds. See: https://bugzilla.xamarin.com/show_bug.cgi?id=58929 * [xtro-sharpie] Teach xtro-sharpie about how to get protocol name from the ProtocolAttribute. (#2524) Teach xtro-sharpie about how to get protocol name from the ProtocolAttribute to calculate the native name for a TypeDefinition. Unclassified changes: https://gist.github.com/rolfbjarne/828f8ee41eebb0a3b60a38d71822fe59 * [foundation/uikit] Inline NSItemProvider_UIKitAdditions in NSItemProvider (#2538) As suggested here: https://github.com/xamarin/xamarin-macios/pull/2527#discussion_r134670981 * [intents] Fix breaking changes (api-diff) (#2543) Additions of @required members inside `INSpeakable` cannot be `[Abstract]` * [contacts] Fix breaking change (api-diff) (#2542) Type Changed: Contacts.CNPostalAddress Removed method: public static string LocalizeProperty (CNPostalAddressKeyOption option); * [macos] Reenable static registrar since Xcode9b6 un-broke SDK headers (#2544) - Fix a subtle spacing issues in PartialStaticLibrary property * [corebluetooth] Update up to beta 6 and enable it on watchOS (#2540) macOS 10.13 has finally catch up with iOS and this simplifies the bindings a bit. * [foundation] API fixes (apidiff) (#2545) 1. Let's not add new, already [Obsolete] API Type Changed: Foundation.NSDimension Added constructors: [Obsolete ("Not intended to be directly instantiated, this is an abstract class.")] public NSDimension (); 2. Fix inconsistently named API, e.g. Type Changed: Foundation.NSAttributedString Added properties: public static string[] ReadableTypeIdentifiersForItemProvider { get; } public static string[] WritableTypeIdentifiers { get; } * [pdfkit] Do not add already [Obsolete] API in new profiles (#2547) and ensure using the newer, correct API works cross-platforms iOS (before) [Obsolete ("Use 'Find (string, NSStringCompareOptions)' instead.")] public virtual PdfSelection[] Find (string text, nint options); public PdfSelection Find (string text, PdfSelection selection, Foundation.NSStringCompareOptions compareOptions); [Obsolete ("Use 'Find (string, PdfSelection, NSStringCompareOptions)' instead.")] public virtual PdfSelection Find (string text, PdfSelection selection, nint options); public void FindAsync (string text, Foundation.NSStringCompareOptions compareOptions); [Obsolete ("Use 'FindAsync (string, NSStringCompareOptions)' instead.")] public virtual void FindAsync (string text, nint options); public void FindAsync (string[] text, Foundation.NSStringCompareOptions compareOptions); [Obsolete ("Use 'FindAsync (string [], NSStringCompareOptions)' instead.")] public virtual void FindAsync (string[] text, nint options); iOS (after) public virtual PdfSelection[] Find (string text, Foundation.NSStringCompareOptions compareOptions); public virtual PdfSelection Find (string text, PdfSelection selection, Foundation.NSStringCompareOptions compareOptions); public virtual void FindAsync (string text, Foundation.NSStringCompareOptions compareOptions); public virtual void FindAsync (string[] text, Foundation.NSStringCompareOptions compareOptions); * Bump versions for the 7th preview (#2541) * Remove additions of AVKit removed in beta5 (#2536) * NSUrlSessionTask should implement NSProgressReporting for iOS (#2548) NSUrlSessionTask implements NSProgressReporting on iOS as well as Mac, so the #if MONOMAC isn't needed. * Add missing availability attributes causing failures on older iOS versions (#2550) * [vision] Minor fix wrt xtro (#2551) including some things we need to ignore manually !missing-field! VNVisionVersionNumber not bound !missing-pinvoke! VNImagePointForFaceLandmarkPoint is not bound !missing-pinvoke! VNNormalizedFaceBoundingBoxPointForLandmarkPoint is not bound * [uikit] NSFileProviderMessaging was removed in beta 2. Fixes #58222 (#2552) reference: https://bugzilla.xamarin.com/show_bug.cgi?id=58222 * [uikit] Update for Xcode 9 - Part 5 (#2546) Bindings for the following headers: - UIActivity.h - UIActivityItemProvider.h - UIAlertController.h - UIApplication.h - UIBarButtonItem.h - UIButton.h - UICollectionViewLayout.h - UIColor.h - UIControl.h - UIDocumentMenuViewController.h - UIFontMetrics.h - UIGestureRecognizer.h - UIGraphicsImageRenderer.h - UIInputViewController.h * [CoreText] Fix an extraneous free in CTFont.GetDefaultCascadeList. (#2555) We do not own the return value from CFArrayGetValueAtIndex, so don't say we do when creating CTFontDescriptor instances, since that leads to angry dragons: 2017-08-28 20:15:20.293 monotouchtest[33186:2311738] A_FontTest 2017-08-28 20:15:20.294 monotouchtest[33186:2311738] [PASS] A_FontTest.CTFontCreateWithFontDescriptorAndOptions 2017-08-28 20:15:20.295 monotouchtest[33186:2311738] [PASS] A_FontTest.CTFontCreateWithNameAndOptions 2017-08-28 20:15:20.296 monotouchtest[33186:2311738] critical: Stacktrace: at <unknown> <0xffffffff> at (wrapper managed-to-native) CoreText.CTFont.CTFontCopyDefaultCascadeListForLanguages (intptr,intptr) [0x0000a] in <ae65a2b1eea242d2b68fe784749543bf>:0 at CoreText.CTFont.GetDefaultCascadeList (string[]) [0x00013] in /work/maccore/xcode9/xamarin-macios/src/CoreText/CTFont.cs:2185 at MonoTouchFixtures.CoreText.A_FontTest.GetCascadeList () [0x0001e] in /work/maccore/xcode9/xamarin-macios/tests/monotouch-test/CoreText/FontTest.cs:78 at (wrapper runtime-invoke) object.runtime_invoke_void__this__ (object,intptr,intptr,intptr) [0x0004f] in <7c58d77f8ca548d5b9b32e70a64ba2fd>:0 at <unknown> <0xffffffff> at (wrapper managed-to-native) System.Reflection.MonoMethod.InternalInvoke (System.Reflection.MonoMethod,object,object[],System.Exception&) [0x00016] in <7c58d77f8ca548d5b9b32e70a64ba2fd>:0 at System.Reflection.MonoMethod.Invoke (object,System.Reflection.BindingFlags,System.Reflection.Binder,object[],System.Globalization.CultureInfo) [0x00032] in /work/maccore/xcode9/xamarin-macios/external/mono/mcs/class/corlib/System.Reflection/MonoMethod.cs:305 at System.Reflection.MethodBase.Invoke (object,object[]) [0x00000] in /work/maccore/xcode9/xamarin-macios/external/mono/mcs/class/referencesource/mscorlib/system/reflection/methodbase.cs:229 at NUnit.Framework.Internal.Reflect.InvokeMethod (System.Reflection.MethodInfo,object,object[]) [0x00009] in /work/maccore/xcode9/xamarin-macios/external/mono/external/nunit-lite/NUnitLite-1.0.0/src/framework/Internal/Reflect.cs:215 at NUnit.Framework.Internal.Commands.TestMethodCommand.RunNonAsyncTestMethod (NUnit.Framework.Internal.TestExecutionContext) [0x00025] in /work/maccore/xcode9/xamarin-macios/external/mono/external/nunit-lite/NUnitLite-1.0.0/src/framework/Internal/Commands/TestMethodCommand.cs:116 at NUnit.Framework.Internal.Commands.TestMethodCommand.RunTestMethod (NUnit.Framework.Internal.TestExecutionContext) [0x0001a] in /work/maccore/xcode9/xamarin-macios/external/mono/external/nunit-lite/NUnitLite-1.0.0/src/framework/Internal/Commands/TestMethodCommand.cs:90 at NUnit.Framework.Internal.Commands.TestMethodCommand.Execute (NUnit.Framework.Internal.TestExecutionContext) [0x00000] in /work/maccore/xcode9/xamarin-macios/external/mono/external/nunit-lite/NUnitLite-1.0.0/src/framework/Internal/Commands/TestMethodCommand.cs:66 at NUnit.Framework.Internal.Commands.SetUpTearDownCommand.Execute (NUnit.Framework.Internal.TestExecutionContext) [0x00007] in /work/maccore/xcode9/xamarin-macios/external/mono/external/nunit-lite/NUnitLite-1.0.0/src/framework/Internal/Commands/SetUpTearDownCommand.cs:84 at NUnit.Framework.Internal.WorkItems.SimpleWorkItem.PerformWork () [0x00000] in /work/maccore/xcode9/xamarin-macios/external/mono/external/nunit-lite/NUnitLite-1.0.0/src/framework/Internal/WorkItems/SimpleWorkItem.cs:64 at NUnit.Framework.Internal.WorkItems.WorkItem.RunTest () [0x00071] in /work/maccore/xcode9/xamarin-macios/external/mono/external/nunit-lite/NUnitLite-1.0.0/src/framework/Internal/WorkItems/WorkItem.cs:196 at NUnit.Framework.Internal.WorkItems.WorkItem.Execute (NUnit.Framework.Internal.TestExecutionContext) [0x00063] in /work/maccore/xcode9/xamarin-macios/external/mono/external/nunit-lite/NUnitLite-1.0.0/src/framework/Internal/WorkItems/WorkItem.cs:136 at NUnit.Framework.Internal.WorkItems.CompositeWorkItem.RunChildren () [0x00035] in /work/maccore/xcode9/xamarin-macios/external/mono/external/nunit-lite/NUnitLite-1.0.0/src/framework/Internal/WorkItems/CompositeWorkItem.cs:154 at NUnit.Framework.Internal.WorkItems.CompositeWorkItem.PerformWork () [0x000de] in /work/maccore/xcode9/xamarin-macios/external/mono/external/nunit-lite/NUnitLite-1.0.0/src/framework/Internal/WorkItems/CompositeWorkItem.cs:93 at NUnit.Framework.Internal.WorkItems.WorkItem.RunTest () [0x00071] in /work/maccore/xcode9/xamarin-macios/external/mono/external/nunit-lite/NUnitLite-1.0.0/src/framework/Internal/WorkItems/WorkItem.cs:196 at NUnit.Framework.Internal.WorkItems.WorkItem.Execute (NUnit.Framework.Internal.TestExecutionContext) [0x00063] in /work/maccore/xcode9/xamarin-macios/external/mono/external/nunit-lite/NUnitLite-1.0.0/src/framework/Internal/WorkItems/WorkItem.cs:136 at NUnit.Framework.Internal.WorkItems.CompositeWorkItem.RunChildren () [0x00035] in /work/maccore/xcode9/xamarin-macios/external/mono/external/nunit-lite/NUnitLite-1.0.0/src/framework/Internal/WorkItems/CompositeWorkItem.cs:154 at NUnit.Framework.Internal.WorkItems.CompositeWorkItem.PerformWork () [0x000de] in /work/maccore/xcode9/xamarin-macios/external/mono/external/nunit-lite/NUnitLite-1.0.0/src/framework/Internal/WorkItems/CompositeWorkItem.cs:93 at NUnit.Framework.Internal.WorkItems.WorkItem.RunTest () [0x00071] in /work/maccore/xcode9/xamarin-macios/external/mono/external/nunit-lite/NUnitLite-1.0.0/src/framework/Internal/WorkItems/WorkItem.cs:196 at NUnit.Framework.Internal.WorkItems.WorkItem.Execute (NUnit.Framework.Internal.TestExecutionContext) [0x00063] in /work/maccore/xcode9/xamarin-macios/external/mono/external/nunit-lite/NUnitLite-1.0.0/src/framework/Internal/WorkItems/WorkItem.cs:136 at NUnit.Framework.Internal.WorkItems.CompositeWorkItem.RunChildren () [0x00035] in /work/maccore/xcode9/xamarin-macios/external/mono/external/nunit-lite/NUnitLite-1.0.0/src/framework/Internal/WorkItems/CompositeWorkItem.cs:154 at NUnit.Framework.Internal.WorkItems.CompositeWorkItem.PerformWork () [0x000de] in /work/maccore/xcode9/xamarin-macios/external/mono/external/nunit-lite/NUnitLite-1.0.0/src/framework/Internal/WorkItems/CompositeWorkItem.cs:93 at NUnit.Framework.Internal.WorkItems.WorkItem.RunTest () [0x00071] in /work/maccore/xcode9/xamarin-macios/external/mono/external/nunit-lite/NUnitLite-1.0.0/src/framework/Internal/WorkItems/WorkItem.cs:196 at NUnit.Framework.Internal.WorkItems.WorkItem.Execute (NUnit.Framework.Internal.TestExecutionContext) [0x00063] in /work/maccore/xcode9/xamarin-macios/external/mono/external/nunit-lite/NUnitLite-1.0.0/src/framework/Internal/WorkItems/WorkItem.cs:136 at MonoTouch.NUnit.UI.BaseTouchRunner.Run (NUnit.Framework.Internal.Test) [0x0004d] in /work/maccore/xcode9/xamarin-macios/external/Touch.Unit/NUnitLite/TouchRunner/TouchRunner.cs:442 at MonoTouch.NUnit.UI.BaseTouchRunner.Run () [0x00030] in /work/maccore/xcode9/xamarin-macios/external/Touch.Unit/NUnitLite/TouchRunner/TouchRunner.cs:171 at MonoTouch.Dialog.StringElement.Selected (MonoTouch.Dialog.DialogViewController,UIKit.UITableView,Foundation.NSIndexPath) [0x00008] in /work/maccore/xcode9/xamarin-macios/external/MonoTouch.Dialog/MonoTouch.Dialog/Elements.cs:765 at MonoTouch.Dialog.DialogViewController.Selected (Foundation.NSIndexPath) [0x00026] in /work/maccore/xcode9/xamarin-macios/external/MonoTouch.Dialog/MonoTouch.Dialog/DialogViewController.cs:577 at MonoTouch.Dialog.DialogViewController/Source.RowSelected (UIKit.UITableView,Foundation.NSIndexPath) [0x00016] in /work/maccore/xcode9/xamarin-macios/external/MonoTouch.Dialog/MonoTouch.Dialog/DialogViewController.cs:402 at (wrapper runtime-invoke) <Module>.runtime_invoke_void__this___object_object (object,intptr,intptr,intptr) [0x0005d] in <32f0c196c5bc4aa18daea2ee64a7814e>:0 at <unknown> <0xffffffff> at (wrapper managed-to-native) UIKit.UIApplication.UIApplicationMain (int,string[],intptr,intptr) [0x0005c] in <ae65a2b1eea242d2b68fe784749543bf>:0 at UIKit.UIApplication.Main (string[],intptr,intptr) [0x00005] in /work/maccore/xcode9/xamarin-macios/src/UIKit/UIApplication.cs:79 at UIKit.UIApplication.Main (string[],string,string) [0x00038] in /work/maccore/xcode9/xamarin-macios/src/UIKit/UIApplication.cs:63 at monotouchtest.Application.Main (string[]) [0x00011] in /work/maccore/xcode9/xamarin-macios/tests/monotouch-test/Main.cs:27 at (wrapper runtime-invoke) <Module>.runtime_invoke_void_object (object,intptr,intptr,intptr) [0x00051] in <30a7f7e09de9467b8b454221034a0e38>:0 Native stacktrace: 0 monotouchtest 0x000000010fca03c4 mono_handle_native_crash + 244 1 monotouchtest 0x000000010fcadd30 mono_sigsegv_signal_handler + 288 2 libsystem_platform.dylib 0x000000011feb3b3a _sigtramp + 26 3 CoreFoundation 0x000000011de035a2 computeSanitizedString + 146 4 CoreText 0x00000001168df314 _ZN15TPurgeableCache19RetainedValueForKeyEPKv + 54 5 CoreText 0x00000001168def85 _ZNK17TDescriptorSource22CopyDescriptorUncachedEPK7__CFURLbPK10__CFString + 55 6 CoreText 0x00000001168df34f _ZNK17TDescriptorSource14CopyDescriptorEPK7__CFURLbPK10__CFString + 27 7 CoreText 0x00000001168e20ad _ZNK17TDescriptorSource35CopyFontDescriptorPerPostScriptNameEPK10__CFStringmm + 297 8 CoreText 0x00000001168dfd9e _ZNK17TDescriptorSource30CopySystemFontDescriptorByNameEPK10__CFString10UIFontFlag + 54 9 CoreText 0x00000001168e54c4 _ZNK14TFontFallbacks17CopyFontFallbacksEPK10__CFStringS2_PK9__CFArray + 652 10 CoreText 0x00000001168e4a00 _ZNK14TFontFallbacks29CopyFontFallbacksForLanguagesEPK10__CFStringPK9__CFArray + 122 11 CoreText 0x00000001168e4971 _ZN17TDescriptorSource39CopyDefaultSubstitutionListForLanguagesEPK10__CFStringPK9__CFArray + 61 12 CoreText 0x00000001169397a7 _ZNK9TBaseFont28CreateSystemDefaultFallbacksEPK10__CFStringPK9__CFArray + 51 13 CoreText 0x000000011693999c _ZNK9TBaseFont15CreateFallbacksE10UIFontFlagPPK16__CFCharacterSetPK9__CFArray + 346 14 CoreText 0x00000001168c1036 _ZNK5TFont24CreateDefaultCascadeListEPK9__CFArray + 242 15 CoreText 0x00000001168b8ff9 CTFontCopyDefaultCascadeListForLanguages + 97 16 ??? 0x0000000140eaefd3 0x0 + 5384105939 17 ??? 0x0000000140eae761 0x0 + 5384103777 18 ??? 0x000000013c9c8e74 0x0 + 5311860340 19 monotouchtest 0x000000010fcb0c89 mono_jit_runtime_invoke + 1273 20 monotouchtest 0x000000010fd6e3a8 do_runtime_invoke + 88 21 monotouchtest 0x000000010fd71bac mono_runtime_try_invoke_array + 1292 22 monotouchtest 0x000000010fd15587 ves_icall_InternalInvoke + 647 23 ??? 0x000000013e9fcd13 0x0 + 5345627411 24 ??? 0x000000013e9fc738 0x0 + 5345625912 25 ??? 0x000000013e9fded5 0x0 + 5345631957 26 ??? 0x000000013e9fbb76 0x0 + 5345622902 27 ??? 0x000000013e9e237e 0x0 + 5345518462 28 ??? 0x000000013e9e237e 0x0 + 5345518462 29 ??? 0x000000013e9e237e 0x0 + 5345518462 30 ??? 0x000000013e9e237e 0x0 + 5345518462 31 ??? 0x000000013e873006 0x0 + 5344014342 32 monotouchtest 0x000000010fcb0c89 mono_jit_runtime_invoke + 1273 33 monotouchtest 0x000000010fd6e3a8 do_runtime_invoke + 88 34 monotouchtest 0x000000010fd6e320 mono_runtime_invoke + 208 35 monotouchtest 0x000000010fe71af1 xamarin_invoke_trampoline + 5617 36 monotouchtest 0x000000010fe79ddd xamarin_arch_trampoline + 189 37 monotouchtest 0x000000010fe7b1a1 xamarin_x86_64_common_trampoline + 110 38 UIKit 0x0000000111b9876b -[UITableView _selectRowAtIndexPath:animated:scrollPosition:notifyDelegate:] + 1810 39 UIKit 0x0000000111b98986 -[UITableView _userSelectRowAtPendingSelectionIndexPath:] + 344 40 UIKit 0x0000000111a6b5c9 _runAfterCACommitDeferredBlocks + 318 41 UIKit 0x0000000111a59dad _cleanUpAfterCAFlushAndRunDeferredBlocks + 280 42 UIKit 0x0000000111a89f68 _afterCACommitHandler + 137 43 CoreFoundation 0x000000011de3ddb7 __CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION__ + 23 44 CoreFoundation 0x000000011de3dd0e __CFRunLoopDoObservers + 430 45 CoreFoundation 0x000000011de22324 __CFRunLoopRun + 1572 46 CoreFoundation 0x000000011de21a89 CFRunLoopRunSpecific + 409 47 GraphicsServices 0x0000000121b7e9c6 GSEventRunModal + 62 48 UIKit 0x0000000111a5f7d0 UIApplicationMain + 159 49 ??? 0x000000013c9c4474 0x0 + 5311841396 50 ??? 0x000000013c9c40ad 0x0 + 5311840429 ================================================================= Got a SIGSEGV while executing native code. This usually indicates a fatal error in the mono runtime or one of the native libraries used by your application. ================================================================= * [monotouch-test] Don't subclass MKMapView. (#2556) MKMapView doesn't like being subclassed (Apple says "you should not subclass the MKMapView class itself"). Bad things like this starts happening: Thread 0 name: tid_303 Dispatch queue: com.apple.main-thread Thread 0 Crashed: 0 libsystem_kernel.dylib 0x0000000186b25348 __pthread_kill + 8 1 libsystem_pthread.dylib 0x0000000186c39354 pthread_kill$VARIANT$mp + 396 2 libsystem_c.dylib 0x0000000186a94fd8 abort + 140 3 monotouchtest 0x0000000101c02c14 mono_handle_native_crash + 22047764 (mini-exceptions.c:2548) 4 monotouchtest 0x0000000101c0d02c mono_sigsegv_signal_handler + 22089772 (mini-runtime.c:2886) 5 libsystem_platform.dylib 0x0000000186c33b60 _sigtramp + 52 6 CoreFoundation 0x0000000186f93108 cow_cleanup + 112 7 CoreFoundation 0x0000000186f93108 cow_cleanup + 112 8 CoreFoundation 0x0000000186eda51c -[__NSArrayM dealloc] + 68 9 CoreFoundation 0x000000018703f5c8 __CFBasicHashDrain + 312 10 CoreFoundation 0x0000000186fb5b44 _CFRelease + 224 11 CoreText 0x000000018a808404 TDescriptorSource::PurgeFontFallbacksCache+ 488452 () + 92 12 CoreText 0x000000018a808374 TDescriptorSource::PurgeFromCaches+ 488308 (__CFURL const*) const + 176 13 CoreText 0x000000018a7eec74 CTFontRemoveFromCaches + 168 14 VectorKit 0x0000000196a539b0 +[VKSharedResourcesManager removeResourceUser:] + 324 15 VectorKit 0x0000000196ca27a4 md::MapEngine::~MapEngine+ 2643876 () + 360 16 VectorKit 0x0000000196ca2634 md::MapEngine::~MapEngine+ 2643508 () + 12 17 libobjc.A.dylib 0x000000018651eef4 object_cxxDestructFromClass+ 28404 (objc_object*, objc_class*) + 148 18 libobjc.A.dylib 0x000000018652c638 objc_destructInstance + 88 19 libobjc.A.dylib 0x000000018652c690 object_dispose + 16 20 QuartzCore 0x000000018afca3ac -[CALayer dealloc] + 116 21 VectorKit 0x0000000196a43294 -[VKMapView dealloc] + 940 22 QuartzCore 0x000000018af6aafc CA::release_objects+ 744188 (X::List<void const*>*) + 32 23 QuartzCore 0x000000018afd97d8 CA::Layer::~Layer+ 1198040 () + 276 24 QuartzCore 0x000000018afca37c -[CALayer dealloc] + 68 25 QuartzCore 0x000000018af6b16c CA::Transaction::commit+ 745836 () + 1052 26 UIKit 0x0000000190393290 _afterCACommitHandler + 256 27 CoreFoundation 0x0000000186fb38b8 __CFRUNLOOP_IS_CALLING_OUT_TO_AN_OBSERVER_CALLBACK_FUNCTION__ + 32 28 CoreFoundation 0x0000000186fb1270 __CFRunLoopDoObservers + 412 29 CoreFoundation 0x0000000186fb182c __CFRunLoopRun + 1292 30 CoreFoundation 0x0000000186ed22d8 CFRunLoopRunSpecific + 436 31 GraphicsServices 0x0000000188d58f84 GSEventRunModal + 100 32 UIKit 0x000000019040427c UIApplicationMain + 208 33 monotouchtest 0x000000010106eb90 wrapper_managed_to_native_UIKit_UIApplication_UIApplicationMain_int_string___intptr_intptr + 9907088 (/<unknown>:1) 34 monotouchtest 0x0000000100f0d6ac UIKit_UIApplication_Main_string___intptr_intptr + 8459948 (UIApplication.cs:79) 35 monotouchtest 0x0000000100f0d66c UIKit_UIApplication_Main_string___string_string + 8459884 (UIApplication.cs:63) 36 monotouchtest 0x0000000100b10450 monotouchtest_Application_Main_string__ + 4277328 (Main.cs:27) 37 monotouchtest 0x0000000100e0c244 wrapper_runtime_invoke_object_runtime_invoke_dynamic_intptr_intptr_intptr_intptr + 244 38 monotouchtest 0x0000000101c10048 mono_jit_runtime_invoke + 22102088 (mini-runtime.c:2526) 39 monotouchtest 0x0000000101c75eec do_runtime_invoke + 22519532 (object.c:2829) 40 monotouchtest 0x0000000101c78a3c do_exec_main_checked + 22530620 (object.c:4623) 41 monotouchtest 0x0000000101bf9a1c mono_jit_exec + 22010396 (driver.g.c:1040) 42 monotouchtest 0x0000000101d13d60 xamarin_main + 23166304 (monotouch-main.m:482) 43 monotouchtest 0x00000001007de710 main + 927504 (main.m:67) 44 libdyld.dylib 0x00000001869f656c start + 4 * [introspection] Let SkipDueToAttributeInProperty skip setters too (#2557) `SkipDueToAttributeInProperty` which is used to check the availability attribute of properties when the Availability info only exist on the property and not on the property Getter or Setter was wrong. This lead to `setSpringLoaded` (which was introduced in iOS 11) to not be ignored by the test (making it fail). - Fix bug #59085: [introspection-ios] selector not found for UIKit.UIBarButtonItem : setSpringLoaded: - Broken test (https://bugzilla.xamarin.com/show_bug.cgi?id=59085) * [corevideo][watchos] Enable CoreVideo on watchOS (#2553) * [storekit] Fix CampaignToken typo (#2559) (#2560) - Fixes bug #59078: StoreProductParameters and invalid property for CampaignToken (https://bugzilla.xamarin.com/show_bug.cgi?id=59078) * [coreml][watchos] Enable API using CoreVideo on watchOS. Fix #58097 (#2561) https://bugzilla.xamarin.com/show_bug.cgi?id=58097 * Add missing [MarshalDirective] attributes. (#2558) * [bindings-generator] Improve build & project file. * Add missing [MarshalDirective] attributes. Add missing [MarshalDirective] attributes, which also requires implementing support for out parameters in the binding generator, since one of the signatures missing the [MarshalDirective] contains such an out parameter. Also add tests for all the API I've added [MarshalDirective] to. * [bindings-generator] Remove redundant if check. * [monotouch-test] Rename file to end with 'Test.cs'. * [tests] Fix a few build errors for Xamarin.Mac. * [uikit] Fix UIColor and UIInputViewController tvOS availability (#2569) - Fixes introspection tests on tvOS 10. * [storekit] Fix SKCloudServiceSetupMessageIdentifier and SKProductStorePromotionController tvOS availability (#2568) - Fixes introspection tests on tvOS 10. * [mapkit] Fix MKMapItemTypeIdentifier tvOS availability (#2566) - Also remove double [Mac] availability attribute. - Fixes introspection tests on tvOS 10. * [ARKit] Fix marshalling for ARPointCloud.RawFeaturePoints. (#2565) ARPointCloud.RawFeaturePoints is an array of Vector3, but each vector is 16-byte aligned (as if it were an array of Vector4). This means we need to account for this when creating a managed array from pointer to the native C-style array. * [ModelIO] Fix MDLVoxelIndexExtent struct. (#2564) The MDLVoxelIndexExtent is a struct containing two 4-dimensional vectors of integers (not floats, as originally and incorrectly implemented). Fix this my creating a new MDLVoxelIndexExtent2 struct with the right fields, re-implement all the API that exposes this struct and obsolete the old API. Also add missing [MarshalDirective] attributes. And write a test to make sure it works fine now and forever. * [coredata] Enable new fields since rdar #33878590 is fixed w/beta 6 (#2570) reference: https://trello.com/c/dlSRYPFx * [xtro-sharpie] Add a Simd check class to verify signatures with Simd types. * [Simd] Add simd matrix types. The OpenTK matrices (Matrix2/3/4) has a different memory layout than Apple's matrix_float2x2/matrix_float3x3/matrix_float4x4 matrices: the OpenTK versions are row-major, while Apple's versions are column-major. This means that when blitting memory from one to the other, the matrix will appear to have been transposed. See bug #[58599][2] for an example. Unfortunately we've already bound several API with Apple's matrix_floatXxX matrices using OpenTK's matrices, and although they're bound wrong, and the matrices appear transposed on input/output, we can't change the behavior because we have to maintain compatibility. This means we have to introduce new API, and then also just define new matrix types with the right memory layout (column-major). Additionally, in the future we might be able to mark these matrices as Simd-matrixes, so that the JIT/AOT compiler can generate the correct alignment for them, avoiding having to define a native conversion method (using the [MarshalDirective] hack). The matrices have been designed to match API-wise the matrices in the System.Numerics.Vectors namespace [1], but for the moment with only a few basic operations implemented (Determinant/Transpose/Multiply) defined (we can always add more later if we want to). In addition explicit conversion operators to and from the corresponding OpenTK.MatrixX are implemented, which means any operation defined in the OpenTK matrices can be used by converting back and forth. [1]: https://msdn.microsoft.com/en-us/library/system.numerics.matrix4x4(v=vs.111).aspx [2]: https://bugzilla.xamarin.com/show_bug.cgi?id=58599 * [ARKit] Use the new Simd matrix types. * [Vision] Use the new Simd matrix types. * [ModelIO] Use the new Simd-compatible matrix types, and deprecate the old API. * [GameplayKit] Use the new Simd-compatible matrix types, and deprecate the old API. * [SpriteKit] Use the new Simd-compatible matrix types, and deprecate the old API. * [xtro] Don't report missing [MarshalDirective] for obsolete methods. * [xtro] Remove unnecessary ignores. The implementation changed, and these stayed accidentally. * [wkwebkit] Fix (native) protocol names (#2572) Also ignore xtro's WKSnapshotConfiguration since it's an Apple bug 34185961 reference (xtro) !missing-protocol! WKURLSchemeHandler not bound !missing-protocol! WKURLSchemeTask not bound !unknown-protocol! WKUrlSchemeHandler bound !unknown-protocol! WKUrlSchemeTask bound !unknown-type! WKSnapshotConfiguration bound * [uikit] Fix enums availability attributes (#2575) - Fixes bug #59132: [uikit] Extra types in watchOS (https://bugzilla.xamarin.com/show_bug.cgi?id=59132) * [watchkit] Add missing designated initializers (#2574) references (xtro) !missing-designated-initializer! WKInterfaceController::init is missing an [DesignatedInitializer] attribute !missing-designated-initializer! WKUserNotificationInterfaceController::init is missing an [DesignatedInitializer] attribute * [xtro] Reword some of the Simd diagnostic messages according to review. * [tests] Make sure test symbols don't clash between different test libraries. Fixes this build problem for framework-test: clang: error: linker command failed with exit code 1 (use -v to see invocation) MTOUCH: error MT5212: Native linking failed, duplicate symbol: '_x_mdltransform_get_rotation_matrix'. MTOUCH: error MT5213: Duplicate symbol in: /Users/builder/jenkins/workspace/xamarin-macios-pr-builder/tests/framework-test/obj/iPhoneSimulator/Debug-unified/mtouch-cache/XStaticObjectTest.framework/XStaticObjectTest (Location related to previous error) MTOUCH: error MT5213: Duplicate symbol in: /Users/builder/jenkins/workspace/xamarin-macios-pr-builder/tests/framework-test/obj/iPhoneSimulator/Debug-unified/mtouch-cache/XStaticArTest.framework/XStaticArTest(libtest-ar.x86_64.o) (Location related to previous error) MTOUCH: error MT5212: Native linking failed, duplicate symbol: '_x_mdltransformcomponent_get_local_transform'. MTOUCH: error MT5212: Native linking failed, duplicate symbol: '_x_mdltransform_create_global_transform'. MTOUCH: error MT5212: Native linking failed, duplicate symbol: '_x_get_matrix_float4x4'. MTOUCH: error MT5212: Native linking failed, duplicate symbol: '_x_get_matrix_float3x3'. MTOUCH: error MT5212: Native linking failed, duplicate symbol: '_x_get_matrix_float2x2'. MTOUCH: error MT5209: Native linking error: 6 duplicate symbols for architecture x86_64 MTOUCH: error MT5202: Native linking failed. Please review the build log. * [tests] Since libtest.a need ModelIO now, the corresponding LinkWith attributes need to state that too. * [introspection] Don't check native signatures on obsolete members, and ignore the right simd matrix types. Fixes this introspection/Mac problem: ***** ApiSignatureTest.NativeSignatures Selector: uniformWithName:matrixFloat2x2: on type SpriteKit.SKUniform, Type: Simd.MatrixFloat2x2, nothing encoded Selector: uniformWithName:matrixFloat3x3: on type SpriteKit.SKUniform, Type: Simd.MatrixFloat3x3, nothing encoded Selector: uniformWithName:matrixFloat4x4: on type SpriteKit.SKUniform, Type: Simd.MatrixFloat4x4, nothing encoded Selector: setMatrixFloat2x2Value: on type SpriteKit.SKUniform, Type: Simd.MatrixFloat2x2, nothing encoded Selector: setMatrixFloat3x3Value: on type SpriteKit.SKUniform, Type: Simd.MatrixFloat3x3, nothing encoded Selector: setMatrixFloat4x4Value: on type SpriteKit.SKUniform, Type: Simd.MatrixFloat4x4, nothing encoded Selector: initWithName:matrixFloat2x2: on type SpriteKit.SKUniform, Type: Simd.MatrixFloat2x2, nothing encoded Selector: initWithName:matrixFloat3x3: on type SpriteKit.SKUniform, Type: Simd.MatrixFloat3x3, nothing encoded Selector: initWithName:matrixFloat4x4: on type SpriteKit.SKUniform, Type: Simd.MatrixFloat4x4, nothing encoded * [monotouch-tests] Include more custom asserts for watchOS to make the build work. Fixes this: Simd/MatrixFloat4x4Test.cs(28,12): error CS0117: 'Asserts' does not contain a definition for 'AreEqual' Simd/MatrixFloat4x4Test.cs(29,12): error CS0117: 'Asserts' does not contain a definition for 'AreEqual' Simd/MatrixFloat4x4Test.cs(37,12): error CS0117: 'Asserts' does not contain a definition for 'AreEqual' Simd/MatrixFloat4x4Test.cs(48,12): error CS0117: 'Asserts' does not contain a definition for 'AreEqual' [...] * [monotouch-test] Exclude code that requires the binding project from xammac tests. Exclude code that requires the test binding project from xammac tests because there's currently no XM version of the test binding project. Fixes this: tests/monotouch-test/SpriteKit/UniformTest.cs(20,7): error CS0246: The type or namespace name 'Bindings' could not be found (are you missing a using directive or an assembly reference?) tests/monotouch-test/ModelIO/MDLMaterialProperty.cs(37,7): error CS0246: The type or namespace name 'Bindings' could not be found (are you missing a using directive or an assembly reference?) tests/monotouch-test/ModelIO/MDLTransform.cs(34,7): error CS0246: The type or namespace name 'Bindings' could not be found (are you missing a using directive or an assembly reference?) * Bump version for preview #8 (#2576) * [spritekit] Audit fixes (xtro) (#2577) 1. SKVideoNode is now, partially, available on watchOS and does not require the extra, manual code to swicth selectors depending on the OS version being run. !missing-type! SKVideoNode not bound !missing-selector! SKVideoNode::anchorPoint not bound !missing-selector! SKVideoNode::initWithCoder: not bound !missing-selector! SKVideoNode::initWithFileNamed: not bound !missing-selector! SKVideoNode::initWithURL: not bound !missing-selector! SKVideoNode::setAnchorPoint: not bound !missing-selector! SKVideoNode::setSize: not bound !missing-selector! SKVideoNode::size not bound !missing-selector! +SKVideoNode::videoNodeWithFileNamed: not bound !missing-selector! +SKVideoNode::videoNodeWithURL: not bound 2. SKNodeFocusBehavior is exposed needlessly on watchOS because SpriteKit/Enums.cs was not processed by the generator, so [NoWatch] did not matter. !unknown-native-enum! SKNodeFocusBehavior bound It's also visible on macOS but nothing uses it (so we do not expose it needlessly) !missing-enum! SKNodeFocusBehavior not bound 3. Add missing designated initializer on default `init` !missing-designated-initializer! SKAttributeValue::init is missing an [DesignatedInitializer] attribute !missing-designated-initializer! SKNode::init is missing an [DesignatedInitializer] attribute 4. Remove inconsistency for SKNode subclasses wrt XAMCORE_4_0 The trio attributeValues, setAttributeValues and setValue:forAttributeNamed: that was moved from SKNode (deprecated) into its subclasses. This was done using XAMCORE_4_0 but not on every subclasses. This adds them everywhere to be consistent (only SKNode versions are not defined in XAMCORE_4_0) !missing-selector! SKEffectNode::attributeValues not bound !missing-selector! SKEffectNode::setAttributeValues: not bound !missing-selector! SKEffectNode::setValue:forAttributeNamed: not bound !missing-selector! SKEffectNode::valueForAttributeNamed: not bound !missing-selector! SKEmitterNode::attributeValues not bound !missing-selector! SKEmitterNode::setAttributeValues: not bound !missing-selector! SKEmitterNode::setValue:forAttributeNamed: not bound !missing-selector! SKEmitterNode::valueForAttributeNamed: not bound !missing-selector! SKSpriteNode::attributeValues not bound !missing-selector! SKSpriteNode::setAttributeValues: not bound !missing-selector! SKSpriteNode::setValue:forAttributeNamed: not bound !missing-selector! SKSpriteNode::valueForAttributeNamed: not bound * [introspection] Make sure '[FAIL]' is printed before every failure. (#2578) This makes xharness able to list the failures in the inline summary. * [xtro] Reword some of the Simd diagnostic messages according to review. * [xharness] Add a missing IsServerMode check to generate correct html. (#2581) * [SpriteKit] SKTransformNode is new in Xcode 9 so no need to keep the broken (and obsolete) non-simd version of RotationMatrix. * [intents] Fix some (partial) xtro issues and #59156 (#2585) reference https://bugzilla.xamarin.com/show_bug.cgi?id=59156 Remaining issues are filled in https://bugzilla.xamarin.com/show_bug.cgi?id=59183 !missing-selector! +INCarSeatResolutionResult::confirmationRequiredWithCarSeatToConfirm: not bound !missing-selector! +INCarSeatResolutionResult::successWithResolvedCarSeat: not bound !missing-selector! +INNotebookItemTypeResolutionResult::disambiguationWithValuesToDisambiguate: not bound * [Intents] Confirm* interface methods should be bound as Confirm, Fixes Bug 59164 (#2591) * [Intents] Confirm* interface methods should probably be bound as Confirm, Fixes Bug 59164 https://bugzilla.xamarin.com/show_bug.cgi?id=59164 All Confirm* methods from *IntentHandling interfaces should be named just `Confirm` to avoid confusion because most of them do not directly confirm as an acion, but instead they **ask** for confirmation also we would follow swift's naming by doing this. * [Intents] XAMCORE_4_0 all Confirm* methods from *IntentHandling Turns any Confirm* into just Confirm inside a XAMCORE_4_0 block, * [Intents] Fix breaking changes in Intents added in Xcode 9 Bindings (#2590) Apple added more protocol conformances to INRidesharingDomainHandling and INPaymentsDomainHandling protocols in Xcode 9, I introduced these breaking changes back when I did intents binding so fixing them :) * [Metal] New bindings from Xcode 9 betas (#2457) * [AVFoundation] Updated bindings for xcode9. (#2272) * [Xcode9] Add IOSurface bindings (#2363) * 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 * [CoreMedia] Fix leak in CMAttachmentBearer.GetAttachments. (#2593) The caller owns the return value from CMCopyDictionaryOfAttachments, so tell Runtime.GetNSObject that. * [Intents] Adds missing API found by xtro, fixes Bug 59183 (#2596) https://bugzilla.xamarin.com/show_bug.cgi?id=59183 Fixes !missing-selector! +INNotebookItemTypeResolutionResult::disambiguationWithValuesToDisambiguate: not bound !missing-selector! +INCarSeatResolutionResult::confirmationRequiredWithCarSeatToConfirm: not bound !missing-selector! +INCarSeatResolutionResult::successWithResolvedCarSeat: not bound !incorrect-protocol-member! INUIHostedViewControlling::configureWithInteraction:context:completion: is OPTIONAL and should NOT be abstract * [xtro] Fix StartWorkingDirectory to enable debugging (#2598) * [iosurface] Enable for tvOS and XM classic (to avoid multiple defines around consumer API) (#2597) * [xtro] Fix EnumCheck (#2600) * [ARKit] Rename a few method to make them nicer. (#2604) * DisplayTransform -> GetDisplayTransform since methods should have verbs. * SessionWasInterrupted -> WasInterrupted and SessionInterruptionEnded -> InterruptionEnded since these names match better with the other names (CameraDidChangeTrackingState / DidFail / DidOutputAudioSampleBuffer: none are prefixed with 'Session'). Additionally, the type is a Model (for the delegate pattern), which means all methods are more-or-less event-like, and the first argument is always the same (the protocol itself), which is another indicator the methods should be named similarly. * [Foundation] Remove 'Key' suffix from some fields. (#2606) Of the 168 fields in NSMetadataItem, only these 5 hadn't removed the 'Key' suffix. So make them all equivalent by removing the 'Key' suffix from these 5 fields. * [ImageIO] Fix API to not duplicate the instance in instance methods. (#2609) An instance method does not need to take the instance as a parameter, so remove the first (instance) parameter for CGImageDestination.AddAuxiliaryDataInfo and CGImageSource.CopyAuxiliaryDataInfo. An alternative solution would be to make the methods static, but I like the instance API better. * [UIKit] De-model UIDataSourceTranslating. (#2603) It's not clear from neither the documentation nor the headers how this protocol is supposed to be used, and since it doesn't correspond to the delegate pattern, remove the [Model] attribute for now. We can always add it back later. * [CoreML] Improve API. (#2592) * [CoreML] Improve API. * The indices, shape and stride properties for MLMultiArray and MLMultiArrayConstraint can logically only be arrays of integers, so type them as such. This means adding overloads for MLMultiArray's constructors, GetObject and SetObject methods, and the indexers that takes nint[] arrays instead of NSNumber[] arrays. * Change MLFeatureValue's static factory methods to be a method ('Create') instead of a preposition, and call all the different factory methods the same, since they can be over…
New commits in xamarin/maccore: * xamarin/maccore@efad4f0bae [Xamarin.Hosting] Fix a few compiler warnings. (#2512) * xamarin/maccore@55087e093a [Xamarin.Hosting] Fix detecting app exit on device. (#2511) * xamarin/maccore@ffefee386c [Xamarin.Hosting] Add support for launching with debugserver on iOS/tvOS 14+. (#2510) * xamarin/maccore@e203814d08 [tests] Fix .ipa path for iOSCoolApp now that it's a fat app. (#2509) * xamarin/maccore@c2531ff702 Update the provisionator script. (#2505) * xamarin/maccore@2bfa5fa12b [submission] Add a fat Mac Catalyst test app. (#2508) Diff: https://github.com/xamarin/maccore/compare/3e591cbcb15081d34a9512ca39d9df55c331bdbd..efad4f0baec567c7937ce0a87b2fc94ee0094a2b