Things we did:

  • Test Curation
    • Added Response test results, and broke down Body implementation related test failures.
  • Promise in Fetch
    • Here are my observations so that I can let jdm know when he’s back:
      • When Fetch.webidl and window.rs/workerglobalscope.rs state that fetch() returns a void, and fetch() does return a void, it compiles.
      • When Fetch.webidl and window.rs/workerglobalscope.rs state that fetch() returns a void, but fetch() returns Promise, it compiles. This is strange because the compiler should throw a type mismatch error.
      • When Fetch.webidl or window.rs/workerglobalscope.rs state that fetch() returns a Promise, and fetch()does return Promise, compiler fails with this error.
      • This rust bug is fixed with the latest nightly which Servo uses. When I rebase jdm:promises on top of the latest servo:master, a lot of conflicts happen and I’m not sure how to resolve them as I’m unfamiliar with the changes. I tried a few approaches (not really organized…) and they all have failed :disappointed:
  • Response
    • :baby_chick: Waiting for merge/squash time!
  • Body
    • Started writing Body implementation for Response! Spent some time understanding why it’s a double Option: pub body: Option<Option<UnionTypes::BlobOrFormDataOrStringOrURLSearchParams >> (thanks Jeena! :D)

Things we learned:

  • Chrome and Firefox are both outdated with their Headers get and getAll functions!

TODO:

  • Promise in Fetch
    • I think what I can at this moment is done. I want to know how to solve the issue explained above.
  • Body
    • Start working on the extract body function