What’s New

Tailwind CSS v4.3.1

v4.3.1
Added
  • Add `--silent` option to suppress output in `@tailwindcss/cli`
Changed
  • Generate `0` instead of `calc(var(--spacing) * 0)` for spacing utilities like `m-0` and `left-0`
  • Generate `var(--spacing)` instead of `calc(var(--spacing) * 1)` for spacing utilities like `m-1` and `left-1`
Fixed
  • Remove deprecation warnings by using `Module#registerHooks` instead of `Module#register` on Node 26+
  • Don't crash when plugin utilities throw for unsupported values during canonicalization
  • Allow `@apply` to be used with CSS mixins
  • Ensure `not-*` correctly negates `@container` queries, including `style(…)` queries
  • Ensure `drop-shadow-*` color utilities work with custom shadow values containing `calc(…)`
  • Fix 'Sourcemap is likely to be incorrect' warnings when using `@tailwindcss/vite`
  • Ensure `@tailwindcss/webpack` can be installed in Rspack projects without requiring `webpack` as a peer dependency
  • Don't suggest invalid `calc(…)` expressions during canonicalization
  • Avoid suggesting large spacing-scale values for arbitrary lengths during canonicalization
  • Ensure `@tailwindcss/cli` in `--watch` mode recovers when a tracked dependency is deleted and restored
  • Ensure standalone `@tailwindcss/cli` binaries are ignored when scanning for class candidates
  • Ensure class candidates are extracted from Twig `addClass(…)` and `removeClass(…)` calls
  • Don't crash in the Ruby or Vue preprocessors when scanning files containing invalid UTF-8 bytes
  • Allow `@variant` to be used inside `addBase`
  • Ensure `@source` globs with symlinks are preserved
  • Ensure later `@source` rules can re-include files excluded by earlier `@source not` rules
  • Don't migrate empty class rules to invalid `@utility` rules during upgrade
  • Ensure transitions between `inset-shadow-none` and other inset shadows work correctly
  • Ensure explicitly referenced `@source` directories are scanned even when ignored by git
  • Ensure `@source` globs ending in `**/*` preserve dynamic path segments to avoid scanning too many files
  • Don't fold `calc(…)` divisions when the result would require high precision during canonicalization
  • Serve ESM type declarations to ESM importers of `@tailwindcss/postcss`
Added
  • Add --silent option to suppress output in @tailwindcss/cli (#20100)
Fixed
  • Remove deprecation warnings by using Module#registerHooks instead of Module#register on Node 26+ (#20028)
  • Canonicalization: don't crash when plugin utilities throw for unsupported values (#20052)
  • Allow @apply to be used with CSS mixins (#19427)
  • Ensure not-* correctly negates @container queries, including style(…) queries (#20059)
  • Ensure drop-shadow-* color utilities work with custom shadow values containing calc(…) (#20080)
  • Fix 'Sourcemap is likely to be incorrect' warnings when using @tailwindcss/vite (#20103)
  • Ensure @tailwindcss/webpack can be installed in Rspack projects without requiring webpack as a peer dependency (#20027)
  • Canonicalization: don't suggest invalid calc(…) expressions (e.g. px-[calc(1rem+0px)]px-[calc(1rem+0)]) (#20127)
  • Canonicalization: avoid suggesting large spacing-scale values for arbitrary lengths (e.g. left-[99999px]left-[99999px], not left-24999.75) (#20130)
  • Ensure @tailwindcss/cli in --watch mode recovers when a tracked dependency is deleted and restored (#20137)
  • Ensure standalone @tailwindcss/cli binaries are ignored when scanning for class candidates (#20139)
  • Ensure class candidates are extracted from Twig addClass(…) and removeClass(…) calls (#20198)
  • Don't crash in the Ruby or Vue preprocessors when scanning files containing invalid UTF-8 bytes (#19588)
  • Allow @variant to be used inside addBase (#19480)
  • Ensure @source globs with symlinks are preserved (#20203)
  • Ensure later @source rules can re-include files excluded by earlier @source not rules (#20203)
  • Upgrade: don't migrate empty class rules to invalid @utility rules (#20205)
  • Ensure transitions between inset-shadow-none and other inset shadows work correctly (#20208)
  • Ensure explicitly referenced @source directories are scanned even when ignored by git (#20214)
  • Ensure @source globs ending in **/* preserve dynamic path segments to avoid scanning too many files (#20217)
  • Canonicalization: don't fold calc(…) divisions when the result would require high precision (e.g. w-[calc(100%/3.5)]w-[calc(100%/3.5)], not w-[28.571428571428573%]) (#20221)
  • Serve ESM type declarations to ESM importers of @tailwindcss/postcss (#20228)
Changed
  • Generate 0 instead of calc(var(--spacing) * 0) for spacing utilities like m-0 and left-0 (#20196)
  • Generate var(--spacing) instead of calc(var(--spacing) * 1) for spacing utilities like m-1 and left-1 (#20196)
View original