Got asked about this (a short thread): https://twitter.com/EWErikWitt/status/1027603512203640832 …
/cc @EWErikWitt @igrigorik @yoavweiss @jaffathecake
-
Show this thread
-
So it's an incendiary title; "Chrome...breaks HTTP/2 priorities!". The effect is real, the cause is misattributed.
1 reply 0 retweets 2 likesShow this thread -
First, note the code for the SW in question; it's not a pure pass-through: `addEventListener('fetch', event => { event.respondWith(fetch(event.request)); });`
1 reply 0 retweets 4 likesShow this thread -
That might *look* like a passthrough, but it's not. Calling `fetch()` with a `Request` object implicitly *creates a new Request object*: https://fetch.spec.whatwg.org/#fetch-method (see step 2)
2 replies 1 retweet 8 likesShow this thread -
What does this mean in practice? It means the `Request` constructor copies all of the publicly accessible information from the passed-in `Request` object and constructs a new `Request` with that information as it's configuration. Priority isn't publicly available.
2 replies 0 retweets 5 likesShow this thread -
Replying to @slightlylate
Sure, but an implementation can pass additional data along if it wants. It wouldn't be an observable violation of the spec.
1 reply 0 retweets 1 like
Sure, of course, but I'm pointing out what's happening is the predictable consequence of an engineer reading and implementing the spec. Magic might happen in the long-run, but it doesn't now.
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.
& Web Standards TL; Blink API OWNER
Named PWAs w/
DMs open. Tweets my own; press@google.com for official comms.