Frontend Weekly 2025-05-23
Baseline Netlify extension、Zod 4、ESLint v9.27.0、React Compiler RC、TypeScript Native Previewについて。
Zod 4リリース
日付:2025年5月19日
Zod 4が安定版としてリリース。Zod 3からの設計上の制約を解消し、パフォーマンスと型推論効率が大幅に向上。string/array/objectのパースが最大14倍高速化し、TypeScriptの型インスタンス生成も100分の1に削減。エラーカスタマイズAPIが統一され、discriminatedUnionやliteralの強化、refineやoverwriteの改善など多くの新機能が追加。
パッケージとしてのzod@4.0.0はリリースされておらず、zod@3.25.0以降からzod/v4
をインポートして利用する。
import { z } from "zod/v4";
z.string().optional();
z.string().or(z.number());
z.object({ /* ... */ }).extend({ age: z.number() });
出展:Zod 4
Zod Mini
Zod 4からツリーシェイク可能な軽量版であるzod/v4-mini
も提供される。いくつかのメソッドが利用出来ないことに加えて記法が変わる点には注意が必要。
import { z } from "zod/v4-mini";
z.optional(z.string());
z.union([z.string(), z.number()]);
z.extend(z.object({ /* ... */ }), { age: z.number() });
ESLint v9.27.0リリース
日付:2025年5月16日
ESLint v9.27.0がリリース。MCPサーバーが@eslint/mcpとして分離され、npx @eslint/mcp@latest
で起動可能に。環境変数ESLINT_FLAGS
によるフラグ設定、eslint-suppressions.jsonファイルのソート、TypeScript対応の強化などが行われた。新ルールno-unassigned-vars
追加、no-useless-escape
にallowRegexCharactersオプション追加、no-array-constructor
の自動修正対応なども含まれる。
ESLINT_FLAGSによるフラグ設定
Feature flagsを環境変数ESLINT_FLAGS
で設定できるようになった。これは、CI/CDなどで同じフラグを利用したいケースなどで有益。
# .bashrc
export ESLINT_FLAGS="unstable_config_lookup_from_file,unstable_native_nodejs_ts_config"
React Compiler RC公開
日付:2025年4月21日
React Compilerのリリース候補(RC)が公開。自動メモ化によるパフォーマンス最適化をビルド時に実現。optional chainや配列インデックス依存の最適化、ref-in-render検証のデフォルト無効化、swc対応の強化、Next.js 15.3.1以降でのビルド高速化など。ESLint用のルールはeslint-plugin-react-hooks
に統合。
TypeScript Native Preview公開
日付:2025年5月22日
TypeScriptコンパイラのネイティブ実装(Project Corsa)のプレビューがnpmとVS Code拡張で公開。Go製で10倍高速化、並列処理や共有メモリ活用。tsgo
コマンドで型チェックやビルドが可能。JSXやJSDoc型チェック、LSPベースのエディタ機能も順次対応中。将来的にTypeScript 7として正式リリース予定。
Baseline Netlify extension公開
日付:2025年5月23日
Netlify向けのBaseline拡張が公開。実際のユーザー環境でサポートされているBaselineターゲットを可視化できる。拡張はNetlifyのコントロールパネルからインストール可能で、数日間のデータ収集後、各Baselineターゲット(2015年以降やWidely/Newlyなど)のサポート状況を確認できる。BrowserslistやStylelint、ESLintなど他ツールとの連携も想定。