commit | 520b4e9e361f3a1b52f1490e9a0f1a2f46e1df9f | [log] [tgz] |
---|---|---|
author | vasilvv <vasilvv@google.com> | Thu Jun 26 14:43:06 2025 -0700 |
committer | Copybara-Service <copybara-worker@google.com> | Thu Jun 26 14:43:57 2025 -0700 |
tree | 021f2262e4b2ea5804e26e4ace0bc6c3f5f622fa | |
parent | ff3efd84f9e0e7b9819e0a9aff54913a0d7a4121 [diff] |
Multiple MoQT refactors, merged into one CL since detangling them would require extra effort. * Location no longer has a subgroup ID in it. * A new type, DataStreamIndex, is introduced as a hashable (group, subgroup) tuple. * A new type, PublishedObjectMetadata, is introduced to pass around object metadata in a way that's consistent between the send and the receive code. * A bunch of other smaller changes. This potentially fixes at least two bugs we currently have in our code: - If a single subgroup were reset within a group, no other subgroup in the group would be able to send objects. - Subgroup IDs were not passed to the application on receipt. PiperOrigin-RevId: 776288849
QUICHE stands for QUIC, Http, Etc. It is Google‘s production-ready implementation of QUIC, HTTP/2, HTTP/3, and related protocols and tools. It powers Google’s servers, Chromium, Envoy, and other projects. It is actively developed and maintained.
There are two public QUICHE repositories. Either one may be used by embedders, as they are automatically kept in sync:
To embed QUICHE in your project, platform APIs need to be implemented and build files need to be created. Note that it is on the QUICHE team's roadmap to include default implementation for all platform APIs and to open-source build files. In the meanwhile, take a look at open source embedders like Chromium and Envoy to get started:
To contribute to QUICHE, follow instructions at CONTRIBUTING.md.
QUICHE is only supported on little-endian platforms.