[whatwg/fetch] Add compression dictionary negotiation and decoding to the fetch processing model (Issue #1739)

### What problem are you trying to solve?

[Compression dictionary transport](https://github.com/WICG/compression-dictionary-transport) provides a mechanism for using fetched resources as a compression dictionary for content-encoding of HTTP responses. The IETF draft for the http-level negotiation and compression is [here](https://datatracker.ietf.org/doc/draft-ietf-httpbis-compression-dictionary/).

Most of the HTTP-level negotiation is defined in the IETF draft but there are a few places where it intersects with the fetch processing model:

* Dictionary cache, associated metadata, partitioning and clearing.
* Matching an existing dictionary against outbound requests in [HTTP-network fetch](https://fetch.spec.whatwg.org/#http-network-fetch).
* CORS-readability requirements for storing dictionaries.
* CORS-readability requirements for decoding dictionary-compressed responses.

### What solutions exist today?

_No response_

### How would you solve it?

Add the necessary processing steps once we are comfortable that they are appropriate.

### Anything else?

Chromium is currently the only browser engine experimenting with compression dictionaries so it might not make sense to fold into the standard quite yet but it is worth having the discussion to make sure that the implementation is something that we can all agree with before it gets too far.

-- 
Reply to this email directly or view it on GitHub:
https://github.com/whatwg/fetch/issues/1739
You are receiving this because you are subscribed to this thread.

Message ID: <whatwg/fetch/issues/1739@github.com>

Received on Monday, 26 February 2024 17:23:55 UTC