diff --git a/fetch.bs b/fetch.bs index 727982cb8..1ce95c6d5 100644 --- a/fetch.bs +++ b/fetch.bs @@ -352,6 +352,9 @@ following items: [[RESOURCE-TIMING]] [[NAVIGATION-TIMING]]
final connection timing info (default null)
Null or a connection timing info. +
service worker timing info (default null) +
Null or a service worker timing info. +
server-timing headers (default « »)
A list of strings.
render-blocking (default false) @@ -5248,48 +5251,61 @@ these steps:
  • Let serviceWorkerStartTime be the coarsened shared current time given fetchParams's cross-origin isolated capability. -

  • Set response to the result of invoking handle fetch for +

  • Let fetchResponse be the result of invoking handle fetch for requestForServiceWorker, with fetchParams's controller and fetchParams's cross-origin isolated capability. [[!HTML]] [[!SW]]

  • -

    If response is non-null, then: -

      -
    1. Set fetchParams's timing info's - final service worker start time to - serviceWorkerStartTime. +

      If fetchResponse is non-null, then: +

        +
      1. IffetchResponse is response, then: +

          +
        1. Set response to fetchResponse. +

        2. Set fetchParams's timing info's + final service worker start time to + serviceWorkerStartTime. +

        3. Set fetchParams's timing info's + service worker timing info to + response's service worker timing info. -

        4. If request's body is non-null, then - cancel request's body with undefined. +
        5. If request's body is non-null, then + cancel request's body with undefined. -
        6. Set internalResponse to response, if response is not a - filtered response; otherwise to response's - internal response. +

        7. Set internalResponse to response, if response is not a + filtered response; otherwise to response's + internal response. -

        8. -

          If one of the following is true +

        9. +

          If one of the following is true -

            -
          • response's type is "error" +

              +
            • response's type is "error" -

            • request's mode is "same-origin" and - response's type is "cors" +

            • request's mode is "same-origin" and + response's type is "cors" -

            • request's mode is not "no-cors" and - response's type is "opaque" +

            • request's mode is not "no-cors" and + response's type is "opaque" -

            • request's redirect mode is not "manual" and - response's type is "opaqueredirect" +
            • request's redirect mode is not "manual" and + response's type is "opaqueredirect" -
            • request's redirect mode is not "follow" and - response's URL list has more than one item. -
            +
          • request's redirect mode is not "follow" and + response's URL list has more than one item. +
          -

          then return a network error. +

          then return a network error. +

        +
      2. IffetchResponse is service worker timing info, then: +

          +
        1. Set fetchParams's timing info's + service worker timing info to + fetchResponse. +

      -
    +
  • If response is null, then: @@ -9220,6 +9236,7 @@ Julian Reschke, Jussi Kalliokoski, Jxck, Kagami Sascha Rosylight, +Keita Suzuki, Keith Yeung, Kenji Baheux, Lachlan Hunt,