[Proposal] SOAR-0015: Namespace-Based Types File Splitting

Hi folks!

The proposal SOAR-0015: Namespace-based file splitting for Swift OpenAPI Generator is now up and In Review:

The review period will run until August 14 - please feel free to post your feedback either as a reply to this thread, or on the pull request.

Credit to Nick Candello for his work putting this together.

Thanks!

cc @Honza_Dvorsky

9 Likes

+1 on the proposal, it's an API-stable change that appears to produce a pretty significant performance boost to debug build times, so I'm for us taking it.

+1, Yes please!

Even with an understandable "Swift build system should just get better and build faster" attitude, the changes are still of value considering they organize the generated code for possibly when you need to take a peek at the code, which admittedly is not frequently, but does happen.
Meanwhile I'll also take the build time improvements as I've lost hope in Swift build system getting significantly better in short or mid term (I still appreciate any inceremental imprvements or such that are being done to the build times).

Very much in favor - some very nice and convenient benchmarking against some big examples in that proposal as well. Thank you to Nick Candello for the extra work to show it off!

I also support this change (with the disclaimer that I work with Nick). Our team at Ramp has been post-processing the generator output using SwiftSyntax to achieve similar results for almost two years now, so moving this into the generator itself is a nice win for us.

1 Like

Yes please!! At the moment, for huge specs, generated files become tens of thousands of lines long which are sometimes slow to even open, let alone search through and debug.

1 Like

Hi all,

(temporarily taking over as release manager due to Si's OOO).

Thank you everyone for the feedback - it was broadly supportive, so this proposal is now Ready for Implementation.