Swift Evolution Monthly: June '23

WWDC 23 Aftermath, 0 Proposals Accepted in June, Milestone: #400, 2 new Proposals & 10 Pitches linked, OpenAPI Generator.

Swift Evolution Monthly: June '23
Photo by Anna Dziubinska / Unsplash

WWDC23 was full of hardware announcements and even brought us a new platform: visionOS. Xcode 15 and Swift 5.9 are also in beta phase now with a great set of new features. Of course, for readers of this newsletter, there were no big surprises in the "What's New in Swift" session (except for the large focus on C++ interoperability). But if you didn't have the time to check out the other sessions, including those about Swift Macros which were a focus in the last 3 issues, you might want to visit the WWDC Notes project website which has a dedicated section with notes about this year's sessions. At the time of this writing, 75 sessions from 2023 were already covered by 25+ amazing community members, and still counting. 🎉🙏

If you don't know where to start, I've prepared a thread with a ~250-character-long summary twoot for each of my personal Top 25 sessions. It can both help you learn some tidbits of these sessions with minimal time & explore the ones you might want to dive into further by reading the full notes or watching the session:

🐦 Twitter Thread | 🐘 Mastodon Thread

Accepted Proposals

No new proposals were accepted in June. 😱 I guess that's a consequence of 7 proposals being accepted in May to make it into the language before WWDC.

I'm also skipping the old proposal, no one seems to be using the repo anyway. 🤷‍♂️

But there are two new proposals in Review, so after the packed May issue and a light June issue this time, we might get a decent July issue next month. 🤞

Worth noting that a milestone of 400 proposals has been reached! 💯💯💯💯 🥳

Proposals in Progress


Want to see your ad here? Contact me at ads@fline.dev to get in touch.

Recently Active Pitches/Discussions

Other Developments Worth Mentioning

A really cool open-source surprise at WWDC was the Swift OpenAPI Generator announcement. Apple dedicated a full session to it and I recommend watching it if you happen to have an app with its own server, or if you plan to add a server to your app in the future. The most amazing thing about this new set of libraries is how flexibly you can make use of them:

You were using a networking library in your app or you wrote your own networking client using URLSession? No more: Just generate the client code.

You were using Vapor as a server and had to map your routes and parameters to your business logic manually? No more: Just generate the server code.

You were using complex workflows to ensure your non-Swift server and your Swift client are always in sync? No more: Just write a YAML file like any other code.

OpenAPI (not to mix up with OpenAI) is an industry-standard for HTTP API specs and there's a ton of tooling around the API spec that can help streamline API creation, documentation, testing, and usage – Apple's tools are just the latest to join a big family. At the core of OpenAPI is the spec file – I recommend writing one with a GUI like APIGit so you don't have to remember the syntax – this was the only one I found to support typed params and having a useful Free tier.

There's also a process to influence the future direction of the project in a very similar (but more lightweight) manner to Swift Evolution itself, learn more here.

And that's it for June! It's been a busy month but it was fun. 🍏🥽

💁🏻‍♂️
Enjoyed this article? Check out TranslateKit!
A drag & drop translator for String Catalog files – it's really easy.
Get it now to machine-translate your app to up to 150 languages!
👨🏻‍💻
Want to Connect?Follow me on 👾Twitch, 🎬YouTube, 🐦Twitter, and 🦣Mastodon.