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

4380 Коммитов

Автор SHA1 Сообщение Дата
Rolf Bjarne Kvinge c993da4c3b
[jenkins] Fix scripts to be shellcheck-happy. (#4148)
A few general categories of fixes:

* Sprinkle lots of quotes everywhere.
* Don't use environment variables in the format string to printf, instead pass them as arguments.
* Don't use backticks to execute commands (it's deprecated), use the new "$(...)" syntax instead.
2018-05-29 11:03:54 -04:00
Rolf Bjarne Kvinge ffee9bfbbd
[xharness] Trace exceptions to have better information when something goes very wrong. (#4145) 2018-05-29 09:27:26 -04:00
Rolf Bjarne Kvinge 2fe011af3b
[xharness] Parse 'Extension test log' as 'Test log' to improve reporting of extension unit tests. (#4142) 2018-05-29 07:18:17 -04:00
Rolf Bjarne Kvinge 0845efd80f
[tests] Make sure accessing the keychain doesn't make macOS show any dialogs. (#4141) 2018-05-29 07:18:03 -04:00
Rolf Bjarne Kvinge a5a6347fe4
[xharness] Override Flush in LogFile to implement Flush as expected. (#4140)
This should make some logs show up faster when running locally in server mode.
2018-05-29 07:17:51 -04:00
Rolf Bjarne Kvinge 43ab711247
Bump maccore to get CI fix for provisioning profiles. (#4137)
Diff: 2c1024f968...b9702c7ec8
2018-05-28 17:26:38 -04:00
Rolf Bjarne Kvinge 238eb94caa
[jenkins] Don't treat API/Generator diff failures as errors. (#4127)
This way such failures won't make the build show up as failed, which may cause
other tooling to behave differently (and non-optimal).
2018-05-25 05:36:59 -04:00
Rolf Bjarne Kvinge 6d04431838
[ObjCRuntime] Improve MarkDirty speed by caching the IsCustomType value in our flags byte. (#4128)
* [ObjCRuntime] Improve MarkDirty speed by caching the IsCustomType value in our flags byte.

This makes calling MarkDirty for custom types ~60x times faster.

Reference: https://xamarinhq.slack.com/archives/C03CCJHCF/p1527194568000197

* We only have one bit left to use for IsCustomType.

* Fix build and make enums between native and managed match.
2018-05-25 05:36:28 -04:00
Sebastien Pouliot 0e9847f891
Bump to head of mono 2018-02 which includes the removal of Span<T> (#4124)
* [compression] Hide API using Span until it's back (publicly) in mono
2018-05-24 17:27:31 -04:00
Vincent Dondain ab4ed5b26e
[scenekit] Avoid breaking change (missing !) (#4126) 2018-05-24 17:12:18 -04:00
Rolf Bjarne Kvinge 35ea4630fc
[jenkins] Update the urls for html reports. (#4119)
* [jenkins] Update the urls for html reports.

The urls for html reports changed as a consequence of a Jenkins update [1], so
update how we construct the links accordingly.

See also:

* https://xamarinhq.slack.com/archives/C03CCJNR7/p1526646040000120
* https://xamarinhq.slack.com/archives/C03CCJNR7/p1526653512000249

[1] https://wiki.jenkins.io/display/JENKINS/HTML+Publisher+Plugin (update to v1.16)

* Remove extra closing parenthesis.
2018-05-24 09:04:14 -04:00
Sebastien Pouliot b38a01a1ab
Bump mono to head of 2018-02 (#4118)
* [tests/mini] Enable use of C# 7.2, needed by mono test mono\mini\aot-tests.cs
2018-05-24 08:40:21 -04:00
Jeffrey Stedfast 6a3481db52 [msbuild] Log the name of the ibtool/actool log file if we cannot parse it (#4115)
Improves diagnostics for https://github.com/xamarin/xamarin-macios/issues/4096
2018-05-23 17:45:57 -04:00
Chris Hamons 1e6851ec67
[msbuild] Unbreak netstd2 project msbuild support (#4109)
- https://github.com/xamarin/xamarin-macios/issues/4067
- Broken by 371a1d54e7
- The refactor into Xamarin.Mac.TargetFrameworkFix.targets was incorrect, and the ItemGroup needed
to be run after GetReferenceAssemblyPaths, not after FixDesignTimeFacades.
- This would have been caught by existing tests, but they were not enabled due to msbuild redirect issue.
2018-05-22 10:39:59 -04:00
Rolf Bjarne Kvinge dcfd322d62
[ObjCRuntime] Reorder statements slightly to avoid doing useless work in certain scenarios. (#4105)
We don't need the 'map' variable until after we've checked if the dynamic
registrar is supported, which means we can fetch it at that point too.

This improves the scenario when the dynamic registrar is not supported, since
in that case all subsequent code will be optimized away.
2018-05-22 09:25:54 -04:00
Rolf Bjarne Kvinge 06834b2a14
[runtime] Avoid using a static library initializer. (#4106)
Avoid using a static library initializer by using a constant recursive mutex
initializer.

Static initializers are bad because there's a significant overhead to executing them.
2018-05-22 08:53:19 -04:00
kunigaku 07356b8391 [foundation] Fix empty NSData.ToArray() crash (#4103) 2018-05-18 14:52:47 -04:00
Manuel de la Pena 4e00419814
[Compression] Ensure that we do link against libcompression. (#4091)
We need to pass libcrompession in the linking flags, which was not
present and makes the build fail.
2018-05-16 09:04:59 -04:00
Alex Soto 70530e548d
[SceneKit] Makes SCNRenderingOptions.RenderingApi use the right key (#4090)
Fixes https://github.com/xamarin/xamarin-macios/issues/4087

SCNRenderingOptions.RenderingApi is using the wrong key to
set its dictionary container value that should come from
SCNRenderingOptionsKeys.RenderingApiKey.
2018-05-16 00:07:39 -04:00
Manuel de la Pena 2286b80d78
Update CODEOWNERS 2018-05-15 14:29:59 -04:00
Rolf Bjarne Kvinge e35869dfdd
[xharness] Make sure to cancel the test listener both for device and simulator builds. (#4081)
This will make xharness not listen for tests to connect forever, decrease the
number of threads needed, and as well not print loads of aborted messages when
xharness exits:

    SimpleTcpListener: an exception occurred in processing thread: System.Threading.ThreadAbortException: Thread was being aborted.
      at xharness.SimpleTcpListener.Start () [0x0009d] in /Users/XamarinQA/vsts/_work/1/s/tests/xharness/SimpleTcpListener.cs:44
      at xharness.SimpleListener.<StartAsync>b__41_0 () [0x00002] in /Users/XamarinQA/vsts/_work/1/s/tests/xharness/SimpleListener.cs:93
2018-05-15 09:07:45 -04:00
Rolf Bjarne Kvinge 5f70f02fc6
[xharness] Don't load simulators multiple times at the same time. (#4082)
Things become unpredictable (and bad) otherwise.
2018-05-15 09:07:15 -04:00
Rolf Bjarne Kvinge 5a57ff958c
[xharness] Don't make a potentially blocking call to enumerate device candidates in VerifyRun. (#4084)
Enumerating device candidates can block (if the devices haven't been populated
yet), so make the whole thing async-based instead.
2018-05-15 09:01:16 -04:00
Rolf Bjarne Kvinge 3e6fef3c6f
[xharness] Wait for a build to finish even if it has started. (#4083)
Because build tasks might be shared between tests, and if another test already
started a build, this test must still wait until the build finishes.
2018-05-15 08:18:26 -04:00
Emanuel 0416ea042a [xvs-xm-bindings] Adds IsMacEnabled property to skip targets from VS when not connected to a Mac 2018-05-11 21:11:36 -03:00
Emanuel Fernandez Dell'Oca 63985c7f89 Copy Xamarin.Mac.ObjCBinding.CSharp.props to output dir
This is needed from VS because we grab all the files from the output directory to generate the msbuild.zip that contains all the targets and props
2018-05-11 21:11:36 -03:00
Manuel de la Pena f765d674d3 [Compression] Add compression framework bindings. (#3942) 2018-05-11 15:54:31 -04:00
Nick Spagnola d41cd7997f NSTokenFieldCell and NSTokenFieldCellDelegate bindings (#3913) 2018-05-11 09:30:15 -05:00
Rolf Bjarne Kvinge 59c441c1a3
[xharness] Try for 30 seconds to edit TCC.db instead of just 5 seconds. (#4076)
Hopefully fixes an issue with monotouch-test randomly running into permission
dialogs because xharness failed to fix TCC.db because it gave up too early.
2018-05-11 15:21:43 +02:00
Rolf Bjarne Kvinge a88a79cfc0
[mtouch/mmp] Handle invalid types in BlockProxy attributes better. Fixes #4072. (#4073)
* [mtouch/mmp] Handle invalid types in BlockProxy attributes better. Fixes #4072.

BlockProxy attributes may have types we don't expect, so handle those cases
gracefully by showing a warning when we encounter them:

    testApp.cs(11): warning MT4175: The parameter 'completionHandler' in the method 'Issue4072Session.CreateDataTask(Foundation.NSUrl,Foundation.NSUrlSessionResponse)' has an invalid BlockProxy attribute (the type passed to the attribute does not have a 'Create' method).

instead of an ugly MT0000:

    MTOUCH : error MT0000: Unexpected error - Please file a bug report at http://bugzilla.xamarin.com
    System.InvalidOperationException: Sequence contains no matching element
      at System.Linq.Enumerable.First[TSource] (System.Collections.Generic.IEnumerable`1[T] source, System.Func`2[T,TResult] predicate) [0x00012] in /Users/builder/jenkins/workspace/build-package-osx-mono/2017-12/external/bockbuild/builds/mono-x64/external/corefx/src/System.Linq/src/System/Linq/First.cs:30
      at Registrar.StaticRegistrar.GetBlockProxyAttributeMethod (Mono.Cecil.MethodDefinition method, System.Int32 parameter) [0x00020] in /Users/builder/data/lanes/5944/7e782c1e/source/xamarin-macios/tools/common/StaticRegistrar.cs:4121
      at Registrar.StaticRegistrar.GetBlockWrapperCreator (Registrar.Registrar+ObjCMethod obj_method, System.Int32 parameter) [0x00011] in /Users/builder/data/lanes/5944/7e782c1e/source/xamarin-macios/tools/common/StaticRegistrar.cs:4065
      at Registrar.StaticRegistrar.Specialize (Registrar.AutoIndentStringBuilder sb, Registrar.Registrar+ObjCMethod method, System.Collections.Generic.List`1[T] exceptions) [0x0216b] in /Users/builder/data/lanes/5944/7e782c1e/source/xamarin-macios/tools/common/StaticRegistrar.cs:3683
      at Registrar.StaticRegistrar.Specialize (Registrar.AutoIndentStringBuilder sb) [0x00f1e] in /Users/builder/data/lanes/5944/7e782c1e/source/xamarin-macios/tools/common/StaticRegistrar.cs:2963

Fixes #4072.

* [docs] Improve text for MT4175.

* [registrar] Comment some code.
2018-05-11 14:42:27 +02:00
Sebastien Pouliot 3d0c4e5bae
Bump mono to the head of 2018-02 (#4075)
Commit list for mono/mono:

* mono/mono@93e3dafc38 [msbuild] Bump to track mono-2018-02 branch which tracks vs15.7 (#8596)
* mono/mono@965c939531 Merge pull request #8580 from radical/nuget-hash-updates-2018-02
* mono/mono@7c317d0af3 [native types] fix nfloat:NaN on arm64 JIT and interp (#8564)
* mono/mono@6ec37b18d9 nuget-hash-extractor: Add msbuild extensions nuget version from
* mono/mono@2a90cd598d nuget-hash-extractor: Add msbuild extensions nuget version from
* mono/mono@48fcc7e350 nuget-hash-extractor: Add `all` option to emit all 3 lists
* mono/mono@90b0ea99cd nuget-hash-extractor: Improvements for better, deterministic output
* mono/mono@217d0c7ab7 nuget-hash-extractor: Sort the lists for easier reviews
* mono/mono@9824e260f5 Only show config.log when running on bots.
* mono/mono@a085951264 [sdks] Wrap configure to provide better output.
* mono/mono@b4a42e6e4b [sdks] fix $(mktemp) usage on older versions of macOS (#8520)

Diff: a0228295dc...93e3dafc38
2018-05-10 23:03:44 -04:00
Jeffrey Stedfast c00654af82 [msbuild] Updated MetalTaskBase to use the new -m{os}-version-min argument (#4049)
Fixes issue #4019
2018-05-10 08:57:33 -04:00
Rolf Bjarne Kvinge e3bb98fa7e
[xharness] Create better test clones when creating test variations. (#4062)
When creating test variations, make sure to set the 'IsUnitTest' field
properly, so that xharness produces better test reports.
2018-05-10 10:42:32 +02:00
Rolf Bjarne Kvinge fc9b799b86
[xharness] Improve logging of launched processes to not log the same information twice. (#4061)
Also log any added/changed/removed environment variables for launched
processes (compared to xharness itself).
2018-05-10 07:43:44 +02:00
Rolf Bjarne Kvinge 7fa79c80e9
[mk] Put shell code in shell scripts and add support for switching between different remotes for dependencies. (#4060)
Put the shell code for resetting README dependencies in a shell script instead
of embedded in the Makefile so that it's easier to write, read and debug.

Also add support for switching between different remotes for README
dependencies (this means that `make reset-X` will now work fine if `X`'s
remote changed).

A side effect is that all README dependencies will now end up with a 'xamarin'
remote in addition to the 'origin' remote, but this should have no other
effect.
2018-05-10 07:43:03 +02:00
Rolf Bjarne Kvinge a54b471713
[docs] Fix MT -> MM prefix for Xamarin.Mac errors. (#4054) 2018-05-10 07:40:48 +02:00
Rolf Bjarne Kvinge 6bb8d3a69d
[xharness] 1 minute might not be enough to build our native test libraries, so bump to 10 minutes. (#4056) 2018-05-09 15:15:51 +02:00
Rolf Bjarne Kvinge 7f5d13a301
Fix print-versions for README dependencies. (#4058)
Before:

    $ make print-versions
    *** mono             git@github.com:mono/mono.git                  a0228295dcef711f8bbbf4f6f619c194e109c0e6 (2018-02)
    *** fsharp           git@github.com:fsharp/fsharp.git              7171700877115e2243b4edbc4e2eb88d019e02b0 (master)
    *** Touch.Unit       git@github.com:spouliot/Touch.Unit.git        1c41c75983ed840e9dc7079b5d4b0c31d1565359 (master)
    *** opentk           git@github.com:mono/opentk.git                396bc90c7ac2e7ce442840a5e8bd91e5e79b381e (master)
    *** Xamarin.MacDev   git@github.com:xamarin/Xamarin.MacDev         2cff0d741273341d156de6ce6095808126effd3b (master)
    *** guiunit          git@github.com:mono/guiunit.git               1306b0d420bd69efcd8f1951c5c68dc7065ce9eb ()
    *** macios-binaries  git@github.com:xamarin/macios-binaries        a4a1ceec883cc47f5eb4d4604fe5fe52d1f662d0 (master)
    ***                                                                2c1024f96864bf3b01dd8d67b41681c971bc6f71 (master)
    ***                                                                3cc5e2e1870b35f15b1540f835a370d2b011bacd (master)
    ***                                                                5abe51d5ea411de51db0f77bed29d6fc7175e177 (master)
    ***                                                                02098172ce32920646668062f2336220e5fa5927 (master)
    ***                                                                6d22123db90007453645d8eb7b2edc60f983ad19 (master)
    ***                                                                2e67714eb622769417aea3f3d449db4a2d020c9e (master)
    ***                                                                2ccb581a96f4e0120ac47d2ddaa81fe515cb28de (master)

After:

    $ make print-versions
    *** mono             git@github.com:mono/mono.git                  a0228295dcef711f8bbbf4f6f619c194e109c0e6 (2018-02)
    *** fsharp           git@github.com:fsharp/fsharp.git              7171700877115e2243b4edbc4e2eb88d019e02b0 (master)
    *** Touch.Unit       git@github.com:spouliot/Touch.Unit.git        1c41c75983ed840e9dc7079b5d4b0c31d1565359 (master)
    *** opentk           git@github.com:mono/opentk.git                396bc90c7ac2e7ce442840a5e8bd91e5e79b381e (master)
    *** Xamarin.MacDev   git@github.com:xamarin/Xamarin.MacDev         2cff0d741273341d156de6ce6095808126effd3b (master)
    *** guiunit          git@github.com:mono/guiunit.git               1306b0d420bd69efcd8f1951c5c68dc7065ce9eb ()
    *** macios-binaries  git@github.com:xamarin/macios-binaries        a4a1ceec883cc47f5eb4d4604fe5fe52d1f662d0 (master)
    *** maccore          git@github.com:xamarin/maccore.git            2c1024f96864bf3b01dd8d67b41681c971bc6f71 (master)
    *** mono-extensions  git@github.com:xamarin/mono-extensions.git    3cc5e2e1870b35f15b1540f835a370d2b011bacd (master)
    *** ios-api-docs     git@github.com:xamarin/ios-api-docs.git       5abe51d5ea411de51db0f77bed29d6fc7175e177 (master)
    *** mac-api-docs     git@github.com:xamarin/mac-api-docs.git       02098172ce32920646668062f2336220e5fa5927 (master)
    *** maciostools      git@github.com:xamarin/maciostools.git        6d22123db90007453645d8eb7b2edc60f983ad19 (master)
    *** XmlDocSync       git@github.com:xamarin/XmlDocSync.git         2e67714eb622769417aea3f3d449db4a2d020c9e (master)
    *** xamarin-analysis git@github.com:xamarin/xamarin-analysis.git   2ccb581a96f4e0120ac47d2ddaa81fe515cb28de (master)
2018-05-09 15:15:38 +02:00
Rolf Bjarne Kvinge 285062208d
[tests] Make MTLDeviceTests work on macOS systems that don't support metal. (#4059) 2018-05-09 15:14:42 +02:00
Rolf Bjarne Kvinge cd02f146d7
[compare-commits] Fix APFS check to check for functionality, not OS version. (#4057)
Since having a certain OS version doesn't necessarily mean that the file system will be APFS.
2018-05-09 14:36:25 +02:00
Zoltan Varga 7e005b8f00 [builds] Add a --disable-packaged-llvm configure option to enable building LLVM from source. (#4050) 2018-05-09 10:57:23 +02:00
Zoltan Varga 4ccd448205 Remove the llvm submodule, its now managed by mono. (#4048) 2018-05-08 14:54:34 +02:00
Rolf Bjarne Kvinge 22db407b79
[tests] Make the msbuild-mac tests a normal NUnit test project. (#4042)
There's no need for this project to be a Xamarin.Mac project, which makes it
faster to build and easier to execute in the IDE.
2018-05-08 07:35:42 +02:00
Rolf Bjarne Kvinge e985c5f6ee
[tests] Remove outdated and broken tests we've never executed. (#4044) 2018-05-08 07:33:53 +02:00
Rolf Bjarne Kvinge 3c2f87abc5
[docs] Update optimizations document with upstream changes. (#4043)
Ref: https://github.com/MicrosoftDocs/xamarin-docs-pr/pull/204
2018-05-08 07:24:23 +02:00
Vincent Dondain 1d94887b46
[scenekit] SCNPhysicsShape's Create should take a SCNMatrix4 array, not SCNVector3 (#4040)
- Fixes #4030: SCNPhysicsShape.Create transforms param is bound incorrectly
(https://github.com/xamarin/xamarin-macios/issues/4030)
2018-05-07 16:12:40 -04:00
Vincent Dondain c33ad136bd
[scenekit] Correctly bind SCNHitTestOptions's SearchMode (#4038)
- Fixes #4031: SCNHitTestOptions SearchMode bound incorrectly
(https://github.com/xamarin/xamarin-macios/issues/4031)
2018-05-07 11:29:08 -04:00
Rolf Bjarne Kvinge 3800d8d607
Bump maccore to get documentation fix. (#4036)
Commit list for xamarin/maccore:

* xamarin/maccore@2c1024f968 [docs] Find documentable assemblies using their installed location. (#778)

Diff: b03a9637c1...2c1024f968
2018-05-05 00:12:31 +02:00
Bernhard Urban 394117885c
[runtime] add support for mono runtime interpreter (#3058)
* [runtime] build interp-, icalltable- and ilgen libraries so they can be consumed in interpreter configuration

* [mtouch] add --interpreter configuration support

* [xharness] Add support for removing defines from cloned project files.

* [xharness] Run monotouch-test, mscorlib and mini tests with the interpreter too.

They're ignored for now, which means we won't run them on the bots.

* [mtouch] We're using dlsym when using the interpreter.

* [xharness] enable mini regression tests with interpreter on CI
2018-05-04 23:59:31 +02:00
Rolf Bjarne Kvinge 2e5ee3e90a
Simplify Makefile to attempt to fix random build error (#4037)
Simplify Makefile:

* No need for a template when it's only expanded once: just expand it manually.
* Remove useless pdb target that just touches the pdb.
* Don't use a pattern rule for the tvOS version of MonoTouch.Dialog-1.dll. I'm
  not sure why, but it seems to confuse make 3.81 (not make 4.2.1 though).

Hopefully fixes:

    error CS0006: Metadata file 'build/tvos/reference/MonoTouch.Dialog-1.dll' could not be found
    make[1]: *** [build/tvos/reference/MonoTouch.NUnitLite.pdb] Error 1
2018-05-04 23:57:03 +02:00