Starting the QUIC design
The OTC recently agreed a new design process that needs to be followed for future releases. See here for details. Moving forward designs for significant features should be captured and stored alongside the documentation in our main source code repository and updated if necessary during the development process.
One of the main aims of this process is to give our community the opportunity to take part and provide input into the design process. With that aim in mind the designs will be made available in draft form via pull requests on github and community members will have the ability to comment on them.
The first set of these designs are now available. The designs are deliberately not complete - and are very much early stage work-in-progress. The idea is that they are made public at the earliest possible opportunity so that comments that are raised can actually influence that design before it is “set in stone”.
The currently available designs show some design sub-problems that we have been considering and outline some high level candidate solutions to those designs. Soon the OTC will be asked to consider the candidate solutions and determine what approach should be taken. Once determined further details regarding the chosen approach will be added to the design document.
You can read the first 2 design documents in the pull requests #17184 - QUIC API Design and #17185 - QUIC Event Loop Design.
They cover some possible approaches for what a QUIC API might look like, and how we might implement the event loop solution. If you are interested in taking part then please take a look and provide your input in the form of comments on the pull requests.