Swift-Foundation 2024 Annual Update

Hi everyone,

I'd like to share the first-ever yearly update from Swift-Foundation workgroup.

Let's review what we've accomplished in the last year and look to what's next.

Year in review

This was a big year for the open source Swift-Foundation package!

As we announced earlier, Swift-Foundation is now included with the language as of Swift 6.0. This makes it easier for Swift users on Linux and Windows to use Foundation, and ensures all users have the same fast, Swift-native implementation of Foundation across all platforms.

We've also been working on making it easier to participate in the development of Swift-Foundation. It is now possible to build swift-foundation and swift-corelibs-foundation without building the entire Swift toolchain, thanks to SwiftPM support. This lowers the barrier of entry for anyone interested in contributing to Foundation.

We've also pitched 11 Foundation API changes on the Swift forum this year through our Evolution process. Community feedback greatly benefits the development process and helps to improve the quality of the final API design.

Looking forward

We have three initiatives for the coming year, centered around Swift adoption, framework performance, and community involvement:

More Swift initiative

We will continue the trend of moving Foundation's implementation away from C-based languages and toward Swift. As part of this move, we'll be focusing Swift-Foundation on offering the core functionalities of Foundation.framework.

Performance initiative

Foundation is found in the callstacks of many, many modern software packages, making its performance extra critical. We will be developing additional benchmarks for Foundation, with a focus on real-world use cases to ensure performance continues to improve over time.

We'll also be taking advantage of new language features like deterministic lifetimes and Swift macros that will help to make Foundation more performant while remaining expressive.

Papercuts initiative

Finally, we want to encourage more community participation in Swift-Foundation through a focus on removing as many "papercuts" as possible.

Papercuts are small annoyances that detract from the overall experience and deter contributors, especially newcomers to Swift. With a significant portion of Foundation now implemented in Swift, shared across platforms and available as open source, we see a clear opportunity for the community to contribute.

Participation can take various forms, including contributing to the codebase and proposing API. As part of the papercuts initiative, we'd like to simplify our API review process. To that end, the workgroup has appointed an API champion who has the authority to accept minor API proposals after a shorter review process. We expect this streamlined approach to make it easier to introduce small but significant features into the project. Please see our GitHub page for details on the new process.

It is an exciting time for the Swift-Foundation project, with so many changes occurring in just the last year. We’re looking forward to seeing how it continues to evolve with your participation.

64 Likes