Fork me on GitHub

2026-04-15のJS: pnpm 11 RC 0、webpack 5.106、Servo v0.1.0

Edit on GitHub 編集履歴を見る

JSer.info #769 - pnpm v11.0.0 RC 0がリリースされました。

Pure ESMパッケージへ移行し、Node.js 18から21のサポートを終了しています。
.npmrcは認証/レジストリ設定のみに限定し、その他の設定はpnpm-workspace.yamlへ移行、pnpm serverコマンドの削除など多くの破壊的変更を含んでいます。
また、pnpm ciコマンドの追加、pnpm sbomでのSBOM生成に対応しています。
minimumReleaseAgeのデフォルトを1日に設定、blockExoticSubdepsのデフォルトをtrueに変更するなど、サプライチェーンセキュリティの強化も行われています。
その他にも、ストアのインデックスにSQLiteを使用するように変更、undiciの採用によるHTTPリクエストの改善なども含まれています。


webpack 5.106がリリースされました。

Plugin Validation Hook(compiler.hooks.validate)の追加、CSS Modulesのランタイムスタイル注入(exportType: "style")のサポートが含まれています。
将来的にcss-loader/style-loader/mini-css-extract-pluginの廃止が予定されています。
その他にも、CommonJSのTree Shaking改善、create-webpack-appツールの追加、実験的な機能としてES Stage 3のSource Phase ImportsによるWebAssemblyサポート、oxc-parserのサポートが追加されています。
また、webpack-cli 7.0.0ではNode.js 20.9.0以上が必要となり、ネイティブTypeScriptサポートが追加されています。


Rustで書かれた組み込み可能なWebレンダリングエンジンであるServoのservoクレートがcrates.ioで公開されました。

アプリケーションにWebレンダリング機能を組み込むためのEmbedding APIを提供しています。
また、LTSバージョンも導入され、半年ごとのメジャーアップグレードとセキュリティアップデートが提供されます。


JSer.infoをサポートするには

JSer.info Sponsors

JSer.info SponsorsGitHub SponsorsとしてJSer.infoを支援してくれている方々です。


ヘッドライン


Release v1.5.0 · Pagefind/pagefind

github.com/Pagefind/pagefind/releases/tag/v1.5.0

Rust JavaScript search library ReleaseNote

Pagefind v1.5.0リリース。
Web Componentsベースの新しいUIシステムの追加、メタデータフィールドのデフォルトインデックス化による検索精度の向上、ダイアクリティカルマーク(発音区別符号)の対応を追加。
CJK(中国語/日本語/韓国語)のクエリ自動セグメンテーション、Web Workerでの検索実行、インデックスチャンクのサイズ削減などパフォーマンスの改善。
Windows ARM64のサポートを追加など


Webpack 5.106 | webpack

webpack.js.org/blog/2026-04-08-webpack-5-106/

webpack ReleaseNote

webpack 5.106リリース。
Plugin Validation Hook(compiler.hooks.validate)の追加。
CSS Modulesのランタイムスタイル注入(exportType: "style")のサポート。
将来的にcss-loader/style-loader/mini-css-extract-pluginを廃止予定。
CommonJSのTree Shaking改善、create-webpack-appツールの追加。
実験的な機能として、ES Stage 3のSource Phase Importsによる実験的なWebAssemblyサポート、oxc-parserのサポート。
webpack-cli 7.0.0ではNode.js 20.9.0+が必要となり、ネイティブTypeScriptサポートが追加されている。


Release pnpm 11 RC 0 · pnpm/pnpm

github.com/pnpm/pnpm/releases/tag/v11.0.0-rc.0

pnpm ReleaseNote

pnpm v11.0.0 rc.0リリース。
Pure ESMパッケージへの移行、Node.js 18-21のサポートを終了。
.npmrcは認証/レジストリ設定のみに限定し、その他の設定はpnpm-workspace.yamlへ移行、pnpm serverコマンドの削除など多くの破壊的変更を含む。
pnpm ciコマンドの追加、pnpm sbomでのSBOM生成に対応。
minimumReleaseAgeのデフォルトを1日に設定、blockExoticSubdepsのデフォルトをtrueに変更などサプライチェーンセキュリティの強化。
ストアのインデックスにSQLiteを使用するように変更、undiciの採用によるHTTPリクエストの改善など。


Bun v1.3.12 | Bun Blog

bun.com/blog/bun-v1.3.12

Bun ReleaseNote

Bun v1.3.12リリース。
Bun.WebViewの追加、Markdownファイルをターミナルで直接実行できるbun ./file.mdのサポート。
インプロセスで動作するコールバックベースのcronスケジューラBun.cron()の追加。
JavaScriptCoreのアップグレードにより、ES ProposalのStage 3のExplicit Resource Management(using/await using)のサポート。
cgroupのCPU制限を考慮するように変更など


Servo is now available on crates.io - Servo aims to empower developers with a lightweight, high-performance alternative for embedding web technologies in applications.

servo.org/blog/2026/04/13/servo-0.1.0-release/

servo Rust browser ReleaseNote

Servo v0.1.0リリース。
Rustで書かれた組み込み可能なWebレンダリングエンジンServoのservoクレートがcrates.ioで公開された。
アプリケーションにWebレンダリング機能を組み込むためのEmbedding APIを提供する。
LTSバージョンも導入され、半年ごとのメジャーアップグレードとセキュリティアップデートが提供される。


アーティクル


Summary of CVE-2026-23869 - Vercel

vercel.com/changelog/summary-of-cve-2026-23869

Next.js React security vercel

React Server Components(RSC)のDoS脆弱性の修正としてNext.js 15.5.15/16.2.3とReact 19.2.5がリリースされている。
App RouterのServer Functionエンドポイントに対して、細工されたHTTPリクエストを送ることで過剰なCPU消費を引き起こせる脆弱性。
Next.js 13.x〜16.xが影響を受けている。


The uphill climb of making diff lines performant - The GitHub Blog

github.blog/engineering/architecture-optimization/the-uphill-climb-of-making-diff-lines-performant/

GitHub React performance article

GitHubのFiles changedタブのReactベースの実装におけるdiff行のパフォーマンス最適化について。
1行あたり10〜15個のDOM要素と8〜13個のReactコンポーネントが必要だった構造を最適化している。
コンポーネント数を2個に削減し、イベントハンドラをdata属性を活用した単一のハンドラに集約するなどの変更をした。
TanStack Virtualによる仮想化の導入、重いCSSセレクタの削除、ドラッグ/リサイズ処理の再実装などでパフォーマンスを改善している。


React Server Components Your Way | TanStack Blog

tanstack.com/blog/react-server-components

React RSC TanStack article

TanStackにおけるReact Server Components(RSC)のアプローチについて。
RSCをデータストリームとして扱い、一方向データフローとしてクライアント側でサーバーレンダリングされたUIの取得やキャッシュを制御できる設計になっている。
サーバーがスロットを用意しクライアントが埋めるComposite Componentsという仕組みや、createServerFnによる明示的なサーバー関数定義などの機能を提供する。


The Intl API: The best browser API you're not using | Polypane

polypane.app/blog/the-intl-api-the-best-browser-api-youre-not-using/

JavaScript i18n article

Intl APIについての解説記事。
Intl.DateTimeFormat/Intl.RelativeTimeFormat/Intl.NumberFormatなどの日付や数値のフォーマットAPIを紹介している。
Intl.ListFormat/Intl.PluralRules/Intl.Segmenter/Intl.Collatorなどの使い方について


Under the hood of MDN's new frontend

developer.mozilla.org/en-US/blog/mdn-front-end-deep-dive/

mdn WebComponents architecture article

MDNのフロントエンドアーキテクチャの刷新についての解説記事。
旧フロントエンド(Yari)はCreate React Appベースで、eject後のwebpack設定の複雑化などの技術的負債を抱えていた。
Sassと最新CSSの混在や、dangerouslySetInnerHTMLによる静的コンテンツの埋め込みなどの課題もあった。
新アーキテクチャではLitベースのWeb Componentsを採用し、独自のServer Components実装でSPAの課題を解決している。
ビルドツールをwebpackからRspackへ移行、Declarative Shadow DOMやBaselineプロジェクトを活用したブラウザ互換性の管理についても解説されている。


ソフトウェア、ツール、ライブラリ関係


yuku-toolchain/yuku: High-performance JavaScript/TypeScript compiler and toolchain in pure Zig 🦎

github.com/yuku-toolchain/yuku

Zig JavaScript TypeScript compiler Tools

Zigで書かれたJavaScript/TypeScriptコンパイラおよびツールチェーン。
Test262でテストされていて、Pure Zigなのでクロスコンパイルが可能となっている。


Diffs, from Pierre

diffs.com/

JavaScript CSS library diff

diffレンダリングとコード表示のライブラリ。
CSS GridとShadow DOMを活用してDOMノード数を削減しレンダリングの高速化やVirtualizationに対応している。
Stack型(統合表示)とSplit型(左右並列表示)の2つのレイアウトに対応し、Shikiベースの構文ハイライト/コメント/マージコンフリクト解決UIなどの機能を持つ。


この記事へ修正リクエストをする
JSer.info Slackに参加する