Action items
-
Simon Pilkington: Update the SSWG charter, post the updated charter as a draft, and get feedback (task to be done during the week and posted for review). -
Tibor Bödecs: Share the Feather project documentation and guides when people express interest, including internal docs and examples of components and architecture.
Integrated example project
- Franz suggested that Tibor might be particularly interested with this initiative
- The integrated example aims to provide a standard example project for server-side Swift; group to review and comment when materials are posted.
Codeql rule contributions
- Discussion about improving CodeQL coverage and contributing at least one rule upstream.
- Tim nominated Joannis as someone who has created CodeQL rules; Joannis not present to update status.
- Item deferred until Joannis can report on progress and specific proposed rules.
Feather framework overview and goals
- Tibor presented Feather, a BinaryBirds initiative to provide reusable backend components and standardized application-level structure for server-side Swift.
- Components available: database layer (drivers for SQLite, MySQL, Postgres), storage (filesystem, S3), SMTP email interface, unified HTTP client/server interfaces, OpenAPI DSL for Swift-based API definitions, and testing utilities compatible with Vapor and Hummingbird.
- Architecture described as a modular monolith with onion/hexagon traits, intended to scale for small and large teams and enforce compile-time validations for OpenAPI references.
- Feather complements Vapor and Hummingbird by focusing on full application layer patterns (similar to Laravel/Rails) while leveraging those frameworks for HTTP handling.
- Current status: most components are open source on GitHub; some internal docs and demos remain internal
- Proposed next steps: Tibor offered to share internal docs with the group, consider a workshop at the Server-Side Swift Conference, and follow up with details on project direction when ready.
Meeting logistics
- Sven raised rotating meeting times to distribute inconvenience; identified conflicts for members in Central Europe and very early attendees in other zones.
- Group consensus: changing the recurring meeting time is problematic due to consistency and daylight saving overlaps; maintaining a stable slot preferred though occasional absences accepted.