Skip to content

2026-08-09 Node.js の最低対応バージョンを 22 に引き上げる

  • 課題: README / AGENTS.md が「Node.js 20.9 以上」と案内していたが、package-lock.json@supabase/supabase-js と関連パッケージ(auth-js / postgrest-js / realtime-js / storage-js / functions-js)が engines.node >=22.0.0 を要求している。Node.js 20 では npm installEBADENGINE を出し、build とテストでも警告が出る。手順どおりに Node.js 20 を用意した新規コントリビューターがサポート外の環境になっていた。
  • 決定: 最低対応を Node.js 22.0.0 以上とし、README・AGENTS.md の表記を揃える。あわせて package.jsonengines.node を宣言し、依存関係と文書のどちらが正かを曖昧にしない。
  • engines を宣言する理由: 宣言がないと npm はルートパッケージの Node 要件を検査せず、非対応バージョンでも警告が依存パッケージ由来のものに埋もれる。宣言しておけば npm install の時点で気付ける。
  • 採らなかった案: Node.js 20 対応の依存バージョンへ固定する案。Node.js 20 は 2026-04 に EOL を迎えており、サポート切れの環境に合わせて Supabase クライアントを古い版へ留めるのは割に合わない。
  • 影響範囲: CI の Node マトリクスも 22 以上に揃える必要がある(Issue #7 / PR #9)。

秘密情報(SESSION_PASSWORD、Supabaseキー、Safeの認証情報)はドキュメント・Issue・ログへ貼らないでください。