Hello everyone,
we'd like to share the latest SSWG package maturity review update.
The projects currently endorsed by the server work group can be found here: Swift.org - Swift Server Work Group (SSWG) and we'll be updating their status (according to the changes outlined in this post) shortly.
Keep in mind that the SSWG endorsement's purpose is not to pick the "best" library, but only ensure that long-term health and quality of these projects is kept to a high standard.
You can learn more about what each status in the Incubation Process means over here: swift-server/sswg - sswg/incubation.md
This year we also introduced a "conditional level-up" given that the review is a periodic (currently every 6 months) process, and we had a few packages which were just on the edge of moving up a level and we'd rather collaborate with their maintainers to polish them up rather than have them miss a cycle.
Projects not mentioned in the list below, remain in their current status .
The group discussed all projects in depth, however to keep this list short and focused, we only mention projects which changed their status, or deserve more discussion on why they remain in the current status (e.g. why they didn't graduate yet).
APNSwift
- the only concern why it wasn't graduated was the rule about "coming soon breaking changes" with the project looming in beta for a long time. We discussed with the project maintainers and realized that there's nothing holding up the 5.0 release!
- Other maturity requirements are met: the project is alive, healthy, and used in plenty projects!
- Moving to from
Incubating
toGraduated
postgres-nio
- Moving from
Incubating
toGraduated
- Meeting all criteria except version support but @Joannis_Orlandos/@graskind will add it
RediStack
- Meets all criteria for
Incubating
but underwent a recent maintainer change so we are deferring this graduation to the next review
swift-statsd-client
- Moving to
Graduated
since it meets all criteria
SwiftPrometheus
- The project's original maintainer @MrLotU has stepped down from the project and @ktoso and @fabianfett have taken over maintenance.
- The project will undergo a revamp to meet performance needs of some adopters, and has moved to the
swift-server
organization for easier co-maintaining by the community. - Stays at its current
Sandbox
level since recent maintainer change, and it still keeps the minimum requirements for this level.
If you are using prometheus and would like to help maintaining it, please reach out to the SSWG via this thread or DMs on forums!
SwiftCrypto
- Moving to
Graduated
since it meets all criteria and is a fundamental building block of the ecosystem
OpenAPIKit
- Stays at the current
Sandbox
level due to only a single maintainer - Update description to something different than OpenAPI client @FranzBusch
AWS Lambda Runtime
- Not at 1.0.0 right now and @tachyonics might have some API changes in mind.
- Stays at current level but can move to
Incubating
when a stable 1.0.0 is announced as it meets other criteria for this level
Backtrace
- No incubating level changes.
- This project will naturally be phased out since Swift 5.9 includes built-in backtrace support superior to this library which was serving as a workaround until backtraces arrived in Swift.
- The project remains valuable for Swift versions lower than 5.9 but should not be adopted when using newer Swift versions
ServiceLifecycle
- Stays the same level while the new 2.0.0 version is getting polished up
multipart-kit
- Move to
Graduated
, it is part of Vapor and widely used and maintained.
Swift Distributed Actors
- Stays at the current level because production use-cases are not large enough
- @ktoso to follow up with the naming
- we likely are going to be renaming this package to avoid ongoing confusion about the purpose of this library.
- This really is the "swift distributed-cluster" library and the module is already called
DistributedCluster
, so we will be considering a rename soon.
swift-cassandra-client
- Stays at the current level since it only started incubating this year.