https://github.com/tailwindlabs/tailwindcss
`tailwindcss canonicalize`コマンドに`--stream`フラグが追加され、デザインシステムをメモリに保持したまま標準入力からTailwindクラス群を継続的に受け取って正規化できるようになりました。フォーマッターやエディタプラグインなどの非JSツールが、毎回の起動コストを払わずにロングランニングのサイドカープロセスとして利用できます。空行のパススルーにより、リクエストとレスポンスのペアのアライメントも保たれます。
oxlintの試用をきっかけに、コードベース全体の正規表現における不要なエスケープとTypeScriptの型表記の不統一を一括修正しました。大半は意味的に等価な置換ですが、RegExpコンストラクタ内での`\s`エスケープ漏れという動作バグの修正も含まれています。
`@tailwindcss/vite` の peerDependencies に `^8.0.0` を追加し、Vite 8 との互換性を確保しました。プラグイン本体のコード変更は不要で、依存関係宣言の更新と統合テストのパラメータ化が主な変更内容です。
SSRフレームワークが管理するサーバー専用モジュールの変更時に、`@tailwindcss/vite`プラグインが誤ってクライアントの全リロードを強制していた問題を修正しました。他の環境のモジュールグラフを参照して全リロードをスキップする判断を追加することで、React RouterのHDRやWaku、`@vitejs/plugin-rsc`などのSSRフレームワークにおけるHMRが正常に動作するようになります。
Vitestのテスト実行中に発生していたソースマップ警告を修正するPRです。`sourceMappingURL=` の `=` をJavaScriptエスケープ `\x3d` に変換することで、ViteのSSRパーサーが `=` を区切り文字として誤解釈しファイルパスを不正に展開していた問題を回避しました。出力されるCSSのソースマップコメントの内容は変わりません。
Tailwind CSS CLIに `canonicalize` サブコマンドが追加され、`py-3 p-1 px-3` のような冗長・競合するクラスリストを `p-3` のように正規化・統合・ソートできるようになりました。引数・stdin・複数出力フォーマット(text/json/jsonl)に対応し、エディタ拡張やリンターとの連携を想定した設計となっています。
`collapse: true` オプションで `canonicalizeCandidates` を呼び出した際、シャドウユーティリティが含まれるとクラッシュする不具合が修正されました。`collapseGroup` 内でプロパティキーが空のユーティリティに対して `null` が返されていたのが原因で、`result ?? new Set<string>()` への1行修正で解消されています。
Tailwind CSS v4 の正規化パイプラインに `calcToSpacingFunction` が追加され、任意値内の `calc(var(--spacing)*…)` 式が `--spacing(…)` 関数記法へ自動変換されるようになりました。AST ベースの厳格なパターンマッチングにより誤変換を防ぎつつ、v3 からの移行コードや外部ツール生成のクラス名でも一貫した記法が保証されます。
Tailwind CSSのRuby向けエクストラクタで、ヒアドキュメント内の文字列補間式(`#{...}`)からクラス名が抽出されない問題を修正。コメント判定に1文字先読みを追加することで、補間式を誤ってコメントとして扱う挙動を解消しました。
ソースコードに「row-constructor」などの文字列があるとビルドが失敗する問題を、Object.hasOwn()チェックとObject.create(null)でプロトタイプチェーンを排除することで修正。ユーザー入力値がJavaScriptの予約語と一致してもクラッシュしない堅牢性を実現。
MDXファイル内で `p-2.5` のようなドット付きユーティリティクラスが抽出されない不具合を修正。括弧のネストレベルを追跡することで、Markdownディレクティブ構文とMDXのJSX構文の両方で正しいクラス抽出を実現しました。
Tailwind CSS 4.2.1で、`@utility border--*` のような二重ダッシュを含む関数型utilityが再び使用可能になりました。4.2.0で導入された末尾ダッシュの制限が、実用的な命名パターンを誤って制限していたため、検証ルールが緩和されました。
Tailwind CSS 4.1.19のCHANGELOGに記載されていた非推奨化ユーティリティ名が誤っていたため、`inline-s-*` と `inline-e-*` を正しい `inset-s-*` と `inset-e-*` に修正。実装との整合性を保ち、マイグレーション時の混乱を防ぐための1行の修正。
Tailwind CSS 4.2.0で論理的プロパティ(block-start/inline-endなど)に対応する新ユーティリティ群と、webpackローダーが追加されました。国際化対応レイアウトの実装が容易になり、ビルドツールの選択肢が広がります。
Tailwind CSSの正規化関数において、キャッシュの読み取り操作が意図せず書き込みを引き起こす副作用を修正。`DefaultMap.get`の自動挿入による順序依存性を`has()`チェックで防ぎ、並列処理環境での一貫した正規化結果を保証。
enhanced-resolveを5.18.4から5.19.0にアップデート。新機能としてTsconfigPathsPluginが追加され、TypeScriptのパス解決機能が強化されました。4つのパッケージで依存関係が統一的に更新されています。
Tailwind CSS v4に4つの新しいニュートラルカラーパレット(mauve、olive、mist、taupe)が追加されました。各パレットは11段階のシェードをOKLch色空間で定義し、知覚的に均一な色の遷移を実現しています。
Tailwind CSS v4の`@utility`ディレクティブで、エスケープ済みの特殊文字を含む名前(例:`@utility push-1\/2`)が使用可能になりました。これにより、BiomeなどのCSSパーサーとの互換性を保ちながら、スラッシュやパーセント記号を含むカスタムユーティリティを定義できます。
Vite Environment APIとレガシーな`config.createResolver`が混在する環境(Astro v5など)でインポートエイリアスが正常に動作するよう、Environment名に応じて適切なリゾルバを選択する`createBackCompatIdResolver()`関数を実装しました。
Tailwind CSS v4のOxideスキャナで、ファイルシステム走査の最適化により大規模プロジェクトの性能が最大4倍向上。重複走査の排除、並列ウォーカーの段階的導入、mtime追跡の遅延初期化により、特に開発モードでの再スキャンが高速化されました。