mirror of
https://github.com/apple/swift.git
synced 2025-12-14 20:36:38 +01:00
If you use SwiftStdlibCurrentOS availability, you will be able to use new types and functions from within the implementation. This works by, when appropriate, building with the CurrentOS availability set to the current deployment target. rdar://150944675
64 lines
3.0 KiB
Modula-2
64 lines
3.0 KiB
Modula-2
# This file defines availability macros mapping Swift releases to ABI stable
|
|
# OS releases that include the corresponding Swift Standard Library version.
|
|
#
|
|
# The macros defined here are available for use in all Swift libraries and swift
|
|
# lit tests defined in this repository. They can be used in place of a full
|
|
# version constraint list in `@available` attributes. That is to say, instead of
|
|
#
|
|
# @available(macOS 10.15.4, iOS 13.4, watchOS 6.2, tvOS 13.4, *)
|
|
#
|
|
# we can write
|
|
#
|
|
# @available(SwiftStdlib 5.2, *)
|
|
#
|
|
# Comments in this file start with `#`. Comments and empty lines are ignored.
|
|
# Each of the remaining lines must define an availability macro in the same
|
|
# format used by the `-define-availability` frontend command line option.
|
|
|
|
# NOTE: The build system will define another macro, SwiftStdlibCurrentOS,
|
|
# for each SwiftStdlib macro defined in this file. The difference
|
|
# between the two is the the CurrentOS macro will never be set to a
|
|
# higher version than the machine on which we are building.
|
|
#
|
|
# This is to allow for use of new functions and types within the
|
|
# standard libraries, in such a way that these usages will work on
|
|
# our CI machines.
|
|
|
|
# 9999 is the generic unknown future Swift release. It always needs to resolve
|
|
# to the special placeholder version numbers 9999.
|
|
|
|
SwiftStdlib 9999:macOS 9999, iOS 9999, watchOS 9999, tvOS 9999
|
|
|
|
# The last entry in this list corresponds to the Swift version currently under
|
|
# development. This usually resolves to placeholder version numbers (9999) until
|
|
# the corresponding operating systems get announced.
|
|
|
|
SwiftStdlib 5.0:macOS 10.14.4, iOS 12.2, watchOS 5.2, tvOS 12.2
|
|
SwiftStdlib 5.1:macOS 10.15, iOS 13.0, watchOS 6.0, tvOS 13.0
|
|
SwiftStdlib 5.2:macOS 10.15.4, iOS 13.4, watchOS 6.2, tvOS 13.4
|
|
SwiftStdlib 5.3:macOS 11.0, iOS 14.0, watchOS 7.0, tvOS 14.0
|
|
SwiftStdlib 5.4:macOS 11.3, iOS 14.5, watchOS 7.4, tvOS 14.5
|
|
SwiftStdlib 5.5:macOS 12.0, iOS 15.0, watchOS 8.0, tvOS 15.0
|
|
SwiftStdlib 5.6:macOS 12.3, iOS 15.4, watchOS 8.5, tvOS 15.4
|
|
SwiftStdlib 5.7:macOS 13.0, iOS 16.0, watchOS 9.0, tvOS 16.0
|
|
SwiftStdlib 5.8:macOS 13.3, iOS 16.4, watchOS 9.4, tvOS 16.4
|
|
SwiftStdlib 5.9:macOS 14.0, iOS 17.0, watchOS 10.0, tvOS 17.0
|
|
SwiftStdlib 5.10:macOS 14.4, iOS 17.4, watchOS 10.4, tvOS 17.4, visionOS 1.1
|
|
SwiftStdlib 6.0:macOS 15.0, iOS 18.0, watchOS 11.0, tvOS 18.0, visionOS 2.0
|
|
SwiftStdlib 6.1:macOS 15.4, iOS 18.4, watchOS 11.4, tvOS 18.4, visionOS 2.4
|
|
SwiftStdlib 6.2:macOS 9999, iOS 9999, watchOS 9999, tvOS 9999, visionOS 9999
|
|
|
|
# Like SwiftStdlib 5.0, but also the oldest visionOS from SwiftStdlib 5.10.
|
|
SwiftCompatibilitySpan 5.0:macOS 10.14.4, iOS 12.2, watchOS 5.2, tvOS 12.2, visionOS 1.1
|
|
|
|
# Note: This cannot be 9999, so use the last non-placeholder entry instead.
|
|
# This will go away once 'SwiftStdlib 6.2' is filled in.
|
|
SwiftCompatibilitySpan 6.2:macOS 15.0, iOS 18.0, watchOS 11.0, tvOS 18.0, visionOS 2.0
|
|
|
|
# TODO: When you add a new version, remember to tell the compiler about it
|
|
# by also adding it to include/swift/AST/RuntimeVersions.def.
|
|
|
|
# Local Variables:
|
|
# mode: conf-unix
|
|
# End:
|