[Breaking change]: GetOSVersion
on MacCatalyst now normalizes the build component to 0
if undefined (-1
)
#43156
Labels
breaking-change
Indicates a .NET Core breaking change
doc-idea
Indicates issues that are suggestions for new topics [org][type][category]
Pri1
High priority, do before Pri2 and Pri3
⌚ Not Triaged
Not triaged
Milestone
Description
This update ensures that MacCatalyst version components retrieved from the OS are always normalized to three components: major, minor, and build. The build component is set to
0
if undefined (-1
), ensuring consistent behavior between iOS and MacCatalyst versions for version checks.dotnet/runtime#108694
Version
.NET 10 Preview 1
Previous behavior
The build component in
Version
was not previously normalized, which led to incorrect version checks on MacCatalyst when only two components (major and minor) were provided. This resulted in invalid version checks.New behavior
The MacCatalyst build component is now normalized to
0
, ensuring consistent version checks. The revision component is always set to-1
, as it is not specified on MacCatalyst or iOS.Type of breaking change
Reason for change
Prevent incorrect version checks and align MacCatalyst versioning with iOS, ensuring consistent version components.
Recommended action
Use versions of up to three components (major, minor, and build) on MacCatalyst.
Feature area
Core .NET libraries
Affected APIs
The text was updated successfully, but these errors were encountered: