Server-side goals for the Swift language this year include promoting the adoption of structured concurrency while also emphasizing better tools, according to an August 17 bulletin from the Swift Server Workgroup (SSWG).
SSWG believes structured concurrency is a key feature that will make Swift stand out on the server. Plans include producing an adoption guide for structured concurrency that covers best practices around the Sendable
, async/await
, TaskGroup
, and Task
APIs, and applying concurrency best practices to core ecosystems such as swift-service-lifecycle.
SSWG said the Swiftly toolchain installer is growing in popularity on Linux and the group would like it to port it to Windows and MacOS. Other tool enhancements being considered include adding support for Swift Package Manager to the GitHub dependabot, investigating Canonical Chiseled Containers to see if Swift containers can be provided with a very small update and a hardened footprint, and investigating Swift Package plugins to improve deployment of Swift on the server.
Other areas of focus for SSWG for the year 2023 include:
- Better showcases of Swift on server deployments and success stories.
- Boosting visibility of Swift as a server language.
- Developing a Swift-native Memcached client.
- Creating a common connection pool library to make it easy to adopt connection pooling.
- Creating a shared middleware implementation for use in web frameworks like Smoke, Hummingbird, and Vapor.
- Encouraging adoption of distributing tracing to round out the observability story.
Reflecting on 2022, SSWG cited accomplishments including client libraries for Kafka, begun as a Google Summer of Code (GSoC) project, and Cassandra, pitched for incubation, as well as libraries for GraphQL and RabbitMQ. A Memcached client library was proposed as a GSoC project.