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

6275 Коммитов

Автор SHA1 Сообщение Дата
Manuel de la Pena f2948b268e
[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.
2019-05-16 13:05:19 -07:00
Sebastien Pouliot 4cfca09260
[foundation] Expose AllowsCellularAccess on NSUrlSessionHandler (#6059)
This property was always set to `true` but it can be useful to turn it
off (and that was not easy with the existing implementation)
2019-05-16 14:20:06 -05:00
Manuel de la Pena 762146a95c
[XHarness] Ignore IO flacky tests in devices too. (#6057) 2019-05-16 10:15:11 -07:00
Sebastien Pouliot 2121b703cd
[linker] Add the custom attributes removal step as an configurable optimization. Fix #3655 (#6049)
This allows the optimization to be disabled in cases where one, or
many, a custom attribute(s) are required by the application at runtime.

While not ideal disabling this single step is much better than disabling
linking for the whole application.

A better approach is described in https://github.com/xamarin/xamarin-macios/issues/6048
but this configuration optimization makes sense independently of it.

Fix https://github.com/xamarin/xamarin-macios/issues/3655
2019-05-16 09:16:32 -07:00
Sebastien Pouliot c481aac216
[apidiff] Add q quick'n'dirty script to produce a diff between any two bundle.zip (#6050)
Use for producing API diff for release notes without waiting for a PR,
bots and/or approvals...

Also useful to produce API diff between any versions, not just between
the current revision and a baseline (last stable).
2019-05-15 12:46:38 -05:00
Vincent Dondain a48669ead5
[appkit] Make NSCell and NSControl 'Formatter' accept null (#6042)
- Fixes #6032: NSTextField.Formatter missing null-allowed
  (https://github.com/xamarin/xamarin-macios/issues/6032)
- Update 'NSObject Formatter' to 'NSFormatter'
2019-05-14 10:37:14 -07:00
Manuel de la Pena 81d6225eb7
[XHarness] Fix some issues in the BCL test generator. (#5938)
We had issues in the code that adds a type found in an assembly to
ensure that it was not removed by the linker. This resulted in some
assemblies having 0 tests.

Added the needed ignore for the corlib tests and system ones.
2019-05-11 12:03:38 +02:00
Rolf Bjarne Kvinge 9d31f99b96
Bump mono. (#6036)
New commits in mono/mono:

* mono/mono@7361a4f01c [llvmonly] make local copy of trace_ips pointer from exception object (#14409)
* mono/mono@7daf13e0d4 [2019-02] [runtime] Use MAP_JIT automatically when running under a hardened runtime on osx. (#14413)
* mono/mono@ca78977b31 [sdks] Add .cs source files to ios archive
* mono/mono@7814ea810c [sdks] Make sure the mono-version.txt directory exists
* mono/mono@f9cdf7b986 Bump helix-binaries
* mono/mono@238d4a71db A deadlock happens when during a process_suspend there is a pending invoke and then when it's calling the invoke there is another call to process_suspend in the same thread. (#14387)
* mono/mono@189b0c5c35 [sdks] Add Mono version to ios/mac archive
* mono/mono@ff46d6e49e [sdks] Fix wrong path
* mono/mono@2397d41abf [sdks] Add Mono binaries to mac archive

Diff: bc3791b0ff..7361a4f01c
2019-05-10 15:52:18 +02:00
Manuel de la Pena 0fc7cff218 [Jenkins] Do not run device tests in the internal jenkins instance. (#6034) 2019-05-10 08:25:14 +02:00
Rolf Bjarne Kvinge 6d8eba812d
[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.
2019-05-10 07:40:45 +02:00
Ankit Jain 3a7bdc0a13 [msbuild] Add reference to `System.Drawing.Common.dll` to XI projects. (#6011)
* [msbuild] Add reference to `System.Drawing.Common.dll` to XI projects.

Fixes https://github.com/mono/mono/issues/13483 :

```
@akoeplinger: Since we moved types from Mono.Android.dll and
Xamarin.iOS/WatchOS/TVOS.dll to System.Drawing.Common.dll user projects
would fail to compile. We need to add some msbuild logic to add a
reference to the assembly automatically.
```

* [msbuild] Implement the same fix for XM projects as well.

* [msbuild] Update Xamarin.iOS.Tasks.TargetTests.GetReferencedAssemblies_* tests.

We're including a new assembly, which means the
Xamarin.iOS.Tasks.TargetTests.GetReferencedAssemblies_* must be updated
accordingly.

Also modify these tests so that test assert that fails lists the actual
assembly that's missing, i.e. instead of this:

    1) Test Failure : Xamarin.iOS.Tasks.TargetTests.GetReferencedAssemblies_Executable
         #1
      Expected: 6
      But was:  7

we now print:

    1) Test Failure : Xamarin.iOS.Tasks.TargetTests.GetReferencedAssemblies_Executable
         References
      Expected: equivalent to < "mscorlib.dll", "MyLibrary.dll", "System.Core.dll", "System.dll", "System.Xml.dll", "Xamarin.iOS.dll" >
      But was:  < "mscorlib.dll", "MyLibrary.dll", "System.Core.dll", "System.dll", "System.Drawing.Common.dll", "System.Xml.dll", "Xamarin.iOS.dll" >

* [tests] Adjust Xamarin.MMP.Tests.AssemblyReferencesTests.ShouldNotAllowReference_ToSystemDrawing.

The test was verifying that referencing System.Drawing.dll and trying to use
System.Drawing.RectangleF would fail to compile (because System.Drawing.dll
shouldn't be resolved in this case).

The addition of System.Drawing.Common.dll breaks this assumption, because now
we ship System.Drawing.RectangleF, so the code that was supposed to fail to
compile works just fine instead.

So modify the test to verify that there's no System.Drawing.dll in the final
bundle.

* Remove workarounds for mono/mono#13483.

* [msbuild] Create a way out if automatically referencing System.Drawing.Common.dll causes problems.

* [msbuild] Adjust variable name and boolean logic according to review.
2019-05-10 01:20:52 +02:00
Rolf Bjarne Kvinge b31b02002e
[xharness] Flush the log after getting results from listing simulators/devices with mlaunch. (#6030)
Now constantly refreshing the device/simulator listing log will show the
output as mlaunch writes it, which makes the impatient me happier.
2019-05-09 21:38:43 +02:00
Rolf Bjarne Kvinge d657c723ee
[mtouch/mmp] Make the mono native mode a Target-specific variable. (#6028)
The arm64_32 slice for watchOS apps will always use the 'unified' mode, while
the armv7k can be both 'unified' and 'compat' depending on the deployment
target, so we need to keep track of this per Target.

This PR does not change anything related to arm64_32, that will come in a
later PR.
2019-05-09 21:36:42 +02:00
Rolf Bjarne Kvinge 6eeb2201a9
[mtouch] Move string null/empty check into CompilerFlags.AddOtherFlag. (#6027) 2019-05-09 18:43:39 +02:00
Rolf Bjarne Kvinge c0d68b7e85
[xharness] Don't only build if asked to run using the UI. (#6026)
This makes it possible to run tests that are marked as 'BuildOnly' to see if
they've been fixed or not.

There's already a 'build' button if only a build is desired.
2019-05-09 18:22:35 +02:00
Manuel de la Pena de0691a22a
[XHarness] List the simulators and devices in the html. (#6020) 2019-05-09 15:12:52 +02:00
Rolf Bjarne Kvinge 6df96ffa9f
Merge pull request #6004 from rolfbjarne/xharness-old-simulators5
Add support for running tests with the earliest possible simulator, and use it for introspection tests.

* Add support for running tests with the earliest possible simulator
  (currently iOS 8.1, tvOS 9.1 and watchOS 2.0).
* Make the introspection tests run with the earliest possible simulator.
* Fix several binding issues (mostly missing availability attributes), and a
  couple of issues in the introspection tests themselves.

Reference: https://github.com/xamarin/xamarin-macios/issues/3668.
2019-05-09 13:20:21 +02:00
Manuel de la Pena f2f345ac25
[VSTS] Ensure that the corrent tests are run on devices. (#6019)
The change allows to state the tests that have to be ran. ATM with these
changes, the vsts pipeline must add the following to the env vars:

* tvOS device pipelines: Must add run-tvos-tests to the labels.
* iOS device pipelines: Must add run-ios-tests to the labels.

This will ensure that only the tests for the devices are ran and if the
tests pass we get a green build with no unexpected skips.
2019-05-09 13:06:49 +02:00
Rolf Bjarne Kvinge 789385cb3e Bump macios-binaries to get updated mlaunch.
New commits in xamarin/macios-binaries:

* xamarin/macios-binaries@718cef6 Bump mlaunch to xamarin/maccore@34725fe136 (#18)

Diff: 0faf210ab6..718cef60c9
2019-05-09 07:28:30 +02:00
Rolf Bjarne Kvinge 3c66051e5a
[sampletester] Bump prebuilt-apps hash. (#6015)
Bump prebuilt-apps hash to get fix for https://github.com/xamarin/prebuilt-apps/pull/31.
2019-05-08 15:25:47 +02:00
Rolf Bjarne Kvinge 744ec56156 Merge remote-tracking branch 'origin/master' into xharness-old-simulators5 2019-05-08 15:05:05 +02:00
Rolf Bjarne Kvinge 8c4e284ac7
[xharness] Fix finding labels in pull requests. (#6009)
Looks like this regressed in
61bf0db817 (diff-b01110f512ec4a442e37213063a11758R39);
since then no manual labels have been applied to test runs in public jenkins.
2019-05-08 15:04:28 +02:00
Rolf Bjarne Kvinge 6092954e3b
Bump mono. (#6012)
New commits in mono/mono:

* mono/mono@bc3791b0ff [2019-02] [loader] Don't store through a null ptr (#14111)
* mono/mono@53ca9c8e17 [wasm] Disable chakra tests until its fixed
* mono/mono@c5217a1287 [2019-02] [arm] fix armv7k regression on struct passing (#14379)
* mono/mono@6d8aed9c8a [sdks] Disable excluding assets from archive
* mono/mono@2ee31beafa [sdks] Add Mono libraries to mac archive
* mono/mono@73c1132172 [sdks] Add mono-2.pc to mac archive
* mono/mono@defcca138e [sdks] Add Mono libraries and frameworks to iOS archive
* mono/mono@f4a9140323 [sdks] Remove --with-monotouch from configure arguments
* mono/mono@9a28fed3d1 [sdks] Fix README.md
* mono/mono@cd5f040eb7 Bump API snapshot submodule
* mono/mono@19053ea10a [Facades] Include missing enums in System.Memory
* mono/mono@7615d0fe1d [tests] Write nunit/xunit exclude categories to a file (#14281)

Diff: 94121495e9..bc3791b0ff
2019-05-08 14:44:37 +02:00
Wouter Meuwis 911c3fb837 [foundation] Updated NSUrlSessionHandler to support TLS 1.3 (#6006) 2019-05-08 08:38:15 -04:00
Rolf Bjarne Kvinge 62f0d29429
[xharness] Improve logging about labels found. (#6007) 2019-05-07 15:57:17 +02:00
Rolf Bjarne Kvinge ef0d7a1718
[generator] Show proper errors when failing to compile something. (#6003)
* [mtouch/mmp] Split out the RunCommand[Async] methods to a separate file so that the generator can reuse more easily.

* [generator] Show proper errors when failing to compile something.

* Fix grammar
2019-05-07 13:40:59 +02:00
Rolf Bjarne Kvinge 1239a019cc Fix defining extra simulators so that they're actually installed.
The system-dependencies.sh script greps in Make.config for the
EXTRA_SIMULATORS variable, and the grepping wasn't able to correctly parse the
previous variable definition, so make it simpler so that
system-dependencies.sh understands it.
2019-05-07 07:58:00 +02:00
Rolf Bjarne Kvinge c97d267faf
[runtime] Implement support for an arm64 dynamic registrar. (#6005)
This is required in order to execute downloaded assemblies (or any other
assembly not known at compile time) on device.
2019-05-07 07:35:39 +02:00
Rolf Bjarne Kvinge 37a280d974
[runtime] Put LOGZ directive in a header to not duplicate it everywhere. (#6001) 2019-05-06 19:29:28 +02:00
Rolf Bjarne Kvinge 83efaaf70f [src] Sprinkle availability attributes for iOS 8.1, tvOS 9.0 and watchOS 2.0. 2019-05-06 17:01:17 +02:00
Rolf Bjarne Kvinge 2f86feae7d [mtouch] Fix framework information for MetalKit in the simulator.
MetalKit wasn't available in the simulator until iOS 10.0.
2019-05-06 17:01:17 +02:00
Rolf Bjarne Kvinge 8fcf672c13 [introspection] A few tweaks for iOS 8.1 / tvOS 9.0 / watchOS 2.0. 2019-05-06 17:01:17 +02:00
Rolf Bjarne Kvinge a4ccadc370 Bump maccore to get mlaunch fix for older simulators.
Diff: f7ca470c0a..34725fe136
2019-05-06 17:00:39 +02:00
Rolf Bjarne Kvinge fa9125dcd0 [xharness] Don't throw NRE if a simulator doesn't exist.
We automatically create simulators when needed, but it won't work if the
simulator runtime isn't installed. So handle the case where a test might not
have a simulator to execute in correctly.
2019-05-06 17:00:39 +02:00
Rolf Bjarne Kvinge 3a83936dfd [xharness] Group simulator tasks by simulator UDID instead of platform.
Since we may have multiple simulators for each platform now.
2019-05-06 17:00:39 +02:00
Rolf Bjarne Kvinge 61b2dc817b [xharness] Make old simulator tests opt-in by using a github label. 2019-05-06 17:00:39 +02:00
Rolf Bjarne Kvinge c9133e2331 Auto-provision older simulators. 2019-05-06 17:00:39 +02:00
Rolf Bjarne Kvinge 13497d3bab [xharness] Verify that tasks can be run in aggregated mode.
If tasks can't be run (because there aren't any available simulators), then
the task will now fail gracefully with a useful failure message.
2019-05-06 17:00:39 +02:00
Rolf Bjarne Kvinge e48955268f [xharness] Add support for running tests with the earliest possible simulator, and use it for introspection tests. 2019-05-06 17:00:33 +02:00
Rolf Bjarne Kvinge 82f288a135
[runtime] Refactor a bit to share code between files. (#6000) 2019-05-06 16:19:56 +02:00
Rolf Bjarne Kvinge b581cd8961
[generator] The --no-mono-path option doesn't do anything anymore, so remove it. (#5996) 2019-05-06 14:41:52 +02:00
Rolf Bjarne Kvinge 786be98522
[generator] Remove MONO_PATH removal, it's not needed anymore. (#5998)
Since we don't call btouch with a forced mono path now (it's a desktop
executable), we don't need this anymore.
2019-05-06 14:41:31 +02:00
Rolf Bjarne Kvinge 19318368f0
[tests][msbuild] Remove deprecated values from csprojs. (#5995) 2019-05-06 14:40:48 +02:00
Rolf Bjarne Kvinge a36019c83c
[mtouch/mmp] Remove dead code. (#5997) 2019-05-06 14:40:31 +02:00
Rolf Bjarne Kvinge 4b8fca6ed9
Bump mono. (#5981)
New commits in mono/mono:

* mono/mono@94121495e9 [arm] amend stack pointer properly in exception trampoline (#14313)
* mono/mono@3bfb9c61fa [aot] Avoid passing -march=arm to llc when using thumb, it forces arm32 code generation.
* mono/mono@d04d534d11 Bump API snapshot submodule
* mono/mono@f6e52f1e3b [corlib] Add API that was dropped during the coreFX System.IO integration
* mono/mono@00362f57fc Fix Windows MSI build
* mono/mono@d49ca5fa9d More Windows MSI fixes
* mono/mono@a8e6472c77 Fix Windows MSI build, msbuild is now in Current instead of 15.0
* mono/mono@0136ead44f Remove libgcc_s_seh-1.dll dependency when targeting Win32 with gcc. (#14251)
* mono/mono@443235fd8c [nunit-lite] Use .NOTPARALLEL to possibly fix some races

Diff: c4ea64e1b1..94121495e9
2019-05-06 14:40:12 +02:00
Rolf Bjarne Kvinge 483345dcd3
[generator] Format csproj like VSfM likes to do it. (#5999)
No actual changes here (as can be seen by ignoring whitespace in the diff),
this just makes me happier when modifying the csproj in VSfM and the entire
file doesn't end up changed.
2019-05-06 14:38:19 +02:00
Rolf Bjarne Kvinge 682f54da87
[linker] Mark protocol interfaces when using the dynamic registrar. (#5988)
* [linker] Mark protocol interfaces when using the dynamic registrar.

Fixes this monotouch-test failure when using the dynamic registrar and the
linker at the same time:

    [FAIL] RegistrarTest.TestProtocolRegistration :   UIApplicationDelegate/17669
      Expected: True
      But was:  False

* [tests] Adjust test after linker change.

All Xamarin.iOS apps will now link with QuickLook when using the dynamic
registrar, because NSUrl implements a QuickLook protocol:
fcac64ad6e/src/foundation.cs (L5445).

Adjust LinkAll_Frameworks accordingly, and add a new test that verifies that
the old behavior (not linking with QuickLook when linking all assemblies) is
still correct.
2019-05-06 13:21:02 +02:00
Sam 72afd997d6 Add more details to MSBuild errors for provisioning profiles (#5984) 2019-05-06 08:27:16 +02:00
Rolf Bjarne Kvinge fcac64ad6e
[apidiff] Use mono-api-[info|html].exe from the mono archive. (#5990) 2019-05-06 07:31:03 +02:00
Rolf Bjarne Kvinge 4be637aa8e
[registrar] Fix marshalling of structs with a single member. (#5986) 2019-05-06 07:26:54 +02:00