Skip to content
Permalink
main
Switch branches/tags

Name already in use

A tag already exists with the provided branch name. Many Git commands accept both tag and branch names, so creating this branch may cause unexpected behavior. Are you sure you want to create this branch?

Commits on Oct 17, 2022

Commits on Sep 6, 2022

  1. Discuss async/parallel processing of written/transformed chunks

    See WICG/serial#165. This ends up adding two pieces of advice:
    
    * One about how producers should wait on the promise returned by writer.write(), and how underlying sinks and transformers can use their promise return values to control that.
    
    * One about how specification authors should avoid reading from chunks in parallel.
    domenic committed Sep 6, 2022

Commits on Aug 15, 2022

Commits on Apr 18, 2022

  1. Fix IDL validity by removing ReadableStreamBYOBReadResult

    In #1214, ReadableStreamBYOBReadResult was changed to have a value property of type `(ArrayBufferView or undefined) value`, since it is possible for the value to be undefined.
    
    However, the Web IDL specification says that is invalid IDL:
    
    > undefined must not be used as the type of an argument in any circumstance (in
    > an operation, callback function, constructor operation, etc), or as the type
    > of a dictionary member, whether directly or in a union. Instead, use an
    > optional argument or a non-required dictionary member.
    >
    
    https://webidl.spec.whatwg.org/#idl-undefined
    
    So this instead removes ReadableStreamBYOBReadResult entirely, in favor of a renamed ReadableStreamDefaultReadResult, which has type any for its value.
    mgaudet committed Apr 18, 2022

Commits on Feb 24, 2022

  1. Meta: export "high water mark"

    Used, e.g., in WebTransport.
    dontcallmedom committed Feb 24, 2022

Commits on Feb 22, 2022

Commits on Feb 9, 2022

  1. Meta: roll web platform tests

    This includes tests for interaction between autoAllocateChunkSize and respondWithNewView, which were merged in web-platform-tests/wpt#32757. The reference implementation already passes them.
    MattiasBuelens committed Feb 9, 2022

Commits on Feb 2, 2022

  1. Use (ArrayBufferView or undefined) for ReadableStreamBYOBReadResult

    The standard returns an ReadableStreamBYOBReadResult with an undefined
    value, and the tests rely on this, but it wasn't permitted by the IDL. Fix the IDL
    to match the actual behaviour.
    
    Closes whatwg/webidl#1094.
    saschanaz committed Feb 2, 2022

Commits on Jan 24, 2022

  1. Expose APIs everywhere

    Ms2ger committed Jan 24, 2022

Commits on Jan 18, 2022

  1. Ensure pipeTo() releases its reader correctly

    The user agent is allowed to use a default reader or a BYOB reader for the pipe, but we were always calling ReadableStreamDefaultReaderRelease in the finalize steps. This commit fixes the algorithm to we should use the appropriate release abstract operation corresponding to the chosen reader.
    
    This was broken in d5f92d9.
    MattiasBuelens committed Jan 18, 2022

Commits on Jan 14, 2022

  1. Add missing controller argument

    Missed in d5f92d9.
    crowlKats committed Jan 14, 2022

Commits on Jan 13, 2022

  1. Reject pending reads when releasing a reader

    Currently, reader.releaseLock() throws an error if there are still pending read requests. However, in #1103 we realized that it would be more useful if we allowed releasing a reader while there are still pending reads, which would reject those reads instead. The user can then acquire a new reader to receive those chunks.
    
    For readable byte streams, we also discard pull-into descriptors corresponding to (now rejected) read-into requests. However, we must retain the first pull-into descriptor, since the underlying byte source may still be using it through controller.byobRequest. Instead, we mark this descriptor as "detached", such that when we invalidate this BYOB request (as a result of controller.enqueue() or byobRequest.respond()), the bytes from this descriptor are pushed into the stream's queue and used to fulfill read requests from a future reader.
    
    This also allows expressing pipeTo()'s behavior more accurately. Currently, it "cheats" by calling ReadableStreamReaderGenericRelease directly without checking if [[readRequests]] is empty. With the proposed changes, we can safely release the reader when the pipe finishes (even if there's a pending read), and be sure that any unread chunks can be read by a future reader or pipe.
    MattiasBuelens committed Jan 13, 2022

Commits on Jan 6, 2022

  1. Fix documentation for underlying source cancel() errors

    See nodejs/node#41048. This spells out the motivation for the difference between cancel and close/abort while we're here.
    domenic committed Jan 6, 2022

Commits on Dec 16, 2021

  1. Explainer for "transferring ownership streams"

    As discussed at last WebRTC/WHATWG Streams meeting, we are converging on a potential solution for VideoFrame handling in streams. This explainer is the first step towards a more formal solution.
    youennf committed Dec 16, 2021

Commits on Dec 15, 2021

Commits on Nov 29, 2021

  1. Editorial: fix readable/writable file stream examples

    * Use `fileHandle.close()` to close a FileHandle
    * Pass a view to `fileHandle.read()`, since it doesn't accept an ArrayBuffer
    * Pass `position` to `fileHandle.read()` instead of relying on implicit file positioning
    dubiousjim committed Nov 29, 2021

Commits on Nov 24, 2021

Commits on Nov 19, 2021

  1. Integrate abort reasons

    Following on from whatwg/dom#1027, with introduces custom abort reasons, this uses the AbortSignal's abort reason in the ReadableStreamPipeTo function. It also updates WritableStreamAbort to use the reason to signal abort.
    
    Closes #1165. Part of whatwg/dom#1030.
    nidhijaju committed Nov 19, 2021

Commits on Oct 28, 2021

  1. Meta: fix typo in the FAQ

    eltociear committed Oct 28, 2021

Commits on Oct 25, 2021

  1. WritableStream: remove the abortReason property

    Part of #1165, which discusses moving it instead to the AbortSignal's reason property per whatwg/dom#1027.
    nidhijaju committed Oct 25, 2021

Commits on Oct 21, 2021

  1. Align reference implementation of "wait for all" with latest Web IDL …

    …spec
    
    The spec of "get a promise for waiting for all" changed slightly when it was moved from the promise guide to Web IDL. Notably, the successSteps and failureSteps arguments were removed, since you can already achieve the same thing by reacting to the returned promise.
    
    This updates the reference implementation to align with the definitions from the Web IDL specification. No normative changes.
    MattiasBuelens committed Oct 21, 2021

Commits on Oct 20, 2021

  1. Editorial: move informative pointers to a note

    This ensures the references end up in the 'Informative' rather than 'Normative' section.
    Ms2ger committed Oct 20, 2021

Commits on Oct 12, 2021

  1. Discard auto-allocated BYOB request on enqueue

    As discovered in #1170 (comment): if a BYOB request was auto-allocated, but then you call controller.enqueue() instead of byobRequest.respond(), then the auto-allocated pull-into descriptor stays in the queue. If you later on switch from a default reader to a BYOB reader, you run into trouble because the list of read-into requests no longer matches up with the list of pending pull-into descriptors.
    
    This PR fixes it by making enqueue() discard that auto-allocated BYOB request.
    MattiasBuelens committed Oct 12, 2021
  2. Fix assertion failure in RespondInternal after transferring array buf…

    …fer in RespondWithNewView
    
    Store view byte length before transferring.
    nidhijaju committed Oct 12, 2021

Commits on Oct 11, 2021

  1. Editorial: fix byte stream examples to respond(0) after close()

    Fix byte stream examples to respond(0) after close()
    Don't respond(0) if we didn't close() yet
    MattiasBuelens committed Oct 11, 2021

Commits on Sep 7, 2021

  1. Editorial: remove optional from chunk parameter in QueuingStrategySize

    Since this is used as the input type in the init dictionaries, and the spec always calls the function with an argument, the optional is not necessary.
    MattiasBuelens committed Sep 7, 2021

Commits on Aug 16, 2021

  1. Review Draft Publication: August 2021

    annevk authored and domenic committed Aug 16, 2021
Older