|
| 1 | +--- |
| 2 | +title: "2026-06-09のJS: pnpm 11.5、Node.js 26.3.0、CloudflareがVoidZeroを買収" |
| 3 | +author: "azu" |
| 4 | +layout: post |
| 5 | +date : 2026-06-09T03:06:21.608Z |
| 6 | +category: JSer |
| 7 | +tags: |
| 8 | +- pnpm |
| 9 | +- nodejs |
| 10 | +- cloudflare |
| 11 | +- vite |
| 12 | +- news |
| 13 | + |
| 14 | +--- |
| 15 | + |
| 16 | +JSer.info #773 - pnpm 11.5がリリースされました。 |
| 17 | + |
| 18 | +- [Release pnpm 11.5 · pnpm/pnpm](https://github.com/pnpm/pnpm/releases/tag/v11.5.0) |
| 19 | + |
| 20 | +新しい機能として、`nodeLinker: hoisted`向けにhoistの範囲を制限する`hoistingLimits`設定が追加されています。 |
| 21 | +また、対話的なプロンプトの改善とStaged publishingの対応改善が含まれています。 |
| 22 | +修正としては、エイリアスインストール時のpeer解決のハング、`pnpm dist-tag`での2FA対応、`minimumReleaseAgeExclude`の扱い、リモートのHTTPS tarball依存の`integrity`フィールドの保持などが含まれます。 |
| 23 | + |
| 24 | +--- |
| 25 | + |
| 26 | +Node.js v26.3.0 (Current)がリリースされました。 |
| 27 | + |
| 28 | +- [Node.js — Node.js 26.3.0 (Current)](https://nodejs.org/en/blog/release/v26.3.0) |
| 29 | + |
| 30 | +`Buffer.poolSize`のデフォルト値が64 KiBに変更されています。 |
| 31 | +新しい機能として、HTTPヘッダの値の検証をカスタマイズする`httpValidation`オプション、パーミッションを破棄する`permission.drop`が追加されています。 |
| 32 | +また、Staged Publishingをサポートしたnpm 11.16.0へとアップデートされています。 |
| 33 | + |
| 34 | +--- |
| 35 | + |
| 36 | +CloudflareがViteやOxcなどを開発するVoidZeroの買収を発表しました。 |
| 37 | + |
| 38 | +- [VoidZero is joining Cloudflare](https://blog.cloudflare.com/voidzero-joins-cloudflare/) |
| 39 | +- [VoidZero is Joining Cloudflare | VoidZero](https://voidzero.dev/posts/voidzero-cloudflare) |
| 40 | + |
| 41 | +Vite、Vitest、Rolldown、Oxc、Vite+の各プロジェクトはMITライセンスのオープンソースのまま開発が継続される予定です。 |
| 42 | +VoidZeroが開発しているViteのデプロイメントプラットフォームである[Void](https://void.cloud/)は、オープンソースにする予定があわせて発表されています。 |
| 43 | + |
| 44 | +---- |
| 45 | +{% include inline-support.html %} |
| 46 | + |
| 47 | +---- |
| 48 | + |
| 49 | +<h1 class="site-genre">ヘッドライン</h1> |
| 50 | + |
| 51 | +---- |
| 52 | + |
| 53 | +## Release pnpm 11.5 · pnpm/pnpm |
| 54 | +[github.com/pnpm/pnpm/releases/tag/v11.5.0](https://github.com/pnpm/pnpm/releases/tag/v11.5.0 "Release pnpm 11.5 · pnpm/pnpm") |
| 55 | +<p class="jser-tags jser-tag-icon"><span class="jser-tag">pnpm</span> <span class="jser-tag">ReleaseNote</span></p> |
| 56 | + |
| 57 | +pnpm 11.5リリース。 |
| 58 | +`nodeLinker: hoisted`向けにhoistの範囲を制限する`hoistingLimits`設定を追加。 |
| 59 | +対話的なプロンプトの改善、Staged publishingの対応改善。 |
| 60 | +エイリアスインストール時のpeer解決のハング、`pnpm dist-tag`での2FA対応を修正。 |
| 61 | +`minimumReleaseAgeExclude`の扱い、リモートのHTTPS tarball依存の`integrity`フィールドの保持などを修正。 |
| 62 | + |
| 63 | + |
| 64 | +---- |
| 65 | + |
| 66 | +## Node.js — Node.js 26.3.0 (Current) |
| 67 | +[nodejs.org/en/blog/release/v26.3.0](https://nodejs.org/en/blog/release/v26.3.0 "Node.js — Node.js 26.3.0 (Current)") |
| 68 | +<p class="jser-tags jser-tag-icon"><span class="jser-tag">nodejs</span> <span class="jser-tag">ReleaseNote</span></p> |
| 69 | + |
| 70 | +Node.js v26.3.0 (Current)リリース。 |
| 71 | +`Buffer.poolSize`のデフォルトを64 KiBに変更。 |
| 72 | +HTTPヘッダの値の検証をカスタマイズする`httpValidation`オプション、パーミッションを破棄する`permission.drop`を追加。 |
| 73 | +Staged Publishingをサポートしたnpm 11.16.0へアップデートなど |
| 74 | + |
| 75 | + |
| 76 | +---- |
| 77 | + |
| 78 | +## Node.js — Node.js 24.16.0 (LTS) |
| 79 | +[nodejs.org/en/blog/release/v24.16.0](https://nodejs.org/en/blog/release/v24.16.0 "Node.js — Node.js 24.16.0 (LTS)") |
| 80 | +<p class="jser-tags jser-tag-icon"><span class="jser-tag">nodejs</span> <span class="jser-tag">ReleaseNote</span></p> |
| 81 | + |
| 82 | +Node.js v24.16.0 (LTS)リリース。 |
| 83 | +`crypto.randomUUIDv7()`によるUUID v7の生成、`fs.stat()`への`signal`オプション、`util.styleText()`の16進数カラー対応を追加。 |
| 84 | +Test Runnerにテスト実行順序のランダム化や`AbortSignal.timeout`向けのモックタイマーを追加、`IncomingMessage`に`req.signal`を追加など |
| 85 | + |
| 86 | + |
| 87 | +---- |
| 88 | + |
| 89 | +## Chrome 150 beta | Blog | Chrome for Developers |
| 90 | +[developer.chrome.com/blog/chrome-150-beta?hl=en](https://developer.chrome.com/blog/chrome-150-beta?hl=en "Chrome 150 beta | Blog | Chrome for Developers") |
| 91 | +<p class="jser-tags jser-tag-icon"><span class="jser-tag">Chrome</span> <span class="jser-tag">browser</span> <span class="jser-tag">ReleaseNote</span> <span class="jser-tag">css</span></p> |
| 92 | + |
| 93 | +Chrome 150 betaリリース。 |
| 94 | +CSSの`text-fit`プロパティ、`background-clip: border-area`によるグラデーションボーダー、`polygon()`の角丸サポート、`focusgroup`属性のサポート。 |
| 95 | +IndexedDBの実装がLevelDBからSQLiteへと変更、`data:` URLのWorkerに一意のopaque originを割り当てるよう変更。 |
| 96 | +`SpeechRecognition`に`quality`オプションを追加など |
| 97 | + |
| 98 | + |
| 99 | +---- |
| 100 | + |
| 101 | +## VoidZero is joining Cloudflare |
| 102 | +[blog.cloudflare.com/voidzero-joins-cloudflare/](https://blog.cloudflare.com/voidzero-joins-cloudflare/ "VoidZero is joining Cloudflare") |
| 103 | +<p class="jser-tags jser-tag-icon"><span class="jser-tag">cloudflare</span> <span class="jser-tag">vite</span> <span class="jser-tag">news</span></p> |
| 104 | + |
| 105 | +CloudflareがViteやOxcなどを開発するVoidZeroを買収。 |
| 106 | + |
| 107 | +- [VoidZero is Joining Cloudflare | VoidZero](https://voidzero.dev/posts/voidzero-cloudflare "VoidZero is Joining Cloudflare | VoidZero") |
| 108 | + |
| 109 | +---- |
| 110 | +<h1 class="site-genre">アーティクル</h1> |
| 111 | + |
| 112 | +---- |
| 113 | + |
| 114 | +## Declarative partial updates | Blog | Chrome for Developers |
| 115 | +[developer.chrome.com/blog/declarative-partial-updates](https://developer.chrome.com/blog/declarative-partial-updates "Declarative partial updates | Blog | Chrome for Developers") |
| 116 | +<p class="jser-tags jser-tag-icon"><span class="jser-tag">Chrome</span> <span class="jser-tag">HTML</span> <span class="jser-tag">WebAPI</span> <span class="jser-tag">DOM</span> <span class="jser-tag">stream</span> <span class="jser-tag">article</span></p> |
| 117 | + |
| 118 | +HTMLを宣言的に部分更新するためのAPIとして提案中の`<template for>`について。 |
| 119 | +`<template>`要素と`<?marker>`などの処理命令プレースホルダーを使い、ドキュメント内の順序に依存せずコンテンツを配信するOut-of-order streamingについて。 |
| 120 | +合わせて利用する`setHTML()`/`replaceWithHTML()`/`streamHTML()`などのJavaScript APIについても解説している。 |
| 121 | +Chrome 148以降のフラグで利用でき、polyfillも実装されている。 |
| 122 | + |
| 123 | + |
| 124 | +---- |
| 125 | + |
| 126 | +## On Rendering Diffs :: Pierre Computer Company |
| 127 | +[pierre.computer/writing/on-rendering-diffs](https://pierre.computer/writing/on-rendering-diffs "On Rendering Diffs :: Pierre Computer Company") |
| 128 | +<p class="jser-tags jser-tag-icon"><span class="jser-tag">JavaScript</span> <span class="jser-tag">performance</span> <span class="jser-tag">diff</span> <span class="jser-tag">library</span> <span class="jser-tag">article</span></p> |
| 129 | + |
| 130 | +Pierreが開発したdiffレンダリングライブラリ`@pierre/diffs`の実装解説。 |
| 131 | +巨大なコード差分をブラウザで効率的に描画するための、仮想化やメモリ最適化の手法について書かれている。 |
| 132 | +sticky positioningを反転させてスクロール中の空白表示を防ぐ手法、行範囲レンダリングでのバイナリサーチ、DOM要素を再利用することでGCを避ける作りについて。 |
| 133 | +また、Shikiによる構文ハイライトのWorkerスレッド化とLRUキャッシュについても扱っている。 |
| 134 | + |
| 135 | + |
| 136 | +---- |
| 137 | +<h1 class="site-genre">スライド、動画関係</h1> |
| 138 | + |
| 139 | +---- |
| 140 | + |
| 141 | +## TSKaigi 2026 発表資料まとめ |
| 142 | +[zenn.dev/yasse/articles/a7240304af804c](https://zenn.dev/yasse/articles/a7240304af804c "TSKaigi 2026 発表資料まとめ") |
| 143 | +<p class="jser-tags jser-tag-icon"><span class="jser-tag">TypeScript</span> <span class="jser-tag">Conference</span> <span class="jser-tag">slide</span></p> |
| 144 | + |
| 145 | +TSKaigi 2026のスライド資料のまとめ。 |
| 146 | + |
| 147 | +- [TSKaigi 2026](https://2026.tskaigi.org/ "TSKaigi 2026") |
| 148 | + |
| 149 | +---- |
| 150 | + |
| 151 | +## Oxlintのカスタムルールの現況 - Speaker Deck |
| 152 | +[speakerdeck.com/syumai/oxlint-custom-rule](https://speakerdeck.com/syumai/oxlint-custom-rule "Oxlintのカスタムルールの現況 - Speaker Deck") |
| 153 | +<p class="jser-tags jser-tag-icon"><span class="jser-tag">ESLint</span> <span class="jser-tag">Rust</span> <span class="jser-tag">slide</span> <span class="jser-tag">JavaScript</span></p> |
| 154 | + |
| 155 | +Oxlintのカスタムルールについてのスライド。 |
| 156 | +Rust製のLinterであるOxlintで、ESLint互換のカスタムルールを追加できるJS Plugin(アルファ版)の機能やパフォーマンスについて紹介している。 |
| 157 | +既存のESLintプラグインの動作やtsgolint、corsa-bindについてなど |
| 158 | + |
| 159 | + |
| 160 | +---- |
| 161 | +<h1 class="site-genre">サイト、サービス、ドキュメント</h1> |
| 162 | + |
| 163 | +---- |
| 164 | + |
| 165 | +## SoraKumo001/satoru |
| 166 | +[github.com/SoraKumo001/satoru](https://github.com/SoraKumo001/satoru "SoraKumo001/satoru") |
| 167 | +<p class="jser-tags jser-tag-icon"><span class="jser-tag">WebAssembly</span> <span class="jser-tag">HTML</span> <span class="jser-tag">css</span> <span class="jser-tag">SVG</span> <span class="jser-tag">PDF</span> <span class="jser-tag">Image</span> <span class="jser-tag">library</span></p> |
| 168 | + |
| 169 | +WebAssemblyで動作するHTMLをSVG/PNG/WebP/PDFへ変換するレンダリングエンジン。 |
| 170 | +描画にSkia、レイアウトにlitehtmlを利用し、CSSを含んだHTMLを画像へと変換する。 |
| 171 | +TTF/OTF/WOFF2のフォントやGoogle Fontsの解決、PNG/JPEG/WebP/AVIFの画像をサポートする。 |
| 172 | +Node.js/ブラウザ/Cloudflare Workersで実行できる。 |
| 173 | + |
| 174 | + |
| 175 | +---- |
| 176 | +<h1 class="site-genre">ソフトウェア、ツール、ライブラリ関係</h1> |
| 177 | + |
| 178 | +---- |
| 179 | + |
| 180 | +## microsoft/Webwright: A simple SWE style browser agent framework that achieves SOTA results on long horizon web tasks. |
| 181 | +[github.com/microsoft/Webwright](https://github.com/microsoft/Webwright "microsoft/Webwright: A simple SWE style browser agent framework that achieves SOTA results on long horizon web tasks.") |
| 182 | +<p class="jser-tags jser-tag-icon"><span class="jser-tag">AI</span> <span class="jser-tag">browser</span> <span class="jser-tag">automation</span> <span class="jser-tag">playwright</span> <span class="jser-tag">library</span></p> |
| 183 | + |
| 184 | +Microsoftによるブラウザエージェントフレームワーク。 |
| 185 | +エージェントが個別のブラウザ操作を予測するのではなくPlaywrightを使ったPythonコードを生成して実行する。 |
| 186 | +反復的なエージェントループとディレクトリをworkspaceとして扱って毎回使い捨てのセッションで進める方式になっている |
| 187 | + |
| 188 | + |
| 189 | +---- |
| 190 | + |
| 191 | +## pionxzh/wakaru: 🔪📦 Javascript decompiler for modern frontend |
| 192 | +[github.com/pionxzh/wakaru](https://github.com/pionxzh/wakaru "pionxzh/wakaru: 🔪📦 Javascript decompiler for modern frontend") |
| 193 | +<p class="jser-tags jser-tag-icon"><span class="jser-tag">JavaScript</span> <span class="jser-tag">Tools</span> <span class="jser-tag">webpack</span> <span class="jser-tag">bundler</span> <span class="jser-tag">esbuild</span></p> |
| 194 | + |
| 195 | +minifyやbundleされたJavaScriptを読みやすいコードへと復元するデコンパイラ。 |
| 196 | +webpack/esbuild/Bun/Browserifyなどのbundleをモジュール単位に分割するunpackerを提供する。 |
| 197 | +Terser/Babel/SWCなどでトランスパイル/圧縮されたコードを復元するunminifyや、ソースマップをサポートしている。 |
| 198 | + |
| 199 | + |
| 200 | +---- |
| 201 | + |
| 202 | +## Shakya47/pip-it-up: Pop any UI component into a floating Picture-in-Picture window. Zero config. Auto-sizing. Framework-agnostic core. |
| 203 | +[github.com/Shakya47/pip-it-up](https://github.com/Shakya47/pip-it-up "Shakya47/pip-it-up: Pop any UI component into a floating Picture-in-Picture window. Zero config. Auto-sizing. Framework-agnostic core.") |
| 204 | +<p class="jser-tags jser-tag-icon"><span class="jser-tag">JavaScript</span> <span class="jser-tag">React</span> <span class="jser-tag">library</span></p> |
| 205 | + |
| 206 | +Document Picture-in-Picture APIを扱うReactコンポーネントライブラリ。 |
| 207 | +リサイズやスタイルの同期などに対応している。 |
| 208 | + |
| 209 | + |
| 210 | +---- |
| 211 | +<h1 class="site-genre">書籍関係</h1> |
| 212 | + |
| 213 | +---- |
| 214 | + |
| 215 | +## 基本からしっかり学ぶフロントエンドテスト入門 | 技術評論社 |
| 216 | +[gihyo.jp/book/2026/978-4-297-15704-3](https://gihyo.jp/book/2026/978-4-297-15704-3 "基本からしっかり学ぶフロントエンドテスト入門 | 技術評論社") |
| 217 | +<p class="jser-tags jser-tag-icon"><span class="jser-tag">JavaScript</span> <span class="jser-tag">test</span> <span class="jser-tag">book</span></p> |
| 218 | + |
| 219 | +2026年6月26日発売。 |
| 220 | +フロントエンドのテストについての書籍 |
| 221 | + |
| 222 | + |
| 223 | +---- |
0 commit comments