SSWG Meeting Notes: 29th November 2023


  • Sven
  • Tom
  • Konrad
  • Adam
  • Tim
  • Franz


  • Sven joined for first time on trial basis

Previous action items

New agenda items

  • swift-aws-lambda runtime 1.0
    • :a: Tom had to leave before so let's follow up next time
  • Swift-OTel support for Logging & Metrics
  • SwiftNIO on Windows
    • Tim: At least once a week someone is asking about windows in Vapor
    • What is the status of that?
    • Franz, we have no Windows CI so until this I solved we can't really.
      • Talked with Mishal, Collections, Atomics, none have Windows CI
      • SwiftPM works on windows mostly?
      • The single blocker: CI, need to talk to Mishal again
    • :a: Tim needs to ping core team;
    • Sven: Windows compat testing perhaps as well with the package index...
    • package-benchmark
      • lots of people depending on it
      • should we pitch it? it's not a server thing...
      • :a: Franz, contact package-benchmark about doing a blog post to do a blog post
    • Blog post idea:
      • Sven: operating swift on server was a breath of fresh air, maybe we can write a great post about it
        • "Would not want to go back to python services"
      • We can talk about memory use and requests per second etc.

2024 goals discussion

Rough notes from discussion:

  • Goals: middleware and HTTP Server
    • middleware and http server are separate topics; middleware is also client, very generic
  • Investing more in AsyncHTTPClient
    • Missing features?
    • Tom: Cookies support? Protocols be more pluggable? Migrating it entirely to async.
    • Tracing support?
    • Moving off NIO in APIs would be good; move to async.
    • Might be good to deprecate some old types, the old http types, and move to swift-http types
  • Continue concurrency adoption in APIs
    • Check when we can call this "FINISHED" and then make this a goal
    • NIO even has the new async APIs
  • Not a goal: async IO
    • there is some more helpers in NIO but we're going to wait for the real APIs to come from new-Foundation
  • Maybe: Adoption of new testing and new foundation?
    • Good if we started adopting the new modular foundation -- with less system dependencies
    • Need foundation to put a version out
  • Maybe: Put out an adoption guide for new-Foundation for server
    • The team needs feedback so this will be useful
    • We need buy in from the foundation team to be addressing issues and doing releases
    • It will help prioritize work if we can provide good feedback
  • Ecosystem wide Swift-on-Server example
    • Zero to Hero guide; adding all the libraries, a proper tutorial.
    • start from simple package and you do all the things, and coherent together
    • Franz would love to work on that.
    • Including databases, metrics, everything along the way
    • A "course" to get started from zero to hero, building on one another with each guide
      • Show some C and C++ interop as well
  • Map other tools to Swift tools?
    • You're coming from X? "Here's the equivalent libs"
    • Just list comparisons would already be valuable