Early Draft of Binary Encoding for Patch Subset

The current version of patch subset uses google protobufs to encode and
decode the request and response messages sent between the client and
server. For standardization we don't want to rely on protobufs as there is
no existing standard for the encoding/decoding.

So I spent some time this week creating a custom binary encoding to use.
The details can be found here:
https://github.com/googlefonts/PFE-analysis/blob/protocol/design/patch_subset_protocol_v2.md

   - I've re-used the existing variable length integers from the WOFF2 spec.
   - The request and response objects keep the same set of fields as in the
   protobuf version of the encoding.
   - On objects all fields are optional which will allow for future
   upgrades to the specification. Subsequent revisions to the spec can add new
   fields and deprecate older ones if needed.
   - Note: the request/response behaviour sections are not yet filled in.
   They shouldn't change significantly from the previously documented
   behaviour here:
   https://github.com/googlefonts/PFE-analysis/blob/protocol/design/patch_subset_protocol.md

Received on Friday, 22 January 2021 23:13:59 UTC