October 3rd, 2019


FoundationNetworking and FoundationXML

Discussion about the divergence between Linux and Darwin. The solution in Swift 5.1 has solved problems relating to “linking the world”, but has also caused some known source breakage. We are interested in exploring the long term direction and whether there is intent to reconverge in future.

[ACTION]: Johannes to talk to @Tony_Parker / @millenomi .


Discussion about the tradeoffs in removing libcurl and libxml2 from the Swift Docker images now that they’re not required (unless you use FoundationNetworking/XML).

[ACTION]: Ian to prototype these images to see how much smaller we can make them and whether it’s worth pursuing.

Meeting minutes

How can we be faster at publishing the meeting minutes? We need to be more disciplined about this, but at a minimum we will review the previous minutes at the start of each meeting.

Reviewed the minutes from last meeting…! Several actions are rolled over:

[ACTION] Tomer: send around a proposal document for a governance model
[ACTION] Tomer: Organise an out-of-band meeting regarding the next phase of the workgroup
[ACTION] Tanner: Send around the blog post draft to everybody

Workgroup participation

Increasing engagement: we want to broaden the list of participants in the SSWG. Discussion around how to achieve that, further discussions will happen face to face in Copenhagen at serverside.swift.

Meeting timing

Discussion around moving meeting to Friday.
[ACTION] Ian: set up Doodle poll


New pitch! Great to see this arriving. We will encourage the authors to submit a full proposal. Some discussion around API design, we will encourage this conversation publicly once the proposal arrives.


As a small policy note: 5.1 caused source breakage for dependency management, which is new and unique to SCF, but also to correct issues that couldn't be corrected otherwise. Note that in many cases, source breakage was introduced intentionally to prevent compilation of ill-formed application code (read: code that was destined to crash at runtime, generally due to NSUnimplemented()). As much as possible going forward, the intent is to correct further source incompatibilities using the tools that we already use on Darwin, such as deprecations and fixits.