SSWG - October 9, 2024

Attendees

Discuss first next time

  • Simon: :a: finalise incubation review
    • we've had some discussion on the DM thread
    • wrap this up next time

Goals

Concurrency & Structured Concurrency adoptions

  • :a: @FranzBusch and @Joannis_Orlandos to collaborate and a rough outline for a structured concurrency server applications post.
    • Carry over to post-conference plus there is a talk at the conference.

Swift 6

  • Adoption of strict concurrency is in progress
    • There are expected issues for XCTest; the work around is to mark tests as @MainActor, although there are some edge cases where this can cause issues. Adoption of SwiftTesting is recommended instead if possible (ie. no requirement for Swift 5.X)
    • Apple packages are planning to keep using the Swift 5 language mode with the Swift 6 compiler until the Swift 5.X compiler versions can be dropped.

Marketing

  • :a: @ktoso to address creating benchmarks from the SSWG perspective.
    • Carry over.
  • :a: Build out integrated example project @FranzBusch @tiborbodecs
    Wait for Swift 6 before we build integrated example.
    • Tibor: wanted to use Protocol Buffers, still looking for good idea
  • :a: Show-case two server side projects/success stories @0xTim @ktoso
    • There should be some success stories at the conference; might be able to transfer some of these to blog posts
    • speaker from conference to give show case

Tooling

  • :white_check_mark: Investigate official Swift GH action @0xTim , @FranzBusch , @sebsto
  • What is the progress on Amazon Linux 2023
    • Seb made some progress after the conference
    • no ld-gold in Az linux
    • main branch has removed dependency but 6.0 doesn't have it yet
    • :a: Konrad to help get the patch on the 6.0 branch from main, :a: seb to provide exact PR that has the change
    • after merge :a: @taylorswift get in touch with @mishal_shah to prepare docker images etc

HTTP server and middlewares

  • :a: Move forward with the reviews of the initial API drafts @FranzBusch
    • carry over; pick up after conference. @FranzBusch wants to get more people involved.
    • pressure after Vapor 5 blogpost :tada:
    • gRPC v2 is almost done and got positive feedback at gRPC conference.
    • :a: @Joannis_Orlandos will follow up with @FranzBusch on this

Benchmarks

  • :a: @Joannis_Orlandos to share instruments trace
    • Start off with a simple one and extend it from there

Previous Actions Items

  • :a: @FranzBusch to create forum post for last-three-versions toolchain requirement for server apps
    • @FranzBusch talking with other teams in Apple, might be part of a larger conversation
    • @ktoso: there is a disagreement between developers what to do so good to standardise
  • @sebsto @tiborbodecs review and update swift.org deployment guides (AWS & others).
    • :a: land at least 2-3 common use cases
  • :a: @tachyonics to review Refactor the Why Swift on Server section and add page on concurrency. by tachyonics · Pull Request #496 · swiftlang/swift-org-website · GitHub
    • carry over
  • Installing the Swiftinit GitHub app to swiftlang org @Ben_Cohen to look at, and team to bring up at the next Core Team meeting
  • Issue with SwiftTesting raised by @0xTim
    :white_check_mark: @0xTim to add a GitHub issue

Agenda

  • @Joannis_Orlandos: Windows support
    • Libraries starting to add support
    • NIO not supporting it is a big blocker
    • What's the situation with NIO on Windows?
    • @Ben_Cohen: Question for @FranzBusch
      • big task
      • understood it's a big problem
    • @finestructure : Saleem's branch perhaps usable
  • @FranzBusch : annual update
    • might not have to do anything, b/c there was an update in March
    • will continue discussion in DM thread
  • @tiborbodecs : file watcher solution using FSEvents / Inotify
  • @Joannis_Orlandos
    • Next meetup: January
    • Newsletter: swiftonserver.com looking for topics
      • should be monthly, has been 2-3 months
      • topics could be links to packages etc
    • Deployment guides
      • Euan's talk was interesting, also Seb's
      • Receives many questions about deployment
      • These guides are important
    • Documentation and examples for libs
      • Would be nice if we had more beginner-friendly doc
      • @finestructure : Problem is partly reference docs vs overview docs, think emphasis should be on overview docs
      • @finestructure: Documentation WG is looking into scaffolding docs better, to provide a better getting started experience when adding docs to a package
  • @taylorswift : small scale server-side Swift mentoring program
    • 5-6 mentors
    • Collaboration focused
    • Make server-side more prominent
    • Find maintainers
    • Streamline onboarding process for people starting out with server-side Swift
    • Feel Swift Mentorship Program is too general, too open-ended
    • Mentees are in silos
    • Instead: bootcamp for the whole group, easy project, teaching workflows
    • Group learning exercise, async, peer-peer, mentees help each other out, too
    • :a: @tachyonics to take the lead formulating a plan
      • How to find/test mentees (mentees should be somewhat proficient in Swift, goal is to teach server-side Swift, not Swift)
      • Define a project
    • @Ben_Cohen : should sync up with existing program as well
    • Follow up at next meeting
4 Likes