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

5649 Коммитов

Автор SHA1 Сообщение Дата
Rolf Bjarne Kvinge 45c751fdfd
[test] Flush Console streams before exiting test processes. (#15189) 2022-06-07 10:07:42 +02:00
TJ Lambert 7731894b71
[mediaplayer] Add nullability to (generated and manual) bindings (#15147)
* Confirm nullability in the ignore files

* use is null and is not null

* Remove unnecessary using statements for test

* undo the changes to the csproj

* remove monotouch-test.sln

Co-authored-by: tj_devel709 <antlambe@microsoft.com>
2022-06-06 10:11:11 -05:00
TJ Lambert f74d6801c7
[imagecapturecore] Add nullability to (generated and manual) bindings (#15127)
Co-authored-by: tj_devel709 <antlambe@microsoft.com>
2022-06-06 10:07:30 -05:00
TJ Lambert 9bf39cd985
[homekit] Add nullability to (generated and manual) bindings (#15111)
* go through the nullable ignores and add test

* Enable Nullability

* use is null

* save a few lines

Co-authored-by: TJ Lambert <tjlambert@microsoft.com>
2022-06-06 10:05:38 -05:00
Rolf Bjarne Kvinge 30e03ffbe4
[tests] We're not implementing Mac Catalyst for legacy Xamarin.iOS. (#15181)
So there's no need to ignore tests for that particular scenario.
2022-06-03 10:40:52 +02:00
Rolf Bjarne Kvinge a1e32e39dd
[tests] Remove ignore because corresponding bug has been fixed. (#15182) 2022-06-03 10:40:22 +02:00
TJ Lambert a0ba164cca
[metalperformanceshaders] Add nullability to (generated and manual) bindings (#15163)
* Go through the ignore files and confirm nullability

* enable nullability

* throw better exceptions

* use is null

* remove from maccatalyst todo

* use a gethandle

Co-authored-by: TJ Lambert <tjlambert@microsoft.com>
2022-06-02 08:35:04 -05:00
Sebastien Pouliot d869a6868a
[corefoundation] Cache `kCFNull` to avoid native calls (#15146) 2022-05-30 12:38:27 +02:00
Rolf Bjarne Kvinge cf7c6b5980
[msbuild] Improve logic to clean up app bundle for unwanted files. (#15080)
The current directory at launch is the root directory of the app bundle. This
means that any files written to the current directory when an app is executed,
will be placed there. This becomes a problem when the app is rebuilt (and
resigned), because a valid macOS app bundle doesn't have any files in the root
directory of the app bundle, so signing fails.

We have logic to automatically crash crash reports from the app bundle, but it
turns out this is a more common problem with other types of files (and
folders), so improve the logic a bit:

* Add support for setting a property to automatically clean up everything from
  an app bundle we don't think should be there (which is anything not in a
  Contents/ subdirectory).
* Use the same property to add support for disabling any cleaning (we already
  clean mono's crash reports by default).
* Improve detection of unwanted files to include directories inside the app
  bundle, not only files.

Ref: https://github.com/dotnet/maui/issues/7353
2022-05-30 11:34:45 +02:00
Rolf Bjarne Kvinge ab46841563
[xharness] Redirect stdout/stderr for watch apps. (#15140)
I don't remember why I excluded watch apps, and it seems to work locally, so
let's see how it goes. Hopefully we'll get better diagnostics when something
goes wrong.
2022-05-30 11:30:50 +02:00
Rolf Bjarne Kvinge e3a03d2804
Remove the Visual Studio dependency. (#15102)
Remove our dependency on Visual Studio. Use the 'dotnet-t4' tool instead of
invoking the t4 tool embedded in Visual Studio.

Fixes this build error after installing VS Mac 2022:

> Cannot open assembly '/Applications/Visual Studio.app/Contents/Resources/lib/monodevelop/AddIns/MonoDevelop.TextTemplating/TextTransform.exe': No such file or directory.
2022-05-25 08:26:51 +02:00
Manuel de la Pena 9b962748d9
[Harness] Revert label changes (#15101)
This reverts commit 0e179206d2.
This reverts commit 2953cf1fed.
2022-05-23 22:02:14 -04:00
Rolf Bjarne Kvinge da7dd02dfd
[dotnet] Make sure to not run the linker when we're on a disconnected Windows build. (#15076)
This also means that we shouldn't load the linker's output. Note that we need
to check _LoadLinkerOutput even if we've already disabled the linker, because
there may be linker output from a previous (connected) build, and we don't
want to load that.

Fixes https://devdiv.visualstudio.com/DevDiv/_workitems/edit/1542438.
2022-05-23 16:33:09 +02:00
Steve Hawley 94e40c8b11
[nnyeah] fix issues compiling against nnyeah touched libraries (#15082)
fix issues compiling against nnyeah touched libraries
2022-05-20 15:31:18 -04:00
Manuel de la Pena 0e179206d2
[XHarness] Provide the correct value to the tvOS label. (#15063) 2022-05-20 11:25:29 +02:00
Manuel de la Pena 2953cf1fed
[Xharness] Move to use a flag to decide what tests to use (#15032)
Co-authored-by: Rolf Bjarne Kvinge <rolf@xamarin.com>
2022-05-18 10:50:19 -04:00
Chris Hamons f33ddd906d
[nnyeah] Convert integration test to nunit from Makefile (#15040)
- Also refactor test layout a bit to split unit from integration
- Integration should long term invoke the nuget installed, unit never will.
2022-05-17 09:24:35 -05:00
Rolf Bjarne Kvinge 46b393ac5e
[tests] Adjust a few linker tests to cope with unreliable networks. (#15018)
* Handle 502 and 503 errors in the TrustUsingOldPolicy and TrustUsingNewCallback tests. Fixes:

    [FAIL] TrustUsingOldPolicy : System.Net.WebException : The remote server returned an error: (503) Service Unavailable.
    [FAIL] TrustUsingNewCallback : System.Net.WebException : The remote server returned an error: (503) Service Unavailable.

* Add more http and https urls to try (and don't use microsoft.com). Hopefully fixes:

    [FAIL] WebClient_SSL_Leak : At least one url should work

This is a follow-up to #14943.
2022-05-16 11:41:13 +02:00
Rolf Bjarne Kvinge 82482edc70
[cecil-tests] Improve these tests a bit. (#14994) 2022-05-13 20:50:02 +02:00
Rolf Bjarne Kvinge 706663845d
[tests] Adjust a few tests to try network requests multiple times. (#14943)
* A few tests seem to be failing rather consistently with network errors.
  Rewrite these tests to try multiple urls before failing (we'll be assuming
  that if one of the urls succeed, the other failures were network related).

* Rename the LinkAnyTest.WebClientTest to LinkAnyTest.WebClientTest_Http to
  follow it's original intent, and make it test http instead of https.

* Remove unnecessary assertion from SSL_IP_5706. This is tested in plenty of other places.
2022-05-13 08:50:28 +02:00
Rolf Bjarne Kvinge a6c92d9a25
[tests] Ignore the new MnistTester test on the bots. (#15002)
Bots seems to break more often after this change, so let's see if this improves matters.

This is what happens with the bots:

    We stopped hearing from agent [...]. Verify the agent machine is running and has a healthy network connection. Anything that terminates an agent process, starves it for CPU, or blocks its network access can cause this error. For more information, see: https://go.microsoft.com/fwlink/?linkid=846610
2022-05-12 16:07:04 +02:00
Rolf Bjarne Kvinge 06041ab37f
[xharness/devops] Enable .NET tests by default. (#14998)
Which alo means there's no need to select them if .NET is enabled.
2022-05-12 14:58:24 +02:00
Rolf Bjarne Kvinge 447e637ac0
[xharness] Fix logic to include the .NET xtro tests. (#14991)
Both 'IncludeXtro' and 'IncludeDotNet' must be set to run the .NET xtro tests
(which means they're ignored if either is false).
2022-05-12 08:20:06 +02:00
Manuel de la Pena 22ba05bed5
[Xharness] Enable nullable in the BuildProject class and clean code a little. (#14897) 2022-05-11 07:25:48 -04:00
Manuel de la Pena 642b03b09b
[Tools] Enable nullability on Cache.cs. (#14947) 2022-05-11 07:23:37 -04:00
Frank A. Krueger bd4fee0cdc
Add MetalPerformanceShadersGraph Bindings (#14303)
I'm very pleased to present full bindings to the MetalPerformanceShadersGraph framework!

I'm happy with how everything turned out with the exception of a few notes and questions below.

I re-implemented Apple's MNIST sample (from https://developer.apple.com/documentation/metalperformanceshadersgraph/training_a_neural_network_using_mps_graph) here:

https://gist.github.com/praeclarum/b8077771fb341a1f9c28240113e00425

It's also added as a unit test.

Fixes #14286

### Notes

* Although the API says it works on macOS 11, it has bugs and crashes with errors even with Apple’s Swift examples. It’s better on macOS 12. iOS 14 and on is fine.

* `MPSGraphSparseStorageType` has terrible names. They match Apple's but I wish they were better.

* I added convenience methods to `MPSNDArray` and `MPSGrapTensorData` and the `Variable` and `Constant` operations to decrease the amount of unsafe code users have to write. I currently do this for 32-bit floats, the most common data type.

Co-authored-by: Alex Soto <alex@alexsoto.me>
Co-authored-by: Rolf Bjarne Kvinge <rolf@xamarin.com>
Co-authored-by: Manuel de la Pena <mandel@microsoft.com>
2022-05-10 10:52:22 +02:00
Rolf Bjarne Kvinge 8cf02316ca
[tests] Unignore test that's now fixed in .NET. (#14937) 2022-05-10 09:34:21 +02:00
Rolf Bjarne Kvinge f8314a435e
Add a [NativeName] attribute we can use to declare the native name for a type (enum/struct). (#14918)
We already have a few attributes that can specify the native name for a type, whenever the native name doesn't match the managed name:

* [Register ("DifferentClassName"): specifies the Objective-C class name
* [Native ("DifferentEnumName")]: specifies the Objective-C enum name (and also that it's a native-sized enum)
* [Protocol ("DifferentProtocolName")]: specifies the Objective-C protocol name
* [Category ("DifferentCategoryName")]: specifies the Objective-C category name

Unfortunately this leaves (at least) two cracks:

* Objective-C structs.
* Objective-C enums which aren't native-sized.

So I'm adding a [NativeName] attribute for this purpose, and updating numerous
types to specify the native name (either using an existing [Native] attribute
for enums that already have one, or by adding a new [NativeName] attribute).

The static registrar needs to know the native name for such types, in case
they appear as parameter types in function signatures.

This also allows us to simplify xtro a bit, to not have a separate map of
managed name given a native name, because we can now build that map
dynamically.
2022-05-09 22:16:17 +02:00
Steve Hawley 5631ca5c8e
[nnyeah] Start testing (#14913)
Added code to:

compile a string to a platform library
collect the output of the compilation process
check for errors
Added a single unit test of the smoke test variety.
2022-05-09 09:42:34 -04:00
Manuel de la Pena 99de095726
[XHarness] Enable nullable and fix some code issues (wrong inheritance) (#14867) 2022-05-06 17:14:00 -04:00
Chris Hamons 6a1622624a
Fix crash with NSUrl implicit conversion and null (#14860)
- Fixes: https://github.com/xamarin/xamarin-macios/issues/14786
2022-05-06 08:52:37 -05:00
Chris Hamons 7d3fd33b2a
[introspection] Fix failures on older iOS/tvOS (#14911)
- Fixes https://github.com/xamarin/xamarin-macios/issues/14905 by skipping with a link to https://github.com/xamarin/xamarin-macios/issues/14802
2022-05-06 08:51:55 +02:00
Manuel de la Pena caf68aac82
[Xharness]Enable nullability and update C# to new code patterns. (#14866)
Co-authored-by: Rolf Bjarne Kvinge <rolf@xamarin.com>
Co-authored-by: TJ Lambert <50846373+tj-devel709@users.noreply.github.com>
2022-05-04 10:46:34 -04:00
Manuel de la Pena 0069323b6a
[Xharness] Add a label per test project to later be able to filter them. (#14844) 2022-05-04 10:46:07 -04:00
Rolf Bjarne Kvinge b72e7be297
[tests] Add two test projects to compare app size between MAUI and Xamarin.Forms. (#14850)
Add a default MAUI and a default Xamarin.Forms project as size comparison apps
(both created from templates).

This reveals that a MAUI app is ~30% bigger than a Xamarin.Forms app (42MB vs
31MB). Notably there's 21% *less* managed code, but 33% *more* native code.

https://gist.github.com/rolfbjarne/d294171969226f7511d90a817b9ac328
2022-05-03 10:54:54 +02:00
Chris Hamons 1dcefc9c56
[NET Attribute Conversion][generator] Generate NET style attributes (#14779)
This PR teaches our code generator to generate .NET 6 style availability attributes, adds a 4th Cecil test to verify our generated attributes, and a metric ton of API changes to satisfy that test.

The generator work is the core of this PR, and includes:

- Hacking out chunks of generator.cs that "helpfully" remove duplicate attributes, which are no longer duplicate in the new order that NET6 attributes force upon us. See changes in FilterMinimumVersion and PrintPlatformAttributes
- Prevent a crash when the generator processes availability attributes with no version included (example: introduced on iOS but no version). See Is64BitiOSOnly.
- The meat, GetPlatformAttributesToPrint, which synthesizes many attributes "out of thing air" from:
        - The parent context
        - Implied introduced just because the class exists on a given framework at all
        - Implied Catalyst because iOS exists
- A few cludgy hacks PrintPlatformAttributesNoDuplicates and GenerateProperty because the existing PrintPlatformAttributes did not pass down parent context down, and the refactor was dangerous/too time consuming given time pressure.

There are two intended API changes introduced by the reviews in this PR:

- GetCurrentInputDevice was obviously intended by availability attributes to exist on Catalyst but due to define confusion was excluded. It is an addition in Microsoft.MacCatalyst.dll only.
- The NEAppRule constructors were mis-marked on platforms, and were showing up incorrectly on Mac/Catalyst. I corrected the Catalyst one unconditionally, as we have not shipped Catalyst yet, but Mac is only fixed in NET6.

There is a lot of follow up work in https://github.com/xamarin/xamarin-macios/issues/14802 to do to remove a number of hard coded test failures, but this should be almost all of the remaining work in NET6 attributes.

🤞 this doesn't break too much for future us.

Co-authored-by: Rolf Bjarne Kvinge <rolf@xamarin.com>
Co-authored-by: Manuel de la Pena <mandel@microsoft.com>
2022-05-02 09:44:25 -05:00
Manuel de la Pena 7a69d08cf0
[Xharness] Clean test task code. (#14857)
We are going to be changing code in xharness. Is a good time to clean
things a little, make code more modern then enable nullability.

Try to get as much help from the new features and try to clean alittle
debt we have from the last time we moved code.
2022-04-30 10:12:31 -04:00
TJ Lambert 6dc0eed0a8
[healthkit] Add nullability to (generated and manual) bindings (#14730)
* remove null ignores and add nullability

* throw better exception

* use is null

* remove extra ignores

* Add the tests

* use a progma ignore instead

* revert monotouch-test.csproj

Co-authored-by: tj_devel709 <antlambe@microsoft.com>
2022-04-28 11:54:23 -05:00
TJ Lambert 717b141f16
[gameplaykit] Add nullability to (generated and manual) bindings (#14615)
* adding Nullability

* throw better null exceptions

* use is null

* Added test

Co-authored-by: tj_devel709 <antlambe@microsoft.com>
Co-authored-by: Manuel de la Pena <mandel@microsoft.com>
Co-authored-by: Alex Soto <alex@alexsoto.me>
2022-04-28 11:26:18 -05:00
TJ Lambert bd4501ac88
[naturallanguage] Add nullability to (generated and manual) bindings (#14741)
* adding nullability changes

* throwing better exceptions

* using is null

* address Rolf and Manuel nullability changes

Co-authored-by: TJ Lambert <tjlambert@microsoft.com>
2022-04-26 09:50:51 -05:00
Rolf Bjarne Kvinge 50283a8b97
[static registrar] Fix lookup of block proxy attributes. (#14820)
Fix lookup of block proxy attributes to look in protocols declared on base classes.

Broken pseudo code:

    class BaseApplicationDelegate : NSObject, IUIApplicationDelegate {}
    class MyApplicationDelegate : BaseApplicationDelegate {
        [Export("application:didReceiveRemoteNotification:fetchCompletionHandler:")]
        public void DidReceiveRemoteNotification (UIApplication application, NSDictionary userInfo, Action<UIBackgroundFetchResult> completionHandler) { }
    }

the static registrar wouldn't figure out that the DidReceiveRemoteNotification method
comes from the UIApplicationDelegate, because it would only look in protocols defined
on MyApplicationDelegate, not any base classes.

The fix is to look in base classes too.

Also:

* Fix a boolean logic error when matching parameters between methods in another
  (rarely used) code path when looking for matching binding methods in the extension
  class for protocols with optional members.
* Add tests.

Fixes https://github.com/dotnet/maui/issues/6259.
2022-04-26 13:47:18 +02:00
Rolf Bjarne Kvinge 042c97735c
[tests] Fix registrar tests to not return unretained INativeObjects to Objective-C. Fixes #xamarin/maccore@2572. (#14807)
We can't return unretained INativeObjects to Objective-C, because they might
be freed at any point when the GC collects the managed object. Instead return
retained objects, that way they're not freed even if the GC collects the
managed object.

This fixes a random crash in the TestRegistrar.TestINativeObject when the GC
would run just after we've returned an INativeObject to native code, and later
used that native handle thinking it would still be valid.

Fixes https://github.com/xamarin/maccore/issues/2572.
2022-04-26 07:28:50 +02:00
Eric Sink b84b80902c
Build fixes (-dotnet) for app extensions (#14685)
Resolves #14285 

1.  Make sure `libextension-dotnet.a` gets built, and with the `-DEXTENSION` flag.
2.  Make sure `libextension-dotnet.a` gets included in the package alongside `libxamarin-dotnet.a`
3. At build time, make sure to link with the correct lib[tv]extension-dotnet.a library depending when we need to.
4. Add some tests.

Co-authored-by: Eric Sink <eric@Erics-MacBook-Pro.local>
Co-authored-by: Manuel de la Pena <mandel@microsoft.com>
Co-authored-by: Rolf Bjarne Kvinge <rolf@xamarin.com>
2022-04-25 16:56:52 +02:00
Rolf Bjarne Kvinge 6a43d470d9
[msbuild] Fix typo in warning message. (#14808) 2022-04-25 08:32:28 +02:00
Rolf Bjarne Kvinge 054fb36507
[tests] Set the test name for the MySimpleApp test project. (#14798)
This way the 'make run' target in this project knows what to run.
2022-04-22 07:55:29 +02:00
Rolf Bjarne Kvinge beec791bda
[tests] Add some code to try to diagnose why certain test failures aren't ignored in CI. (#14769) 2022-04-20 08:19:50 +02:00
Přemek Vysoký 1730426ec9
[Xharness] Bump Microsoft.DotNet.XHarness.iOS.Shared to `1.0.0-prerelease.22211.4` (#14743) 2022-04-14 16:10:14 -04:00
Rolf Bjarne Kvinge 254a47c440
[tests] Improve NWProtocolStackTest to not crash the process if the state change handler throws an exception. (#14697) 2022-04-11 16:38:20 -04:00
Rolf Bjarne Kvinge 2125c8febe
[tests] Make MonoTests.System.Net.Http.MessageHandlerTest handle some 504's. (#14688) 2022-04-07 18:01:25 +02:00
Chris Hamons cf77b790cb
[NET Attribute Conversion] Add missing attributes in code-behind by re-running conversion (#14660)
* [NET Attribute Conversion] Chip Framework
* [NET Attribute Conversion] Rerun with many fixes
* Fix generator crash when compiling attributes with no introduced version
* Test changes for availability re-run. One new test
2022-04-07 10:46:15 -05:00
Rolf Bjarne Kvinge 9c185e1fff
[msbuild] Ask ditto to thin native libraries according to the architectures we're targetting. Fixes #13081. (#14403)
Ask ditto to thin native libraries and frameworks when copying them to the app
bundle to remove slices for architectures we're not building for.

Also add tests.

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

Co-authored-by: TJ Lambert <50846373+tj-devel709@users.noreply.github.com>
2022-04-07 08:17:01 +02:00
Rolf Bjarne Kvinge 1b37c48ac5
[dotnet] Add support for Mac Catalyst apps optimized interface for macOS. Fixes #14621. (#14663)
This also required bumping Xamarin.MacDev.

New commits in xamarin/Xamarin.MacDev:

* xamarin/Xamarin.MacDev@0717ac3 Add a new device type for Mac Catalyst.
* xamarin/Xamarin.MacDev@ed2a604 Remove net451 target framework from
Xamarin.MacDev.csproj

Diff: 9e6e29f2a4..0717ac3c24

Fixes https://github.com/xamarin/xamarin-macios/issues/14621.
2022-04-07 08:14:42 +02:00
Rolf Bjarne Kvinge 6af4b9607c
[tools] Make the TargetFramework.DotNet* variables version-agnostic. (#14669)
This minimizes the code changes required for .NET 7.
2022-04-06 21:33:46 +02:00
Rolf Bjarne Kvinge a46afd0147
[tests] Use 'BundledNETCoreAppTargetFrameworkVersion' to specify the .NET version in the project files. (#14666)
This way we don't have to update all these files when moving to .NET 7.
2022-04-06 20:58:20 +02:00
Rolf Bjarne Kvinge 34dfcbf3aa
[tests] Stop hardcoding system assembly version number in linker tests. (#14668)
Another step towards .NET 7.
2022-04-06 17:57:39 +02:00
Chris Hamons d51bd343f7
Add nullability on one UndoManager API (#14653)
- Fixes https://github.com/xamarin/xamarin-macios/issues/14646
- I checked UIDocument and AppKit versions and those are not nullable.
2022-04-06 10:43:29 -05:00
Rolf Bjarne Kvinge 3d904dae2c
[tests] A few test fixes to make testing system installs better. (#14652)
* Make the custom-type-assembly library build using assemblies relative to
  MAC_DESTDIR, instead of poking into $(TOP)/_mac-build (for legacy Xamarin).
* Build the custom-type-assembly using a project file for .NET (and use our
  local .NET).
* Change the default for [IOS|MAC]_DESTDIR when TESTS_USE_SYSTEM is set to
  point to the system installation.
* Make sure 'MSBuildSDKsPath' isn't set when building the custom-type-assembly
  (set by xibuild), it breaks a lot of things.
2022-04-06 08:35:25 +02:00
Alex Soto 132d5694d6
[ScreenCaptureKit] Add ScreenCaptureKit bindings up to Xcode 13.3 (#14644)
* [ScreenCaptureKit] Add ScreenCaptureKit bindings up to Xcode 13.3

* Use more appropriate exceptions.

* Remove ScreenCaptureKit from Mac Catalyst.

Co-authored-by: Rolf Bjarne Kvinge <rolf@xamarin.com>
2022-04-05 20:16:31 -04:00
Rolf Bjarne Kvinge 906b94cb00
[mmptest] Fix resolving paths to required test files. Fixes #xamarin/maccore@2560. (#14566)
* Fix resolving paths to required test files (test files can be found relative to the root path of the repository, not relative to where Xamarin.Mac is installed)
* Don't try to sign symlinks - we can end up trying to sign the target of the symlink twice simultaneously.
* Fix finding libxammac.dylib and Xamarin.Mac.dll when testing a system installation (when MAC_DESTDIR or TESTS_USE_SYSTEM are set).
* Remove a few .NET tests we don't need anymore.

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

Co-authored-by: Manuel de la Pena <mandel@microsoft.com>
2022-04-05 14:30:35 +02:00
Rolf Bjarne Kvinge 277baaf521
[tests] Request labels after each test from NUnit. (#14628)
Fixes this NUnit warning:

> labels=All is deprecated and will be removed in a future release. Please use labels=Before instead.

We don't follow the suggestion from the warning, because the advantage of
writing the label after each test is that the test result will also be
printed, which means it's possible to see if any tests failed during the test
run, as opposed to having to wait until the entire test run is completed
(which can take a while) to realize that pretty much every test failed with
some silly mistake which could have been quickly fixed before re-running the
tests.
2022-04-04 19:19:45 +02:00
Rolf Bjarne Kvinge 42d561c623
[tests] Execute tests on older macOS bots with a timeout. (#14593)
This prevents a single test hang from breaking the entire test run.

Also bump timeout to 45 minutes.
2022-04-04 19:16:48 +02:00
Chris Hamons 612c32ca20
[metalperformanceshaders] Add one troublesome missing method (#14557)
- Fixes https://github.com/xamarin/xamarin-macios/issues/14450
- There is a significant amount of additional bindings to be done, but this way
we at least get the trivia one in now.

Co-authored-by: Rolf Bjarne Kvinge <rolf@xamarin.com>
2022-04-04 11:08:55 -05:00
Rolf Bjarne Kvinge 6e348f0e65
[dotnet] Port the iOS tabbed app template to .NET. (#14592)
Ref: https://github.com/xamarin/xamarin-macios/issues/10747
2022-04-04 10:05:08 +02:00
Rolf Bjarne Kvinge 06140f1712
[tests] Adjust the Xamarin.Tests.Misc.PublicSymbols test to accept Brotli-related symbols. (#14605)
Our latest mono bump (in fd772aa82b), brought in
these new public symbols. Accept them for now, but hopefully we'll be able to
make them private at some point.

Fixes https://github.com/xamarin/xamarin-macios/issues/14604.
2022-04-04 09:55:05 +02:00
Rolf Bjarne Kvinge 53fdca45c8
[tests] Fix dependencies to build the mtouch tests. (#14606)
The corresponding project was renamed some time ago, but not all places that
used the derived Make variable were updated at the same time as they should
have been.
2022-04-04 09:53:08 +02:00
Manuel de la Pena 46af411d1c
[Foundation] Allow null parameters when creating a NSUrl from a string. (#14603)
The headers do not say that a null parameter is allowed, but the
documentation and tests state otherwise:

https://developer.apple.com/documentation/foundation/nsurl/1572047-urlwithstring

The URL string with which to initialize the NSURL object. Must be a URL that conforms to RFC 2396. This method parses URLString according to RFCs 1738 and 1808.
2022-04-02 15:13:52 -04:00
Rolf Bjarne Kvinge e191c613ce
[Foundation] Enable nullability in NSUrlSessionHandler. (#14597) 2022-04-01 14:48:57 +02:00
Rolf Bjarne Kvinge 1c4a64c0c4
[EventKitUI] Add this framework to Mac Catalyst. (#14374)
Co-authored-by: Manuel de la Pena <mandel@microsoft.com>
2022-04-01 14:29:30 +02:00
Rolf Bjarne Kvinge 08978fa4b1
[dotnet] Rename hardcoded 'net6.0' to use a 'DOTNET_TFM' variable instead. (#14524)
This makes things easier for .NET 7.
2022-04-01 13:48:09 +02:00
Rolf Bjarne Kvinge 0887599ccb
[cecil-tests] Enable previously disabled tests. (#14587)
Looks like these might be fixed now.

Fixes https://github.com/xamarin/maccore/issues/2547.
2022-04-01 07:22:27 +02:00
Rolf Bjarne Kvinge 7b16e71349
[tests] Ignore the BindingLibraryDSymCreated test until we've fixed the underlying issue. (#14599) 2022-04-01 07:20:54 +02:00
Rolf Bjarne Kvinge 23737939db
[CarPlay] Ignore this framework on Mac Catalyst. (#14381)
Co-authored-by: Manuel de la Pena <mandel@microsoft.com>
2022-03-31 14:20:50 +02:00
Rolf Bjarne Kvinge 77bac878d6
[IdentityLookupUI] Add this framework to Mac Catalyst. (#14385)
Co-authored-by: Manuel de la Pena <mandel@microsoft.com>
2022-03-31 14:20:08 +02:00
Rolf Bjarne Kvinge e687c20dd6
[AppClip] Add this framework to Mac Catalyst. (#14378)
Co-authored-by: Manuel de la Pena <mandel@microsoft.com>
2022-03-31 13:52:52 +02:00
Rolf Bjarne Kvinge 7cfc86d159
[CoreLocationUI] Add this framework to Mac Catalyst. (#14382)
Co-authored-by: Manuel de la Pena <mandel@microsoft.com>
2022-03-31 12:49:34 +02:00
Rolf Bjarne Kvinge 38528043d1
[AddressBookUI] Ignore this framework on Mac Catalyst. (#14377)
It exists, and is apparently usable, but it's already deprecated (and it's been deprecated on iOS for a while):

"Do not use the AddressBookUI framework in iOS 9 and later. Use the APIs defined in the Contacts UI framework instead."

Ref: https://developer.apple.com/documentation/addressbookui

Co-authored-by: Manuel de la Pena <mandel@microsoft.com>
2022-03-31 11:17:03 +02:00
Rolf Bjarne Kvinge 209942854f
[WatchConnectivity] Ignore this framework on Mac Catalyst. (#14384)
I'm not sure if WatchConnectivity is of any use on Mac Catalyst,
so until proven it's useful, ignore it.

Co-authored-by: Manuel de la Pena <mandel@microsoft.com>
2022-03-31 10:54:29 +02:00
Rolf Bjarne Kvinge 704006f6db
[HealthKitUI] Add this framework to Mac Catalyst. (#14371)
Co-authored-by: Manuel de la Pena <mandel@microsoft.com>
2022-03-31 10:42:40 +02:00
Rolf Bjarne Kvinge 350913647a
[CoreNFC] Add this framework to Mac Catalyst. (#14383)
Co-authored-by: Manuel de la Pena <mandel@microsoft.com>
2022-03-31 10:42:03 +02:00
Rolf Bjarne Kvinge 18ecf400dc
[xtro] Simplify makefile a bit by using the [IOS|MAC]_DESTDIR variable. (#14578)
This way there's no need for custom code for testing using a system install.
2022-03-31 08:51:16 +02:00
Rolf Bjarne Kvinge 6fa6b75f19
[dotnet] Don't include @(Compile) and @(EmbeddedResource) items in @(BundleResource) items by default. Fixes #14442. (#14571)
Fixes https://github.com/xamarin/xamarin-macios/issues/14442.
2022-03-31 08:17:53 +02:00
Rolf Bjarne Kvinge dea5c1e812
[tests] Fix logic to make generator tests work with a system install. (#14497)
Fixes https://github.com/xamarin/maccore/issues/2549.
2022-03-30 21:36:09 +02:00
Rolf Bjarne Kvinge 5740e372a0
[xharness] Honor the TESTS_USE_SYSTEM environment variable in addition to the --use-system command-line argument. (#14561)
Fixes https://github.com/xamarin/maccore/issues/2561.
2022-03-30 18:59:40 +02:00
Manuel de la Pena e5b8b196f7
[xtro] Fix xtro on dotnet. (#14559)
Use the workloads versions to point to the correct dll path when running in a diff bot than the one were the build was done.
2022-03-30 11:32:25 -04:00
Alexander Köplinger b8c493c3e1
Set IsImplicitlyDefined="true" on the System.Runtime.InteropServices.NFloat.Internal PackageReference (#14532)
* Set IsImplicitlyDefined="true" on the System.Runtime.InteropServices.NFloat.Internal

This unbreaks Central Package Management via https://github.com/microsoft/MSBuildSdks/tree/main/src/CentralPackageVersions which is being worked on for NuGet, see https://github.com/NuGet/Home/issues/6764

* Add test case

Co-authored-by: Rolf Bjarne Kvinge <rolf@xamarin.com>
2022-03-30 10:13:39 +02:00
Rolf Bjarne Kvinge ad1ece2694
[mmptest] Fix TESTS_USE_SYSTEM logic. (#14542)
As long as the variable is set, we're using the system installation for testing.
2022-03-29 15:45:42 -04:00
Rolf Bjarne Kvinge 2af5fc3c56
[monotouch-test] Attempt to fix monotouch-tests on macOS 10.15. (#14520) 2022-03-29 07:51:40 +02:00
Rolf Bjarne Kvinge 50192c9f96
[msbuild] Deduplicate items in ComputeCodesignItems. Fixes #14522. (#14525)
We may end up trying to codesign the same item multiple times when codesigning
universal .NET apps. Avoid this by deduplicating items to codesign.

Fixes https://github.com/xamarin/xamarin-macios/issues/14522.
2022-03-29 07:37:57 +02:00
Rolf Bjarne Kvinge 622a1c9d61
[devops] Keep dependency selection logic together. (#14519) 2022-03-28 20:36:00 +02:00
Rolf Bjarne Kvinge 0802e2c359
[tests] Store symlinks in zips. Fixes #xamarin/maccore@2548. (#14459)
Fixes https://github.com/xamarin/maccore/issues/2548.
2022-03-28 08:59:29 +02:00
Manuel de la Pena d36d87f11e
[CI] Checkout the head ref rather than the merge or a reset, this should fix issues with the test selector. (#14496) 2022-03-25 11:38:52 -04:00
Rolf Bjarne Kvinge ab513555a6
[tests] There's no need to have different logic to compute the source root path on Azure DevOps. (#14485) 2022-03-25 16:38:37 +01:00
Rolf Bjarne Kvinge 321f171744
[tests] Don't try to parse stderr from assetutil. Fixes #xamarin/maccore@2559. (#14478)
Hopefully fixes https://github.com/xamarin/maccore/issues/2559.
2022-03-25 09:00:44 +01:00
Rolf Bjarne Kvinge d95f2d15ad
[dotnet] Use a variable for 'net6.0' instead of hardcoding it. (#14481)
This makes it easier to bump to 'net7.0' when that time comes.
2022-03-24 16:41:29 +01:00
Rolf Bjarne Kvinge 78963700e7
[dotnet] Only add a global nfloat using if we're compiling for C# 10 or later. Fixes #14434. (#14475)
Fixes https://github.com/xamarin/xamarin-macios/issues/14434.
2022-03-24 10:14:16 +01:00
Rolf Bjarne Kvinge d9e3206125
Merge branch 'main' into dotnet-dsyms 2022-03-23 22:24:51 +01:00
Rolf Bjarne Kvinge 18fa252f1d
[msbuild] Show a better error when a bundle identifier isn't provided. Fixes #14283. (#14402)
Fixes https://github.com/xamarin/xamarin-macios/issues/14283.
2022-03-23 16:49:06 +01:00
Rolf Bjarne Kvinge e44d0fd047
[.NET] Rename several DOTNET6_* variables to to DOTNET_*. (#14463)
Also rename DOTNET_VERSION to SYSTEM_DOTNET_VERSION to make it clear what it's
referring to (and to not clash with DOTNET6_VERSION which has now been renamed
to DOTNET_VERSION).

.NET 7 is right around the corner.
2022-03-23 08:07:34 +01:00
Rolf Bjarne Kvinge d886a6d19b [tests] Update tests to cope with app extensions signed at a different moment during the build.
App extensions are now signed when the main app is signed (and not by themselves),
which means that in tests we can't assert that. So remove those asserts, and instead
add asserts to verify that app extensions are signed when the main app is signed.
2022-03-22 16:14:07 +01:00
Rolf Bjarne Kvinge a2c3d7d225 [tests] We can't call dsymutil/strip on static libraries, so mark them as such. 2022-03-22 16:14:07 +01:00