react/fixtures
Sebastian Markbåge bbc13fa17b
[Flight] Add Debug Channel option for stateful connection to the backend in DEV (#33627)
This adds plumbing for opening a stream from the Flight Client to the
Flight Server so it can ask for more data on-demand. In this mode, the
Flight Server keeps the connection open as long as the client is still
alive and there's more objects to load. It retains any depth limited
objects so that they can be asked for later. In this first PR it just
releases the object when it's discovered on the server and doesn't
actually lazy load it yet. That's coming in a follow up.

This strategy is built on the model that each request has its own
channel for this. Instead of some global registry. That ensures that
referential identity is preserved within a Request and the Request can
refer to previously written objects by reference.

The fixture implements a WebSocket per request but it doesn't have to be
done that way. It can be multiplexed through an existing WebSocket for
example. The current protocol is just a Readable(Stream) on the server
and WritableStream on the client. It could even be sent through a HTTP
request body if browsers implemented full duplex (which they don't).

This PR only implements the direction of messages from Client to Server.
However, I also plan on adding Debug Channel in the other direction to
allow debug info (optionally) be sent from Server to Client through this
channel instead of through the main RSC request. So the `debugChannel`
option will be able to take writable or readable or both.

---------

Co-authored-by: Hendrik Liebau <mail@hendrik-liebau.de>
2025-06-24 11:16:09 -04:00
..
art Bump canary versions to v19-canary (#28646) 2024-03-26 15:31:57 -04:00
attribute-behavior React DOM: Add support for Popover API (#27981) 2024-05-20 22:01:39 +02:00
concurrent/time-slicing Bump follow-redirects from 1.15.4 to 1.15.6 in /fixtures/concurrent/time-slicing (#28572) 2024-03-18 11:56:04 -04:00
devtools Rename "next" prerelease channel to "canary" (#26761) 2023-05-03 12:10:32 -04:00
dom Add dispatchEvent to fragment instances (#32813) 2025-05-07 14:00:59 -04:00
eslint-v6 feat(eslint-plugin-react-hooks): merge rule from eslint-plugin-react-compiler into react-hooks plugin (#32416) 2025-03-12 21:43:06 -04:00
eslint-v7 feat(eslint-plugin-react-hooks): merge rule from eslint-plugin-react-compiler into react-hooks plugin (#32416) 2025-03-12 21:43:06 -04:00
eslint-v8 feat(eslint-plugin-react-hooks): merge rule from eslint-plugin-react-compiler into react-hooks plugin (#32416) 2025-03-12 21:43:06 -04:00
eslint-v9 feat(eslint-plugin-react-hooks): merge rule from eslint-plugin-react-compiler into react-hooks plugin (#32416) 2025-03-12 21:43:06 -04:00
expiration Bump browserify-sign from 4.0.4 to 4.2.2 in /fixtures/expiration (#27600) 2023-11-01 19:31:28 +00:00
fiber-debugger Rename yarn start to yarn dev and yarn start:prod to yarn start (#26209) 2023-02-21 14:18:21 -05:00
fizz Clear bundler cache before bundling fixtures (#33426) 2025-06-03 21:10:13 +02:00
fizz-ssr-browser [UMD] Remove umd builds (#28735) 2024-04-17 11:15:27 -07:00
flight [Flight] Add Debug Channel option for stateful connection to the backend in DEV (#33627) 2025-06-24 11:16:09 -04:00
flight-esm Clear bundler cache before bundling fixtures (#33426) 2025-06-03 21:10:13 +02:00
flight-parcel [Flight Parcel] Implement findSourceMapURL (#32294) 2025-02-04 14:17:13 -05:00
legacy-jsx-runtimes Bump braces from 3.0.2 to 3.0.3 in /fixtures/legacy-jsx-runtimes (#29844) 2024-06-11 11:36:36 -04:00
nesting docs: fix typo in fixtures/nesting/README.md (#27507) 2024-04-06 19:11:19 +02:00
owner-stacks Clear bundler cache before bundling fixtures (#33426) 2025-06-03 21:10:13 +02:00
packaging Bump browserify-sign from 4.0.4 to 4.2.2 in /fixtures/packaging/brunch/prod (#27598) 2023-11-01 19:30:25 +00:00
scheduler [flags] Delete enableSchedulerDebugger (#31826) 2024-12-18 13:29:22 -05:00
ssr Replace Implicit Options on SuspenseList with Explicit Options (#33424) 2025-06-03 17:40:30 -04:00
ssr2 Bump canary versions to v19-canary (#28646) 2024-03-26 15:31:57 -04:00
stacks Bump braces from 3.0.2 to 3.0.3 in /fixtures/stacks (#29843) 2024-06-11 11:35:40 -04:00
view-transition [Fizz] Ignore error if content node is gone before reveal (#33531) 2025-06-20 14:21:57 +02:00