Skip to content
Merged
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,257 @@
---
title: "2026-05-24のJS: pnpm 11.1〜11.3、npm CLI v11.15.0、Deno 2.8"
author: "azu"
layout: post
date: 2026-05-25T01:03:40.989Z
category: JSer
tags:
- pnpm
- npm
- nodejs
- security
- CLI

---

JSer.info #772 - pnpm 11.1から11.3にかけて、サプライチェーンセキュリティに関する機能が多数追加されています。

- [Release pnpm 11.1 · pnpm/pnpm](https://github.com/pnpm/pnpm/releases/tag/v11.1.0)
- [Release pnpm 11.1.3 · pnpm/pnpm](https://github.com/pnpm/pnpm/releases/tag/v11.1.3)
- [pnpm 11.3 | pnpm](https://pnpm.io/blog/releases/11.3)

pnpm 11.1ではレジストリ署名を検証する`pnpm audit signatures`コマンドが追加され、11.1.3ではインストール時にlockfileのエントリを`minimumReleaseAge`で再検証する仕組みと`minimumReleaseAgeStrict`モードが導入されています。11.3ではStaged Publishing用の`pnpm stage`コマンドと、信頼済みのlockfile検証をスキップする`trustLockfile`設定が追加されています。

---

npm CLI v11.15.0がリリースされました。

- [Release v11.15.0 · npm/cli](https://github.com/npm/cli/releases/tag/v11.15.0)

Staged Publishingのための`npm stage`コマンドが追加されました。Staged Publishingは、パッケージの公開前に承認ステップを追加する仕組みで、ステージングへ送信した後にメンテナーが2FAで承認してからレジストリに公開されます。また、インストール時の挙動を制御する`allow-git`/`allow-file`/`allow-directory`/`allow-remote`の設定が追加されています。

- [Staged publishing for npm packages](https://docs.npmjs.com/staged-publishing)

---

Deno 2.8がリリースされました。

- [Deno 2.8 | Deno](https://deno.com/blog/v2.8)

`deno audit fix`、`deno bump-version`、`deno ci`、`deno pack`、`deno transpile`、`deno why`などの新しいサブコマンドが追加されています。Node.js互換性のテストスイート合格率が42%から76.4%に改善し、Stage 3の`import defer`を実装しています。また、CLIで`npm:`プレフィックスが不要になり、`catalog:`プロトコルでモノレポの依存バージョンを一元管理できるようになっています。

----
{% include inline-support.html %}

----
<h1 class="site-genre">ヘッドライン</h1>

----

## Release v1.60.0 · microsoft/playwright
[github.com/microsoft/playwright/releases/tag/v1.60.0](https://github.com/microsoft/playwright/releases/tag/v1.60.0 "Release v1.60.0 · microsoft/playwright")
<p class="jser-tags jser-tag-icon"><span class="jser-tag">playwright</span> <span class="jser-tag">ReleaseNote</span></p>

playwright v1.60.0リリース。
破壊的な変更として、`Locator.ariaRef()`、bindingsの`handle`オプション、`videosPath`/`videoSize`などのdeprecatedなAPIを削除。
`tracing.startHar()`/`tracing.stopHar()`でHAR記録をサポート、外部からのドラッグ&ドロップをシミュレートする`locator.drop()`の追加。
`expect(page).toMatchAriaSnapshot()`をPageに対して利用できるように、`boxes`オプションで境界ボックス情報を含められるように。
テストを中断する`test.abort()`、`browser.on('context')`イベントとBrowserContextのライフサイクルイベントの追加など


----

## Release pnpm 11.1 · pnpm/pnpm
[github.com/pnpm/pnpm/releases/tag/v11.1.0](https://github.com/pnpm/pnpm/releases/tag/v11.1.0 "Release pnpm 11.1 · pnpm/pnpm")
<p class="jser-tags jser-tag-icon"><span class="jser-tag">pnpm</span> <span class="jser-tag">ReleaseNote</span></p>

pnpm v11.1.0リリース。
レジストリ署名を検証する`pnpm audit signatures`コマンド、`namedRegistries`によるレジストリのプレフィックス指定(`gh:@acme/private`など)のサポート。
`pnpm bugs`/`pnpm owner`コマンドの追加。
SBOMの仕様バージョンを指定する`--sbom-spec-version`、ランタイムのインストールをスキップする`--no-runtime`フラグの追加など。


----

## Release vite-plus v0.1.21 — Create, Migrate &amp; Local CLI Power-Up · voidzero-dev/vite-plus
[github.com/voidzero-dev/vite-plus/releases/tag/v0.1.21](https://github.com/voidzero-dev/vite-plus/releases/tag/v0.1.21 "Release vite-plus v0.1.21 — Create, Migrate &amp; Local CLI Power-Up · voidzero-dev/vite-plus")
<p class="jser-tags jser-tag-icon"><span class="jser-tag">vite</span> <span class="jser-tag">CLI</span> <span class="jser-tag">Tools</span> <span class="jser-tag">ReleaseNote</span></p>

vite-plus v0.1.21リリース。
`vp pm`コマンドがローカルCLIで動作するようになり、`vp migrate`はnamed catalogsの書き換えや`tsdown/client`のインポートと型設定の移行に対応。
`vp create`は`@org`形式のスコープ付きテンプレートをサポート。
Nushellへの対応、`vp pm plugin`のyarnサポート、`--provenance`フラグ、Windowsの`.cmd`シム経由のPowerShell実行などを追加。
pnpm v11+での`--ignore-scripts`自動付与、`vite-plus/pack/client`の追加など


----

## Bun v1.3.14 | Bun Blog
[bun.com/blog/bun-v1.3.14](https://bun.com/blog/bun-v1.3.14 "Bun v1.3.14 | Bun Blog")
<p class="jser-tags jser-tag-icon"><span class="jser-tag">Bun</span> <span class="jser-tag">ReleaseNote</span></p>

Bun v1.3.14リリース。
画像のリサイズ/回転/フォーマット変換に対応した画像処理API `Bun.Image`を追加。
`Bun.serve()`がHTTP/3 over QUICに対応、`fetch()`が実験的にHTTP/2とHTTP/3プロトコルをサポート。
isolated linkerのglobalStoreオプションを追加、親プロセス終了時にBunプロセスツリーを終了する`--no-orphans`フラグの追加。
Node.js v24互換の`process.execve()`、Windowsでの`Bun.Terminal`(ConPTY)、FreeBSD/Androidの公式ビルド提供など


----

## Release pnpm 11.1.3 · pnpm/pnpm
[github.com/pnpm/pnpm/releases/tag/v11.1.3](https://github.com/pnpm/pnpm/releases/tag/v11.1.3 "Release pnpm 11.1.3 · pnpm/pnpm")
<p class="jser-tags jser-tag-icon"><span class="jser-tag">pnpm</span> <span class="jser-tag">ReleaseNote</span></p>

pnpm v11.1.3リリース。
インストール時に`pnpm-lock.yaml`のエントリを`minimumReleaseAge`と`trustPolicy`で再検証するように変更と`minimumReleaseAgeStrict`モードの追加。
`pnpm self-update`が`minimumReleaseAge`を尊重するように変更、`NODE_AUTH_TOKEN`未設定時のOIDC認証失敗などを修正。


----

## Node.js — Node.js 26.2.0 (Current)
[nodejs.org/en/blog/release/v26.2.0](https://nodejs.org/en/blog/release/v26.2.0 "Node.js — Node.js 26.2.0 (Current)")
<p class="jser-tags jser-tag-icon"><span class="jser-tag">nodejs</span> <span class="jser-tag">ReleaseNote</span></p>

Node.js 26.2.0リリース。
`fs.Stats`と`BigIntStats`が`Temporal.Instant`をサポート、HTTPの`writeInformation`メソッドで任意の1xxステータスコードを送信できるよう。
`stream.compose`がStableへ変更、Web Cryptography APIにML-DSA/ML-KEM/ChaCha20-Poly1305などのアルゴリズムを追加など


----

## Release v11.15.0 · npm/cli
[github.com/npm/cli/releases/tag/v11.15.0](https://github.com/npm/cli/releases/tag/v11.15.0 "Release v11.15.0 · npm/cli")
<p class="jser-tags jser-tag-icon"><span class="jser-tag">npm</span> <span class="jser-tag">CLI</span> <span class="jser-tag">ReleaseNote</span></p>

npm CLI v11.15.0リリース。
Staged Publishingのための`npm stage`コマンドを追加、`trust`コマンドにpermissionsサポートを追加。
インストール時の挙動を制御する`allow-git`/`allow-file`/`allow-directory`/`allow-remote`の設定を追加。

- [Staged publishing for npm packages](https://docs.npmjs.com/staged-publishing "Staged publishing for npm packages")

----

## Release @apollo/client@4.2.0 · apollographql/apollo-client
[github.com/apollographql/apollo-client/releases/tag/%40apollo%2Fclient%404.2.0](https://github.com/apollographql/apollo-client/releases/tag/%40apollo%2Fclient%404.2.0 "Release @apollo/client@4.2.0 · apollographql/apollo-client")
<p class="jser-tags jser-tag-icon"><span class="jser-tag">JavaScript</span> <span class="jser-tag">library</span> <span class="jser-tag">ReleaseNote</span> <span class="jser-tag">GraphQL</span></p>

Apollo Client 4.2.0リリース。
hookやメソッドのシグネチャに、`defaultOptions`を反映する"modern"スタイルを追加。
`RefetchEventManager`クラスを追加し、windowのfocusやネットワーク再接続などのイベントに応じたクエリの自動再取得をサポート。
`client.query`/`client.mutate`/`useMutation`/`preloadQuery`の戻り値の型に`defaultOptions`を反映するように改善。


----

## pnpm 11.3 | pnpm
[pnpm.io/blog/releases/11.3](https://pnpm.io/blog/releases/11.3 "pnpm 11.3 | pnpm")
<p class="jser-tags jser-tag-icon"><span class="jser-tag">pnpm</span> <span class="jser-tag">ReleaseNote</span></p>

pnpm 11.3リリース。
Staged Publishing用の`pnpm stage`コマンド、信頼済みのlockfileの検証をスキップする`trustLockfile`設定の追加。
`pnpm pkg`/`pnpm repo`/`pnpm set-script`をネイティブ実装に置き換え、`pnpm publish`に`--skip-manifest-obfuscation`フラグを追加など


----

## Deno 2.8 | Deno
[deno.com/blog/v2.8](https://deno.com/blog/v2.8 "Deno 2.8 | Deno")
<p class="jser-tags jser-tag-icon"><span class="jser-tag">deno</span> <span class="jser-tag">ReleaseNote</span></p>

Deno 2.8リリース。
`deno audit fix`/`deno bump-version`/`deno ci`/`deno pack`/`deno transpile`/`deno why`などの新しいサブコマンドを追加。
Node.js互換性のテストスイート合格率が42%から76.4%に改善、Stage 3の`import defer`を実装。
CLIで`npm:`プレフィックスが不要に、`catalog:`のサポート、`--os`/`--arch`フラグでクロスプラットフォームインストールに対応。
`OffscreenCanvas`や`DOMPoint`などのWeb APIを追加、Chrome DevToolsでのネットワークデバッグやCPUプロファイリングをサポート。


----
<h1 class="site-genre">アーティクル</h1>

----

## Postmortem: TanStack npm supply-chain compromise | TanStack Blog
[tanstack.com/blog/npm-supply-chain-compromise-postmortem](https://tanstack.com/blog/npm-supply-chain-compromise-postmortem "Postmortem: TanStack npm supply-chain compromise | TanStack Blog")
<p class="jser-tags jser-tag-icon"><span class="jser-tag">TanStack</span> <span class="jser-tag">npm</span> <span class="jser-tag">security</span> <span class="jser-tag">Actions</span> <span class="jser-tag">article</span></p>

2026年5月11日に発生したTanStackのnpmパッケージに対するサプライチェーン攻撃のポストモーテム。
`pull_request_target`ワークフローの設定不備、GitHub Actionsのキャッシュポイズニングを組み合わせた攻撃手法について。
フォークからのPRで実行されたコードがpnpmのキャッシュを汚染し、後のリリースワークフローで悪意のあるバイナリが復元された。
`/proc/`経由でランナープロセスのメモリからOIDCトークンを抽出してnpm publishに利用された。
対策として`pull_request_target`を使うワークフローの監査、サードパーティActionのコミットハッシュ固定などを挙げている。


----

## 9 Times the Web Platform Was Influenced by Libraries | Jad Joubran
[jadjoubran.io/blog/web-platform-influenced-by-libraries](https://jadjoubran.io/blog/web-platform-influenced-by-libraries "9 Times the Web Platform Was Influenced by Libraries | Jad Joubran")
<p class="jser-tags jser-tag-icon"><span class="jser-tag">WebPlatformAPI</span> <span class="jser-tag">JavaScript</span> <span class="jser-tag">library</span> <span class="jser-tag">history</span> <span class="jser-tag">article</span></p>

WebプラットフォームのネイティブAPIがライブラリから受けた影響を9つの事例で紹介する記事。
jQuery/SizzleのCSSセレクタが`querySelector`に、Bootstrapの`data-toggle`が`popovertarget`/`command`属性に。
jQueryの`.addClass()`が`classList`へ、Lodash/Underscoreのメソッドが`String`/`Array`のメソッドに。
さらに`structuredClone`、Promises/A+の標準化、ES Modulesの設計。
Moment.jsの課題から`Temporal API`、jQueryの`.closest()`から`Element.closest()`の流れなどについて。


----

## Node.js — Axios to WHATWG Fetch
[nodejs.org/en/blog/migrations/axios-to-fetch](https://nodejs.org/en/blog/migrations/axios-to-fetch "Node.js — Axios to WHATWG Fetch")
<p class="jser-tags jser-tag-icon"><span class="jser-tag">nodejs</span> <span class="jser-tag">Fetch</span> <span class="jser-tag">HTTP</span> <span class="jser-tag">article</span></p>

AxiosからNode.js Fetch APIへの移行ガイド。
Node.js v18.0.0以降を前提に、`axios.get()`/`axios.post()`/`axios.put()`/`axios.delete()`やフォーム送信などのコード変換例を解説している。
インターセプターやキャンセルトークンなどの一部機能は未対応である点についても解説されている


----

## Introducing Secure Registry: install-time defense for the npm supply chain - StepSecurity
[www.stepsecurity.io/blog/introducing-secure-registry-install-time-defense-for-the-npm-supply-chain](https://www.stepsecurity.io/blog/introducing-secure-registry-install-time-defense-for-the-npm-supply-chain "Introducing Secure Registry: install-time defense for the npm supply chain - StepSecurity")
<p class="jser-tags jser-tag-icon"><span class="jser-tag">npm</span> <span class="jser-tag">security</span> <span class="jser-tag">article</span></p>

StepSecurityによるnpmサプライチェーン攻撃に対するインストール時の防御を行うProxy型のレジストリサービス。
レジストリへのパッケージ取得要求をプロキシで評価し、新規公開からの一定期間ブロックするクールダウン期間、危険なパッケージのブロック、タイポスクワッティング対策などの機能を提供する。
ローカルの開発環境、CI/CDパイプラインなどでの利用を想定している。


----

## nkzw-tech/fate: fate is a modern data client for React.
[github.com/nkzw-tech/fate](https://github.com/nkzw-tech/fate "nkzw-tech/fate: fate is a modern data client for React.")
<p class="jser-tags jser-tag-icon"><span class="jser-tag">React</span> <span class="jser-tag">library</span> <span class="jser-tag">TypeScript</span> <span class="jser-tag">GraphQL</span></p>

Reactのデータクライアントライブラリ。
Relay/GraphQLの設計から影響を受けて、コンポーネントごとに`view`でデータを宣言し、正規化キャッシュとデータマスキングを提供する。
Async React(Actions/Suspense/`use`)に対応し、ページネーション、Optimistic Updates、Server-Sent Eventsでの更新のサポート。
バックエンドとしてGraphQL/tRPC/Prisma/Drizzleに対応している。


----

## Announcing Web Serial Support in Firefox - Mozilla Hacks - the Web developer blog
[hacks.mozilla.org/2026/05/web-serial-support-in-firefox/](https://hacks.mozilla.org/2026/05/web-serial-support-in-firefox/ "Announcing Web Serial Support in Firefox - Mozilla Hacks - the Web developer blog")
<p class="jser-tags jser-tag-icon"><span class="jser-tag">Firefox</span> <span class="jser-tag">browser</span> <span class="jser-tag">WebAPI</span> <span class="jser-tag">Mozilla</span></p>

Firefox 151でWeb Serial APIをサポート。
Web Serial APIはJavaScriptからシリアルデバイスを読み書きするAPIで、USBやBluetoothで接続したマイコン、3Dプリンター、スマートメーターなどに直接アクセスできる。
ユーザーが明示的に許可したポートのみアクセス可能で、サイトandポートごとに権限を管理できる。


----
<h1 class="site-genre">ソフトウェア、ツール、ライブラリ関係</h1>

----

## tmikov/hermes-node: Node.js built-in module compatibility layer for the Hermes JS engine
[github.com/tmikov/hermes-node](https://github.com/tmikov/hermes-node "tmikov/hermes-node: Node.js built-in module compatibility layer for the Hermes JS engine")
<p class="jser-tags jser-tag-icon"><span class="jser-tag">nodejs</span> <span class="jser-tag">JavaScript</span> <span class="jser-tag">TypeScript</span> <span class="jser-tag">library</span></p>

HermesをベースにしたNode.js互換のJavaScript/TypeScriptランタイム。
TypeScriptファイルを直接実行でき、Chrome DevToolsプロトコルに対応したデバッガを内蔵している。
`fs`/`http`/`net`/`path`/`stream`などのNode.jsコアモジュールは、Node.js内部のJS実装をそのまま利用する。


----