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

17446 Коммитов

Автор SHA1 Сообщение Дата
Rolf Bjarne Kvinge 3744c76391
[bgen] Generate xml documentation for generated UIAppearance logic. (#20502)
This was mostly copied from the existing API documentation.

Partial fix for https://github.com/xamarin/xamarin-macios/issues/20270.
2024-04-25 13:53:34 +02:00
Rolf Bjarne Kvinge a36a0f8922
[devops] Each test run shouldn't take more than a couple of hours, so set 3h as the upper bound. (#20496)
Waiting 16.6 hours for a test run to time out if something goes wrong is way too long.
2024-04-25 12:37:06 +02:00
Rolf Bjarne Kvinge fd3361ba34
[src] Expand multi-field single statements into multiple statements. (#20489)
This is in preparation for XML documentation: in order to provide XML
documentation for each field, they need to be separate statements.
2024-04-25 11:00:41 +02:00
Rolf Bjarne Kvinge 3ca9851df7
[CoreVideo] Make P/Invokes in CVImageBuffer and CVMetalTexture[Cache] have blittable signatures. (#20500)
Contributes towards #15684.
2024-04-25 10:59:44 +02:00
Rolf Bjarne Kvinge 2d278f672d
[bgen] Fix support for ErrorDomain enums in third-party bindings. (#20499)
The generator needs a library name for the generated `_domain` field.

Here's an example for the generated `ARErrorCodeExtensions` class ("ARKit" is
the library name):

```cs
[Field ("ARErrorDomain", "ARKit")]
static NSString? _domain;
```

In order to find the library name, the generator would look at the first enum
field with a `[Field]` attribute, and get the `LibraryName` property from that
`[Field]` attribute. Unfortunately error enums don't necessarily have `[Field]`
attributes on their enum fields. This works fine for our own bindings, because
the generator will fall back to the enum's namespace, but for third-party
bindings this would be the result:

> error BI1042: bgen: Missing '[Field (LibraryName=value)]' for ErrorDomainNS.EWithDomain. (e.g."__Internal")

Note that the error message is rather confusing: it's trying to report a
missing `LibraryName` property for a `[Field]` attribute, but there's no `[Field]`
attribute anywhere in the enum in question.

So fix this by:

* Adding the `LibraryName` property on the `[ErrorDomain]` attribute.
* Implement support for looking at this new property in the generator.
* Report a better error if it's not there.
2024-04-25 10:52:50 +02:00
Rolf Bjarne Kvinge 6c19986225
[SearchKit] Make P/Invokes have blittable signatures. (#20493)
Contributes towards #15684.
2024-04-24 13:19:08 +02:00
Rolf Bjarne Kvinge cb34348455
[CoreVideo] Make P/Invokes in CVBuffer and CVDisplayLink have blittable signatures. (#20494)
Contributes towards #15684.
2024-04-24 12:01:43 +02:00
Alexander Köplinger 45449a0c4b
Use legacy mono-sdks from download.mono-project.com (#20482)
---------

Co-authored-by: Alexander Köplinger <alex.koeplinger@outlook.com>
2024-04-24 10:35:21 +02:00
Rolf Bjarne Kvinge 1e0cc8f0fb
[docs] Review and update the 'Binding errors' document. (#20481)
Note that this document is currently not published on our documentation web site.

* Consolidate on a single way to specify message arguments (* instead of {...}).
* Mark messages that will only be show in legacy as such (but keep them)
* Escape star characters in headers.
* Remove mentions of Xamarin.
* Misc other updates.
2024-04-24 09:41:10 +02:00
Rolf Bjarne Kvinge 70a5d0d09a
[msbuild] Improve the UnpackLibraryResources task a bit. (#20004)
* Unpack into a per-assembly directory. This way identically named resources from
  different assemblies won't overwrite eachother.

* Remove logic to detect overwriting of existing bundle resources, because it's broken.

     In particular this piece of code is missing a single character (there should be a `!` in the condition):

     ```cs
     if (string.IsNullOrEmpty (logicalName))
         ignore.Add (logicalName);
     ```

    This means we're only ignoring bundle resources without LogicalName, which shouldn't
    happen. So just remove the code, since it doesn't do anything useful. A proper fix
    for resource collision is in progress and will come in a separate pull request.

* Fix task to work for incremental builds. Previously we'd detect that any resources
  had been extracted and not re-extract, but we wouldn't add those extracted resources
  to the `_BundleResourceWithLogicalName` item group. The end result would be that
  on incremental builds, any bundled resources wouldn't be picked up at all. Typically
  this wouldn't be a problem (because the resources would be in the resulting app
  bundle), but doing anything out of the ordinary could cause problems. The fix is
  to write the unpacked items + their metadata to a file, and load those when we
  detect that no re-extraction is necessary (this file also does double duty as a
  stamp file in the code).

* Augment `WriteItemsToFile` to make its `Write` method accessible from different classes.

* Improve logging a bit.
2024-04-24 09:40:45 +02:00
Rolf Bjarne Kvinge 8b3ce01c2c
[bgen] Generate xml documentation for notifications. (#20492)
This was mostly copied from the existing API documentation.

Partial fix for https://github.com/xamarin/xamarin-macios/issues/20270.
2024-04-24 09:36:14 +02:00
Rolf Bjarne Kvinge 0f23bcda3c
[Darwin] Make the 'kevent' P/Invoke have blittable signatures. (#20467)
Contributes towards #15684.
2024-04-23 18:13:13 +02:00
Rolf Bjarne Kvinge b410d74248
[msbuild] Improve errors in case native linking fails. (#20462)
By default we limit the error message to 1024 characters in case the native
linker fails. The problem is that the native linker may show a lot of warnings
in the beginning, so if that happened, the error output would show only a list
of warnings and nothing else, which is rather confusing.

So change the output slightly when reporting an error in the native linker:

* Try to filter out warnings.
* Show a max of 25 lines of errors (as opposed to 1024 characters, which tended to be 3-4 lines).

So now instead of this error:

    [...]/targets/Xamarin.Shared.Sdk.targets(1623,3): clang++ exited with code 1:
    ld: warning: object file ([...]/packs/Microsoft.NETCore.App.Runtime.Mono.maccatalyst-arm64/8.0.3/runtimes/maccatalyst-arm64/native/libSystem.Globalization.Native.a(pal_calendarData.c.o)) was built for newer Mac Catalyst version (14.2) than being linked (14.0)
    ld: warning: object file ([...]/packs/Microsoft.NETCore.App.Runtime.Mono.maccatalyst-arm64/8.0.3/runtimes/maccatalyst-arm64/native/libSystem.IO.Compression.Native.a(pal_zlib.c.o)) was built for newer Mac Catalyst version (14.2) than being linked (14.0)
    ld: warning: object file ([...]/packs/Microsoft.NETCore.App.Runtime.Mono.maccatalyst-arm64/8.0.3/runtimes/maccatalyst-arm64/native/libSystem.IO.Compression.Native.a(constants.c.o)) was built for newer Mac Catalyst versio

we get:

    [...]/targets/Xamarin.Shared.Sdk.targets(1623,3): clang++ exited with code 1:
    Undefined symbols for architecture arm64:
      "__swift_FORCE_LOAD_$_swiftCompatibility56", referenced from:
          __swift_FORCE_LOAD_$_swiftCompatibility56_$_main in libSwiftTest.a(libSwiftTest.arm64.o)
         (maybe you meant: __swift_FORCE_LOAD_$_swiftCompatibility56_$_main)
      "__swift_FORCE_LOAD_$_swiftCompatibilityConcurrency", referenced from:
          __swift_FORCE_LOAD_$_swiftCompatibilityConcurrency_$_main in libSwiftTest.a(libSwiftTest.arm64.o)
         (maybe you meant: __swift_FORCE_LOAD_$_swiftCompatibilityConcurrency_$_main)
    ld: symbol(s) not found for architecture arm64
    clang: error: linker command failed with exit code 1 (use -v to see invocation)

which makes much more sense for an error.

The full linker output is still available in the build log if needed.
2024-04-23 17:03:37 +02:00
Rolf Bjarne Kvinge 6eabd3aece
[tests] Update known failures for cecil tests after a merge race. (#20480) 2024-04-23 14:40:24 +02:00
Rolf Bjarne Kvinge 45ac791f35
[dotnet] Fix dependencies for Microsoft.<platform>.Sdk.DefaultItems.props. (#20478)
Make sure Microsoft.\<platform\>.Sdk.DefaultItems.props is rebuilt if the
current hash changes.

This fixes a local rebuild issue, where we'd rebuild
Microsoft.\<platform\>.Sdk.Versions.props, but not
Microsoft.\<platform\>.Sdk.DefaultItems.props.

A build failure like this would thus result:

    tools/msbuild/iOS/Xamarin.Shared.targets(606,3): error : A bundle identifier is required. Either add an 'ApplicationId' property in the project file, or add a 'CFBundleIdentifier' entry in the project's Info.plist file.

because:

* We store the current git hash in both of the files mentioned above.
* We only include default items in a build if the git hashes match.
* Since the files weren't both rebuilt, they'd contain different hashes, and
  thus we wouldn't include Info.plist in the build, leading to the build
  error.
2024-04-23 08:08:31 +02:00
Matt Sylvia 9f2a029038
Revert "Update to use System.AccessToken" (#20487)
Reverts xamarin/xamarin-macios#20476

Usage of `System.AccessToken` in this instance fails with `needs Edit
build quality permissions`.
2024-04-23 08:05:13 +02:00
Rolf Bjarne Kvinge f2308d1ed0
[CoreWlan] Make P/Invokes have blittable signatures. (#20465)
Contributes towards #15684.
2024-04-22 18:54:03 +02:00
Rolf Bjarne Kvinge 216ddf7979
[CoreText] Make P/Invokes in CTFontManager have blittable signatures. (#20464)
Contributes towards #15684.
2024-04-22 18:53:52 +02:00
Rolf Bjarne Kvinge 417236e279
[docs] Bring back documentation updates from the documentation repository. (#20453)
It's been a few years since we've synchronized the documentation here with the
documentation in the documentation repository
(https://github.com/MicrosoftDocs/xamarin-docs-pr/), so bring all updates done
there over here.

This PR is probably best reviewed commit-by-commit.
2024-04-22 18:32:21 +02:00
Matt Sylvia 5080f068a6
Update to use System.AccessToken (#20476)
Replace the manually updated PAT `$(pat--xamarinc--build-access)` with
the built in `$(System.AccessToken)`.

This PR is untested but from the documentation I have read it should
work for requesting anything within the same DevOps tenant and project
aka DevDiv.

- [Predefined variables - Azure Pipelines | Microsoft
Learn](https://learn.microsoft.com/en-us/azure/devops/pipelines/build/variables?view=azure-devops&tabs=yaml)
- [Understand job access tokens - Azure Pipelines | Microsoft
Learn](https://learn.microsoft.com/en-us/azure/devops/pipelines/process/access-tokens?view=azure-devops&tabs=yaml#job-authorization-scope)
2024-04-22 10:46:39 -04:00
Rolf Bjarne Kvinge 4361ccc005
[tools] Add OS check to fix availability warnings. (#20472)
Fixes:

    xamarin-macios/tools/common/PathUtils.cs(297,34): warning CA1416: This call site is reachable on all platforms. 'RegistryKey.GetValue(string?, object?)' is only supported on: 'windows'. (https://learn.microsoft.com/dotnet/fundamentals/code-analysis/quality-rules/ca1416)
    xamarin-macios/tools/common/PathUtils.cs(294,32): warning CA1416: This call site is reachable on all platforms. 'RegistryKey.OpenSubKey(string)' is only supported on: 'windows'. (https://learn.microsoft.com/dotnet/fundamentals/code-analysis/quality-rules/ca1416)
    xamarin-macios/tools/common/PathUtils.cs(294,32): warning CA1416: This call site is reachable on all platforms. 'Registry.LocalMachine' is only supported on: 'windows'. (https://learn.microsoft.com/dotnet/fundamentals/code-analysis/quality-rules/ca1416)
2024-04-22 14:53:22 +02:00
Rolf Bjarne Kvinge be241769fc
[GameplayKit] Remove the bindings for GKHybridStrategist. (#20468)
The GKHybridStrategist type doesn't exist in iOS. This was probably a type
initially introduced in a beta version, and then removed in a later beta
version, and then we didn't notice.
2024-04-22 07:26:10 +02:00
Rolf Bjarne Kvinge 2d97c8b466
[tools] Create a binlog when building dotnet-linker. (#20473)
Makes diagnosing build issues much easier.
2024-04-22 07:23:57 +02:00
Rolf Bjarne Kvinge c42b4728ba
[tests] Don't verify that obsolete or hidden members have xml documentation. (#20471)
We have enough APIs to document to think about documenting APIs people
shouldn't be using.
2024-04-22 07:23:38 +02:00
Rolf Bjarne Kvinge fcabca0159
[docs] Stop using the term 'Xamarin'. (#20451)
Stop using the term 'Xamarin' in our error messages.

🙈 🙊 🙉

Note: this may not be complete, since we compute error messages in numerous
places, and those aren't fixed here (if there are any that still says
'Xamarin' in any way).

---------

Co-authored-by: Michael Cummings (MSFT) <mcumming@microsoft.com>
2024-04-18 08:41:07 +02:00
Rolf Bjarne Kvinge ee31d72643
[dotnet] Add support for linking with Swift system libraries. Fixes #18848. (#20463)
By adding the 'LinkWithSwiftSystemLibraries=true' property in a project file, we'll
now add the location of Swift's system libraries to the linker arguments.

Fixes https://github.com/xamarin/xamarin-macios/issues/18848.
2024-04-18 08:40:56 +02:00
Rolf Bjarne Kvinge 595f1ecb7d
[CoreText] Make P/Invokes in CTRunDelegate have blittable signatures. (#20461)
Contributes towards #15684.
2024-04-18 08:33:29 +02:00
dotnet-maestro[bot] 9643bd1c83
[main] Update dependencies from dotnet/installer (#20457)
This pull request updates the following dependencies

## From https://github.com/dotnet/installer

- **Subscription**: 80cb9ffd-f92f-4fc8-9f8b-08dbca46abfb
- **Build**: 20240416.7
- **Date Produced**: April 16, 2024 9:31:51 PM UTC
- **Commit**: 79797800a3fadfd33361cc387fb247f90835a357
- **Branch**: refs/heads/release/8.0.1xx

- **Updates**:
  - **Microsoft.Dotnet.Sdk.Internal**: [from 8.0.105-servicing.24212.4 to 8.0.105-servicing.24216.7][1]

[1]: 3224d04c10...79797800a3
2024-04-17 18:16:27 +02:00
Rolf Bjarne Kvinge 2d619b14c2
[tests] Run the BundleStructure test on Windows in remote mode. (#20045) 2024-04-17 16:21:37 +02:00
Rolf Bjarne Kvinge 64ddb8781c
[CoreText] Make P/Invokes in CTFontDescriptor, CTFramesetter and CTParagraphStyle have blittable signatures. (#20426)
Contributes towards #15684.
2024-04-17 11:36:52 +02:00
dotnet-maestro[bot] b176e4a1ae
[main] Update dependencies from dotnet/installer (#20392)
This pull request updates the following dependencies

## From https://github.com/dotnet/installer

- **Subscription**: 80cb9ffd-f92f-4fc8-9f8b-08dbca46abfb
- **Build**: 20240412.4
- **Date Produced**: April 12, 2024 6:10:24 PM UTC
- **Commit**: 3224d04c107288e97c75022e7e6104748b6745d3
- **Branch**: refs/heads/release/8.0.1xx

- **Updates**:
  - **Microsoft.Dotnet.Sdk.Internal**: [from 8.0.104-servicing.24179.2 to 8.0.105-servicing.24212.4][32]
  - **Microsoft.NET.ILLink.Tasks**: [from 8.0.3 to 8.0.4][33]
  - **Microsoft.AspNetCore.App.Ref**: [from 8.0.3 to 8.0.4][34]
  - **Microsoft.NETCore.App.Ref**: [from 8.0.3 to 8.0.4][33]
  - **Microsoft.NET.Workload.Emscripten.Current.Manifest-8.0.100**: [from 8.0.3 to 8.0.4][35]
  - **Microsoft.NETCore.App.Ref**: [from 8.0.3 to 8.0.4][33]

[32]: 2ffd0887ae...3224d04c10
[33]: https://dev.azure.com/dnceng/internal/_git/dotnet-runtime/branches?baseVersion=GC9f4b1f5d664afdfc80e1508ab7ed099dff210fbd&targetVersion=GC2d7eea252964e69be94cb9c847b371b23e4dd470&_a=files
[34]: https://dev.azure.com/dnceng/internal/_git/dotnet-aspnetcore/branches?baseVersion=GC88ec3bc3f37e76fbcc932a25f9f0c1c29fe2b343&targetVersion=GC8486d31e24f30e3fa1809a95699a0adc16f448d7&_a=files
[35]: 9a29abdd76...08a90ca2c8

## Coherency Updates

The following updates ensure that dependencies with a *CoherentParentDependency*
attribute were produced in a build used as input to the parent dependency's build.
See [Dependency Description Format](https://github.com/dotnet/arcade/blob/master/Documentation/DependencyDescriptionFormat.md#dependency-description-overview)

- **Coherency Updates**:
  - **Microsoft.NET.ILLink.Tasks**: from 8.0.3 to 8.0.4 (parent: Microsoft.Dotnet.Sdk.Internal)
  - **Microsoft.AspNetCore.App.Ref**: from 8.0.3 to 8.0.4 (parent: Microsoft.Dotnet.Sdk.Internal)
  - **Microsoft.NETCore.App.Ref**: from 8.0.3 to 8.0.4 (parent: Microsoft.Dotnet.Sdk.Internal)
  - **Microsoft.NET.Workload.Emscripten.Current.Manifest-8.0.100**: from 8.0.3 to 8.0.4 (parent: Microsoft.NETCore.App.Ref)
  - **Microsoft.NETCore.App.Ref**: from 8.0.3 to 8.0.4 (parent: Microsoft.Dotnet.Sdk.Internal)
2024-04-17 11:23:21 +02:00
Rolf Bjarne Kvinge 53d21b14db
[xharness] Add launch.json/tasks.json for xharness. (#20428) 2024-04-16 17:36:15 +02:00
Rolf Bjarne Kvinge ce139cb480
[src] Stop generating CGPoint, CGRect and CGSize from a t4 file. (#20432)
* Adding xml documentation to the t4 file will make it quite complicated and
  ugly.
* The code for these types change very rarely, so at this point there's not
  much advantage to generating it.

So just copy the expanded t4 code into the correct C# files and remove the t4
code.
2024-04-16 17:04:06 +02:00
Rolf Bjarne Kvinge 92cab1c804
[bgen] Generate xml documentation for the generated constructors every NSObject subclass gets. (#20436)
Partial fix for https://github.com/xamarin/xamarin-macios/issues/20270.
2024-04-16 17:03:47 +02:00
Rolf Bjarne Kvinge 6fabe0b18a
[monotouch-test] Sprinkle UnconditionalSuppressMessage wherever needed to fix trimmer warnings. (#20429) 2024-04-16 17:03:36 +02:00
Rolf Bjarne Kvinge b09d92a988
[tests] Ignore trimmer warnings from NUnit. (#20430)
NUnit is not trimmer-safe, and produces a lot of trimmer warnings.

Ideally we'll fix NUnit or come up with an alternative (see #19911), but
that's a significant amount of work.

We also want to turn warnings into errors (to avoid adding more trimmer
warnings by accident).

So we disable trimmer warnings from NUnit. The method is somewhat complex,
because there's no built-in way to ignore warnings for a given assembly, but
both ILC and ILLink provides a way to collapse multiple warnings into a single
warning (with a specific code) on a per assembly basis, and we can levarage
this:

* We enable all warnings for all assemblies (by setting
  `TrimmerSingleWarn=false`).
* We enable the single-warning mode for NUnit only.
* We ask the trimmer to not warn about the specific warning code given for the
  single-warning produced.

The end result is that we won't get any trimmer warnings for NUnit.

An xharness fix was also needed to make xharness not get confused with
ItemGroups inside Targets when cloning project files.

Ref: https://github.com/xamarin/xamarin-macios/issues/19911
2024-04-16 17:03:07 +02:00
dotnet-maestro[bot] 3f658cd139
[main] Update dependencies from dotnet/xharness (#20450)
This pull request updates the following dependencies

## From https://github.com/dotnet/xharness

- **Subscription**: 601bc5e1-1cae-44b5-cf5f-08db9342aa2f
- **Build**: 20240408.1
- **Date Produced**: April 8, 2024 3:04:52 PM UTC
- **Commit**: 50b43ece7daf9f8a88ac16a95a4f8647a4c71c4b
- **Branch**: refs/heads/main

- **Updates**:
  - **Microsoft.DotNet.XHarness.iOS.Shared**: [from 9.0.0-prerelease.24203.1 to 9.0.0-prerelease.24208.1][1]

[1]: 28af9496b0...50b43ece7d
2024-04-16 16:30:04 +02:00
Rolf Bjarne Kvinge 1ff3c2bddd
[devops] Terminate any existing builders and brokers when preparing Macs for remote testing. (#20448)
Also collect more logs to help diagnose any transient failures.
2024-04-16 16:26:01 +02:00
Rolf Bjarne Kvinge 7f866eeb9b
[devops] Add a timeout to the 'undo GitHub merge' step. (#20427)
It shouldn't take more than a few minutes to undo the GitHub merge.
2024-04-15 10:17:04 +02:00
Rolf Bjarne Kvinge b4b6ff95bf
[dotnet] Compute _SdkIsSimulator and the trimmer configuration earlier in the build. (#20431)
We can determine whether we're building for the simulator or not as soon as we know
the RuntimeIdentifier, so do that, and set _SdkIsSimulator accordingly.

In legacy Xamarin we had to execute a target in order to compute _SdkIsSimulator
(_DetectSdkLocations), but with this change we won't have to in .NET anymore, which
makes it possible to simplify some logic.

The first thing we do here is to also move the computation of the trimmer configuration
to right after computing _SdkIsSimulator (because we only need to know three things
to compute the default trimmer mode: the target platform + whether we're building
for the simulator or not + the configuration, and those are all known at this point
now).

This will make it possible to stop suppressing trimmer warnings depending on the
trimming mode in effect (we have to suppress (or decide not to) the warnings in the
initial MSBuild evaluation phase, before any targets are executed, because the properties
in question are read during the evaluation phase in .NET). Note that this PR is not
changing any trimmer warnings, that will only happen in .NET 9.
2024-04-15 09:22:49 +02:00
Alexander Köplinger 2f357e507a
Use Mono MDK package from download server (#20442)
To reduce reliance on xamjenkinsartifact.
Also remove MIN_XM_MONO_URL, it is not used anymore.

---------

Co-authored-by: Alexander Köplinger <alex.koeplinger@outlook.com>
2024-04-15 08:58:59 +02:00
Rolf Bjarne Kvinge 0cc3621984
[actions] Add permissions block to the 'update-single-platform-branches' action. (#20441)
It only took me two and a half months to notice the action wasn't working...
2024-04-12 18:30:38 +02:00
Rolf Bjarne Kvinge 0ff184cd06
[UIKit] Remove UITextAttributes.Dictionary. Fixes #20409. (#20410)
The UITextAttributes.Dictionary property is supposed to work like the
UIStringAttributes.Dictionary property, but there's one big difference: the
UITextAttributes version can (and calling code does) be disposed, while the
UIStringAttributes version can't.

This is because the UITextAttributes version creates a new dictionary every
time, while the UIStringAttributes version doesn't.

Since properties shouldn't really do much, it makes sense to remove the
UITextAttributes version, and instead rely on the
UITextAttributes.ToDictionary method, where the difference in behavior is more
obvious.

This required a few changes in calling code, which used either UITextAttributes
or UIStringAttributes using conditional compilation.

Fixes https://github.com/xamarin/xamarin-macios/issues/20409.
2024-04-12 16:53:25 +02:00
Rolf Bjarne Kvinge e5ccdd44ea
[AppKit] Provide an NSEvent.GetCGEventObject method. (#20423)
Provide an NSEvent.GetCGEventObject method that returns the CGEvent object for
the NSEvent.CGEvent field (which returns a NativeHandle).

Contributes towards https://github.com/xamarin/xamarin-macios/issues/12650.
2024-04-12 16:51:58 +02:00
Rolf Bjarne Kvinge e200c21269
[bgen] Generate xml documentation for the generated ClassHandle property. (#20425)
This was mostly copied from the existing API documentation.

Partial fix for https://github.com/xamarin/xamarin-macios/issues/20270.
2024-04-12 10:15:05 +02:00
Rolf Bjarne Kvinge ad0eeae3e7
[src] Fix making all warnings errors. (#20422)
We have a minor behavioral difference between bgen and csc:

* In bgen, `--warnaserror:` enables all warnings.
* In csc, `--warnaserror:` does nothing.

So we now pass:

* `--warnaserror:` to bgen.
* `--warnaserror+` to csc.
2024-04-12 09:35:52 +02:00
Rolf Bjarne Kvinge e5a63b33e6
[tests] Ignore the MessageHandlerTest.GHIssue16339 test if we're in CI and have a bad network. (#20416)
Fixes this test failure:

    MonoTests.System.Net.Http.MessageHandlerTest.GHIssue16339
    	[FAIL] GHIssue16339() :   ReasonPhrase #1
      Expected string length 2 but was 11. Strings differ at index 0.
      Expected: "OK"
      But was:  "Bad Gateway"
2024-04-11 17:16:15 +02:00
Rolf Bjarne Kvinge fa9805dbac
[CoreGraphics] Bind CGEventSetIntegerValueField and CGEventSetDoubleValueField. Fixes #12650. (#20424)
Also expose both getter and setter methods using the enum itself, so we don't
have to make getter and setter properties for each of the enum fields.

This required making CGEventField a public enum, so do that.

And finally document all the new APIs, and some of the old ones.

Fixes https://github.com/xamarin/xamarin-macios/issues/12650.
2024-04-11 07:19:14 +02:00
Rolf Bjarne Kvinge b71582ea31
[tests] Don't verify that delegate members have xml documentation. (#20419)
There's no way to add xml documentation to them.

Partial fix for https://github.com/xamarin/xamarin-macios/issues/20270.
2024-04-10 19:02:20 +02:00
Rolf Bjarne Kvinge 3f6df4d739
[CoreText] Make P/Invokes in CTFont have blittable signatures. (#20418)
Contributes towards #15684.
2024-04-10 19:01:18 +02:00