|
| 1 | +--- |
| 2 | +title: "2026-04-29のJS: Node.js 24.15.0(LTS)、Rspack 2.0、pnpm 11" |
| 3 | +author: "azu" |
| 4 | +layout: post |
| 5 | +date: 2026-04-29T01:03:52.597Z |
| 6 | +category: JSer |
| 7 | +tags: |
| 8 | +- Tools |
| 9 | +- React |
| 10 | +- TypeScript |
| 11 | +- nodejs |
| 12 | +- AI |
| 13 | + |
| 14 | +--- |
| 15 | + |
| 16 | +JSer.info #770 - Node.js 24.15.0(LTS)がリリースされました。 |
| 17 | + |
| 18 | +- [Node.js — Node.js 24.15.0 (LTS)](https://nodejs.org/en/blog/release/v24.15.0) |
| 19 | + |
| 20 | +`require(esm)`とモジュールコンパイルキャッシュが安定版(Stable)に昇格しています。また、SQLiteがリリース候補(Release Candidate)段階に進みました。そのほかには、`--max-heap-size`オプションの追加、Socketの`setTOS`/`getTOS`メソッドの追加、`fs.stat`の`throwIfNoEntry`オプションの追加などが含まれています。 |
| 21 | + |
| 22 | +--- |
| 23 | + |
| 24 | +Rspack 2.0がリリースされました。 |
| 25 | + |
| 26 | +- [Announcing Rspack 2.0 - Rspack](https://rspack.rs/blog/announcing-2-0) |
| 27 | + |
| 28 | +`@rspack/core`などのコアパッケージをPure ESMパッケージへ移行し、CommonJSビルドが削除されています。ビルドパフォーマンスの改善、CommonJSの`require`分割代入やプロパティアクセスのTree Shakingの改善が含まれています。また、`/*#__NO_SIDE_EFFECTS__*/`アノテーションのサポート、`library.type`に`modern-module`の追加、React Server Componentsの実験的サポートなども追加されています。 |
| 29 | + |
| 30 | +--- |
| 31 | + |
| 32 | +pnpm v11.0.0がリリースされました。 |
| 33 | + |
| 34 | +- [Release pnpm 11 · pnpm/pnpm](https://github.com/pnpm/pnpm/releases/tag/v11.0.0) |
| 35 | + |
| 36 | +Pure ESMパッケージへ移行し、Node.js 18-21のサポートが終了しています。`.npmrc`は認証/レジストリ設定のみに限定され、その他の設定は`pnpm-workspace.yaml`へ移行されています。npm CLIへの依存を排除して`pnpm publish`/`pnpm login`/`pnpm audit`がネイティブ実装に変更され、`pnpm ci`/`pnpm sbom`/`pnpm clean`/`pnpm pack-app`コマンドが追加されています。 |
| 37 | + |
| 38 | +---- |
| 39 | +{% include inline-support.html %} |
| 40 | + |
| 41 | +---- |
| 42 | +<h1 class="site-genre">ヘッドライン</h1> |
| 43 | + |
| 44 | +---- |
| 45 | + |
| 46 | +## v1.17.0 | React Aria |
| 47 | +[react-aria.adobe.com/releases/v1-17-0](https://react-aria.adobe.com/releases/v1-17-0 "v1.17.0 | React Aria") |
| 48 | +<p class="jser-tags jser-tag-icon"><span class="jser-tag">React</span> <span class="jser-tag">library</span> <span class="jser-tag">ReleaseNote</span></p> |
| 49 | + |
| 50 | +React Aria v1.17.0リリース。 |
| 51 | +Tableの展開可能な行のサポート、Virtualizerのウィンドウスクロール対応、水平方向のVirtualizeの対応。 |
| 52 | +個別のhookパッケージを`react-aria`と`react-stately`に統合して、依存パッケージ数を削減。 |
| 53 | +sub-path imports(`react-aria-components/Button`など)のサポート、マイグレーション用のcodemodも提供されている。 |
| 54 | +ComboBoxのジェネリック型パラメータサポート、NumberFieldに`commitBehavior` propの追加、Selectに`shouldCloseOnSelect`オプションの追加など。 |
| 55 | + |
| 56 | + |
| 57 | +---- |
| 58 | + |
| 59 | +## Node.js — Node.js 24.15.0 (LTS) |
| 60 | +[nodejs.org/en/blog/release/v24.15.0](https://nodejs.org/en/blog/release/v24.15.0 "Node.js — Node.js 24.15.0 (LTS)") |
| 61 | +<p class="jser-tags jser-tag-icon"><span class="jser-tag">nodejs</span> <span class="jser-tag">ReleaseNote</span></p> |
| 62 | + |
| 63 | +Node.js 24.15.0リリース。 |
| 64 | +`require(esm)`とモジュールコンパイルキャッシュが安定版に昇格、SQLiteがリリース候補段階へ進んだ。 |
| 65 | +`--max-heap-size`オプションの追加、Socketの`setTOS`/`getTOS`メソッドの追加、`fs.stat`の`throwIfNoEntry`オプションの追加など。 |
| 66 | + |
| 67 | + |
| 68 | +---- |
| 69 | + |
| 70 | +## Bun v1.3.13 | Bun Blog |
| 71 | +[bun.com/blog/bun-v1.3.13](https://bun.com/blog/bun-v1.3.13 "Bun v1.3.13 | Bun Blog") |
| 72 | +<p class="jser-tags jser-tag-icon"><span class="jser-tag">Bun</span> <span class="jser-tag">ReleaseNote</span></p> |
| 73 | + |
| 74 | +Bun v1.3.13リリース。 |
| 75 | +`bun test`に各テストファイルを独立したグローバル環境で実行する`--isolate`フラグを追加。 |
| 76 | +テストをworkerプロセスで並列実行する`--parallel`、CIジョブ間でテストを分割する`--shard`、gitの変更に影響されたテストのみ実行する`--changed`フラグを追加。 |
| 77 | +`bun install`でtarball展開をストリーミング化してメモリ使用量を削減、Isolated linkerによりmonorepoのインストール速度を改善。 |
| 78 | +SHA3-224/256/384/512のWebCryptoと`node:crypto`対応、`SubtleCrypto`でのX25519鍵導出に対応。 |
| 79 | +WebSocketクライアントが`ws+unix://`/`wss+unix://`のUnixドメインソケット接続をサポート。 |
| 80 | +`Bun.serve()`でRangeリクエストのレポート、zlib-ngを使いgzip圧縮のパフォーマンス改善など |
| 81 | + |
| 82 | + |
| 83 | +---- |
| 84 | + |
| 85 | +## Announcing Rspack 2.0 - Rspack |
| 86 | +[rspack.rs/blog/announcing-2-0](https://rspack.rs/blog/announcing-2-0 "Announcing Rspack 2.0 - Rspack") |
| 87 | +<p class="jser-tags jser-tag-icon"><span class="jser-tag">rspack</span> <span class="jser-tag">ReleaseNote</span></p> |
| 88 | + |
| 89 | +Rspack 2.0リリース。 |
| 90 | +`@rspack/core`などのコアパッケージをPure ESMパッケージへ移行、CommonJSビルドを削除。 |
| 91 | +`@rspack/dev-server`の依存数の削減、トップレベルの`target`オプションがLoaderやMinimizer Pluginに自動継承されるように変更。 |
| 92 | +ビルドパフォーマンスの改善、CommonJSの`require`分割代入やプロパティアクセスのTree Shakingを改善。 |
| 93 | +`/*#__NO_SIDE_EFFECTS__*/`アノテーション、Module Federationの共有依存のExportレベルでのTree Shakingに対応。 |
| 94 | +`import.meta`/`import defer`などをそのまま出力できるように、`library.type`に`modern-module`を追加。 |
| 95 | +React Server Componentsの実験的サポート、`#/`サブパスエイリアスをサポート、`swc-loader`の`detectSyntax`オプションの追加など |
| 96 | + |
| 97 | + |
| 98 | +---- |
| 99 | + |
| 100 | +## Fresh 2.3: Zero JS by default, View Transitions, and Temporal support | Deno |
| 101 | +[deno.com/blog/fresh-2.3](https://deno.com/blog/fresh-2.3 "Fresh 2.3: Zero JS by default, View Transitions, and Temporal support | Deno") |
| 102 | +<p class="jser-tags jser-tag-icon"><span class="jser-tag">deno</span> <span class="jser-tag">vite</span> <span class="jser-tag">ReleaseNote</span></p> |
| 103 | + |
| 104 | +Freshフレームワークのv2.3リリース。 |
| 105 | +静的ページでデフォルトではJavaScriptを出力しないように変更、View Transitions APIのサポート、`app.ws()`によるWebSocketのサポート、Vite統合の改善。 |
| 106 | +CSP nonceの自動生成、CIDR形式によるIPフィルタリング、Server to ClientのOpenTelemetryトレース伝播、Temporal APIをサポート。 |
| 107 | +複数の静的ディレクトリのサポート、フォーム送信時のローディング表示、リバースプロキシ対応(`trustProxy`オプション)の追加など。 |
| 108 | + |
| 109 | + |
| 110 | +---- |
| 111 | + |
| 112 | +## Release pnpm 11 · pnpm/pnpm |
| 113 | +[github.com/pnpm/pnpm/releases/tag/v11.0.0](https://github.com/pnpm/pnpm/releases/tag/v11.0.0 "Release pnpm 11 · pnpm/pnpm") |
| 114 | +<p class="jser-tags jser-tag-icon"><span class="jser-tag">pnpm</span> <span class="jser-tag">ReleaseNote</span></p> |
| 115 | + |
| 116 | +pnpm v11.0.0リリース。 |
| 117 | +Pure ESMパッケージへの移行、Node.js 18-21のサポートを終了。 |
| 118 | +`.npmrc`は認証/レジストリ設定のみに限定し、その他の設定は`pnpm-workspace.yaml`へ移行。 |
| 119 | +`minimumReleaseAge`のデフォルトを1日に変更、`allowBuilds`に設定を統一、ストアのインデックスにSQLiteを使用するように変更。 |
| 120 | +npm CLIへの依存を排除して`pnpm publish`/`pnpm login`/`pnpm audit`をネイティブ実装に変更。 |
| 121 | +`pnpm ci`/`pnpm sbom`/`pnpm clean`/`pnpm pack-app`コマンドの追加。 |
| 122 | + |
| 123 | + |
| 124 | +---- |
| 125 | +<h1 class="site-genre">アーティクル</h1> |
| 126 | + |
| 127 | +---- |
| 128 | + |
| 129 | +## Manage agent skills with GitHub CLI - GitHub Changelog |
| 130 | +[github.blog/changelog/2026-04-16-manage-agent-skills-with-github-cli/](https://github.blog/changelog/2026-04-16-manage-agent-skills-with-github-cli/ "Manage agent skills with GitHub CLI - GitHub Changelog") |
| 131 | +<p class="jser-tags jser-tag-icon"><span class="jser-tag">GitHub</span> <span class="jser-tag">CLI</span> <span class="jser-tag">AI</span> <span class="jser-tag">Tools</span></p> |
| 132 | + |
| 133 | +GitHub CLIに`gh skill`コマンドが追加され、Agent Skillsの検索/インストール/管理/公開ができるようになった。 |
| 134 | +GitHub CLI v2.90.0以降で利用可能。 |
| 135 | +タグやcommit SHAでのバージョン固定、git tree SHAによる内容変更の検知、provenance情報の埋め込みなどをサポート。 |
| 136 | +immutable releasesを使ったpublishを行うことで、スキルを同じタグで書き換えられないようにして公開できる |
| 137 | + |
| 138 | + |
| 139 | +---- |
| 140 | +<h1 class="site-genre">サイト、サービス、ドキュメント</h1> |
| 141 | + |
| 142 | +---- |
| 143 | + |
| 144 | +## vercel-labs/wterm: A terminal emulator for the web |
| 145 | +[github.com/vercel-labs/wterm](https://github.com/vercel-labs/wterm "vercel-labs/wterm: A terminal emulator for the web") |
| 146 | +<p class="jser-tags jser-tag-icon"><span class="jser-tag">WebAssembly</span> <span class="jser-tag">library</span> <span class="jser-tag">terminal</span> <span class="jser-tag">browser</span></p> |
| 147 | + |
| 148 | +Webブラウザ向けのターミナルエミュレータライブラリ。 |
| 149 | +コアがZigで書かれていて、WebAssembly(約12KB)にコンパイルされている。 |
| 150 | +DOM要素としてレンダリングすることで、ネイティブなテキスト選択/コピー&ペースト/検索/アクセシビリティをサポートする。 |
| 151 | + |
| 152 | + |
| 153 | +---- |
| 154 | + |
| 155 | +## Introducing Claude Design by Anthropic Labs \\ Anthropic |
| 156 | +[www.anthropic.com/news/claude-design-anthropic-labs](https://www.anthropic.com/news/claude-design-anthropic-labs "Introducing Claude Design by Anthropic Labs \\ Anthropic") |
| 157 | +<p class="jser-tags jser-tag-icon"><span class="jser-tag">AI</span> <span class="jser-tag">Design</span> <span class="jser-tag">Tools</span></p> |
| 158 | + |
| 159 | +Anthropic Labsが公開したデザインツール。 |
| 160 | +テキストプロンプト、画像、ドキュメント(DOCX/PPTX/XLSX)、コードベース、WebキャプチャなどからWebサイトデザインやプロトタイプ、スライド資料を作成できる。 |
| 161 | +チームのコードベースやデザインファイルからデザインシステムを元に作成できる。 |
| 162 | +Canva、PDF、PPTX、スタンドアロンHTML形式のExportとClaude Codeに読ませてコードに変換できる。 |
| 163 | + |
| 164 | + |
| 165 | +---- |
| 166 | + |
| 167 | +## Trees, from Pierre |
| 168 | +[trees.software/](https://trees.software/ "Trees, from Pierre") |
| 169 | +<p class="jser-tags jser-tag-icon"><span class="jser-tag">React</span> <span class="jser-tag">library</span> <span class="jser-tag">UI</span> <span class="jser-tag">accessibility</span></p> |
| 170 | + |
| 171 | +ファイルツリーをレンダリングするReactライブラリ。 |
| 172 | +git statusの表示、ドラッグ&ドロップでのファイル移動、検索フィルター、コンテキストメニューなどに対応している。 |
| 173 | +Virtualizaにより数千ファイル規模でもレンダリングできる。 |
| 174 | +キーボードナビゲーションやWCAG 2.1に準拠したアクセシビリティ、CSS変数によるカスタマイズができる |
| 175 | + |
| 176 | + |
| 177 | +---- |
| 178 | +<h1 class="site-genre">ソフトウェア、ツール、ライブラリ関係</h1> |
| 179 | + |
| 180 | +---- |
| 181 | + |
| 182 | +## PerryTS/perry: A native TypeScript compiler written in Rust. Compiles TypeScript directly to executables using SWC and LLVM. |
| 183 | +[github.com/PerryTS/perry](https://github.com/PerryTS/perry "PerryTS/perry: A native TypeScript compiler written in Rust. Compiles TypeScript directly to executables using SWC and LLVM.") |
| 184 | +<p class="jser-tags jser-tag-icon"><span class="jser-tag">TypeScript</span> <span class="jser-tag">Rust</span> <span class="jser-tag">compiler</span> <span class="jser-tag">Tools</span></p> |
| 185 | + |
| 186 | +Rustで書かれたTypeScriptのネイティブコンパイラ。 |
| 187 | +SWCでTypeScriptをパースし、LLVMで実行ファイルへとコンパイルする。 |
| 188 | +macOS/Windows/Linux/iOS/Android向けのクロスコンパイルに対応し、ネイティブUIを扱うパッケージを用意している。 |
| 189 | +著名なnpmパッケージはRust実装のものへ差し替え、他のものはV8のRuntimeを使ったfallbackで対応している。 |
| 190 | + |
| 191 | + |
| 192 | +---- |
| 193 | + |
| 194 | +## endevco/aube: A fast Node.js package manager |
| 195 | +[github.com/endevco/aube](https://github.com/endevco/aube "endevco/aube: A fast Node.js package manager") |
| 196 | +<p class="jser-tags jser-tag-icon"><span class="jser-tag">nodejs</span> <span class="jser-tag">package</span> <span class="jser-tag">Rust</span> <span class="jser-tag">Tools</span></p> |
| 197 | + |
| 198 | +Rustで書かれたNode.js向けのパッケージマネージャー。 |
| 199 | +`pnpm-lock.yaml`/`package-lock.json`/`npm-shrinkwrap.json`/`yarn.lock`/`bun.lock`などの既存のロックファイル形式の読み書きに対応している。 |
| 200 | +グローバルなcontent-addressable storeによるパッケージファイルの共有、最小リリース期間やライフサイクルスクリプトの承認制御などのセキュリティ機能を持つ。 |
| 201 | + |
| 202 | + |
| 203 | +---- |
| 204 | + |
| 205 | +## TSRX | TypeScript Language Extension for Declarative UI |
| 206 | +[tsrx.dev/](https://tsrx.dev/ "TSRX | TypeScript Language Extension for Declarative UI") |
| 207 | +<p class="jser-tags jser-tag-icon"><span class="jser-tag">TypeScript</span> <span class="jser-tag">UI</span> <span class="jser-tag">compiler</span> <span class="jser-tag">React</span> <span class="jser-tag">Solid</span></p> |
| 208 | + |
| 209 | +宣言的UIのためのTSXの拡張言語。 |
| 210 | +構造、制御フロー、スタイルを同じファイルに共存させながら、TypeScript互換性を持つ設計。 |
| 211 | +React/Ripple/Solidにコンパイルできる。 |
| 212 | +VS Code/Zed/Neovim/IntelliJ/SublimeなどのIDEサポート、LSP/Prettier/ESLintプラグインも提供する。 |
| 213 | + |
| 214 | + |
| 215 | +---- |
| 216 | + |
| 217 | +## rstackjs/connect-next: An actively maintained fork of Connect. |
| 218 | +[github.com/rstackjs/connect-next](https://github.com/rstackjs/connect-next "rstackjs/connect-next: An actively maintained fork of Connect.") |
| 219 | +<p class="jser-tags jser-tag-icon"><span class="jser-tag">nodejs</span> <span class="jser-tag">library</span> <span class="jser-tag">TypeScript</span></p> |
| 220 | + |
| 221 | +Node.jsのHTTP middleware framework `connect` をメンテナンスするfork。 |
| 222 | +TypeScriptで書き直され、ESモジュールとして名前付きexportで提供される。依存関係の更新や削除などが行われている |
| 223 | + |
| 224 | + |
| 225 | +---- |
0 commit comments