期間: 2026-09-17 〜 2026-09-24 · PR 5 件(新機能 1 / 変更・修正 4 / その他 0)
新機能
Server Reference が任意のオブジェクトを参照できるように(実験的)(#37636)
何ができるようになったか
実験的フラグ
enableFlightObjectReferencesの下で、Server Reference が関数だけでなくオブジェクトも参照できるようになった。registerServerObjectReferenceでオブジェクトを登録すると、クライアントは中身を読み書きできない不透明なハンドルを受け取り、それを Server Function に渡すとサーバー側のマニフェスト経由で解決される。
- 使い方:
registerServerObjectReference()でオブジェクトにモジュール ID を付与して登録する(現時点では Turbopack バインディングのみ対応)- 嬉しい場面:
searchParamsのようなリクエストスコープの値を、リクエストボディに二重に含めずフレームワーク側で参照渡ししたいとき
⏳ 未リリース · トピック: Server Components
変更・修正
エフェクト内で await 後の setState を誤検知しないよう修正(#36734)
Before
react-hooks/set-state-in-effectlint ルールが、エフェクト内の非同期関数でawaitの後に呼ばれる setState まで誤って警告していた。データ取得後に setState する一般的なコードでよく起きる誤検知だった。
After
HIR 上のデータフロー解析で「すべてのパスで await 済み」と証明できるブロックの setState だけを許可対象から除外するようにした。条件分岐で await されるなど確実に await 済みと言えない setState は引き続き警告される。
⏳ 未リリース · トピック: React Compiler
Rust 版コンパイラで shorthand・computed property の判定を修正(#37674)
Before
一部の computed property が誤って shorthand プロパティとして検出されていた。Babel 版では問題にならなかったが、SWC(Rust)版はこれで判定を打ち切ってしまい、誤ったコード生成につながっていた。
After
shorthand と computed property の検出条件を修正し、Rust 版コンパイラでも正しく判定されるようにした。
⏳ 未リリース · トピック: React Compiler
arguments オブジェクトの使用でコンパイラが誤ってメモ化しないよう修正(#37645)
Before
コンパイラが
argumentsオブジェクトを誤ってメモ化しており、再レンダリングが正しく動かないことがあった。
After
argumentsの使用を検出した場合はメモ化をあきらめる(bail out)ようにし、誤ったコード生成を防ぐ。
⏳ 未リリース · トピック: React Compiler
Flight クライアントが先頭の U+FEFF を保持するよう修正(#37625)
Before
Flight クライアントがバイナリ入力をデコードする際、outlined text row 先頭の
U+FEFFをTextDecoderがエンコーディングの目印として消費してしまい、文字列から失われていた。
After
Node・Web 両方のデコーダーで
ignoreBOM: trueを指定し、先頭のU+FEFFをそのまま保持するようにした。
⏳ 未リリース · トピック: Server Components
その他
なし