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

5301 Коммитов

Автор SHA1 Сообщение Дата
Rolf Bjarne Kvinge ae13240b20
[xharness] Don't recursively print diagnostics for processes when printing diagnostics times out in the first place. Fixes maccore#1163. (#5198)
Recursively printing diagnostics can leave us with _many_ lldb processes, each
pretty much hanging, and the system overloaded, which, in the worst case
scenario, would require a hard reboot.

Most commonly the "only" thing that happens is an OutOfMemoryException when
the OS eventually tells xharness NO to launching new processes.

Fixes https://github.com/xamarin/maccore/issues/1163.
2018-11-29 16:33:57 +01:00
Rolf Bjarne Kvinge 1ffd62c749
[mtouch] Try cloning directories when copying them. (#5196)
Cloning directories is *much* faster than copying, so make sure we clone when
possible.

This will still fall back to copying if it the file system doesn't support
cloning.
2018-11-29 07:47:17 +01:00
Alex Soto 8bb5ab52b1
[registrar] Validate input to Adopts attribute (#5191)
Fixes xamarin/xamarin-macios#4107

We currently generate invalid registrar code when we get invalid input
in 'Adopts' attribute, this can happen because 'Adopts' can take a
plain string. We now generate a better error MT4177 instead of
generating invalid registrar.m/h code.
2018-11-28 10:06:36 -05:00
Rolf Bjarne Kvinge 8e61569615
[monotouch-test] Require iOS 9+ for the ActionTest.TimingFunction_* tests. (#5194)
Require iOS 9+ for the ActionTest.TimingFunction_* tests because Apple's
implementation was broken in iOS 8 and causes us to crash.
2018-11-28 15:09:03 +01:00
Rolf Bjarne Kvinge 95a4b9a2a1
[xharness] Write intermediate html reports to disk when running in server mode too. (#5193)
That way the report is still available even if xharness dies.

Also improve report generation to write directly to a temporary file on disk,
instead of writing to memory and then writing to disk (improves memory usage).
2018-11-28 15:02:30 +01:00
Rolf Bjarne Kvinge 1dee193134
[runtime] Unconditionally write the generated bindings. (#5195)
Otherwise we can run into cases where make things it needs to generate the
bindings, but they're identical to the previous bindings, thus nothing is
written to disk, the filestamp doesn't change, and at the next build make
continues to believe that the bindings have to be regenerated:

    $ make
    GEN      bindings-generated.m
    $ make
    GEN      bindings-generated.m
    [ad infinitum]
2018-11-28 15:01:58 +01:00
Rolf Bjarne Kvinge 170711596d
[xharness] Create a timestamped log directory instead of timestamping every file inside it. (#5192)
Only for server mode right now, since otherwise it would break links for CI builds.
2018-11-28 11:59:01 +01:00
Rolf Bjarne Kvinge 34c1d38917 [runtime] Disable debugging by default for watchOS apps on device. (#5184)
The previous default (Wifi) would never work; only Http mode works on watchOS
devices. This means that unless debugging was explicitly disabled (for
instance when running without debugging from the IDE), we'd try to connect in
WiFi mode (and gracefully fail, but showing error messages that are
unnecessary and potentally scary/confusing).
2018-11-27 16:30:32 -05:00
Rolf Bjarne Kvinge e8d780229b
[mmp] Set DEVELOPER_DIR to our Xcode. (#5187)
This makes it possible to build mmp (the partial static registrar code) with
the wrong system Xcode (which is not supported, but that doesn't mean we can't
try to make it mostly work to ease our lives).

I tried this in the xcode9 branch (PR #2588), and it didn't stick after the
xcode9 branch was merged to master.

I tried again a year later with the xcode10 branch (PR #4691), and once again
the commit didn't stick after the xcode10 branch was merged to master.

So now I'm trying to get this directly into master instead.

Let's see if it's still there when we branch for xcode11 next year...
2018-11-27 18:09:17 +01:00
Rolf Bjarne Kvinge 8618db251c
[xharness] Show device/simulator loading in progress in the web UI. (#5186) 2018-11-27 17:02:39 +01:00
Rolf Bjarne Kvinge 943e7eafd5
[xharness] Add support for stopping queued tasks in the web UI. (#5185) 2018-11-27 14:59:44 +01:00
Sebastien Pouliot acf8357ece [macos] Fix Constants.mac.cs.in for backward compatibility (#5181)
On macOS the path changes are forward but not backward compatible.

This means we need to keep older values, as they will work on newer OS,
while the new path won't work (on older OS).

The test are updated to add exceptions for such cases - in order to
give us a better chance to spot typos (since they were some).

This should fix
https://github.com/xamarin/maccore/issues/1174
https://github.com/xamarin/maccore/issues/1175
https://github.com/xamarin/maccore/issues/1176
https://github.com/xamarin/maccore/issues/1177
2018-11-27 14:34:47 +01:00
Sebastien Pouliot eb8b4f0db7
Bump mono to head of 2018-06 (#5177)
Commit list for mono/mono:

* mono/mono@b63e5378e3 [2018-06][ios] fix path for llvm invocation (#11737)

Diff: bb3ae37d71...b63e5378e3
2018-11-26 15:21:01 -05:00
Sebastien Pouliot 930e37232f
[tests][intro] Fix CoreImage location check for older macOS versions (#5176)
addendum to https://github.com/xamarin/xamarin-macios/pull/5159

failure on internal bots 4f1c39a00f (commitcomment-31401007)
2018-11-23 18:25:31 -05:00
Sebastien Pouliot db4e24e99f
Revert "Mono 5.16.0.87+ breaks us, so make sure we don't use it for now. (#5088)" (#5175)
This reverts commit 1ca7da537d.

This is fixed so the restriction is not needed anymore.
2018-11-23 15:19:15 -05:00
Rolf Bjarne Kvinge ecb1081e23
[jenkins] Fix path to api diff in commit comment. (#5173) 2018-11-23 16:23:03 +01:00
Rolf Bjarne Kvinge 2e754a2f70
[xibuild] Build the expected configuration. (#5172) 2018-11-23 16:22:14 +01:00
Manuel de la Pena 61b2038b3d
[Xharness] Add a workaround to not build the xunit tests when not needed. (#5156)
* [Xharness] Add a workaround to not build the xunit tests when not needed.

This is a workaround that does not use reflection to build the bcl test
projects. We need this until we have complete support of using mono as
an SDK.
2018-11-23 16:02:15 +01:00
Sebastien Pouliot 4f1c39a00f
[tests] Add introspection tests for Constants.*.cs.in. Fixes #5047 (#5159)
* Fix mac classic build
* Fix mac 32 bits (can't load 64bits only libraries)
* Check paths too leading to fixes to old (now incorrect) paths and typo
* apitest (Mac) has a similar test - but assumed that a file that did not exists was fine (missing typos and changes);
* tvOS simulator does not (unlike iOS) support loading the MetalPerformanceShaders.framework

reference: https://github.com/xamarin/xamarin-macios/issues/5047
2018-11-22 13:24:55 -05:00
Rolf Bjarne Kvinge b059252473
[jenkins] If provisioning fails with error 56, try again a few more times. Fixes maccore#1098. (#5168)
It seems curl can randomly fail with error 56, so if that happens, try again a
few more times before giving up.

Fixes https://github.com/xamarin/maccore/issues/1098.
2018-11-22 10:42:24 -05:00
Rolf Bjarne Kvinge 94d87ddba6
[jenkins] Don't execute the packaged XM tests on the main macOS version. (#5165)
* [jenkins] Don't execute the packaged XM tests on the main macOS version.

Don't execute the packaged XM tests on the main macOS version, since it's redundant.

It also prevents a potential test deadlock if all main bots are busy.

* Rework to make it show better in the Jenkins UI.
2018-11-21 12:21:57 -05:00
Rolf Bjarne Kvinge 02fe5339a4
[runtime] Clean up public symbols. Fixes #5124. (#5155)
* [runtime] Clean up public symbols. Fixes #5124.

Clean up public symbols, by:

* Symbols that don't need to be public (most of them), can be private.
* Prefix all public symbols with `xamarin_`.
* Add a test to ensure we don't introduce new public symbols.
* Use C symbols instead of mangled C++ symbols, since those are easier to
  handle in the test.

This minimizes the chance of getting into a symbol clash with another native library.

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

* Some test fixes.
2018-11-21 11:48:15 -05:00
Rolf Bjarne Kvinge 6f54cb7c28
Bump maccore to get fix for test-docs. (#5163)
* Bump maccore to get fix for test-docs.

Commit list for xamarin/maccore:

* xamarin/maccore@6e9b63e537 Merge pull request #1162 from rolfbjarne/docfixer-fixes
* xamarin/maccore@4cf1d63b7b [docfixer] Create project files and fix a few issues. Fixes #1118.
* xamarin/maccore@714bd73a55 [docfixer] Avoid declaring the same target twice.
* xamarin/maccore@34f4bfa339 [populate] Directories need to call Directory.Exists for existence checks.
* xamarin/maccore@341333db88 [docs] Remove truly ancient and outdated targets to publish updated docs.

Diff: 7ba9c5a962...6e9b63e537

* [jenkins] Make it possible to force docs testing by applying a label to pull requests.
2018-11-21 10:11:55 -05:00
Rolf Bjarne Kvinge 37cd57219c
[tests] Use xibuild when building packaged XM tests. Fixes maccore#1169. (#5164)
Fixes https://github.com/xamarin/maccore/issues/1169.
2018-11-21 09:59:10 -05:00
Manuel de la Pena 3618cefc5a
[Harness] Reduce the noise in the make files. Fixes xamarin/maccore#1156 (#5154)
* [Harness] Reduce the noise in the make files.

The Makefile.cs code generates a lot of noise becuase it tries to build
a make rule for the new BCL tests, these rules do not work and can be
ignored.

Fixes issue: https://github.com/xamarin/maccore/issues/1156
2018-11-21 13:28:06 +01:00
Rolf Bjarne Kvinge abbc4698d6
[jenkins] Improve failure reporting slightly by listing 'Test docs' and 'Test run' as failing stages in the commit comment. (#5150) 2018-11-21 01:45:39 -05:00
Rolf Bjarne Kvinge 6289d941d2
Bump maccore to get provisioning profile fix. (#5160)
Commit diff for xamarin/maccore:

Diff: 278d0e0c98...7ba9c5a962
2018-11-21 01:09:18 -05:00
Rolf Bjarne Kvinge f91e8fb811
Use a full path to xibuild. (#5140)
* Use a full path to xibuild.

Use a full path to xibuild everywhere, since it's easier than making sure PATH
is correct every time we want to invoke xibuild.

Also remove the xbuild-in-place script, it's not used anymore.

* Fix xibuild path lookup.

* [xammac_tests] Remove unneeded csproj changes.
2018-11-20 12:14:16 -05:00
Rolf Bjarne Kvinge 50bb4912e1
Revert "[xharness] Only build the BCL tests when we need them. (#5139)" (#5149)
This reverts commit 7277bbcd2b, it breaks building & running the new BCL tests.
2018-11-20 07:06:37 -05:00
Rolf Bjarne Kvinge 5761691c21
[jenkins] Fix slack reporting, and make it more resilient against failures. Fixes maccore#1160. (#5142)
* [jenkins] Fix getting author name+email for Slack reporting.

* [jenkins] Make slack reporting more resilient against failures. Fixes maccore#1160.

Fixes https://github.com/xamarin/maccore/issues/1160.
2018-11-20 02:55:57 -05:00
Aaron Bockover 9c028036b4 The NSBackingStore enum is not deprecated (#5144) 2018-11-20 02:54:19 -05:00
Chris Hamons dd75eedacf [codeowners] Add chamons to a few areas (#5147) 2018-11-19 22:20:40 -05:00
Rolf Bjarne Kvinge 163059c19b Build xibuild before mlaunch, since mlaunch needs xibuild to build. (#5143) 2018-11-19 14:28:16 -05:00
Rolf Bjarne Kvinge ecfe54a814
Bump maccore to get mlaunch build fix. (#5141)
Commit list for xamarin/maccore:

* xamarin/maccore@278d0e0c98 [mlaunch] Fix mlaunch build by using xibuild. (#1159)

Diff: e73094e632...278d0e0c98
2018-11-19 11:45:32 -05:00
Rolf Bjarne Kvinge 7277bbcd2b
[xharness] Only build the BCL tests when we need them. (#5139)
Only build the BCL tests when we need them, because we can't build them when
we're running the device tests (because we don't have a built source tree in
that case).

Since the test assemblies are required when generating the BCL projects, this
means we also delay creating the BCL projects until we need them.
2018-11-19 09:07:35 -05:00
Bernhard Urban f15233f3db [tests] enable msorlib with interpreter (#5122) 2018-11-19 07:18:12 -05:00
Jeffrey Stedfast 530f848ac9 [msbuild] Fixed compilation of SceneKit assets in library projects (#5130)
The problem is that AppBundleDir never gets defined for library projects.

Luckily, _AppBundleName and AppBundleExtension are always defined and
all we need is the directory name (i.e. MyApp.app), so this will work
just fine.

Fixes issue #5129
2018-11-18 16:35:02 -05:00
Bernhard Urban 74b3233be3 Bump to mono:2018-06 (#5136)
Commit list for mono/mono:

* mono/mono@bb3ae37d71 [interp] attempt to intrinsify again after a method is resolved regarding generics (#11715)
* mono/mono@78eb5303e8 [2018-06] [aot] image is usable without debug flag when interpreter is used (#11711)
* mono/mono@54cc205dd9 [2018-06] [crash] Remove duplicated il_offset (#11703)
* mono/mono@279ac406e7 [2018-06] [runtime] Fix the size calculation in mono_debug_add_method (). (#11686)
* mono/mono@1ac52d1827 [2018-06] [llvm] bump for armhf callingconv fix (#11610)

Diff: eee1d634e8...bb3ae37d71
2018-11-18 16:34:06 -05:00
Alex Soto 265c46b91b
[QuickLook] Add [ThreadSafe] to `QLThumbnailReply` and `QLFileThumbnailRequest` (#5119)
`QLThumbnailReply` and `QLFileThumbnailRequest`  members are called
from a background thread within `QLThumbnailProvider` extension
so our check on `UIApplication.EnsureUIThread ()` is not needed.

Fixes xamarin/xamarin-macios#5117
2018-11-17 23:08:09 -05:00
Ankit Jain f865694f86 Move tests to use new tool xibuild and thus fix msbuild tests (#5128)
* xibuild: New wrapper tool to run msbuild or managed executables

MSBuild supports fallback paths for projects imported using
`$(MSBuildExtensionsPath)`, but these must be specified explicitly in
the app.config of the main executable. There was a PR to allow use of
properties for this in the app.config, but that was not accepted
upstream.

This is required for being able to:

1. build projects with msbuild against the in-tree XI/XM build output
2. and to run nunit tests against the same.

For this we introduce a new tool, `xibuild`, based on XA's `xabuild`.
This supports the fallback paths to be specified via the environment variable
`MSBuildExtensionsPathFallbackPathsOverride`[1].
It essentially operates in 3 modes:

1. `xibuild -c /path/to/foo.exe`
	Generates /path/to/foo.exe.config with the fallback paths inserted into that.

2. `xibuild -- /v:diag /path/to/project.csproj`
	Runs msbuild with the arguments after `--` with a custom app.config based on
	`MSBuild.dll.config`, with the fallback paths correctly inserted.
	This is in a temporary file and the original config file is not touched.

3. `xibuild -t -- /path/to/managed_tool.exe args`
	Generates `/path/to/managed_tool.exe.config` based on `MSBuild.dll.config` with
	the fallback paths inserted, and runs `managed_tool.exe` with the arguments.
	The default is to overwrite the config file.
	But there is also a switch to merge it with an existing config file.

--
1. Value of the environment variable $MSBuildExtensionsPathFallbackPathsOverride
is prepended to any existing list of search paths in `MSBuild.dll.config`, IOW,
it takes precedence. So, the order of lookup becomes:

  - Value of the property `$(MSBuildExtensionsPath)`
  - Value of the environment variable `$MSBuildExtensionsPathFallbackPathsOverride`
  - /Library/Frameworks/Mono.framework/External/xbuild on macOS

* Integrate use of `xibuild` with the tests

Update all uses of `msbuild` and invocations of tools like nunit that
might depend on using the in-tree builds to use `xibuild`.

* xibuild: Move help descriptions to OptionSet itself.
2018-11-16 14:24:35 -05:00
Manuel de la Pena 505006952c
[Tests] Add a new iOS app to run the xunit and nunit tests (#4914)
Mono know provides a set of testing assemblies that contain the tests to be ran in each of the supported platforms. This commit adds the following:

1. Two different runners that can be used to execute NUnit and xUnit tests.
2. The necessary  glue to get xharness to run the new tests and report the results.
3. A new test that will ensure that if mono adds new tests, xharness will report failures if the tests are not run or not ignored.
2018-11-16 13:31:40 -05:00
Jeffrey Stedfast 6ebf136073
[msbuild] Pass ProjectGuid and ProjectTypeGuids to Archive task (#5118)
This is part of https://devdiv.visualstudio.com/DevDiv/_workitems/edit/705977
2018-11-15 17:13:27 -05:00
Chris Hamons e91ba9f93a
[mmp] Fix typo (#5123)
- https://github.com/xamarin/xamarin-macios/issues/5121
2018-11-13 17:56:05 -05:00
Chris Hamons d248cb6007
Remove some [Sealed] in XAMCORE_4_0 where not necessary (#5108)
- Added in 7d88592 but in XAMCORE_4_0 we don't need it since the "bad" binding won't be there.
2018-11-12 14:51:35 -06:00
Chris Hamons bacfa4e05c
[mac] Remove unnecessary PostSnippet and backing fields (#5101)
- https://github.com/xamarin/xamarin-macios/issues/3543
2018-11-09 16:01:15 -06:00
Bernhard Urban b53086fd0b Bump to mono:2018-06 (#5115)
Commit list for mono/mono:

* mono/mono@eee1d634e8 [ios] remove DISABLE_POLICY_EVIDENCE (#11580)

Diff: 4d7b7ab375...eee1d634e8
2018-11-09 16:54:29 -05:00
Chris Hamons a278fff887
[mac] Enable various msbuild only tests that were disabled (#5113)
- https://github.com/xamarin/xamarin-macios/issues/4110
2018-11-09 13:38:39 -06:00
Rolf Bjarne Kvinge e3dc242386 [ImageCaptureCore] Add missing availability attribute. Fixes maccore#1126. (#5109)
Fixes https://github.com/xamarin/maccore/issues/1126.
2018-11-09 10:39:07 -05:00
Rolf Bjarne Kvinge 3aa7582f4c
[monotouch-test] Add version check to SceneKit.ActionTest. Fixes maccore#1119. (#5099)
Fixes https://github.com/xamarin/maccore/issues/1119.
2018-11-08 18:41:19 +01:00
Rolf Bjarne Kvinge ab2f931da6
[tests] Increase the timeout for 'Mac Binding Projects' from the default 5m to 15m. Fixes maccore#1125. (#5105)
Fixes https://github.com/xamarin/maccore/issues/1125.
2018-11-08 18:22:26 +01:00