Rolf Bjarne Kvinge
6c07ef4081
[Security] Don't pass pointers to 0-length memory to SecKeyRawVerify.
...
It seems the API will still read at least one byte (at least with Xcode 11
beta 1), which ends up crashing.
Fixes this crash:
=================================================================
Native stacktrace:
=================================================================
0x1029995e5 - /Users/builder/Library/Developer/CoreSimulator/Devices/F5307DF2-F41A-499F-8C7E-B9B7CF85059C/data/Containers/Bundle/Application/8BDCE2E8-1E99-4182-A33C-C69E9734D7EB/monotouchtest.app/monotouchtest : mono_dump_native_crash_info
0x10298d6b5 - /Users/builder/Library/Developer/CoreSimulator/Devices/F5307DF2-F41A-499F-8C7E-B9B7CF85059C/data/Containers/Bundle/Application/8BDCE2E8-1E99-4182-A33C-C69E9734D7EB/monotouchtest.app/monotouchtest : mono_handle_native_crash
0x1029a02a5 - /Users/builder/Library/Developer/CoreSimulator/Devices/F5307DF2-F41A-499F-8C7E-B9B7CF85059C/data/Containers/Bundle/Application/8BDCE2E8-1E99-4182-A33C-C69E9734D7EB/monotouchtest.app/monotouchtest : mono_sigsegv_signal_handler
0x10cab2b5d - /usr/lib/system/libsystem_platform.dylib : _sigtramp
0x10 - Unknown
0x10c5f6159 - /Applications/Xcode11-beta1.app/Contents/Developer/Platforms/AppleTVOS.platform/Library/Developer/CoreSimulator/Profiles/Runtimes/tvOS.simruntime/Contents/Resources/RuntimeRoot/usr/lib/system/libcorecrypto.dylib : ccec_verify_internal
0x10c5bdd21 - /Applications/Xcode11-beta1.app/Contents/Developer/Platforms/AppleTVOS.platform/Library/Developer/CoreSimulator/Profiles/Runtimes/tvOS.simruntime/Contents/Resources/RuntimeRoot/usr/lib/system/libcorecrypto.dylib : ccec_verify
0x1032f93aa - /Applications/Xcode11-beta1.app/Contents/Developer/Platforms/AppleTVOS.platform/Library/Developer/CoreSimulator/Profiles/Runtimes/tvOS.simruntime/Contents/Resources/RuntimeRoot/System/Library/Frameworks/Security.framework/Security : SecECPublicKeyCopyOperationResult
0x103305303 - /Applications/Xcode11-beta1.app/Contents/Developer/Platforms/AppleTVOS.platform/Library/Developer/CoreSimulator/Profiles/Runtimes/tvOS.simruntime/Contents/Resources/RuntimeRoot/System/Library/Frameworks/Security.framework/Security : SecKeyRunAlgorithmAndCopyResult
0x1033057ee - /Applications/Xcode11-beta1.app/Contents/Developer/Platforms/AppleTVOS.platform/Library/Developer/CoreSimulator/Profiles/Runtimes/tvOS.simruntime/Contents/Resources/RuntimeRoot/System/Library/Frameworks/Security.framework/Security : SecKeyVerifySignature
0x103305762 - /Applications/Xcode11-beta1.app/Contents/Developer/Platforms/AppleTVOS.platform/Library/Developer/CoreSimulator/Profiles/Runtimes/tvOS.simruntime/Contents/Resources/RuntimeRoot/System/Library/Frameworks/Security.framework/Security : __SecKeyRawVerify_block_invoke
0x10330509c - /Applications/Xcode11-beta1.app/Contents/Developer/Platforms/AppleTVOS.platform/Library/Developer/CoreSimulator/Profiles/Runtimes/tvOS.simruntime/Contents/Resources/RuntimeRoot/System/Library/Frameworks/Security.framework/Security : SecKeyPerformLegacyOperation
0x103305732 - /Applications/Xcode11-beta1.app/Contents/Developer/Platforms/AppleTVOS.platform/Library/Developer/CoreSimulator/Profiles/Runtimes/tvOS.simruntime/Contents/Resources/RuntimeRoot/System/Library/Frameworks/Security.framework/Security : SecKeyRawVerify
0x13ceef07e - Unknown
=================================================================
Managed Stacktrace:
=================================================================
at <unknown> <0xffffffff>
at Security.SecKey:SecKeyRawVerify <0x000cd>
at Security.SecKey:RawVerify <0x0018a>
at MonoTouchFixtures.Security.KeyTest:SignVerifyECSHA1 <0x0048a>
2019-06-14 20:01:59 +02:00
Rolf Bjarne Kvinge
801b11c60b
[runtime] Implement a different fix for #6258 . Fixes #6302 .
...
It turns out 'object_getClass' and '[obj class]' does not return exactly the
same. It seems this would have gone unnoticed (the difference would not be
important), except that it made us run into yet another Objective-C runtime
bug...
So return to the previous behavior (call 'object_getClass'), and instead call
'[obj class]' as well just before to make sure the Class instance we get back
from 'object_getClass' is initialized properly.
Now you may wonder why the return value from '[obj class]' has an effect on
the different return value from 'object_getClass', and the answer is that I
have no idea whatsoever. It works, and that makes me happy.
Fixes https://github.com/xamarin/xamarin-macios/issues/6302 .
2019-06-14 19:59:02 +02:00
Rolf Bjarne Kvinge
ab8817d000
Merge pull request #6294 from rolfbjarne/xcode11-watchsimulator
...
Fix building and launching watchOS apps. Fixes #6252 .
2019-06-14 16:42:13 +02:00
Rolf Bjarne Kvinge
70844a81df
[runtime] Use '[obj class]' instead of 'object_getClass' to work around an Objective-C runtime bug. Fixes #6258 and #6255 . ( #6293 )
...
Xcode 11 introduces a bug in the Objective-C runtime that makes the runtime
surface uninitialized Class instances. Using these instances may lead to
crashes. Work around this issue by using a different API to get Class
instances for Objective-C objects, hoping that we won't see uninitialized
Class instances.
Ref: https://trello.com/c/2g7qtnGO/143-fb6153904-classcopyprotocollist-crashes-in-ios-13
Fixes https://github.com/xamarin/xamarin-macios/issues/6258 .
Fixes https://github.com/xamarin/xamarin-macios/issues/6255 .
2019-06-14 16:33:03 +02:00
Rolf Bjarne Kvinge
6e469327fc
Fix simulator provisioning. ( #6295 )
...
* We must bump the min simulator versions, since Apple has bumped what they offer.
* Re-enable simulator provisioning.
* Minor output fix to siminstaller to make the output easier to understand.
2019-06-14 16:21:21 +02:00
Rolf Bjarne Kvinge
534197c7c5
Bump maccore and macios-binaries to get mlaunch capable of launching apps in watchOS 6 simulators.
...
New commits in xamarin/macios-binaries:
* xamarin/macios-binaries@c477304 Bump mlaunch to xamarin/maccore@f26319899f (#22 )
Diff: 2cea84c2d4..c4773043c5
New commits in xamarin/maccore:
* xamarin/maccore@f26319899f [Xamarin.Hosting] Implement installing watchOS simulator apps with Xcode 11. (#1736 )
Diff: 54d98e168c..f26319899f
2019-06-14 02:23:14 +02:00
Rolf Bjarne Kvinge
ee98996b6b
[SceneKit] Apple removed [SCNSceneRenderer context] in watchOS 6.0.
2019-06-14 02:17:43 +02:00
Rolf Bjarne Kvinge
62043318d7
[runtime] Assume we're in the US if the OS doesn't know.
...
This fixes a crash when running tests in the watchOS 6.0 simulator.
2019-06-14 02:17:37 +02:00
Rolf Bjarne Kvinge
9b32d682b6
[mtouch] Fix building watch extensions with the watchOS 6.0 SDK.
...
The watchOS 6.0 SDK renames/moves a few symbols, so some magic is required to
make things work on both watchOS 6.0 and earlier versions.
2019-06-14 02:17:36 +02:00
Sebastien Pouliot
00ba38035f
[devicecheck] Update for xcode 11 beta 1 ( #6286 )
...
Added support for macOS 10.15 and for iOS simulator (>= 13)
2019-06-13 20:09:34 -04:00
Sebastien Pouliot
c641234fd1
[xcode11] Bump VS4M minimum to 8.0.0 and mono to 6.0.0.286 ( #6284 )
...
That should be a good/better mix to run XM classic tests and fix some
other build failures
Close backport of https://github.com/xamarin/xamarin-macios/pull/6238 from master
2019-06-13 19:19:51 -04:00
Sebastien Pouliot
77399cb238
[watchconnectivity] Update for xcode 11 beta 1 ( #6283 )
...
Add new API for CompanionApp (watchOS only)
2019-06-13 16:44:54 -04:00
Sebastien Pouliot
e586a06501
[replaykit] Update for xcode 11 beta 1 ( #6282 )
...
Added new enum value
Also removed availability attributes from other values - since they are
not helpful for error codes (e.g. you don't want warnings for them, nor
do you want to add version checks around them)
2019-06-13 13:50:58 -04:00
Sebastien Pouliot
1b02f0f616
[tests] Fix monotouch-test for "iOS Unified 32-bits - simulator" | "Release (all optimizations)" ( #6281 )
...
Photos.framework headers are broken in Xcode 11 beta 1 [1]. Optimizations
fails since the static registrar skip over the type [2]
```
[FAIL] PHLivePhotoEditingContextTest.Linker : ObjCRuntime.RuntimeException : Can't register the class Photos.PHContentEditingInput when the dynamic registrar has been linked away.
at ObjCRuntime.Class.GetClassHandle (System.Type , System.Boolean , System.Boolean& ) [0x000de] in <d93fa0efd60442128943a9eb0e82eb8d>:0
at ObjCRuntime.Class.GetClassHandle (System.Type ) [0x00000] in <d93fa0efd60442128943a9eb0e82eb8d>:0
at ObjCRuntime.Class.GetHandle (System.Type ) [0x00000] in <d93fa0efd60442128943a9eb0e82eb8d>:0
at Foundation.NSObject.AllocIfNeeded () [0x00019] in <d93fa0efd60442128943a9eb0e82eb8d>:0
at Foundation.NSObject..ctor (Foundation.NSObjectFlag ) [0x00006] in <d93fa0efd60442128943a9eb0e82eb8d>:0
at Photos.PHContentEditingInput..ctor () [0x00000] in <d93fa0efd60442128943a9eb0e82eb8d>:0
at MonoTouchFixtures.Photos.PHLivePhotoEditingContextTest.Linker () [0x00001] in <6e792af97a28410a80fa790ecfb26b9c>:0
at (wrapper managed-to-native) System.Reflection.RuntimeMethodInfo.InternalInvoke(System.Reflection.RuntimeMethodInfo,object,object[],System.Exception&)
at System.Reflection.RuntimeMethodInfo.Invoke (System.Object , System.Reflection.BindingFlags , System.Reflection.Binder , System.Object[] , System.Globalization.CultureInfo ) [0x0006a] in <3440dfbcd957471aabeed02fbc939d2a>:0
PHLivePhotoEditingContextTest : 2 ms
```
references
[1] https://github.com/xamarin/xamarin-macios/issues/6212
[2] 60a5392d35
2019-06-13 13:15:28 -04:00
Sebastien Pouliot
bff8ab7931
Merge pull request #6204 from mandel-macaque/xcode11-build-mono
...
[xcode11] Fix build and bump versions for Xcode 11.0 beta 1
2019-06-13 09:35:29 -04:00
Sebastien Pouliot
d071568030
Merge branch 'xcode11' into mandel-macaque-xcode11-build-mono
2019-06-12 21:29:03 -04:00
Sebastien Pouliot
dec78af591
[foundation] Fix NSCopying.Copy - the biggest offender of not releasing its return value ( #6271 )
...
Manual backport of https://github.com/xamarin/xamarin-macios/pull/6230
and part of https://github.com/xamarin/xamarin-macios/pull/6171 to get PR green
2019-06-12 16:02:04 -07:00
Sebastien Pouliot
2b7601ef8d
[xtro] Create .todo files for new Xcode11 beta 1 API (so they won't be reported as error anymore)
2019-06-12 15:42:22 -04:00
Sebastien Pouliot
71f9341c59
[tests][link all] Workaround issue with UIPasteboard.General.Images
...
ref: https://github.com/xamarin/xamarin-macios/issues/6254
2019-06-12 13:57:51 -04:00
Sebastien Pouliot
31014b0367
[uikit] Allow `null` in `CanOpenURL` Fixes #6256
...
This is not documented to accept `nil` and from sharpie / headers
```csharp
// -(BOOL)canOpenURL:(NSURL * _Nonnull)url __attribute__((availability(ios, introduced=3.0)));
[iOS (3,0)]
[Export ("canOpenURL:")]
bool CanOpenURL (NSUrl url);
```
so it looks like we allowed this (it's a rather old API) based on it's
behavior (and well before nullability annotations were available)
Now since the API
* returns a `bool` value **and** `false` is better than an exception;
* was an [old bug fix](https://bugzilla.xamarin.com/show_bug.cgi?id=865 );
I added a `[PreSnippet]` so our behavior does not change on newer OS
references:
* https://developer.apple.com/documentation/uikit/uiapplication/1622952-canopenurl?language=objc
* https://github.com/xamarin/xamarin-macios/issues/6256
2019-06-12 13:40:36 -04:00
Sebastien Pouliot
afe96ef09b
Merge branch 'xcode11' into mandel-macaque-xcode11-build-mono
2019-06-12 10:49:59 -04:00
Sebastien Pouliot
824ae5cc14
Bump MIN_SHARPIE_VERSION so the newest version is used (fix xtro build)
2019-06-12 10:49:28 -04:00
Rolf Bjarne Kvinge
d3c60e516b
[xharness] Backport a few changes to get HE0038 reporting. ( #6272 )
...
* [xharness] Show links to previous test runs in html report in server mode. (#6031 )
* [xharness] Change url for server mode.
* [xharness] Show links to previous test runs in html report in server mode.
This makes it much easier to see what failed in a previous test run.
* [XHarness] Show when we have a watch HE0038 error. (#6060 )
To simplify the life of the monitorer, if we get a crash with a HE0038
we will propagate the result to the html and will provide a link to the
issue so that it is easy to report it.
* [xharness] Look for HE0038 anywhere in a log file. (#6175 )
Most log files now have timestamps, which means that looking for 'HE00380' at
the start of each line won't work anymore.
Fixes an issue where the HE0038 issue isn't detected properly.
2019-06-12 16:47:15 +02:00
Sebastien Pouliot
6a852fdcc2
Merge pull request #6209 from spouliot/xcode11-backport-xtro
...
[tests] Backport xtro changes to xcode11
2019-06-12 06:35:34 -07:00
Sebastien Pouliot
87ed9ebfd4
[xtro] Exclude some frameworks that cause issues with sharpie on macOS 10.15 ( #6207 )
...
Also merge new `MPSNDArray` into its parent `MetalPerformanceShaders`
and use a `SortedSet` to avoid ending up with both `PdfKit` and `PDFKit`
2019-06-12 06:31:59 -07:00
Rolf Bjarne Kvinge
68e8155053
[CoreImage] Fix typo.
2019-06-12 09:00:20 +02:00
Sebastien Pouliot
34096129e3
[tests][xtro] Update ignore files (largely Apple fixes in the SDK headers)
2019-06-12 01:13:15 -04:00
Sebastien Pouliot
fb72e516e8
Merge branch 'xcode11' into xcode11-backport-xtro
2019-06-12 00:49:18 -04:00
Sebastien Pouliot
e826d1d8a6
Merge xcode11 head
2019-06-12 00:44:31 -04:00
Sebastien Pouliot
a71703a624
[tests][intro] Fix new failures using Xcode11 - some (protocols) might be changes in the public API
2019-06-12 00:27:40 -04:00
Sebastien Pouliot
dd142561a1
[tests] Add support to check for Xcode 11.0 and macOS 10.15 from tests/attributes
2019-06-12 00:26:23 -04:00
Sebastien Pouliot
b7cf2d3695
[tests][intro] Fix an alternative glyph name that works on iOS 13
2019-06-12 00:25:32 -04:00
Sebastien Pouliot
eb33ed7a95
[generator] Forward more [return: Release] attributes to generated code.
...
Manual backport of https://github.com/xamarin/xamarin-macios/pull/6171
2019-06-12 00:24:20 -04:00
Sebastien Pouliot
5206d3d4ba
[coreimage] Add new filters
...
They are not part of the API diff (nor inside headers).
Needed since introspection tests will detect them and fail.
2019-06-12 00:22:47 -04:00
Sebastien Pouliot
d89397821f
[foundation] Fix intro failure for NSNetService init
2019-06-12 00:21:19 -04:00
Sebastien Pouliot
d2ec61a568
Bump sharpie to a version that understand the new platforms (uikitformac, driverkit) and other fixes needed for xtro
2019-06-12 00:20:22 -04:00
Sebastien Pouliot
1558efaec2
Merge pull request #6264 from spouliot/xcode11-d16-2-20190611
...
Merge d16-2 into xcode11
2019-06-12 00:13:01 -04:00
Sebastien Pouliot
bbe237cc0f
[xcode11][xibuild] Handle "incorrectly" cased msbuild property names
...
Fixes mono/mono#14765
Manual backport of https://github.com/xamarin/xamarin-macios/pull/6202
2019-06-11 14:51:02 -04:00
Sebastien Pouliot
dbf598e8e7
Switch maccore to xcode11 branch
2019-06-11 13:29:53 -04:00
Sebastien Pouliot
bf44459d8a
Merge branch 'd16-2' into xcode11-d16-2-20190611
2019-06-11 13:23:04 -04:00
Rolf Bjarne Kvinge
4fd77fd2dc
Merge pull request #6190 from monojenkins/backport-pr-6164-to-xcode11
...
[xcode11] [Metal] Sprinkle [return: Release] on all 'new*' selectors. Fixes #5941 .
2019-06-11 11:50:28 +02:00
Rolf Bjarne Kvinge
55ad1411fa
Bump maccore and macios-binaries to get fix for #6216 . ( #6231 )
...
maccore diff: ff1d19c3e4..43d082327c
New commits in xamarin/maccore:
* xamarin/maccore@12ecfd8249 [mlaunch] Use [SimDevice registerNotificationHandlerOnQueue:handler:] instead of [SimDevice registerNotificationHandler:]. Fixes xamarin/xamarin-macios#6216 . (#1722 )
macios-binaries diff: 62a239f3f8..12ecfd8249
Fixes https://github.com/xamarin/xamarin-macios/issues/6216 .
2019-06-10 22:25:52 -07:00
monojenkins
9b9e57b80d
[monotouch-test] Ignore MessageHandlerTest.RejectSslCertificatesServicePointManager on macOS 10.10. ( #6219 )
...
This works around (but doesn't fix) https://github.com/xamarin/maccore/issues/1645 .
2019-06-07 14:25:26 -07:00
Manuel de la Pena
2f1cc7bb80
Bump mono to 2019-02 latests head. ( #6215 )
...
Bump mono for the preview with the latests mono commits.
* c6edaa62f9
Bump CoreFX to pickup the fix for #14214 .
* 0349bbe0bc
[2019-02] Fix build on macOS 10.15 Catalina + xcode 11
* 240aa5b900
[2019-02] Bump CoreFX
* 6159e0f2bf
Bump msbuild to track mono-2019-02
* a90018bed8
[2019-02] Remapping should affect GAC search paths considered by the loader
* 3d9513efd4
[tests] Exclude more nunit categories on ios/mac
* 7147d87a0d
[msbuild] Bump to track mono-2019-02 HEAD
* 0e215970ec
[2019-02] Bump roslyn to 3.1.0
* fa0663d333
[2019-02] [arm64] Correct exception filter stack frame size
* [sdks] Exclude unecessary ios libs from sdks archive 43e0f5a967
* 8ff6a12f51
[MacSDK] Properly handle PATHs with spaces during package post-install
Complete diff: e113ce925b...c6edaa62f9
2019-06-07 08:16:10 +02:00
Rolf Bjarne Kvinge
67e497abe8
[mtouch] Don't link with WatchKit, it's been removed.
2019-06-05 16:51:33 -07:00
Rolf Bjarne Kvinge
2e295036db
[xtro] 'raw' files might not exist. ( #6191 )
...
If we just fixed all the entries in the corresponding '*.ignore' file, there
won't be a '*.raw' file.
2019-06-05 09:57:49 -07:00
Rolf Bjarne Kvinge
309da40ee4
[xtro] Implement support for auto-sanitizing the .ignore files by defining an environment variable. ( #6158 )
...
Going through each failure one-by-one after fixing something that fixed many
entries is annoying, so automate the process.
2019-06-05 09:57:42 -07:00
Rolf Bjarne Kvinge
27c534607e
Bump maccore and macios-binaries to get updated mlaunch.
...
New commits in xamarin/macios-binaries:
* xamarin/macios-binaries@2cea84c Bump mlaunch to xamarin/maccore@2508ba1931
Diff: ff1d19c3e4..2cea84c2d4
xamarin/maccore:
Diff: 62a239f3f8..2508ba1931
2019-06-05 04:39:29 -07:00
Rolf Bjarne Kvinge
60a5392d35
[mmp/mtouch] Workaround broken frameworks in Xcode 11 beta 1.
...
* The Photos headers are broken when building in C++ mode.
* The PhotosUI headers include the Photos header, so those don't work either.
* The WatchKit framework just isn't there at all.
2019-06-04 13:45:33 -07:00
Rolf Bjarne Kvinge
6eb47e7136
[UserNotifications] Fix macOS availability for a type.
2019-06-04 13:45:33 -07:00