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

2403 Коммитов

Автор SHA1 Сообщение Дата
Alexander Köplinger 7c73d70b4f [linker] Don't remove RuntimeCompatibilityAttribute from assembly
It's needed at runtime since it changes exception handling behavior.

The "link sdk" Linker_RuntimeWrappedException() test relies on it,
but this never showed up there since "link sdk" doesn't link the main assembly.
2019-04-03 23:52:18 +02:00
Sebastien Pouliot 56d87eebba [linker] Adjust HttpClientHandler selection with the new (non BCL) location of the handlers 2019-04-01 21:24:24 -05:00
Sebastien Pouliot a9f8d7b379
[mtouch][mmp] Add control over the the linker new `BeforeFieldInit` optimization (#5820)
Add an mtouch/mmp optimization flag to control this new optimization since
3rd party code (in particular binaries) might depend on this side effect.
2019-04-01 21:21:56 -05:00
Sebastien Pouliot 9ebebf9f42
[linker] Teach linker to accept old (before optimization) bindings (#5823)
Existing binding binaries won't have the `[Preserve]` attribute on
the `Handler` field and, with the new optimization, would not work
properly.

This tweak make sure that older, already linker-safe, bindings will
remain this way (safe) in this (and future) versions of both iOS and
macOS SDK.
2019-04-01 09:35:14 -05:00
Alexander Köplinger 09dfd96bfd Merge remote-tracking branch 'upstream/master' into mono-2019-02 2019-03-29 11:10:17 +01:00
Alexander Köplinger e142ee7a57 [xharness] Display test assemblies contained in a BCL test group (#5814)
* [xharness] Display test assemblies contained in a BCL test group

* PR feedback
2019-03-29 10:17:39 +01:00
Vincent Dondain eb73f3ce6e
[xharness] Fix BuildOnly logic (#5813)
https://github.com/xamarin/xamarin-macios/pull/4884 introduced the logic of only building certain `RunTestTask`.
This was meant to disable iOS Extensions as part of a fix to https://github.com/xamarin/maccore/issues/1008.
However this didn't quite work and iOS extensions were still running (and failing).
The reason being that `BuildOnly` was set to a `RunDeviceTask` that's added to a list which is then given to `CreateTestVariations` which creates new instances of `RunDeviceTask`.
We now propagate `BuildOnly` to the new variation instance.
2019-03-28 09:23:40 -04:00
Alexander Köplinger 56bb4f9505 Reenable more BCLTests 2019-03-28 11:16:47 +01:00
Alexander Köplinger d91769a5a3 Fix two mmp/mtouch tests after the mcs->csc default change 2019-03-28 00:16:53 +01:00
Alexander Köplinger b1b557a1b9 Reenable a few BCLTests 2019-03-27 13:33:23 +01:00
Alexander Köplinger bcae65f998 MTouch: Always add GSS framework when mono-native is used
According to Rolf it's fine to always add since the native linker will
figure out if it's really needed and so customers don't need to do
anything when using -all_load.
2019-03-27 11:14:53 +01:00
Alexander Köplinger 421e673227 Merge remote-tracking branch 'upstream/master' into mono-2019-02 2019-03-27 01:33:49 +01:00
Alexander Köplinger f7864d5bfc Fix introspection tests due to new reflection ctor.ToString() format
Mono is now using reflection code from corefx and the string includes namespace now.
2019-03-27 01:28:56 +01:00
Manuel de la Pena 45f3e649b9
Ignore tests for devices (#5807)
* [XHarness] Ignore some tests that fail on device.

Added the ignore, which can be later removed on the new mono 2019-02
since the issues do not happen there.

Fixes: https://github.com/xamarin/maccore/issues/1495

* [XHarness] Ignore corlib tets failing on devices.

Added the required ignores to get the devices green and workaround mono
issue https://github.com/mono/mono/issues/13641
2019-03-26 12:25:23 +01:00
Alexander Köplinger 40a58811bb Fix TestAllLoad() mtouch test 2019-03-25 20:20:10 +01:00
Alexander Köplinger 1079592cd1 tests: Default to using csc instead of mcs 2019-03-25 19:56:27 +01:00
Alexander Köplinger d473217ace Fix LinkSdkRegressionTest
The internal runtime type was renamed: MonoModule -> RuntimeModule, MonoAssembly -> RuntimeAssembly

Also linker got smarter and removed unecessary types for WebKit_NSProxy.
2019-03-22 15:00:15 +01:00
Alexander Köplinger 0e249818d2 Merge remote-tracking branch 'upstream/master' into mono-2019-02 2019-03-22 10:32:58 +01:00
Alexander Köplinger c0e85ae6f1 SdkTest.cs: remove known LLVM failures that no longer occur and fix oparglist name
oparglist was renamed to arglist in d5547b1929
2019-03-20 13:12:44 +01:00
Manuel de la Pena 9bb4d2d2d5
[XHarness] Ensure we do not crash if the framework node is missing. (#5792) 2019-03-20 12:49:09 +01:00
Manuel de la Pena 1615b28ed1
[XHarness] Reduce the number of test applications for the BCL tests. (#5768)
This commit improves the state of the BCL testing in the following ways:

1. Improve the device tets running. Less apps, faster results.
2. WatchOS apps are left as they were to ensure that we do not have deplouyment/run issues.

We now support the ignore files per assembly name to simplify the
tracking of the ignored tests. All
2019-03-20 12:10:18 +01:00
Alexander Köplinger 39c61cca88 REVERTME: Add workaround for missing System.Drawing.Common reference 2019-03-20 01:32:48 +01:00
Alexander Köplinger ca76be3bea Merge remote-tracking branch 'upstream/master' into mono-2019-02 2019-03-19 16:17:35 +01:00
Sebastien Pouliot 5c321ac89d
[mtouch] Update validations around --interpreter (#5772)
This also centralize other interpreter checks and options in the same
location (making it easier to read / update).

* Warn and switch the REPL if the interpreter is enabled on simulator

Why ? It's confusing to build the same code using different options for
simulator and devices. This is what happens if you try to use features
like `dynamic` or `System.Reflection.Emit`.

So instead of an error, we warn that the interpreter is not supported
and switch to the existing REPL mode.

The JIT remains the only option for the simulator but it allows testing
features without a device.

* Fail early if the interpreter is used on 32bits [1]

The current interpreter only works on 64 bits (so ARM64). However the
error won't be reported, back to the developer, until deployment time.

This temporary [1] fix spot the condition very early and report an error

```
error MT0099 : Internal error : The interpreter is currently only available for 64 bits.
```

instead of the current one at deploy time

```
IncorrectArchitecture: Failed to find matching arch for 32-bit Mach-O input file /private/var/installd/Library/Caches/com.apple.mobile.installd.staging/temp.tNKDlx/extracted/X.app/X
error MT1006: Could not install the application 'X.app' on the device 'Mercure': AMDeviceSecureInstallApplicationBundle returned: 0xe8000087 (kAMDIncorrectArchitectureError).

Application could not be uploaded to the device.
```

[1] https://github.com/mono/mono/issues/9871

* [tests] Fix/renumbered MT0138

The test was using simulator + interpreter which is not _really_
possible, we use REPL in that case - so we're now checking if
assemblies were specified with `--interpreter` to cover both cases.

Also 0138 was already used by `mmp` and the warning was **not**
registered or documented in the errors documents. To avoid
confusion it has been renumbered to 0142 and documented.
2019-03-19 08:22:39 -05:00
Alexander Köplinger 66ebb76e71 Merge remote-tracking branch 'upstream/master' into mono-2019-02 2019-03-18 19:24:52 +01:00
Alexander Köplinger 6b7578306c Fix MTouch.MT2018_b and MTouch.MT2018_c tests
mscorlib.dll now has InternalsVisibleTo to System.Net.Http.dll which causes
> Friend access was granted to `System.Net.Http, PublicKeyToken=b03f5f7f11d50a3a', but the output assembly is named `System.Net.Http, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null'.

Switch to System.Xml.dll instead for these tests.
2019-03-18 19:24:28 +01:00
Rolf Bjarne Kvinge 18b13ac876
[runtime] Use mono_array_setref instead of mono_array_set. (#5782)
* [Foundation] Add an NSArray.FromNSObjects overload that can take an array of INativeObjects.

* [runtime] Use mono_array_setref instead of mono_array_set.

Otherwise the GC won't know about the assignment, and the assigned value can
be freed if it's no longer referenced anywhere else.
2019-03-18 15:00:32 +01:00
Rolf Bjarne Kvinge 45f72fcbbe
[xharness] Remove bitcode from tvOS apps. (#5781)
We don't need the bitcode for testing, it makes test apps bigger (so big that
the Apple TV might refuse to install them).
2019-03-18 15:00:21 +01:00
Alexander Köplinger fe92aab5bb Merge remote-tracking branch 'upstream/master' into mono-2019-02
# Conflicts:
#	external/mono
#	src/Foundation/NSUrlSessionHandler.cs
2019-03-18 14:35:46 +01:00
Alexander Köplinger 1c99284d07 REVERTME: Add workaround for missing System.Drawing.Common reference 2019-03-18 14:32:26 +01:00
Rolf Bjarne Kvinge 6447d0a498
[xharness] Add UI option to include (or not) tests that might put up permission dialogs. (#5780) 2019-03-18 12:52:06 +01:00
Alexander Köplinger 2b30e0755e REVERTME: Add workaround for missing System.Drawing.Common reference 2019-03-15 16:43:09 +01:00
Alexander Köplinger ed3acacd10 Merge remote-tracking branch 'upstream/master' into mono-2019-02 2019-03-15 14:30:26 +01:00
Alexander Köplinger a5ad605577 Remove a public symbol from MiscTests.PublicSymbols that was renamed
It now has a monoeg_ prefix which is already ignored
2019-03-14 15:22:46 +01:00
Sebastien Pouliot ea96b2299a
[mtouch] Make the SealerSubStep a configurable optimization (#5766)
document it and adjust the optimization tests.

This allows the optimization to be:
* disabled (if ever needed) on fully AOT'ed applications
* re-enabled for the interpreter (at your own risk)
2019-03-14 08:12:17 -05:00
Alexander Köplinger 6e3b0f2298 Fix InterfaceTest.Bug10866
The linker got smarter with https://github.com/mono/linker/pull/394
so we now remove B.Bar() since it's not used.
2019-03-14 13:43:09 +01:00
Manuel de la Pena 1cadb1bd2f
[XHarness] Add an extra configuration option for the tests matrix to match those in QA. (#5761)
New combinations have only been added to add-gc-test-matrix, mini and mscorlib
2019-03-14 11:37:37 +01:00
Alexander Köplinger 8c96fb2600 Fix missing file in System-mac.csproj.template 2019-03-13 19:54:04 +01:00
Manuel de la Pena 014aa6b2c9
[XHarness] Add an extra configuration option for the tests matrix to match those in QA. (Thumb) (#5763) 2019-03-13 19:00:49 +01:00
Alexander Köplinger 0bcbb67a45 Merge remote-tracking branch 'upstream/master' into mono-2019-02 2019-03-13 18:39:15 +01:00
Manuel de la Pena 22832369df
[XHarness] Fix crash in the bcl tests. (#5762) 2019-03-13 17:28:16 +01:00
Chris Hamons b777aba9f6
[msbuild] Xamarin.Mac Notary Support (#5754)
* Add --timestamp to hardened XM builds and --timestamp=none to rest
2019-03-13 10:54:01 -05:00
Alexander Köplinger 60812c0ba6 Use LangVersion=latest in mscorlib test csproj
Some tests require ref structs now which needs latest C#.
2019-03-13 00:34:55 +01:00
Manuel de la Pena 3fc1e32adb
[XHarness] Reenable the NUnit System.Data tests on mac os x. (#5749)
Fixes https://github.com/xamarin/maccore/issues/1192
Fixes https://github.com/xamarin/maccore/issues/1193
2019-03-11 18:50:18 +01:00
Manuel de la Pena 849355eaf2
[XHarness] Don't run BitcodeNotSupported BCL tests on watchOS. (#5750) 2019-03-11 12:08:48 +01:00
Manuel de la Pena 5bfbefab14
[XHarness] Reneable System.Security nunit tests on mac os x. (#5751)
Fixes  https://github.com/xamarin/maccore/issues/1197
2019-03-11 12:08:10 +01:00
Manuel de la Pena 7ef507b579
[XHarness] Fix the hostname parsing on devices. (#5752)
Following this
221f3e4a37/2478649/device-tests/jenkins-results/tests/index.html
we need to ensure that we have a split to get the host. Just happens on
iOs and tvOS since they are the only ones using tcp.
2019-03-11 12:04:32 +01:00
Rolf Bjarne Kvinge 5c1fa7dae6
[xharness] Add UI option to not automatically uninstall apps after running a test on device. (#5747)
This is useful when I want to re-run a test manually to debug failures. In
particular on the watch it's annoying to have to re-install the app.
2019-03-11 11:17:10 +01:00
Rolf Bjarne Kvinge ddc8b3dde2
[xharness] Simplify/unify the code to load simulators/devices. (#5746) 2019-03-08 19:31:53 +01:00
Rolf Bjarne Kvinge c8edf3a643
[tests] Check all architectures when verifying public symbols. (#5745)
This also means updating the whitelisted symbols.
2019-03-08 19:31:10 +01:00