terminal
Weekly Digest // JS_FRAMEWORKS — Week 4-2026
codeWeekly Report

Rolldown 1.0 RCを発表 — 2026年 第4週 JavaScript

JS frameworks, React/Vue/Svelte, and runtime updates

calendar_todaysummarizeWeek 4-2026
バンドラー

Rolldown 1.0 RCを発表

VoidZeroはRust製のJavaScript/TypeScriptバンドラーであるRolldown 1.0 RCを発表し、パブリックAPIの安定性を宣言しました。beta.1以降3,400件以上のコミット749件の機能追加、682件のバグ修正、109件のパフォーマンス最適化が含まれており、Rollupと比較して10〜30倍高速です。Rollup plugin APIと互換性を保ちながら、Oxcによる組み込みTypeScript/JSX変換、ネイティブCJS/ESM interop、webpackライクなoutput.codeSplitting APIを提供します。Vite 8 betaはすでにRolldownをデフォルトバンドラーとして採用し、既存のesbuild + Rollupの二重パイプラインを統合しています。

Rolldown 1.0 RCを発表
Read Articlearrow_forward
Article · リンティングREAD TIME: 2m

ESLint v10.0.0-rc.1リリース

ESLint v10.0.0-rc.1が最終安定版のリリースに先立ち、コミュニティテスト用として公開されました。主要な変更点はEspree v11.1.0ESLint Scope v9.1.0が組み込みTypeScript型定義を同梱するようになり、従来の@types/espreeおよび@types/eslint-scopeパッケージを置き換える点です。新しい型定義には既存の型との差分(バグ修正)が含まれるため、利用プロジェクトは確認が必要です。no-shadowルールの関数・クラス式名の扱いの修正なども含まれており、eslint@nextでインストールできます。

READ_FULL_LOGarrow_forward
Article · フレームワークREAD TIME: 6m

Nuxt 4.3

Nuxt 4.3が開発者体験とパフォーマンス改善を中心にリリースされました。route rulesでappLayoutプロパティによる宣言的なレイアウト管理が可能になり、ISR/SWRルートへのpayload抽出拡張によりCDNで_payload.jsonをキャッシュしてクライアントAPIコールを削減できます。setPageLayoutはレイアウトへのprops直接渡しをサポートする第2引数を追加しました。サーバーディレクトリ内の保護されたimportのための#serveraliasが追加され、route rulesのコンパイルにrou3を採用してradix3クライアントバンドル依存を排除しました。主要機能のほとんどはNuxt v3.21.0にもバックポートされています。

READ_FULL_LOGarrow_forward
Article · フレームワークREAD TIME: 6m

Angular 21のSignal Forms

Angular 21 betaで実験的に導入されたSignal Formsは、Template FormsやReactive Formsに比べてボイラープレートを大幅に削減するモデル駆動型のアプローチです。signalモデルを新しいform()関数に渡すとFieldTree/FieldStateの階層構造が生成され、コピーを持たず元のモデルを直接変更します。バインディングには[field]ディレクティブ(v21.0.0-next.8で[control]から改名)を使用し、組み込みバリデーター、カスタムバリデーター、schemaの再利用、whenオプションによる条件付きバリデーションをサポートします。カスタムコントロールは4メソッドのControlValueAccessor実装が不要になり、modelSignal型のvalueプロパティ1つで新しいFormValueControl<>インターフェースを満たせます。

READ_FULL_LOGarrow_forward
Article · ツーリングREAD TIME: 5m

Biome 2026年ロードマップ

Biomeコアチームが2026年のロードマップを公開しました。2025年月間1,500万ダウンロードを突破し、tsc不要のtype-awareリントルール、GritQLプラグイン、Vue/Svelte/Astroの実験的サポートを含むBiome v2をリリースしました。2026年の主要計画にはSCSS対応、JSXとCSS間のcross-languageリントルール、Prettier準拠のHTMLフォーマット、JavaScriptへのCSS/GraphQL組み込み言語DX向上、LSP機能強化、opt-inモノレポworkspace設定、YAMLの安定化などが含まれます。モノレポのメモリリークや複雑な設定のデバッグ問題といった過去の課題についても言及しています。

READ_FULL_LOGarrow_forward
Article · バンドラーREAD TIME: 6m

Turbopackの内部:構築を減らして高速化する

Next.jsチームがTurbopackの核心である増分計算(incremental computation)アーキテクチャを詳しく解説します。変更のたびに全体を再ビルドする代わりに、Salsa(Rust-AnalyzerやRuffの基盤)とSolidJSのsignalからインスピレーションを得た「value cell」Vc<…>)という細粒度のキャッシュ単位を使い、どの関数がどのセルを読んだかを自動追跡します。ソースファイルが変更されると、実際にそのセルを読んだ関数のみがdirtyとマークされ、active query(開いているdevページまたはプロダクションビルドリクエスト)が発生するまで再計算が遅延されます。依存グラフの上に「aggregation graph」を維持し、数百万の細粒度ノードを走査せずにサブグラフ全体のクエリを効率的に処理します。Next.js 16.1からnext devのファイルシステムキャッシュが安定してデフォルト有効になっています。

READ_FULL_LOGarrow_forward
Article · フレームワークREAD TIME: 5m

React Compilerにライブラリロジックを適応させる

TanStack Formのリードメンテナーであるorbin Crutchleyは、React Compilerの自動メモ化がクラスベースのライブラリコードで一般的なパターンを静かに破壊するケースを解説します。useStateで作成したrefオブジェクトを子コンポーネントのpropとして渡すと、コンパイラはオブジェクトの参照同一性で子をメモ化し、内部値が変化しても更新されなくなります。このバグはクラスインスタンスを介した間接的な変更ではESLintルールで検出されません。解決策はBabelプラグインでpanicThreshold: 'all_errors'を設定し、変更の代わりにuseMemoで新しいオブジェクトを生成するパターンに移行することです。

READ_FULL_LOGarrow_forward
summarizeDigest_Summary

今週のJavaScriptツーリングは、Rustによる世代交代が主軸となっています。VoidZeroRolldown 1.0 RCが中心的な話題です。beta以降3,400件超のコミット、Rollup比10〜30倍の速度Oxcによる組み込みTypeScript/JSX変換、webpackスタイルのチャンク制御のためのoutput.codeSplitting APIを備えながらも、Rollupプラグイン互換性を維持しています。特にVite 8 betaがすでにRolldownをデフォルトバンドラーとして採用し、従来のesbuild + Rollupの二重パイプラインを単一ツールへ統合したことが注目されます。Next.jsチームによるTurbopackの増分計算アーキテクチャの詳解 — SalsaとSolidJS signalに着想を得たdemand-driven「value cell」(Vc<…>)と、Next.js 16.1で安定化したファイルシステムキャッシュ — もバンドラルネサンスを締めくくっています。

リンティング分野も活発です。ESLint v10.0.0-rc.1EspreeESLint Scopeに組み込みTypeScript型定義を追加し、DefinitelyTypedパッケージを置き換えます。旧来のコミュニティ型に依存するプロジェクトは差分を確認する必要があります。Biome月間1,500万ダウンロードを達成したBiome v2を基盤に、野心的な2026年ロードマップを公開しました。SCSSサポート、JSXとCSSにまたがるcross-languageリントルール、HTMLフォーマット改善、メモリリーク問題を解決するopt-inモノレポworkspace設定が柱です。

フレームワーク面では、Nuxt 4.3がroute rulesのappLayoutによる宣言的レイアウト管理、ISR/SWRルートまで拡張されたCDNキャッシュ可能なpayload抽出、サーバー専用importのための#serveraliasを提供します。Angular 21の実験的Signal FormsはSignalモデルをform()関数に渡してFieldTree階層を生成し、従来4メソッドのControlValueAccessorを単一のmodelSignalvalueプロパティに置き換えます。一方、Corbin CrutchleyによるReact Compilerのサイレントメモ化の落とし穴 — クラスベースのref変更がコンパイラの依存追跡を回避する問題 — はコンパイラを導入するライブラリ作者必読の内容です。

Key Takeaways
  • Rolldown 1.0 RCがAPI安定性を宣言し、Vite 8 betaのデフォルトバンドラーとして採用されたことで、Rustベースの単一バンドラーの未来が現実となりました。
  • ESLint v10とBiomeの2026年ロードマップはどちらも、外部型依存の排除とcross-languageツーリングの拡張という方向に収束しています。
  • AngularのSignal FormsとReact Compilerのメモ化の落とし穴は、フレームワークのDXがReactivity Signalを中心に根本から再設計されていることを示しています。