As we’re getting closer to the release of Swift 5.9 we have started putting together the announcement blog post. I’m excited to let you know that this time around we’re also exploring ways of involving the community in this announcement.
This is an opportunity for you, the Swift community, to showcase how you're utilizing the new features and improvements that will ship with Swift 5.9.
We would prefer your contributions to focus on one or a few specific changes, i.e. a deep dive into your favorite new feature or improvement, rather than a high-level overview of everything that's new.
So please provide links below to your blog posts, videos, open-source projects, and other resources that you think do a good job of showcasing something you're excited about in Swift 5.9, and we will consider including them in the blog post.
Please note that we will incorporate community resources into the blog post at the end of the week. However, we encourage you to continue sharing beyond that deadline as this thread will also serve as a nice collection of community resources about the Swift 5.9 release.
One thing that should definitely be called out in the blog post is the addition for proper backtrace support in Swift programs in 5.9. This provides a stack trace in the event of exceptions or fatal errors, with proper support across x86 and ARM platforms
Introducing Swift Power Assert. It extensively uses Swift 5.9 macros to provide plenty of information when a unit test fails. There is no need to use many different XCTAssert* functions.
One thing that should definitely be called out in the blog post is the addition for proper backtrace support in Swift programs in 5.9. This provides a stack trace in the event of exceptions or fatal errors, with proper support across x86 and ARM platforms
Yep. I'm already talking to folks about adding some information about that.
I hope I'm not too late to the party! I'd be thrilled if you'd consider featuring my side-project in the upcoming Swift 5.9 announcement blog post.
I've developed a tool that leverages Swift Macros to greatly simplify and automate the generation of spies for testing purposes. By simply applying the @Spyable annotation to a protocol, the macro generates a corresponding spy class. This spy class not only adheres to the same interface as the original protocol, but also maintains a history of interactions with its methods and properties.
I believe this tool could be a game-changer for developers aiming to create more maintainable and testable Swift code. I'm aware that there's still a lot of work to be done to make it production-ready, so I would be grateful if it were mentioned in the blog post. This could help new engineers learn about the project and be inspired to contribute. Thank you for considering my contribution, and I'm looking forward to seeing all the other community-driven innovations!
We'd love to share Macro Testing, a library for testing Swift macros in an ergonomic and exhaustive way. We provide tools on top of SwiftSyntax that automatically inline macro expansions and diagnostics directly into your test source code:
The blog post has just been published and we have included your contributions. Thanks for sharing these with us! It's very exciting to see what you've been working on.