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

15173 Коммитов

Автор SHA1 Сообщение Дата
Rolf Bjarne Kvinge 9f0955be9c [HealthKit] Remove HKSeriesBuilder compliance of NSSecureCoding. (#17302)
There's no trace of this in the headers, so I assume it's something that
happened in a beta and then got removed, and we didn't notice to update our
bindings.
2023-01-24 14:22:36 +01:00
Rolf Bjarne Kvinge 86ee42a39d [tests] Bump the timeout to 10min for monotouch-test/xammac_tests on older macOS bots. (#17317)
I've started seeing more random network delays on these tests recently - which
the tests themselves handle, but the test run ends up taking much longer, and
we need to give the test run more time to finish.
2023-01-24 14:22:35 +01:00
dustin-wojciechowski 9c0bfd4e42 [src] Added manual binding to prevent issue of AVAudioPlayer FromData() and FromUrl() throwing exceptions. (#17073)
Provided manual binding of AVAudioPlayer::initWithContentsOfURL:error: and AVAudioPlayer::initWithData:error: to prevent an issue where AVAudioPlayer::FromData() and FromUrl() do not throw exceptions when returning null.

Fixes #16229

Co-authored-by: GitHub Actions Autoformatter <github-actions-autoformatter@xamarin.com>
2023-01-24 14:22:34 +01:00
Rolf Bjarne Kvinge bd158d9162 [NearbyInteraction] Remove NISession.SetARSession from Mac Catalyst. (#17300)
ARKit is in a weird spot on Mac Catalyst: it exists, but it doesn't do
anything. Since it doesn't actually work, we don't have bindings for ARKit.

This means that while the method '[NISession setARSession:]' technically
exists on Mac Catalyst, we can't bind it properly, since the type of the
parameter (ARSession) isn't available in our bindings for Mac Catalyst.

Due to how we hack around the lack of ARSession in our source code, we ended
up binding the method with an NSObject argument instead. This is still wrong,
so here I'm removing that method from the API.

But of course, removing that API is a breaking change, so until then the
method is obsoleted and hidden, and only removed in XAMCORE_5_0.

Also hide a few other obsoleted API in NISession, and remove those as well in
XAMCORE_5_0.
2023-01-24 14:22:33 +01:00
Rolf Bjarne Kvinge 9c57a3fab3 [MediaPlayer] Adjust availability attributes for MPMediaItem/MPMediaEntity. (#17305)
The API for MPMediaItem/MPMediaEntity varies wildly between platforms (for
historical reasons), so move availability attributes around a bit so that they
match reality a bit better: MPMediaEntity is not available on macOS, only
MPMediaItem is.
2023-01-24 14:22:32 +01:00
Rolf Bjarne Kvinge 3cbd86aba2 [AVFoundation] Adjust availability attributes according to conditional compilation directives. (#17311)
According to the compilation compilation directives, these APIs are not
available on tvOS nor macOS, so update the availability attributes
accordingly.
2023-01-24 14:22:31 +01:00
Rolf Bjarne Kvinge 41ae9626ee [Foundation] There's no reason to conditionally exclude code for macOS when the member has a NoMac attribute. (#17299)
This ensures that all platform assemblies know that the member doesn't exist
on macOS.
2023-01-24 14:22:28 +01:00
Rolf Bjarne Kvinge 91ac625192
[GameKit] Move availability attributes out of conditional code. (#17301)
So that all platforms know which other platforms the API is available on.
2023-01-20 08:09:34 +01:00
Rolf Bjarne Kvinge 4b7d672f6c
[Foundation] NSItemProvider is available on all platforms. (#17295) 2023-01-20 07:53:47 +01:00
Rolf Bjarne Kvinge 9016b2273f
[MetricKit] Add availability attributes to MXMetaData.DictionaryRepresentation. (#17294) 2023-01-20 07:52:20 +01:00
Rolf Bjarne Kvinge 6095fb3d0f
[AudioUnit] Adjust availability attributes according to conditional compilation directives. (#17309)
According to the compilation compilation directives, these two APIs are only
available on macOS, so update the availability attributes accordingly.
2023-01-20 07:48:26 +01:00
Rolf Bjarne Kvinge 137c6a49f1
[tests] Add makefile to run the generator tests in .NET mode. (#17296) 2023-01-19 16:40:42 +01:00
Rolf Bjarne Kvinge eae346af69
[Foundation] Hide NSTask.LaunchFromPath from intellisense for Mac Catalyst. (#17297)
Since it doesn't work anyway, there's no reason to show it.
2023-01-19 16:40:20 +01:00
github-actions[bot] 49ceaba587
[Localization] Pulling New Localization Translations $GITHUB_RUN_ID (#17304)
Automated PR. Bring new translated changes in the lcl files for
OneLocBuild to create translated resx files.

Co-authored-by: CSIGS <csigs@outlook.com>
2023-01-19 10:32:09 -05:00
Rolf Bjarne Kvinge 10accc2cd7
[dotnet/msbuild] Only compile entitlements once for universal builds. Fixes #15632. (#17096)
Fixes https://github.com/xamarin/xamarin-macios/issues/15632.
2023-01-19 16:01:34 +01:00
Rolf Bjarne Kvinge ec9db0e769
[AVFoundation/Intents/QuickLook] Don't add introduced attributes for a platform when the type itself isn't available on that platform. (#17293) 2023-01-19 15:45:05 +01:00
Rolf Bjarne Kvinge 3e83810910
[AudioUnit] Cleanup ifdefs in AUEnums. (#17267)
The ifdefs here were confusing, so I cleaned them up a bit.

Note that No* attributes in enum members won't prevent the enum members from
being generated, they'll just get an unavailable attribute, so adding No*
attributes to an enum member is not a breaking change (which allows for some
of this cleanup).

Contributes towards #14802.
2023-01-19 07:40:27 +01:00
Rolf Bjarne Kvinge 30cab5a5ae
[PushToTalk] Add missing Model attribute to the PTChannelManagerDelegate and PTChannelRestorationDelegate declarations. Fixes #16792. (#17273)
Fixes https://github.com/xamarin/xamarin-macios/issues/16792.
2023-01-19 07:39:45 +01:00
dotnet-maestro[bot] 10d4bb251e
[main] Update dependencies from dotnet/runtime (#17280)
This pull request updates the following dependencies

## From https://github.com/dotnet/runtime
- **Subscription**: 38d2313f-22d5-4062-c8e1-08dabd6d8c77
- **Build**: 20230117.6
- **Date Produced**: January 18, 2023 12:56:45 AM UTC
- **Commit**: 7db1c3333302d4d5ac97a5cfb28e88e5c2cde968
- **Branch**: refs/heads/release/7.0

- **Updates**:
  - **Microsoft.NETCore.App.Ref**: [from 7.0.3 to 7.0.3][1]

[1]: c8a73af...7db1c33
2023-01-18 21:38:56 +01:00
dotnet-maestro[bot] 4a1cfc3adf
[main] Update dependencies from dotnet/installer (#17277)
This pull request updates the following dependencies

## From https://github.com/dotnet/installer
- **Subscription**: 50c9492e-4671-4d1d-7920-08dabd1031a2
- **Build**: 20230117.22
- **Date Produced**: January 18, 2023 2:09:01 AM UTC
- **Commit**: 33d44bcd2251c000f797df6cab241d0e8581e08d
- **Branch**: refs/heads/release/7.0.1xx

- **Updates**:
- **Microsoft.Dotnet.Sdk.Internal**: [from 7.0.103-servicing.23063.7 to
7.0.103-servicing.23067.22][1]

[1]: 4a2d55e...33d44bc
2023-01-18 20:16:48 +01:00
Rolf Bjarne Kvinge ddda284da5
[tools] Enable the PushToTalk framework in the simulator. (#17274)
Apple provides the headers to target PushToTalk (so using PushToTalk in code
builds just fine for the simulator in Xcode), but it doesn't work at runtime.

I believe it's better to allow the same thing in our bindings, for two reasons:

* Apple prints out a helpful error message at runtime, instead of our rather
  incomprehensible build error.
* Apple might implement simulator support in the future, in which case we
  won't need to do anything else.
2023-01-18 18:55:04 +01:00
Rolf Bjarne Kvinge b1957c91ce
[generator] Fix an issue with regards to attributes from inlined protocols. Fixes #17268. (#17269)
In the following scenario:

* Type T is not available on a platform (say tvOS).
* Protocol P is available on said platform.
* A member M of P has its own availability attribute for said platform (for
  instance if P is available on tvOS 11.0, and the member is available on tvOS
  12.0).
* The protocol P is inlined into the type T.

We'd include the SupportedOSPlatform attribute from the inlined member on
generated code on other platforms (so the iOS assembly would say that the
inlined member M in T is available on tvOS).

Fixes https://github.com/xamarin/xamarin-macios/issues/17268.
2023-01-18 18:54:15 +01:00
Rolf Bjarne Kvinge 49c3fd44f5
[fabricbot] Handle the 'need-repro' label. (#17272)
Handle the 'need-repro' label like the 'need-info' label:

* Add a comment that we need a repro, and how to get one.
* Close the issue if no comments within 7 days.
* Add a 'need-attention' label if reporter comments.

Also add a document explaining how to create a repro, modeled after (copied)
MAUI's document (https://github.com/dotnet/maui/blob/main/.github/repro.md).
2023-01-18 18:33:48 +01:00
Rolf Bjarne Kvinge f2cbd7657c
[fabricbot] Add bot rule to manage 'move-to-vs-feedback' issues (#17270)
New workflows:

1. When a `move-to-vs-feedback` label is applied to an issue, tell the
user to use the VS Feedback tool instead.
2. If issue is commented on within 3 days, mark as `needs-attention`.
3. If issue is inactive for 3 days, close the issue.

This is a shameless copy of
05c5e202a3.
2023-01-18 18:33:16 +01:00
Rolf Bjarne Kvinge 0fa793ee28
[StoreKit] Add missing setters to several StoreProductParameters properties. Fixes #16838. (#17275)
Fixes https://github.com/xamarin/xamarin-macios/issues/16838.
2023-01-18 18:32:57 +01:00
Rolf Bjarne Kvinge 75499e4253
Update DOWNLOADS.md with new releases. Fixes #16625. (#17271)
Fixes https://github.com/xamarin/xamarin-macios/issues/16625.
2023-01-18 18:25:01 +01:00
Steve Hawley 74ceecaf3f
[dotnet] last of the strings in pinvokes are gone (#17205)
removed strings from pinvokes in ObjCRuntime
2023-01-18 10:25:52 -05:00
Rolf Bjarne Kvinge 4bf97d11d0
[SceneKit] SCNLight.[Get|Set]Attribute do not exist on MacCatalyst, so make it explicit that they aren't. (#17266) 2023-01-18 07:50:03 +01:00
Rolf Bjarne Kvinge 49d13fc0ef
[AppKit] Bind an NSWindow(IntPtr) constructor in the API definition. (#17264)
This simplifies our manual bindings a little bit.
2023-01-18 07:13:58 +01:00
Rolf Bjarne Kvinge 1084dcaf4b
[ContactsUI] Ensure availability attributes are identical on all platforms. (#17233)
Ensure availability attributes are identical on all platforms by not putting
them inside conditional compilation.
2023-01-18 07:13:35 +01:00
VS MobileTools Engineering Service 2 87f4b91f8d
Localized file check-in by OneLocBuild Task: Build definition ID 17751: Build ID 7198107 (#17246)
This is the pull request automatically created by the OneLocBuild task
in the build process to check-in localized files generated based upon
translation source files (.lcl files) handed-back from the downstream
localization pipeline. If there are issues in translations, visit
https://aka.ms/ceLocBug and log bugs for fixes. The OneLocBuild wiki is
https://aka.ms/onelocbuild and the localization process in general is
documented at https://aka.ms/AllAboutLoc.
2023-01-17 12:14:36 -06:00
Rolf Bjarne Kvinge 616c90dd74
[WebKit] Merge partial interfaces. (#17265)
There's no reason to have multiple partial interfaces in the same code file,
so just merge them.
2023-01-17 18:50:18 +01:00
Rolf Bjarne Kvinge dc5d3b2a99
[tests] Hardcode the SupportedOSPlatformVersion for the .NET 6 tests. (#17248)
.NET 6 doesn't define the minimum supported OS version property, which means
we can't use the existing logic to automatically determine the min OS version
to use as the default SupportedOSPlatformVersion in the .NET 6, so hardcode
the value.
2023-01-17 17:09:47 +01:00
Rolf Bjarne Kvinge 6f4774be84
[generator] Don't generate accessors with No* availability attributes on them. (#17249)
Previously API definitions like this:

    string Property {
    	get;
    	[NoiOS]
    	set;
    }

would generate a setter for every platform, even iOS.

This is rather unexpected, so fix the generator to honor No* attributes on
property getters and setters.
2023-01-17 17:05:03 +01:00
Manuel de la Pena ca8ae0801d
[CoreSpotlight] Add nullability to forgotten files. (#17216) 2023-01-17 10:38:49 -05:00
Rolf Bjarne Kvinge 7d02fa6f4f
[dotnet] Ensure any trimmer components are restored properly. (#17227)
.NET 8 will load the ILLink component based on the target framework of the
project file - so if .NET 8 is building a net7.0-ios app, the build will
restore and use the ILLink component from .NET 7.

There is a problem however:

* The inclusion of the ILLink component is dpendent on the PublishTrimmed
  property - if PublishTrimmed is true, then the ILLink component is restored
  (which makes sense, why restore it if it's not going to be used?).
* We always PublishTrimmed, because the linker must always be executed for our
  projects. So far so good - we can just always enable PublishTrimmed, right?
* Nope, when building on Windows, we only enable PublishTrimmed when connected
  to a Mac, because that's where the ILLink target must be executed (and if
  we're not connected to a Mac, we can't run the ILLink target, and things
  fall apart - so just disable PublishTrimmed in that, since it won't work
  anyway).
* Early on in the build we have no idea if we're connected to a Mac or not,
  which means we can only enable PublishTrimmed in a target, and not as an
  early-on default value. This is *way* to late for the ILLink component,
  which needs PublishTrimmed set quite early in the build process.
* Fortunately, the ILLink inclusion is actually gated on a different variable
  (_IsTrimmingEnabled) - which is initialized from PublishTrimmed if it's not
  set. So the way out here is to set _IsTrimmingEnabled early enough, and now
  the ILLink component is included and restored.
* The additional hurdle is that we need to set _IsTrimmingEnabled in our .NET
  6 and .NET 7 workloads as well, it's not enough to set it in our .NET 8
  workload (which isn't even loaded when building an earlier TFM).
2023-01-16 08:21:09 +01:00
Rolf Bjarne Kvinge d00f5a701b
[AudioUnit] Make AudioUnitParameterType.AUDCFilterDecayTime obsolete on Mac Catalyst. (#17231)
Mark this field as obsolete on Mac Catalyst to match iOS, but also completely
remove it in XAMCORE_5_0, since I can't find it in the headers anymore
anyways.
2023-01-16 07:50:06 +01:00
Rolf Bjarne Kvinge b828df956b
[Foundation] [NSTask launchedTaskWithLaunchPath:arguments:] is not available on Mac Catalyst. (#17232)
But we can't just remove it, so obsolete it until we can.
2023-01-16 07:49:24 +01:00
Rolf Bjarne Kvinge 6a5176ad50
Bump to MSBuild.StructuredLogger v2.1.758. (#17229)
To get new log format:

> System.NotSupportedException : Unsupported log file format. Latest
supported version is 14, the log file has version 15.
2023-01-16 07:32:45 +01:00
dotnet-maestro[bot] a646315d64
[main] Update dependencies from dotnet/installer (#17236)
This pull request updates the following dependencies

## From https://github.com/dotnet/installer
- **Subscription**: 50c9492e-4671-4d1d-7920-08dabd1031a2
- **Build**: 20230113.7
- **Date Produced**: January 13, 2023 9:22:06 PM UTC
- **Commit**: 4a2d55e922b2b72664b3081e57120eae5a3af86e
- **Branch**: refs/heads/release/7.0.1xx

- **Updates**:
- **Microsoft.Dotnet.Sdk.Internal**: [from 7.0.103-servicing.23062.18 to
7.0.103-servicing.23063.7][2]

[2]: 1e15b09...4a2d55e
2023-01-16 07:30:53 +01:00
dotnet-maestro[bot] 73ae0d6031
[main] Update dependencies from dotnet/runtime (#17239)
This pull request updates the following dependencies

## 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.Workload.Emscripten.net7.Manifest-7.0.100**: from 7.0.2 to 7.0.3 (parent: Microsoft.NETCore.App.Ref)

## From https://github.com/dotnet/runtime
- **Subscription**: 38d2313f-22d5-4062-c8e1-08dabd6d8c77
- **Build**: 20230113.11
- **Date Produced**: January 14, 2023 6:59:23 AM UTC
- **Commit**: c8a73afdf24cd1182b19c8b7ead209a798edf893
- **Branch**: refs/heads/release/7.0

- **Updates**:
  - **Microsoft.NETCore.App.Ref**: [from 7.0.3 to 7.0.3][3]
  - **Microsoft.NET.Workload.Emscripten.net7.Manifest-7.0.100**: [from 7.0.2 to 7.0.3][4]

[3]: f5f9a70...c8a73af
[4]: 00fbd97...67006e8
2023-01-16 07:28:33 +01:00
Rolf Bjarne Kvinge 4453d773ce
[tests] Unify code related to how to load test assemblies. (#17111)
Unify a lot of code related to how to load test assemblies.

This resulted in adding a couple of test assemblies to monotouch-test when executed on macOS (this was a bug), and this also required adapting some of those tests to work correctly on macOS.
2023-01-13 22:20:47 +01:00
dotnet-maestro[bot] abf96190d7
[main] Update dependencies from dotnet/installer (#17223)
This pull request updates the following dependencies

## 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 7.0.100-1.22471.3 to 7.0.100-1.22579.2 (parent: Microsoft.Dotnet.Sdk.Internal)
  - **Microsoft.AspNetCore.App.Ref**: from 7.0.0 to 7.0.2 (parent: Microsoft.Dotnet.Sdk.Internal)

## From https://github.com/dotnet/installer
- **Subscription**: 50c9492e-4671-4d1d-7920-08dabd1031a2
- **Build**: 20230112.18
- **Date Produced**: January 13, 2023 1:55:30 AM UTC
- **Commit**: 1e15b09a1df5407ba921ac4212d1fdeadecbf215
- **Branch**: refs/heads/release/7.0.1xx

- **Updates**:
  - **Microsoft.Dotnet.Sdk.Internal**: [from 7.0.103-servicing.23053.11 to 7.0.103-servicing.23062.18][1]
  - **Microsoft.NET.ILLink.Tasks**: [from 7.0.100-1.22471.3 to 7.0.100-1.22579.2][2]
  - **Microsoft.AspNetCore.App.Ref**: [from 7.0.0 to 7.0.2][3]

[1]: e0c95ad...1e15b09
[2]: 219e84c...8db10f4
[3]: https://dev.azure.com/dnceng/internal/_git/dotnet-aspnetcore/branches?baseVersion=GCbb01bbf&targetVersion=GC7c81065&_a=files
2023-01-13 22:10:58 +01:00
Rolf Bjarne Kvinge 05b92d5cf0
[msbuild] Fix typo in comment. (#17220) 2023-01-13 21:58:57 +01:00
Rolf Bjarne Kvinge 480a6ed844
[src/runtime] Fix lookup of RID-specific satellite resources. Fixes #16847. (#17117)
If we're creating a universal app, and here are satellite assemblies that are not
identical across all RuntimeIdentifiers, those assemblies will be stored in a RuntimeIdentifier-specific
subdirectory during the build.

Unfortunately we didn't know how to find those assemblies at runtime, causing localizations
in universal apps to not work.

This change will:

* Add support for looking in the directory where RID-specific satellite assemblies
  are stored.
* Add an assembly resolution event handler to our CoreCLR bridge so that we can
  execute our custom lookup code.
* Add an assembly resource lookup test to monotouch-test.
* Add a macOS + Mac Catalyst variation of monotouch-test to xharness that triggers
  the bug (a universal test app).

Fixes https://github.com/xamarin/xamarin-macios/issues/16847.
2023-01-13 21:58:34 +01:00
Manuel de la Pena b6a896e785
[CFNetwork] Add nullability to forgotten files. (#17208)
Add nullability to the files. Although this files won't be present in
the new dotnet versions, it is good to add them for classic. Also, if we
move all files to have nullability enabled we should be able to pass it
as a flag and remove the need to use '#nullable enable' which people can
forget.
2023-01-13 11:31:23 -05:00
Manuel de la Pena 53d47fb893
[FileProvider] Add nullability to forgotten file. (#17219) 2023-01-13 07:38:42 -05:00
dotnet-maestro[bot] 37376d3b1a
[main] Update dependencies from dotnet/runtime (#17202)
This pull request updates the following dependencies

## From https://github.com/dotnet/runtime
- **Subscription**: 38d2313f-22d5-4062-c8e1-08dabd6d8c77
- **Build**: 20230111.13
- **Date Produced**: January 12, 2023 7:38:25 AM UTC
- **Commit**: f5f9a7054e459a8c03fbbcc736d64fcba817b697
- **Branch**: refs/heads/release/7.0

- **Updates**:
  - **Microsoft.NETCore.App.Ref**: [from 7.0.3 to 7.0.3][1]

[1]: 2f7c3f4...f5f9a70
2023-01-13 12:23:28 +01:00
Manuel de la Pena f96001b934
[CoreTelephony] Add nullability to missing file. (#17217) 2023-01-13 00:42:19 -05:00
Manuel de la Pena e8df3e17d5
Remove not needed .gitignore. (#17218) 2023-01-13 00:41:56 -05:00