Releases: dotnet/macios
.NET 10.0.1xx Preview 2 (10552)
We're excited to announce our second preview release 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:
- iOS: 18.2.10552-net10-p2
- tvOS: 18.2.10552-net10-p2
- Mac Catalyst: 18.2.10552-net10-p2
- macOS: 15.2.10552-net10-p2
Full release notes: .NET 10 release notes
Known issues: Known issues in .NET 10
Installation
You can use workload set version 10.0.100-preview.2.25167.2
in order to install these versions of the SDKs, please make sure to be using the second 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-preview.2.25167.2
Available workload ids
- ios
- tvos
- macos
- maccatalyst
- android (see https://github.com/dotnet/android)
- maui (see https://github.com/dotnet/maui)
Example command installing all listed workloads.
dotnet workload install ios tvos macos maccatalyst maui android --version 10.0.100-preview.2.25167.2
You can use dotnet workload --info
to validate the workload versions installed in your system.
What's Changed
- [BGen] Remove support for the System.Drawing objects. by @mandel-macaque in #22247
- [BGen] Simplify BindAs for smart enums. by @mandel-macaque in #22222
- [Bgen] Simplify the BindAs generated code. by @mandel-macaque in #22216
- [CoreGraphics] Add missing availability attributes. Fixes #22107. by @rolfbjarne in #22145
- [CoreMedia] Remove !NET code. by @rolfbjarne in #22159
- [CoreVideo/WebKit] Refactor code a bit to unify indentation. by @rolfbjarne in #22179
- [CoreVideo] Remove !NET code. by @rolfbjarne in #22158
- [dotnet-linker] Generate IL offsets for code emitted directly to IL via Cecil by @rolfbjarne in #22149
- [dotnet] Improve listing older tooling workloads we might depend on. by @rolfbjarne in #22233
- [Foundation] Fix casing of NSCache.SetObjectForKey. Fixes #22103. by @rolfbjarne in #22141
- [Foundation] Remove NET conditions from some files. by @rolfbjarne in #22004
- [Intents] Clean up code. by @rolfbjarne in #22152
- [Metal] Remove incorrect deprecation attributes for MTLTextureDescriptor.SampleCount. Fixes #22108. by @rolfbjarne in #22142
- [msbuild] Demote W7091 to a message instead of warning. by @rolfbjarne in #22000
- [msbuild] Fix duplicate resources when bundling original resources. by @rolfbjarne in #21990
- [msbuild] Validate that we don't write outside the target directory when decompressing zip files. by @rolfbjarne in #21948
- [net10.0] [dotnet] Disable aggressive attribute trimming when using NativeAOT. Fixes #22065. by @rolfbjarne in #22151
- [Rgen] Add a central location for the aux variable naming. by @mandel-macaque in #22063
- [Rgen] Add a factory method that will create the aux variable for handles. by @mandel-macaque in #22067
- [RGen] Add a factory method to create the aux variable for a BindFrom (typeof(NSString)). by @mandel-macaque in #22113
- [Rgen] Add a factory method to create the aux variable for a BindFrom(typeof(NSValue)). by @mandel-macaque in #22112
- [Rgen] Add a method that will return a constructor data model from a method signature. by @mandel-macaque in #22100
- [Rgen] Add a new CreateBlock method for several concatenated blocks. by @mandel-macaque in #22115
- [RGen] Add a new flag to determine if a type is a core image filter. by @mandel-macaque in #22110
- [Rgen] Add a new struc that will represent the needed trivia for a symbol. by @mandel-macaque in #22017
- [Rgen] Add a property invocations struct to be used with the syntax factory. by @mandel-macaque in #22191
- [RGen] Add a roslyn based implementation of the GetValueTypeSize. by @mandel-macaque in #22037
- [RGen] Add an implementation of Stret.IsBuiltInType with Roslyn. by @mandel-macaque in #22036
- [Rgen] Add Async attr parsing to the transformer. by @mandel-macaque in #22068
- [RGen] Add attributes to the accessor struct in the generator. by @mandel-macaque in #22055
- [RGen] Add BindFrom factory method that will return the correct declaration. by @mandel-macaque in #22114
- [Rgen] Add code needed to parse the several snippet attrs. by @mandel-macaque in #22058
- [Rgen] Add code to parse the NativeAttribute. by @mandel-macaque in #22050
- [Rgen] Add expression factory to ignore nullable warnings. by @mandel-macaque in #22201
- [RGen] Add extension method to know if a symbol is wrapped. by @mandel-macaque in #22077
- [Rgen] Add factory method for the autorelease pool. by @mandel-macaque in #22131
- [Rgen] Add factory method for the throw null arg exception. by @mandel-macaque in #22134
- [RGen] Add factory method needed to create a aux variable for a BindFrom(typeof(NSNumber)). by @mandel-macaque in #22111
- [Rgen] Add factory method that creates a NSArray aux variable. by @mandel-macaque in #22066
- [Rgen] Add factory method that provide a using statement for a declaration. by @mandel-macaque in #22156
- [Rgen] Add factory method that will create an aux variable for strings. by @mandel-macaque in #22080
- [Rgen] Add factory method to cast a byte result to a bool. by @mandel-macaque in #22202
- [Rgen] Add factory method to generate the return variable. by @mandel-macaque in #22173
- [Rgen] Add factory methods to retrieve strings from a handle. by @mandel-macaque in #22200
- [Rgen] Add factory to generate the method needed to check the UIThread. by @mandel-macaque in #22132
- [Rgen] Add field getters and setters. by @mandel-macaque in #22006
- [Rgen] Add flags to use plain strings during the marshalling. by @mandel-macaque in #22116
- [Rgen] Add logging to the transformer. by @mandel-macaque in #22016
- [Rgen] Add method in the syntax factory to cast a bool to a byte. by @mandel-macaque in #22061
- [Rgen] Add method to get the pointer for the exception handler. by @mandel-macaque in #22135
- [Rgen] Add more information about the type in the TypeInfo struct. by @mandel-macaque in #22005
- [Rgen] Add needed factory methods to cast an enum to its primitive type. by @mandel-macaque in #22062
- [Rgen] Add parsing of the ThreadSafe attr to the transformer. by @mandel-macaque in #22056
- [Rgen] Add properties as part of the parent's list of accessors. by @mandel-macaque in #21984
- [Rgen] Add properties in the Property data model to decide if a field is needed. by @mandel-macaque in #22078
- [Rgen] Add properties to decide if a temp return variable is needed. by @mandel-macaque in #22139
- [Rgen] Add properties to the data model in the transformer. by @mandel-macaque in #22157
- [Rgen] Add property to let us know if a parameter needs the null checks. by @mandel-macaque in #22133
- [Rgen] Add skeleton code for the field properties in a class. by @mandel-macaque in #21993
- [RGen] Add some extra tests for properties. by @mandel-macaque in https://github.com/dotnet/macios/p...
.NET 10.0.1xx Preview 1 (10322)
We're excited to announce our first preview release 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:
- iOS: 18.2.10322-net10-p1
- tvOS: 18.2.10322-net10-p1
- Mac Catalyst: 18.2.10322-net10-p1
- macOS: 15.2.10322-net10-p1
Full release notes: .NET 10 release notes
Known issues: Known issues in .NET 10
Installation
You can use workload set version 10.0.100-preview.1.25124.2
in order to install these versions of the SDKs, please make sure to be using the first 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-preview.1.25124.2
Available workload ids
- ios
- tvos
- macos
- maccatalyst
- android (see https://github.com/dotnet/android)
- maui (see https://github.com/dotnet/maui)
Example command installing all listed workloads.
dotnet workload install ios tvos macos maccatalyst maui android --version 10.0.100-preview.1.25124.2
You can use dotnet workload --info
to validate the workload versions installed in your system.
What's Changed
Trimmer warnings enabled by default
In the past we've suppressed trimmer warnings, because the base class library produced trimmer warnings, which meant that it wouldn't be possible for developers to fix all the trimmer warnings.
However, in .NET 9 we believe we fixed all the trimmer warnings from our own code, so now we're ready to for developers to do the same, and thus we're enabling trimmer warnings by default.
This can be disabled, by adding this to the project file:
<PropertyGroup>
<SuppressTrimAnalysisWarnings>true</SuppressTrimAnalysisWarnings>
</PropertyGroup>
Ref: #21293
Bundling original resources in libraries
Library projects can have various types of bundle resources (storyboards, xibs, property lists, png images, CoreML models, texture atlases, etc.), and they're bundled into the compiled library as embedded resources.
If any processing can be done (such as compiling storyboards or xibs, or optimizing property lists/png images, etc), this has historically been done before embedding, but this complicates library builds a lot, because this processing:
- Needs to run on a Mac, because compiling xibs/storyboards can only be done on a Mac.
- Needs Apple's toolchain around.
- Makes it impossible to do any decision-making based on the original resources when building the app.
So we've added opt-in support for embedding the original resource in libraries in .NET 9, and making it opt-out in .NET 10.
The default behavior can be changed in the project file like this:
<PropertyGroup>
<BundleOriginalResources>false</BundleOriginalResources>
</PropertyGroup>
Ref: #19028
API improvements / fixes / additions
- [AVFoundation] Add missing APIs up to Xcode 16.2. by @rolfbjarne in #21878
- [AVKit] Add missing APIs and fix all xtro issues. by @rolfbjarne in #21836
- [bgen] Accumulate BI1118 errors instead of bailing out on the first one. by @rolfbjarne in #21973
- [bgen] Propagate more xml docs. by @rolfbjarne in #21972
- [CoreHaptics] Add to macOS. by @rolfbjarne in #21963
- [CoreMedia] Add some of the new APIs in recent Xcode versions. by @rolfbjarne in #21830
- [CoreMedia] Make OSStatus = System.Int32 a global using directive. by @rolfbjarne in #21824
- [docs] Fix a few issues with the api docs. by @rolfbjarne in #21932
- [dotnet] Add templates for Notification Content extensions and Notification Service extensions. by @rolfbjarne in #21886
- [dotnet] Create and ship a WorkloadDependencies.json file. Fixes #21768. by @rolfbjarne in #21779
- [dotnet] Disable dedup optimization if we're interpreting every assembly. by @rolfbjarne in #21661
- [dotnet] Stop suppressing trim analysis warnings. Fixes #21293. by @rolfbjarne in #21351
- [Foundation] Document and slightly simplify the NSObject.Dangerous[Retain|Release|Autorelease] methods. by @rolfbjarne in #21844
- [Foundation] Fix/improve a few more NSAttributedString constructors. by @rolfbjarne in #21803
- [introspection] Ignore a few protocol conformances for ScreenCaptureKit types. by @rolfbjarne in #21829
- [MLCompute] Fix all xtro todo's for this framework. by @rolfbjarne in #21968
- [msbuild/dotnet/src] Misc exception marshalling improvements. by @rolfbjarne in #21892
- [msbuild] Add support for bundling original resources in libraries. Fixes #19028. by @rolfbjarne in #20822
- [msbuild] Capture any logging from Xamarin.MacDev in DetectSdkLocation. by @rolfbjarne in #21869
- [msbuild] Don't use 'TRACE' to enable verbose tracing. by @rolfbjarne in #21909
- [msbuild] Show an error if an app tries to link with a static library when building for Hot Restart. by @rolfbjarne in #21877
- [msbuild] Validate entitlements in CompileEntitlements. by @rolfbjarne in #21771
- [net10.0] [dotnet] Rework aggressive attribute trimming. Fixes #20906. by @rolfbjarne in #21314
- [net10.0] [tests] Updated list of expected native libraries for .NET 10. by @rolfbjarne in #21404
- [net10.0] [UIKit] Fix a GC race in UIBarButtonItem. by @rolfbjarne in #21572
- [net10.0] Trim by default (SdkOnly) when building for arm64. Fixes #21444. by @rolfbjarne in #21461
- [ObjCRuntime] Ensure all assemblies' module constructors have executed before failing registrar lookup. by @rolfbjarne in #21885
- [registrar] Fix registration of stub Objective-C classes. Fixes #21546. by @rolfbjarne in #21593
- [ReplayKit] Fix all xtro todo's for this framework. by @rolfbjarne in #21962
- [src] Fix duplicate availability attributes. by @rolfbjarne in #21819
- [src] Fix xml doc comments to actually be xml. by @rolfbjarne in #21930
- [src] Ignore CS1573 in certain cases. by @rolfbjarne in #21941
- [tools] Enable the register-protocols optimization when the interpreter is enabled. Fixes #21782. by @rolfbjarne in #21786
- [tools] Update the resource removal step to take into account '_monotouch_item' resources. by @rolfbjarne in #21939
- [UIKit] Fix inexact stream read in UIImage. by @rolfbjarne in #21916
- [UIKit] Fix some nullability issues. Fixes #21957. by @rolfbjarne in #21961
- [UIKit] Make UIApplication implement UIAccessibility. Fixes #21925. by @rolfbjarne in #21943
Full Changelog: dotnet-9.0.1xx-xcode16.2-9173...dotnet-10.0.1xx-preview1-10320
.NET 9 - Xcode 16.2 support (9180)
🚨 Xcode 16.2 is required with this release. Xcode 16.2 requires macOS 14.5+ or 15.0+.
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:
What's Changed
- [release/9.0.1xx] Update HotRestart.Client to 17.14.51-gd03e25086a by @rolfbjarne in #21994
- [release/9.0.1xx] Update Hot Restart Client to 17.14.83-g77e8f56103 by @mauroa in #22034
- [release/9.0.1xx] [CI] Use macOS Sequoia for building and testing by @dalexsoto in #22072
- [release/9.0.1xx] Update Hot Restart Client to 17.14.133-g001ce2ac7a by @mauroa in #22129
Full Changelog: dotnet-9.0.1xx-xcode16.2-9173...dotnet-9.0.1xx-xcode16.2-9180
.NET 9 - Xcode 16.2 support (9173)
🚨 Xcode 16.2 is required with this release. Xcode 16.2 requires macOS 14.5+ or 15.0+.
This is a servicing release to the previous .NET 9 release, with support for Xcode 16.2.
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.102.1
in order to install these versions of the SDKs, please make sure to be using the latest .NET SDK 9.0.102 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.102
or greater before proceeding.
dotnet workload install <workload id(s)> --version 9.0.102.1
Available workload ids
- ios
- tvos
- macos
- maccatalyst
- android (see https://github.com/dotnet/android)
- maui (see https://github.com/dotnet/maui)
Example command installing all listed workloads.
dotnet workload install ios tvos macos maccatalyst maui android --version 9.0.102.1
You can use dotnet workload --info
to validate the workload versions installed in your system.
What's Changed
- [release/9.0.1xx] [dotnet] Create and ship a WorkloadDependencies.json file. Fixes #21768. by @rolfbjarne in #21840
- [release/9.0.1xx] [xma] Updated Xamarin.Messaging to 3.0.13 by @vs-mobiletools-engineering-service2 in #21839
- [release/9.0.1xx] [ObjCRuntime] Ensure all assemblies' module constructors have executed before failing registrar lookup. by @vs-mobiletools-engineering-service2 in #21891
Full Changelog: dotnet-9.0.1xx-xcode16.2-9170...dotnet-9.0.1xx-xcode16.2-9173
.NET 9 - Xcode 16.2 support (9170)
🚨 Xcode 16.2 is required with this release. Xcode 16.2 requires macOS 14.5+ or 15.0+.
This is a servicing release to the previous .NET 9 release, with support for Xcode 16.2.
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.101.2
in order to install these versions of the SDKs, please make sure to be using the latest .NET SDK 9.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 9.0.101
or greater before proceeding.
dotnet workload install <workload id(s)> --version 9.0.101.2
Available workload ids
- ios
- tvos
- macos
- maccatalyst
- android (see https://github.com/dotnet/android)
- maui (see https://github.com/dotnet/maui)
Example command installing all listed workloads.
dotnet workload install ios tvos macos maccatalyst maui android --version 9.0.101.2
You can use dotnet workload --info
to validate the workload versions installed in your system.
What's changed
Marshaled managed exceptions will be treated as unhandled exceptions by debuggers
Generally managed exceptions shouldn't "leak" into native code - they will be converted into Objective-C exceptions, but Objective-C exceptions have many issues and this can cause runtime problems.
Additionally, some native code will just swallow all Objective-C exceptions, essentially making any managed exceptions that triggered those Objective-C exceptions entirely silent (AppKit does this in its UI loop - see dotnet/maui#7176).
With this change, debuggers will be notified just before a managed exception is converted into an Objective-C exception, and will treat it as an unhandled managed exception, which will be a great improvement. One current downside is that the debugger isn't notified when the exception is thrown, but at a later point, which means the current frame when the debugger is stopped isn't entirely helpful. Work is in progress to improve this as well, and hopefully at some point we'll be able to stop the debugger when such managed exceptions are thrown.
References:
What's Changed
- [Accessibility] Implement Xcode 16.2 beta 1-3 changes. by @rolfbjarne in #21686
- [AccessorySetupKit] Implement Xcode 16.2 beta 1-3 changes. by @rolfbjarne in #21692
- [AppKit/UIKit] Implement Xcode 16.2 beta 1-3 changes. by @rolfbjarne in #21735
- [AppKit] Fix nullability for numerous NSView members. Fixes #21598. by @rolfbjarne in #21619
- [AudioToolbox] Implement Xcode 16.2 beta 1-3 changes in AudioToolbox. by @rolfbjarne in #21691
- [AuthenticationServices] Implement Xcode 16.2 beta 1-3 changes. by @rolfbjarne in #21707
- [AVFoundation] Implement Xcode 16.2 beta 1-3 changes in AVFAudio. by @rolfbjarne in #21687
- [AVFoundation] Implement Xcode 16.2 beta 1-3 changes. by @rolfbjarne in #21709
- [AVFoundation] Improve AVPlayerItemVideoOutput.CopyPixelBuffer. Fixes #21702. by @rolfbjarne in #21710
- [bgen] Add support for [return: Release] for types subclassing NativeObject or implementing INativeObject. by @rolfbjarne in #21752
- [BrowserEngineKit] Implement Xcode 16.2 beta 1-3 changes. by @rolfbjarne in #21719
- [CoreLocation] Fix misspelled field. Fixes #21641. by @rolfbjarne in #21652
- [CoreVideo] Add CVMetalBufferCache.TryCreate overloads and use these to improve tests. by @rolfbjarne in #21757
- [docs] Add docs about our build items and properties. by @rolfbjarne in #21578
- [Foundation] Fix memory leak in NSArray.ArrayFromHandle by @rolfbjarne in #21749
- [Foundation] Implement Xcode 16.2 beta 1-3 changes. by @rolfbjarne in #21711
- [Foundation] Improve the NSAttributedString constructors. Fixes #14489. by @rolfbjarne in #21727
- [HealthKit] Implement Xcode 16.2 beta 1-3 changes. by @rolfbjarne in #21712
- [HomeKit] Implement Xcode 16.2 beta 1-3 changes. by @rolfbjarne in #21715
- [JavaScriptCore] Implement missing Xcode 16.0 changes. by @rolfbjarne in #21716
- [managed static registrar] Don't try to create instances of abstract types. by @rolfbjarne in #21665
- [MapKit] Manually make MKUserLocation implement the MKAnnotation protocol. Fixes #21759. by @rolfbjarne in #21760
- [Metal] Implement Xcode 16.2 beta 1-3 changes. by @rolfbjarne in #21718
- [MetalPerformanceShadersGraph] Implement Xcode 16.2 beta 1-3 changes. by @rolfbjarne in #21731
- [msbuild] Bump to Microsoft.Build 16.10.0. by @rolfbjarne in #21813
- [msbuild] Capture any logging from Xamarin.MacDev in DetectSigningIdentity. by @rolfbjarne in #21770
- [msbuild] Enable and fix nullability in the TextureAtlas task. by @rolfbjarne in #21689
- [msbuild] Fix duplicate error code by renumber one of them. by @rolfbjarne in #21755
- [msbuild] Fix some issues with various types of resources when building from Windows. by @rolfbjarne in #21586
- [msbuild] Log a bit more info about process execution. by @rolfbjarne in #21595
- [msbuild] Move some Windows-related files back to an iOS-specific directory. by @rolfbjarne in #21781
- [msbuild] Port the ALToolUpload and ALToolValidate tasks to subclass XamarinTask. by @rolfbjarne in #21617
- [msbuild] Port the BTouch task to subclass XamarinTask. by @rolfbjarne in #21616
- [msbuild] Port the CreateAssetPack task to subclass XamarinTask. by @rolfbjarne in #21713
- [msbuild] Port the CreateInstallerPackage task to subclass XamarinTask. by @rolfbjarne in #21614
- [msbuild] Port the OptimizeImage task to subclass XamarinTask. by @rolfbjarne in #21618
- [msbuild] Port the OptimizePropertyLists task to subclass XamarinTask. by @rolfbjarne in #21615
- [msbuild] Port the SpotlightIndexer task to subclass XamarinTask. by @rolfbjarne in #21613
- [msbuild] Port the Zip task to subclass XamarinTask. by @rolfbjarne in #21612
- [msbuild] Remove a lot of legacy logic + a few improvements. by @rolfbjarne in #21742
- [msbuild] Remove the ArTool task. by @rolfbjarne in #21609
- [msbuild] Remove the MTouch and Mmp tasks. by @rolfbjarne in #21608
- [msbuild] Remove the XamarinToolTask class, it's no longer used. by @rolfbjarne in #21787
- [msbuild] Use earlier version of MSBuild assemblies. Fixes #21671. by @rolfbjarne in #21679
- [PassKit] Implement Xcode 16.2 beta 1-3 changes. by @rolfbjarne in #21720
- [PassKit] Improve and simplify the manually bound constructors for PKShareablePassMetadata. by @rolfbjarne in #21677
- [PdfKit] Implement Xcode 16.2 beta 1-3 changes. by @rolfbjarne in #21739
- [RGen] Add code needed to detect changes in interface. by @mandel-macaque in #21704
- [Rgen] add transformer by @haritha-mohan in #21669
- [RGen] Follow the BCL docs recomendation and inherit from the abstr...
.NET 8.0.1xxx - Xcode 16.0 Support (8319)
🚨 Xcode 16.0 is required with this release. Xcode 16 requires macOS 14.5+ or 15.0+.
This is a servicing release to the previous .NET 8 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:
What's Changed
Full Changelog: dotnet-8.0.1xx-xcode16.0-8316...dotnet-8.0.1xx-xcode16.0-8319
.NET 9 - Xcode 16.1 support (9163)
🚨 Xcode 16.1 is required with this release. Xcode 16.1 requires macOS 14.5+ or 15.0+.
This is a servicing release to the previous .NET 9 release, with support for Xcode 16.1.
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.101.1
in order to install these versions of the SDKs, please make sure to be using the latest .NET SDK 9.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 9.0.101
or greater before proceeding.
dotnet workload install <workload id(s)> --version 9.0.101.1
Available workload ids
- ios
- tvos
- macos
- maccatalyst
- android (see https://github.com/dotnet/android)
- maui (see https://github.com/dotnet/maui)
Example command installing all listed workloads.
dotnet workload install ios tvos macos maccatalyst maui android --version 9.0.101.1
You can use dotnet workload --info
to validate the workload versions installed in your system.
What's Changed
- [AppKit/MediaExtension/introspection] Fix issues found with introspection on Sequoia. by @rolfbjarne in #21587
- [AppKit] Implement NSToolbarItemVisibilityPriority. Fixes #21298. by @rolfbjarne in #21304
- [bgen] Improve performance a little bit when calling functions that return retained objects. by @rolfbjarne in #21297
- [CryptoTokenKit] Fix detecting .NET 10. by @rolfbjarne in #21400
- [msbuild/dotnet] Add support for compressed xcframeworks in binding projects and as NativeReference items. Fixes #21294. by @rolfbjarne in #21492
- [msbuild] Add support for alternate app icons. by @rolfbjarne in #21475
- [msbuild] Add support for the 'overwrite' metadata for PartialAppManifest items. by @rolfbjarne in #21508
- [msbuild] Don't try to create an output file on Windows using a full path. by @rolfbjarne in #21486
- [msbuild] Don't try to look for library resources to unpack from BCL assemblies. Fixes #19511. by @rolfbjarne in #21305
- [msbuild] Embed any Entitlements.plist + compiled entitlements into binlogs. by @rolfbjarne in #21402
- [msbuild] Fix an incremental build issue with resources in universal apps. by @rolfbjarne in #21516
- [msbuild] Improve the error message when the SupportedOSPlatformVersion is lower than the minimum. Fixes #21368. by @rolfbjarne in #21369
- [msbuild] Make it possible to override the path to the 'strip' tool. by @rolfbjarne in #21581
- [msbuild] Make sure the build doesn't keep going if the ILLink task fails. by @rolfbjarne in #21393
- [msbuild] Make the Unzip task cancellable. by @rolfbjarne in #21456
- [msbuild] Port Ditto to subclass XamarinTask. by @rolfbjarne in #21453
- [msbuild] Port Metal and MetalLib to subclass XamarinTask. Fixes #21437. by @rolfbjarne in #21439
- [msbuild] Resolve the full path to the compiled entitlements in the CompileEntitlements task. by @rolfbjarne in #21372
- [msbuild] Unify escaping algorithm for mangled resources, and remove code duplication. by @rolfbjarne in #21488
- [PassKit] Finish implementation of PKPayLaterValidateAmount. Fixes #19271. by @rolfbjarne in #21339
- [static registrar] Make sure to save any changes made by the managed static registrar. Fixes #21606. by @vs-mobiletools-engineering-service2 in #21638
- [StoreKit] Bind AppStore.requestReview. Fixes #21410. by @rolfbjarne in #21441
- [tools] Ignore any interpreter settings when the current runtime isn't MonoVM. Fixes #20398. by @rolfbjarne in #21406
- [UIKit] Fix a few UITraitCollection bindings. Fixes #21377. by @rolfbjarne in #21380
- [UIKit] Improve code for UISegmentedControl. Fixes #21289. by @rolfbjarne in #21299
- [Vision] Bind VNVisionVersionNumber. Fixes #21342. by @rolfbjarne in #21350
- Update HealthKit all the way to Xcode 16.1 RC by @dalexsoto in #21510
- Update Intents all the way to Xcode 16.1 RC by @dalexsoto in #21515
- Update NetworkExtension all the way to Xcode 16.1 RC by @dalexsoto in #21518
- Update PencilKit all the way to Xcode 16.1 RC by @dalexsoto in #21519
- Update TVServices all the way to Xcode 16.1 RC by @dalexsoto in #21520
- Update UIKit all the way to Xcode 16.1 RC by @dalexsoto in #21522
Full Changelog: dotnet-9.0.1xx-xcode16.0-9617...dotnet-9.0.1xx-xcode16.1-9163
.NET 8.0.1xxx - Xcode 16.0 Support (8316)
🚨 Xcode 16.0 is required with this release. Xcode 16 requires macOS 14.5+ or 15.0+.
This is a servicing release to the previous .NET 8 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:
What's Changed
Full Changelog: dotnet-8.0.1xx-xcode16.0-8314...dotnet-8.0.1xx-xcode16.0-8316
.NET 9
We're excited to announce our .NET 9 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 9.0.100
in order to install these versions of the SDKs, please make sure to be using the latest .NET SDK 9.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 9.0.100
before proceeding.
dotnet workload install <workload id(s)> --version 9.0.100
Available workload ids
- ios
- tvos
- macos
- maccatalyst
- android (see https://github.com/dotnet/android)
- maui (see https://github.com/dotnet/maui)
Example command installing all listed workloads.
dotnet workload install ios tvos macos maccatalyst maui android --version 9.0.100
You can use dotnet workload --info
to validate the workload versions installed in your system.
Full release notes: https://github.com/xamarin/xamarin-macios/wiki/.NET-9-release-notes
.NET 8.0.1xxx - Xcode 16.0 Support (8314)
🚨 Xcode 16.0 is required with this release. Xcode 16 requires macOS 14.5+ or 15.0+.
This is a servicing release to the previous .NET 8 release, with support for Xcode 16 and macOS 15.0 (Sequoia).
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:
What's Changed
- [dotnet] Don't link with BrowserEngineKit. Fixes #21324. by @vs-mobiletools-engineering-service2 in #21359
- [msbuild] Fix:
Assembly.GetManifestResourceNames()
may return an empty string by @vs-mobiletools-engineering-service2 in #21507
Full Changelog: dotnet-8.0.1xx-xcode16.0-8303...dotnet-8.0.1xx-xcode16.0-8314