10.11 and later#
The release notes for 10.11 and later are under the Apache License.
Darwin 15 / 10.11 El Capitan#
Initial implementation of Foundation.
This commit also contains:
Import of CF-1253 (“El Capitan”), plus changes required to support this project.
Initial build system.
Basic framework for unit testing using XCTest.
Starting point for documentation, including Getting Started, Known Issues, and major Design guidelines.
There is much more to come. See you on the mailing lists. Foundation Team
Darwin 16 / 10.12 Sierra#
FOSS Subset#
No release notes.
Darwin 17 / 10.13 High Sierra#
FOSS Subset#
No release notes.
Darwin 18 / Mojave#
FOSS Subset#
No release notes.
10.15 Catalina#
FOSS Subset#
This patch brings swift-corelibs-foundation closer to behavior parity with released versions of macOS Catalina and aligned Apple releases. Most of these changes are under-the-hood bug fixes or performance improvements, but a few may affect the behavior of your applications. In particular:
The deprecation of
NSURL.parameterStringis now also effective in Swift for Linux, with similar effects. This brings URL parsing in line with Catalina. Note that Swift for Linux does not support link checks, since there is no binary compatibility guarantee on Linux; this change will be effective to all application code running on Swift for Linux 5.3 or later.Certain
CFXML… types that have been deprecated on macOS are now removed, along with their associated implementation:CFXMLInputStream,CFXMLNode,CFXMLParser. Modern code should be using theFoundationXMLmodule (or, on Darwin, theXMLDocumentand related classes in Foundation) to parse documents.
11 Big Sur#
FOSS Subset#
Big Sur’s CF was never released to swift-corelibs-foundation.
12 Monterey#
FOSS Subset#
This PR brings the FOSS portions of Core Foundation on par with macOS Monterey, iOS 15, watchOS 8 and tvOS 15. This includes the changes shipped during the previous releases.
Most of the changes include bug fixes and performance improvements, but some are useful to highlight:
This patch adds the Core Foundation code that underlies Foundation’s
ListFormatterandRelativeDateTimeFormatterto the FOSS subset.Several Emoji fixes are included that update
CFString(and thusNSStringand the Foundation methods onSwift.String) support for correctly decoding and iterating over emoji introduced during the Big Sur and Monterey timeframes. The corresponding character maps in `CharacterSet`` have been updated.Certain parsing functions, most notably those that implement property list parsing, now have a maximum recursion depth to prevent resource abuse from malicious input.
Some architectural changes have been introduced that are used on Darwin to support Pointer Authentication. For more information on the topic, see Preparing Your App to Work with Pointer Authentication. Note that the FOSS subset does not ship on architectures that require this support, but the architectural changes have been merged for simplicity and synchronization between Darwin and FOSS builds.
Parameter checking has been improved for several CF functions.
Some implementations have been streamlined or consolidated, especially for
CFPlugInandCFBundle.CFBundlealso adds support for “Wrapper”-style bundles (for example, the kind of bundle produced when installing iOS applications on Macs with Apple silicon).