Граф коммитов

3032 Коммитов

Автор SHA1 Сообщение Дата
Rolf Bjarne Kvinge 41c6fa029d
[monotouch-test] Fix UrlProtocolTest after a server we don't control changed its output. Fixes xamarin/maccore#2006. (#7154)
microsoft.com is doing user agent sniffing, and broke our our test since their
output is now different. Switch to example.com instead.

Fixes https://github.com/xamarin/maccore/issues/2006.
2019-10-02 15:59:31 +02:00
Rolf Bjarne Kvinge ea829b5a3f [tests] Remove workaround for xamarin/maccore#1996.
Fixes https://github.com/xamarin/maccore/issues/1996.
2019-09-30 13:30:28 -04:00
Difegue 36d9417f92 Fix the NSFileTypeForHFSTypeCode enum (#6676)
* Rework NSFileTypeForHFSTypeCode

* Start writing 4cc test

* Update NSWorkspace.cs

* Fix formatting issues

* Fix tests

* Update src/AppKit/Enums.cs

Co-Authored-By: Rolf Bjarne Kvinge <rolf@xamarin.com>

* Update src/AppKit/NSWorkspace.cs

Co-Authored-By: Rolf Bjarne Kvinge <rolf@xamarin.com>

* Reintroduce old NSFileTypeForHFSTypeCode

+ Fix tests style

* Invert XAMCORE_4_0 check

* Fix xtro (new API added)
2019-09-27 14:14:15 -04:00
Alex Soto cd5917650e
[mono] Bump mono to match android (#7104)
* [mono] Bump mono to match android

4546440471...c99adb97ed

* [tests] Add workaround for xamarin/maccore#1996.
2019-09-26 08:39:49 -04:00
Rolf Bjarne Kvinge 1e92a732ef
[mtouch] Tweak watchOS architecture test to build for bitcode when building with llvm. Fixes xamarin/maccore#1994. (#7097)
Tweak the watchOS architecture test to build for bitcode when building with
llvm, since that's what's usually done.

Also tweak the MT0145 error message a bit.

Fixes https://github.com/xamarin/maccore/issues/1994.
2019-09-25 17:06:27 +02:00
monojenkins abfa32c09f [master] [generator] Do not generate PlatformNotSupportedException in chaining .ctor (#7092)
Types that are new in 64bits only OS are generated differently on 32bits
bindings. They mainly throw a `PlatformNotSupportedException` so it's
easier to diagnose (than a crash) what's happening at runtime.

This works well in all cases except one. When a new type, let's say
`UIMenuElement` is added **and** serves as a new base type for existing
types.

`UIKeyCommand` (iOS 7) -> `UICommand` (iOS 13)-> `UIMenuElement` (iOS 13)

This is _correct_ as new base types can be added (in ObjC and C#).
However the generated code for the constructors of `UICommand` and
`UIMenuElement` would be throwing a `PlatformNotSupportedException`
which breaks the `UIKeyCommand` on 32 bits devices.

We fixed this in a few places by tweaking the availability attribute
but that requires spotting the new base type while doing bindings and
that is error prone [1][2].

This PR simply does let the `protected` constructor, using when chaining,
be generated normally. It's simpler and will cover all the cases (without
requiring hacks in the availability of those types)

[1] https://github.com/xamarin/xamarin-macios/issues/7083
[2] https://github.com/xamarin/xamarin-macios/issues/7084
2019-09-24 21:12:59 -04:00
Rolf Bjarne Kvinge 2adecee3d9
Drop the Xcode 9.4 dependency. (#7044)
* Drop the Xcode 9.4 dependency.

Also bump mono to get the removal of the mac32 binaries.

New commits in mono/mono:

* mono/mono@70d6903053 [2019-08] [merp] Use a separate program as the hang supervisor. (#16900)
* mono/mono@4bff2b6370 [offsets-tool] Install clang into the user-specific python directory.
* mono/mono@81894ec8ca Implement WriteCore and ReadCore in DeflateStream
* mono/mono@bfbf823ca1 [ci] Remove more XCODE32_DIR usages (#16964)
* mono/mono@ce01b20a4d Add net_4.8.xml to EXTRA_DIST and bump binary-reference-assemblies again
* mono/mono@7a587d7fa6 Add .NET 4.8 reference assemblies (#16912)
* mono/mono@35e454a8f6 [sdks] Remove the mac32 build. (#16936)
* mono/mono@75eb342f53 [2019-08] [System] Make FileSystemWatcher backend non-static (#16926)
* mono/mono@5881981f79 [2019-08] [mini] Add missing membars when initializing rgctx entries (#16909)
* mono/mono@6290b6cd6e Temporarily disable embedded ppdb data decompression (#16911)
* mono/mono@a0e7f9eaf2 [2019-08] [arm64_32] make "Debug Mode" work on Watch series 4 with --interpreter (#16886)
* mono/mono@6275840a7f Rename bundle identifier for the various Mono.frameworks we create for Xamarin.iOS. Fixes xamarin/xamarin-macios#7005. (#16901)
* mono/mono@25f6093283 [corlib] Fix building nunit-lite twice (#16895)
* mono/mono@7ec17ba1be [2019-08] [android sdk] Add aprofutil tool (#16884)
* mono/mono@f755f3b539 [metadata] Fix leaks when handling a few attributes (#16850)
* mono/mono@5f9a2db39b [2019-08] Fix infrequent hangs in test-runner. (#16854)
* mono/mono@f31f5ea1f1 [2019-08] [threads] do not convert NULL thread name (#16828)
* mono/mono@20308e6f87 [aot] Do not wrap tool_prefix path when calling strip (#16820)
* mono/mono@cecda47c48 [aprofutil] Add -p and -f options
* mono/mono@824cc12ac3 Bump to mono/corefx@e79cf5b
* mono/mono@b77dc06a7e [aprofutil] Install the tool correctly (#16112)
* mono/mono@1848d78d60 [aotprof-tool] Initial import of AOT profiler tool (#15384)
* mono/mono@da0086e304 [2019-08] Add RenamedEvent* to FSW sources from CoreFX (#16756)
* mono/mono@0297b21b03 [msbuild][roslyn] Bump msbuild and roslyn to pull in new versions (#16768)
* mono/mono@40631e3b9e [2019-08] [aot] move method_addresses to data.rel.so section to avoid text relocations (#16751)
* mono/mono@68b77674e2 Vtable [i] can be null so this should be check before use it. Fixes #16712
* mono/mono@4a0b4f41ed [mini] publish global patches after JitInfo has been added
* mono/mono@7a1f63fde6 [debugger][android] It was not initialising seq_points on MonoCompile on Android, so when was compiling dynamic methods, seq_points wasn't created and we got the assert when try to single step.

Diff: 29b1ac19c9..70d6903053

* [tests] Add a fat macOS dylib for testing purposes.

Add a binary version of a fat macOS dylib (because we can't create one when we
need it since we can't create 32-bit slice anymore).

It was created like this (in tests/test-libraries):

	$ cat test.m
	int theUltimateAnswer ()
	{
		return 42;
	}

	$ /Applications/Xcode94.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/clang test.m -olibtest.i386.dylib -shared -isysroot /Applications/Xcode94.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk -framework Foundation -framework CoreLocation -lz  -arch i386
	$ lipo -create libtest.i386.dylib .libs/macos/libtest.dylib -output libtest-fat.dylib

* [tests] Adjust XM tests to XM not having fat dylibs anymore.

* [tests] Adjust product tests to some libraries not being fat anymore.

* One more test fix.
2019-09-24 13:40:18 +02:00
Bernhard Urban 62466d4c46 [monotouch-tests] reduce amount of test objects to avoid out of memory (#7075)
I get this otherwise on the watch4 in debug mode (with interp):

```
Process 1255 stopped
* thread #1, name = 'tid_303', queue = 'com.apple.main-thread', stop reason = EXC_RESOURCE RESOURCE_TYPE_MEMORY (limit=80 MB, unused=0x0)
    frame #0: 0x1e185ae8 CoreGraphics`x_malloc + 44
CoreGraphics`x_malloc:
->  0x1e185ae8 <+44>: str    w19, [x0], #0x10
    0x1e185aec <+48>: ldp    x29, x30, [sp, #0x10]
    0x1e185af0 <+52>: ldp    x20, x19, [sp], #0x20
    0x1e185af4 <+56>: ret
Target 0: (monotouchtest) stopped.
```
2019-09-24 13:29:56 +02:00
Waleed Chaudhry 1dc3beabfa
[Generator] Provide clear error message on type mismatch with BindAs error (#7016)
* [Generator] Provide clear error message on type mismatch with BindAs attribute that results in  generator crashing. Fixes 6863.
2019-09-19 21:05:22 -04:00
Rolf Bjarne Kvinge 7fc8db2fca
[xharness] Fix incorrect merge. (#7032)
Add new device tasks to the right list so that they're processed and marked as
ignored correctly later.
2019-09-19 14:40:32 +02:00
Rolf Bjarne Kvinge e7a5d56dd2 Merge remote-tracking branch 'origin/xcode11' into master-xcode11 2019-09-17 19:44:13 +02:00
Waleed Chaudhry 706581c1ab Fix broken introspection tests on macOS 10.15. Fixes #6998. (#6999)
* Fix broken introspec tests on macOS 10.15

* Add aliases

* Add fields to .ignore

* Remove new line

* Add comment to .ignore
2019-09-16 23:40:34 -07:00
Rolf Bjarne Kvinge 5b7ea53e2e [monotouch-test] Fix ProxyTest according to changed behavior in iOS 13.
In iOS 13 it's no longer possible to get PACs from file:// urls (this is
explained in the release notes, so it's expected). So launch a local
httpserver and serve the PAC that way.
2019-09-16 15:21:29 +02:00
Rolf Bjarne Kvinge c7522b3a71 Fix broken merge. 2019-09-16 15:21:24 +02:00
Rolf Bjarne Kvinge ac7d423af4 [mmptest] Test the release configuration of link-framework-1.
link-framework-1 ensures that we link away as many frameworks as possible.
Unfortunately there are things we can't link away when using the dynamic
registrar, so switch to testing the Release configuration instead, since that
automatically uses the static registrar (and the release configuration is the
better option to test anyway, since it's closer to what customers use to
release).
2019-09-16 15:21:12 +02:00
Rolf Bjarne Kvinge 2c66d68277 Fix a few merge breakages. 2019-09-16 15:20:59 +02:00
Rolf Bjarne Kvinge 664bb077e2 Fix downloading mono archive when running device tests. 2019-09-16 15:11:49 +02:00
Waleed Chaudhry 1287b324e2
[Newsstandkit] Update for Xcode 11 beta 1 (#6992)
* [Newsstandkit] Update for Xcode 11 beta 1
2019-09-13 15:23:21 -04:00
Rolf Bjarne Kvinge 303aa0a649 Merge remote-tracking branch 'origin/xcode11' into master-xcode11 2019-09-13 18:35:18 +02:00
Waleed Chaudhry 7e94998a50
[ModelIO] Fix xtro broken by #6991. (#6996)
* [ModelIO] Fix tests broken by #6991
2019-09-13 12:14:56 -04:00
Alex Soto b02da292bf
[corebluetooth] Update for Xcode 11 GM (#6990)
This should let us provide a nicer API for the GM change about
`CBManager authorization` moving from an instance to a static
property (in all but iOS 13.0 / watchOS 6.0)
2019-09-12 13:40:46 -04:00
Alex Soto a1fba90ecb
[ModelIO] Fix MDLAnimatedQuaternion bindings (#6991)
Quaternion does need our special marshalling.
2019-09-12 10:53:42 -04:00
Manuel de la Pena 5511bb7ec6 [CoreHaptics] Expose protocol method that was ignored due to inheritance. (#6986)
* [CoreHaptics] Expose protocol method that was ignored due to inheritance.

After PR https://github.com/xamarin/xamarin-macios/pull/6961 we can now
do the right thing.

* Fix inheritance.
2019-09-11 20:44:36 -04:00
Manuel de la Pena 2a6d62dca3 [AVFoundation] Add support up to Xcode 11 GM. (#6984) 2019-09-11 18:49:02 -04:00
Manuel de la Pena 036f23331c
[MetricKit] Add new framework up to Xcode11 GM. (#6969) 2019-09-11 15:46:38 -04:00
Waleed Chaudhry d4a775d8a3
[Network] Add currentPath property to NWPathMonitor. Fixes #5603. (#6931)
* Add currentPath property to NWPathMonitor. Fixes #5603.
2019-09-11 13:00:55 -04:00
Waleed Chaudhry 240e2716ae
[Foundation] Fix validate for insert for NSMutableArray<T>. Fixes #6876. (#6967)
* Fix validate for insert for NSMutableArray<T>. Fixes #6876.
2019-09-11 12:59:45 -04:00
Whitney Schmidt 53cf1fbf0b [MapKit] Update for new API Xcode11 b1 - b7 (#6934) 2019-09-11 09:56:10 -04:00
Vincent Dondain 483285adc6
[xharness] Bring more joy to the developer when all tests pass 🎉 (#6962)
- When everything just works, skip the "test results" header and output that all tests pass with a 🎉 (:
2019-09-11 08:15:06 -04:00
Rolf Bjarne Kvinge 3ee1329e0e
[generator] Handle inheriting the same member from multiple protocols. Fixes #6366. (#6961)
* [generator] Handle inheriting the same member from multiple protocols. Fixes #6366.

Fixes https://github.com/xamarin/xamarin-macios/issues/6366.

* Update xtro.
2019-09-11 05:12:43 -07:00
Sebastien Pouliot 40a12f46a7 [storekit] Update for Xcode 11 GM (#6978)
The `SKArcade.h` header file has not been part of the `StoreKit.h`
umbrella header since it was added (in early Xcode 11 betas).

That was reported in https://feedbackassistant.apple.com/feedback/7017660
and it's shadow https://github.com/xamarin/maccore/issues/1913

In Xcode 11 GM is was added, but only for macOS ?!? so it is only,
for now, enabled on macOS
2019-09-11 06:35:52 -04:00
Sebastien Pouliot 188c5ee493 [homekit] Update for Xcode 11 GM (#6979)
In Xcode 11 GM the HomeKit headers were updated to mark an API deprecated
on iOS, but only on tvOS headers, where the type is not available

This API is commented until we hear back from https://feedbackassistant.apple.com/feedback/7246945
shadowed in https://github.com/xamarin/maccore/issues/1959
2019-09-11 06:34:05 -04:00
Sebastien Pouliot 7dd96d1a04 [medialibrary] Update for Xcode 11 GM (#6977) 2019-09-11 01:56:47 -07:00
Sebastien Pouliot c23cf5d834 [fileprovider][macos] Update (remove some) API for Xcode 11 GM (#6974)
For some reason (likely to be added back later ?) Xcode 11 GM removed
most of new macOS 10.15 API for FileProvider.

So instead of deleting stuff this uses a lot of `[NoMac]` even if some
API are actually not part of any platform anymore, e.g. you can see the
following line in the GM headers

```
API_UNAVAILABLE(watchos, tvos) API_UNAVAILABLE(ios, macos)
```
2019-09-10 23:34:35 -07:00
Rolf Bjarne Kvinge 773a8562bd
[tests][mtouch] Don't sleep a second for timestamp rollover unless we're on a non-APFS file system. (#6958) 2019-09-10 22:54:19 -07:00
Vincent Dondain d9d6c9d800 [clockkit] Update for Xcode 11 GM (#6972) 2019-09-11 01:47:23 -04:00
Vincent Dondain e02c1a9281 [corelocation] Update for Xcode 11 GM (#6973) 2019-09-10 23:51:56 -04:00
Vincent Dondain 4bb4e09a02 Bump for Xcode 11 GM Seed (#6968) 2019-09-10 21:03:25 -04:00
Manuel de la Pena b5a85a115b
[CoreHaptics] Add support for the new framework up to beta 7. (#6943) 2019-09-10 13:03:26 -04:00
Sebastien Pouliot 62018fdab4
[tests][intro] Add test for simlauncher [weak] frameworks. Fixes #6951 (#6957)
We ship a default, pre-built, simlauncher for iOS simulator applications.
This speeds up compilation for the default (non linked) simulator builds
quite a lot (no call to `clang` is needed). However it force us to keep
track of frameworks manually - `mtouch` can track them but requires
calling clang/ld to finish things up (killing the optimization).

It's easy to forget some (new) frameworks since they can be loaded
dynamically (on demand) _most_ of the time. Sadly there are a few cases
where doing so cause (hard to diagnose) problems - so we can't depend
on them being loaded, correctly for us.

The new test case loads the `otool -L` output (make when we build
simlauncher[32|64]-sgen) and compares it with mtouch's GetFramework
logic *and* with our namespaces (which is pretty close, with a few
exceptions, to the framework names). This will make it harder to
forget [weak] frameworks when adding new bindings :)

Fixes https://github.com/xamarin/xamarin-macios/issues/6951
2019-09-10 09:02:27 -04:00
Sebastien Pouliot 6488fcb8f9
[metalkit] Update for Xcode 11 up to beta 7 (#6956) 2019-09-10 09:00:53 -04:00
Rolf Bjarne Kvinge 15f0af7a1a
[registrar] Report a warning when the registrar export an abstract INativeObject type to Objective-C. (#6659)
* [registrar] Report a warning when the registrar export an abstract INativeObject type to Objective-C.

Exporting abstract types to Objective-C can lead to problems when at runtime
we're asked to create an instance of such a type (which we can't), so warn
when this happens.

This would have caught #6655, and the problems explained in #4969 as well.

Since this may trigger for code that's currently working fine, I'm making it a
warning instead of an error (which means adding some extra code to be able to
easily report warnings from the generator code).

* Don't assume a TypeReference can be successfully resolved every time.
2019-09-10 04:35:59 -07:00
Rolf Bjarne Kvinge f5cbe60ae9
[MediaPlayer] Enable API that depend on AVFoundation types for watchOS. Fixes #6597. (#6942)
Fixes https://github.com/xamarin/xamarin-macios/issues/6597.
2019-09-09 14:04:51 -07:00
Rolf Bjarne Kvinge 366f46ba21
[ModelIO] Implement new API introduced with Xcode 11 b1-7. (#6930) 2019-09-09 13:15:07 -07:00
Sebastien Pouliot 6135f47fb6
[soundanalysis][watchos] Update to include last, missing API on watchOS now that AVFoundation is merged (#6939) 2019-09-09 14:16:04 -04:00
Rolf Bjarne Kvinge 2060faa812
[introspection] Add a few more typo whitelist entries. (#6941)
Fixes introspection on macOS 10.15.
2019-09-09 10:39:23 -07:00
Jo Shields 926372c940 Bump to mono:2019-08 (#6723)
Included changes are:

* New Cecil API in 2019-08
* Permit new symbols from networkable AOT profiler in symbols test
* Bump Mono to include fix for zlib linking, and new Cecil API
* We need to link against zlib now, if using libmono.a
* [Tests] Ignore memory hungry tests in old devices. (#6913)
* Ignore certain tests that use too many resources in old devices.
* Add missing tests that use too much memory on 32b devices.
2019-09-09 09:44:03 -04:00
Rolf Bjarne Kvinge 0008c20abf
Implement notarization. (#6928)
* Add a dummy x86_64 slice to all our native libraries that don't have one. (#6848)

Apple's notarization tool has a bug where they incorrectly flag Mach-O
binaries without an x86_64 slice, so make sure all our libraries have one.

* Jenkinsfile notarization (#6869)

* Add in notarization script for xamarin.mac/xamarin.iOS

* Flatten the list to get rid of the braces

* Add in keychain password

* Add login.keychain back in to access codesigning certificates

* Always sign pkgs, upload notarized copies

* Enable ios notarization and make notarized pkgs public

* Make notarization non-fatal

* Publish GH statuses for notarized PKGs

* Don't forget to declare URI variables for notarized pkgs

* report proper package links

* [jenkins] Improve package reporting.

* Use dummy function name which our tests won't complain about.
2019-09-09 00:34:11 -07:00
Rolf Bjarne Kvinge 0b4fc12f32 [tests] Fix several issues that show up in the mtouch and introspection tests on macOS 10.15. (#6929)
* [introspection] Fix several issues that show up on macOS 10.15.

* [tests][mtouch] Fix a few tests according to recent changes.
2019-09-06 20:57:40 -04:00
Sebastien Pouliot f79f1c794c
[tests][monotouch-tests] Fix UITabBar.TintColor on tvOS (#6933)
Only check that setting `tintColor` to `nil` gives us back some
default color - IOW we only care it's not-null, the exact color
has no value being tested.
2019-09-06 20:56:07 -04:00