Skip to content

Releases: dotnet/macios

.NET 10 - Xcode 26.2 support (26.2.10191)

16 Dec 18:30
c60d1ae

Choose a tag to compare

Note

  • Xcode 26.2 is required with this release. Xcode 26.2 requires macOS 15.6+.

These are the base SDKs that add support for the platforms in question, for MAUI (which is built on top of our SDKs), go here instead: https://docs.microsoft.com/en-us/dotnet/maui/.

This release consists of the following versions:

Installation

You can use workload set version 10.0.101.1 in order to install these versions of the SDKs.

Please make sure to be using the latest .NET SDK 10.0.101 before issuing the dotnet workload install command below. You can validate your installed dotnet version using dotnet --version do make sure it shows 10.0.101 before proceeding.

dotnet workload install <workload id(s)> --version 10.0.101.1

Available workload ids

Example command installing all listed workloads.

dotnet workload install ios tvos macos maccatalyst maui android --version 10.0.101.1

You can use dotnet workload --info to validate the workload versions installed in your system.

Full release notes: https://github.com/dotnet/macios/wiki/.NET-10-release-notes

What's Changed

  • [Foundation] Fix nullability in NSCoder. by @rolfbjarne in #24179
  • [src] Fix calling ConformsToProtocol on native instances that don't have a managed peer yet. Fixes #24111. by @rolfbjarne in #24189
  • [xcode26.2] Bump to use Xcode 26.2 Beta 1 by @dalexsoto in #24184
  • [Foundation] Fix nullability in NSDecimal. by @rolfbjarne in #24187
  • [dotnet] Fix loading oldest reference assemblies for library projects. Fixes #24043. by @rolfbjarne in #24181
  • [msbuild] Add support for CoreMLCompilerPath to specify the locatio of the 'coremlc' executable. by @rolfbjarne in #24193
  • [msbuild] Fix confusion about where the codesign[-bundle].items files are stored. Fixes #24052. by @rolfbjarne in #24198
  • [msbuild] Remove outdated Xcode checks by @rolfbjarne in #24188
  • [Foundation] Fix nullability in NSDirectoryEnumerator. by @rolfbjarne in #24192
  • [dotnet] Adjust the default trimming mode to not trim when using CoreCLR. by @rolfbjarne in #24206
  • [tools] Build the partial static registrar for CoreCLR when CoreCLR is enabled. by @rolfbjarne in #24207
  • [dotnet] Only do Mono AOT stuff when we're using Mono by @rolfbjarne in #24204
  • [runtime] Link with libcoreclr on all platforms when it's enabled there. by @rolfbjarne in #24208
  • [src] Make the trimmer inline Runtime.IsCoreCLR correctly for iOS, tvOS and Mac Catalyst by @rolfbjarne in #24205
  • [msbuild] Add support for CopySceneKitAssetsPath to specify the location of the 'copySceneKitAssets' executable. by @rolfbjarne in #24218
  • [src] Remove 'remarks' nodes from enum fields, and add a test. by @rolfbjarne in #24232
  • [docs] Update docs about how to update API docs with one last step. by @rolfbjarne in #24233
  • [xcode26.1.1] Bump to Xcode 26.1.1 by @rolfbjarne in #24231
  • [docs] Update docs to match the published version. by @rolfbjarne in #24227
  • [apiref] Bump to latest stable published NuGet packages by @dalexsoto in #24235
  • [xcode26.2] Merge main into xcode26.2 by @dalexsoto in #24238
  • [system-dependencies] Make simulator runtime installation a bit more resilient. by @rolfbjarne in #24243
  • [msbuild] Always run WriteItemsFromFile locally. by @rolfbjarne in #24211
  • [docs] Use absolute link to update-api-docs.md in the release check list. by @rolfbjarne in #24234
  • [Foundation] Fix nullability in NSError. by @rolfbjarne in #24242
  • [msbuild] Remove reference to System.Collections.Immutable. by @rolfbjarne in #24237
  • [devops] Disable AzDO dependabot by @mmitche in #24255
  • [introspection] Tweak which assemblies ApiPInvokeTest tests. by @rolfbjarne in #24252
  • [Foundation] Fix nullability in NSFastEnumerator. by @rolfbjarne in #24253
  • [Foundation] Fix nullability in NSItemProvider. by @rolfbjarne in #24258
  • [Foundation] Fix nullability in NSUrlRequest. by @rolfbjarne in #24263
  • [Foundation] Fix nullability in NSXpcInterface. by @rolfbjarne in #24264
  • [Foundation] Fix nullability in NSValue. by @rolfbjarne in #24265
  • [src] Add a [DynamicDependency] attribute from the event field to exported method for generated events. Fixes #24262. by @rolfbjarne in #24270
  • [xcode26.2] Update AuthenticationServices to Xcode 26.2 Beta 1 by @dalexsoto in #24284
  • [xcode26.2] Update to Xcode 26.2 Beta 2 by @dalexsoto in #24289
  • [xcode26.2] Update AVFoundation bindings to Xcode 26.2 Beta 1 by @dalexsoto in #24285
  • [Foundation] Fix nullability in NSUrlCredential. by @rolfbjarne in #24277
  • [mlaunch] Update mlaunch to 1.1.93 by @mauroa in #24257
  • [Foundation] Fix nullability in NSXpcConnection. by @rolfbjarne in #24268
  • [Network] Fix NWBrowseResult.TxtRecord to not throw an exception if there's no TxtRecord. by @rolfbjarne in #24295
  • [xcode26.2] Update GameKit bindings to Xcode 26.2 Beta 2 by @dalexsoto in #24302
  • [Foundation] Fix nullability in NSUrlDownload. by @rolfbjarne in #24275
  • [Foundation] Fix nullability in NSUrlProtectionSpace. by @rolfbjarne in #24271
  • [xcode26.2] Update BrowserEngineKit bindings to Xcode 26.2 Beta 1 by @dalexsoto in #24287
  • [Foundation] Fix nullability in NSTimeZone. by @rolfbjarne in #24304
  • [xcode26.2] Update GameController bindings to Xcode 26.2 Beta 2 by @dalexsoto in #24297
  • [xcode26.2] Update HealthKit bindings to Xcode 26.2 Beta 2 by @dalexsoto in #24307
  • [Foundation] Fix nullability in NSUbiquitousKeyValueStore. by @rolfbjarne in #24278
  • [Foundation] Document NSUrlSessionHandler.MaxInputInMemory. Fixes #21537. by @rolfbjarne in #24305
  • [xcode26.2] Update PassKit bindings to Xcode 26.2 Beta 2 by @dalexsoto in #24310
  • [Foundation] Fix nullability in NSUrlSession. by @rolfbjarne in #24269
  • [xcode26.2] Merge main into xcode26.2 by @dalexsoto in #24318
  • [xcode26.2] Update SafariServices bindings to Xcode 26.2 Beta 2 by @dalexsoto in #24320
  • [xcode26.2] Update Security bindings to Xcode 26.2 Beta 2 by @dalexsoto in #24321
  • [msbuild] Fix XcodeProject output path when using artifacts folder by @Copilot in #24224
  • [tools] Mark the Invoke methods for the type to create block proxies when using the static registrar. by @rolfbjarne in #24344
  • [Foundation] Fix nullability in NSStream. by @rolfbjarne in #24308
  • [xcode26.2] Bump to Xcode 26.2 Release Candidate by @dalexsoto in #24359
  • [xcode26.2] Merge main into xcode26.2 by @dalexsoto in #24357
  • [Foundation] Improve documentation and remove redundant platform attributes in NSOrderedSet. by @rolfbjarne in #24345
  • [Foundation] Fix nullability in NSRange. by @rolfbjarne in #24356
  • [CoreAnimation] Remove incorrect availability attributes from CASpringAnimation.SettlingDuration by @Copilot in #24341
  • [Foundation] Fix nullability in NSScriptCommandDescription. by @rolfbjarne in #24351
  • ...
Read more

.NET 9 - Xcode 26.0 support (9783)

16 Dec 18:29
69e5712

Choose a tag to compare

Note

  • Xcode 26.0 is required with this release. Xcode 26.0 requires macOS 15.6+.

This is a servicing release to the previous .NET 9 release.

Note: these are the base SDKs that add support for the platforms in question, for MAUI (which is built on top of our SDKs), go here instead: https://docs.microsoft.com/en-us/dotnet/maui/.

Versions

This release consists of the following versions:

Installation

You can use workload set version 9.0.308.2 in order to install these versions of the SDKs.

Please make sure to be using the latest .NET SDK 9.0.308 before issuing the dotnet workload install command below. You can
validate your installed dotnet version using dotnet --version do make sure it shows 9.0.308 or greater before proceeding.

dotnet workload install <workload id(s)> --version 9.0.308.2

Available workload ids

Example command installing all listed workloads.

dotnet workload install ios tvos macos maccatalyst maui android --version 9.0.308.2

You can use dotnet workload --info to validate the workload versions installed in your system.

What's Changed

Full Changelog: dotnet-9.0.1xx-xcode26.0-9777...dotnet-9.0.1xx-xcode26.0-9783

.NET 10 - Xcode 26.1 support (26.1.10502)

09 Dec 18:24
29d3d81

Choose a tag to compare

Note

  • Xcode 26.1 is required with this release. Xcode 26.1 requires macOS 15.6+.
  • This workload is included in Visual Studio 2026 (v18.1)

These are the base SDKs that add support for the platforms in question, for MAUI (which is built on top of our SDKs), go here instead: https://docs.microsoft.com/en-us/dotnet/maui/.

This release consists of the following versions:

Installation

You can use workload set version 10.0.101 in order to install these versions of the SDKs.

Please make sure to be using the latest .NET SDK 10.0.101 before issuing the dotnet workload install command below. You can validate your installed dotnet version using dotnet --version do make sure it shows 10.0.101 before proceeding.

dotnet workload install <workload id(s)> --version 10.0.101

Available workload ids

Example command installing all listed workloads.

dotnet workload install ios tvos macos maccatalyst maui android --version 10.0.101

You can use dotnet workload --info to validate the workload versions installed in your system.

Full release notes: https://github.com/dotnet/macios/wiki/.NET-10-release-notes

What's Changed

  • [release/10.0.1xx] [src] Add a [DynamicDependency] attribute from the event field to exported method for generated events. Fixes #24262. by @rolfbjarne in #24288

Full Changelog: dotnet-10.0.1xx-xcode26.1-10494...dotnet-10.0.1xx-xcode26.1-10502

.NET 9 - Xcode 26.0 support (9777)

09 Dec 18:25
ab5c9f5

Choose a tag to compare

Note

  • Xcode 26.0 is required with this release. Xcode 26.0 requires macOS 15.6+.

This is a servicing release to the previous .NET 9 release.

Note: these are the base SDKs that add support for the platforms in question, for MAUI (which is built on top of our SDKs), go here instead: https://docs.microsoft.com/en-us/dotnet/maui/.

Versions

This release consists of the following versions:

Installation

You can use workload set version 9.0.308.1 in order to install these versions of the SDKs.

Please make sure to be using the latest .NET SDK 9.0.308 before issuing the dotnet workload install command below. You can
validate your installed dotnet version using dotnet --version do make sure it shows 9.0.308 or greater before proceeding.

dotnet workload install <workload id(s)> --version 9.0.308.1

Available workload ids

Example command installing all listed workloads.

dotnet workload install ios tvos macos maccatalyst maui android --version 9.0.308.1

You can use dotnet workload --info to validate the workload versions installed in your system.

What's Changed

Full Changelog: dotnet-9.0.1xx-xcode26.0-9769...dotnet-9.0.1xx-xcode26.0-9777

.NET 10 - Xcode 26.1 support (26.1.10494)

11 Nov 19:44
56ca6c4

Choose a tag to compare

Note

  • Xcode 26.1 is required with this release. Xcode 26.1 requires macOS 15.6+.
  • This workload is included in Visual Studio 2026 (v18.0.1)

These are the base SDKs that add support for the platforms in question, for MAUI (which is built on top of our SDKs), go here instead: https://docs.microsoft.com/en-us/dotnet/maui/.

This release consists of the following versions:

Installation

You can use workload set version 10.0.100.1 in order to install these versions of the SDKs.

Please make sure to be using the latest .NET SDK 10.0.100 before issuing the dotnet workload install command below. You can validate your installed dotnet version using dotnet --version do make sure it shows 10.0.100 before proceeding.

dotnet workload install <workload id(s)> --version 10.0.100.1

Available workload ids

Example command installing all listed workloads.

dotnet workload install ios tvos macos maccatalyst maui android --version 10.0.100.1

You can use dotnet workload --info to validate the workload versions installed in your system.

Full release notes: https://github.com/dotnet/macios/wiki/.NET-10-release-notes

What's Changed

Read more

.NET 9 - Xcode 26.0 support (9769)

11 Nov 19:44
fe53b4b

Choose a tag to compare

Note

  • Xcode 26.0 is required with this release. Xcode 26.0 requires macOS 15.6+.

This is a servicing release to the previous .NET 9 release.

Note: these are the base SDKs that add support for the platforms in question, for MAUI (which is built on top of our SDKs), go here instead: https://docs.microsoft.com/en-us/dotnet/maui/.

Versions

This release consists of the following versions:

Installation

You can use workload set version 9.0.307.1 in order to install these versions of the SDKs.

Please make sure to be using the latest .NET SDK 9.0.307 before issuing the dotnet workload install command below. You can
validate your installed dotnet version using dotnet --version do make sure it shows 9.0.307 or greater before proceeding.

dotnet workload install <workload id(s)> --version 9.0.307.1

Available workload ids

Example command installing all listed workloads.

dotnet workload install ios tvos macos maccatalyst maui android --version 9.0.307.1

You can use dotnet workload --info to validate the workload versions installed in your system.

What's Changed

  • [src] Fix calling ConformsToProtocol on native instances that don't have a managed peer yet. Fixes #24111. by @rolfbjarne in #24191
  • [msbuild] Fix confusion about where the codesign[-bundle].items files are stored. Fixes #24052. by @dalexsoto in #24200

Full Changelog: dotnet-9.0.1xx-xcode26.0-9766...dotnet-9.0.1xx-xcode26.0-9769

.NET 9 - Xcode 26.0 support (9766)

11 Nov 01:27
e5afbf5

Choose a tag to compare

Note

  • Xcode 26.0 is required with this release. Xcode 26.0 requires macOS 15.6+.

This is a servicing release to the previous .NET 9 release.

Note: these are the base SDKs that add support for the platforms in question, for MAUI (which is built on top of our SDKs), go here instead: https://docs.microsoft.com/en-us/dotnet/maui/.

Versions

This release consists of the following versions:

Installation

You can use workload set version 9.0.307 in order to install these versions of the SDKs.

Please make sure to be using the latest .NET SDK 9.0.307 before issuing the dotnet workload install command below. You can
validate your installed dotnet version using dotnet --version do make sure it shows 9.0.307 or greater before proceeding.

dotnet workload install <workload id(s)> --version 9.0.307

Available workload ids

Example command installing all listed workloads.

dotnet workload install ios tvos macos maccatalyst maui android --version 9.0.307

You can use dotnet workload --info to validate the workload versions installed in your system.

What's Changed

Full Changelog: dotnet-9.0.1xx-xcode26.0-9752...dotnet-9.0.1xx-xcode26.0-9766

.NET 10 - Xcode 26.0 support (26.0.11017)

11 Nov 15:46
23eb1c2

Choose a tag to compare

We're excited to announce our .NET 10 SDK release!

Note

These are the base SDKs that add support for the platforms in question, for MAUI (which is built on top of our SDKs), go here instead: https://docs.microsoft.com/en-us/dotnet/maui/.

This release consists of the following versions:

Installation

You can use workload set version 10.0.100 in order to install these versions of the SDKs.

Please make sure to be using the latest .NET SDK 10.0.100 before issuing the dotnet workload install command below. You can validate your installed dotnet version using dotnet --version do make sure it shows 10.0.100 before proceeding.

dotnet workload install <workload id(s)> --version 10.0.100

Available workload ids

Example command installing all listed workloads.

dotnet workload install ios tvos macos maccatalyst maui android --version 10.0.100

You can use dotnet workload --info to validate the workload versions installed in your system.

Full release notes: https://github.com/dotnet/macios/wiki/.NET-10-release-notes

What's Changed

Full Changelog: dotnet-9.0.1xx-xcode26.0-9766...dotnet-10.0.1xx-xcode26.0-11017

.NET 10.0.1xx RC 2 (10970)

15 Oct 06:44
042ba3e

Choose a tag to compare

Pre-release

We're excited to announce our second release candidate for .NET 10!

Note: these are the base SDKs that add support for the platforms in question. For MAUI (which is built on top of our SDKs), visit: https://learn.microsoft.com/dotnet/maui/.

This release consists of the following versions:

Full release notes: .NET 10 release notes
Known issues: Known issues in .NET 10

Installation

You can use workload set version 10.0.100-rc.2.25513.4 in order to install these versions of the SDKs.

Please make sure to be using the corresponding preview of the .NET SDK 10.0.100 before issuing the dotnet workload install
command below. You can validate your installed dotnet version using dotnet --version do make sure it shows 10.0.100 or greater before proceeding.

dotnet workload install <workload id(s)> --version 10.0.100-rc.2.25513.4

Available workload ids

Example command installing all listed workloads.

dotnet workload install ios tvos macos maccatalyst maui android --version 10.0.100-rc.2.25513.4

You can use dotnet workload --info to validate the workload versions installed in your system.

What's Changed

Xcode 26 support

This release includes support for Xcode 26.

What's Changed

Read more

.NET 9 - Xcode 26.0 support (9752)

15 Oct 06:44
177f431

Choose a tag to compare

Note

This is a servicing release to the previous .NET 9 release, mainly adding support for Xcode 26.0.

Note: these are the base SDKs that add support for the platforms in question, for MAUI (which is built on top of our SDKs), go here instead: https://docs.microsoft.com/en-us/dotnet/maui/.

Versions

This release consists of the following versions:

Installation

You can use workload set version 9.0.306 in order to install these versions of the SDKs.

Please make sure to be using the latest .NET SDK 9.0.306 before issuing the dotnet workload install command below. You can
validate your installed dotnet version using dotnet --version do make sure it shows 9.0.306 or greater before proceeding.

dotnet workload install <workload id(s)> --version 9.0.306

Available workload ids

Example command installing all listed workloads.

dotnet workload install ios tvos macos maccatalyst maui android --version 9.0.306

You can use dotnet workload --info to validate the workload versions installed in your system.

Breaking changes

Resource validation

We've added validation to detect if multiple different resources targets the same location in the app bundle, in which case we'll now:

  • Issue a build warning when this situation is detected.
  • Not copy any of the resources into the app bundle (previous behavior was undefined, any of the resources could end up winning).

One scenario where this has known to cause problems is in MAUI projects, when:

  • There are resources in the Platforms/iOS/Resources directory.
  • The project file adds any of these resources to the build, as MauiImage items for instance.

This leads to duplicates, because:

  • All resources in the Platforms/iOS/Resources directory are added to the build by default.
  • MAUI will process (resize) MauiImage items, and add those resized images to the build.

There are multiple ways to fix this, here are a few:

  1. Remove all MauiImage from the BundleResource item group (where they were added by default):

    <ItemGroup>
    	<!-- ... -->
    	<MauiImage Include="Platforms/iOS/Resources/LastMauiImage.png" />
    	<BundleResource Remove="@(MauiImage)" />
    </ItemGroup>
  2. Move the MauiImage items to a different directory (say Platforms/iOS/MauiImages, or Resources/Images).

References:

What's Changed

Read more