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

WWDC26 News:Safari 27 BetaのWebKit — 2026年 第24週 JavaScript

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

calendar_todaysummarizeWeek 24-2026
ブラウザ

WWDC26 News:Safari 27 BetaのWebKit

Safari 27 ベータ58件の新機能525件のバグ修正を携えてリリースされました — Safari 史上最多の修正件数です。主な追加機能として、appearance: base-select::picker-icon::checkmark などの新 pseudo-element を用いた customizable select、overflow-anchor によるスクロールアンカリング、そして同期的に見える Wasm コードが JavaScript Promise でサスペンドできる WebAssembly JSPI が含まれます。JavaScript セクションでは top-level await の正確な動作のため ESM ローダーを C++ でフルリライトし、test262 と Web Platform Tests で検証されました。CSS には :heading pseudo-class、revert-rule キーワード、box sizing 用 stretch キーワード、transform 対応 anchor positioning が加わりました。ReadableStream API は for await...of による非同期反復、ReadableStream.from() 静的メソッド、postMessage() を介したコンテキスト間転送をサポートします。

WWDC26 News:Safari 27 BetaのWebKit
Read Articlearrow_forward
Video · JavaScript

今日から使える新JavaScript Feature 11選

Kyle(Web Dev Simplified)が最近リリースされた、またはリリース間近の JavaScript 機能を11件紹介します。全ブラウザ対応の9機能は次の通りです: Set メソッド(unionintersectiondifferencesymmetricDifferenceisSubsetOf)、iterator helpers(任意のイテレータに対する mapfiltertaketoArray)、同期/非同期エラーを統一処理する Promise.trytype: 'json' を使う import attributes、ユーザー入力パターンを安全にする RegExp.escape、非同期イテラブル向けの Array.fromAsync、クロスレルムチェック用の Error.isErrorMap.prototype.getOrInsertgetOrInsertComputed、浮動小数点精度のための Math.sumPrecise。Safari 未対応のボーナス機能2件: Symbol.disposeusing キーワードによる明示的リソース管理、タイムゾーン・期間・フォーマット対応の完全な Date 代替 Temporal API

AI_INFOGRAPHIC
今日から使える新JavaScript Feature 11選 — infographicWATCH_VIDEOarrow_forward
Article · ツールREAD TIME: 4m

Tales from the Void:2026年5月振り返り

VoidZero2026年5月に正式に Cloudflare へ参画しましたが、Vite、Vitest、Rolldown、Oxc は Evan You のリーダーシップのもとオープンソース・MIT ライセンス・ベンダー中立の状態を維持します。最大の技術的マイルストーンは Vite 8 を支える Rust 製バンドラー Rolldown 1.0 のリリースで、API とビルド出力の安定性、Rollup プラグイン互換性、Rollup 比10〜30倍の高速ビルド(esbuild と同等)を提供します。Ramp、Beehiiv、Mercedes-Benz.io などの先行導入企業はビルド時間を最大64%短縮したと報告しています。Oxfmt は25%の速度改善と Svelte ファイルのフォーマット対応を追加し、Oxlint は LLM ガードレール向けエージェント出力モードを導入しました。Vite+ にはステージング公開、VS Code 統合、古い Vite import を防ぐ組み込みルールが加わりました。

READ_FULL_LOGarrow_forward
Article · ベストプラクティスREAD TIME: 4m

不要なasyncの静かな問題

実際の I/O を行わない関数に async を付けると、戻り値の型が値から Promise に変わり、すべての呼び出し元・テスト・コンポーネントユーティリティに伝播します — いわゆる関数の色付け問題(function coloring problem)です。Matt Smith はパフォーマンスオーバーヘッドはほとんど本質的な問題ではないと主張します。コストは認知的なものです。不必要な async は実際の I/O 境界がどこにあるかを曖昧にし、ストリーミング SSR、React Server Components、エッジランタイム、Suspense ドリブンレンダリングで飽和している現代システムにおいて async 関数シグネチャを誤解を招くシグナルにします。彼の経験則は「async は投機的な将来の要件ではなく、実際の非同期境界を表すべきだ」というもので、このキーワードは実装だけでなく周囲のコード全体の形を変えるからです。

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

Angular Resource Snapshot入門

Angular の Resource API は idle、loading、reloading、resolved、local、error などすべての状態遷移を直前の値とともにキャプチャする ResourceSnapshot<T> 型の snapshot プロパティを公開しています。Fanis Prodromou によるこの記事では、snapshotlinkedSignal および resourceFromSnapshots と組み合わせ、フェッチ中に resource.value が null にリセットされる際のスケルトンローダーちらつきなしに前回のデータを保持する方法を示します。エラー状態では組み込みの ResourceSnapshot 型は status: 'error' と value を同時に持てないためフレームワークが ResourceValueError をスローするので、前回の値を保存して hasError signal を公開する keepValueOnError フラグを備えたカスタム resilientResource 関数を紹介しています。同じ関数がハンドラーパイプラインを通じて両方の動作を組み合わせます。

READ_FULL_LOGarrow_forward
Article · リンティングREAD TIME: 2m

ESLint v10.5.0リリース

ESLint v10.5.05つのコアルール全体に診断改善を提供します。max-lines-per-functionmax-nested-callbacksmax-statements ルールは関数本体全体ではなく関数ヘッダーのみをハイライトするようになり、エディタでの視覚的ノイズを軽減します。max-depthno-with ルールは問題のあるキーワードのみをハイライトします。また、max-nested-callbacks のスタック追跡修正と max-depth の else-if チェーン処理修正により、既存のコードベースで新たな lint エラーが出る可能性があります。ドキュメントは Node.js の ICU 前提条件と parserOptionslanguageOptions より優先されるルールを明確化しています。

READ_FULL_LOGarrow_forward
Article · TypeScriptREAD TIME: 14m

TanStack Table V9のTypeScript Performance

TanStack Table V9 はグローバルな declaration merging を廃止し、新しい TFeatures ジェネリックによるモジュール式 per-table 機能システムを導入しました。アルファ版では table-core の TypeScript インスタンシエーションが123万件に達し — V8 のベースライン78k の14.7倍 — エディタの遅延が顕著でした。beta.12 では266k まで削減(78.3%減)し、全パッケージで62〜86%のインスタンシエーション削減を達成しました。主な手法は、14分岐の UnionToIntersection 条件型を命名された ExtractFeatureMapTypes インターフェースに置き換えること、内部呼び出し箇所での feature-conditional 展開を避けるため Table_Internal を書き直すこと、166個の型パラメーターに in out 不変アノテーションを追加して高速な分散ベース比較を可能にすること、そしてコンストラクションヘルパーに明示的な型引数を渡してコストの高い型推論を回避することです。

READ_FULL_LOGarrow_forward
summarizeDigest_Summary

今週の JavaScript ニュースは、2 つの重要なプラットフォームイベントが注目を集めました。WWDC26 で発表された Safari 27 Beta58 件の新機能と史上最多の 525 件のバグ修正を搭載しており、正しい top-level await のための ESM ローダーの C++ 完全リライト、WebAssembly JavaScript Promise Integration(JSPI)for await...of による非同期反復と postMessage() を介したコンテキスト間転送をサポートする改善された ReadableStream API が含まれています。一方 VoidZero は Cloudflare に正式参画しつつ、Vite・Vitest・Rolldown・Oxc のオープンソース状態を維持しました。注目のマイルストーンは Rollup 比 10〜30 倍の高速ビルドを提供する Rust 製バンドラー Rolldown 1.0 で、Ramp や Mercedes-Benz.io などの先行導入企業はすでにビルド時間を最大 64% 短縮しています。

ライブラリおよびツール分野では TanStack Table V9 が本格的な TypeScript パフォーマンスエンジニアリングを示しました。TFeatures ジェネリックの導入、UnionToIntersection 条件型を ExtractFeatureMapTypes インターフェースに置き換え、in/out 分散アノテーションの追加によって、インスタンシエーションを 123 万件から 266k まで 78.3% 削減しました。ESLint v10.5.0 では max-lines-per-function などのルールが関数本体全体ではなくヘッダーのみをハイライトする診断改善が行われました。Angular の Resource API の snapshot プロパティも詳しく解説され、linkedSignal とカスタム resilientResource 関数によってデータフェッチ中のスケルトンローダーちらつきを防ぐ方法が紹介されました。

より広いエコシステムの観点では、Set メソッド(unionintersectiondifference)、iterator helpers、Promise.tryRegExp.escapeArray.fromAsyncError.isErrorMap.prototype.getOrInsertMath.sumPrecise など、今すぐ使える 11 のクロスブラウザ JavaScript 機能がまとめて紹介されました。Safari 未対応の using キーワードと Symbol.dispose による明示的リソース管理および Temporal API も取り上げられ、不要な async キーワードの使用がコールチェーン全体に Promise 戻り値型を伝播させ隠れた認知コストを生むというベストプラクティスの議論も行われました。

Key Takeaways
  • Vite 8 を支える Rust 製バンドラー Rolldown 1.0 がプロダクション対応となり、Rollup プラグイン完全互換を保ちながら 1030 倍の高速ビルドを実現 — 先行導入企業は最大 64% のビルド時間短縮を報告しています。
  • Safari 27 Beta の ESM ローダーリライトと WebAssembly JSPI は今週最大のブラウザレベル JavaScript の進歩ですが、Set メソッド・Promise.try・Temporal など 11 のクロスブラウザ機能は今日から全主要エンジンで利用可能です。
  • TanStack Table V9 は分散アノテーションと命名されたインターフェースにより TypeScript インスタンシエーションを 78% 削減 — 大規模なジェネリックライブラリのパフォーマンスチューニングの教科書的事例です。