Change8

v4.0.15

Breaking Changes
📦 tailwind-css
1 breaking2 features🐛 10 fixes🔧 8 symbols

Summary

This release focuses on bug fixes for CSS variable handling, Vue template processing, and browser-specific crashes, while updating the --theme() function to prefer CSS variables.

⚠️ Breaking Changes

  • The --theme(…) function now returns CSS variables instead of raw values by default, except in contexts where variables are invalid (like @media queries).

Migration Steps

  1. Review usage of the --theme(…) function; ensure your CSS logic accounts for it returning CSS variables rather than static values in most contexts.

✨ New Features

  • Pre-process <template lang="…"> in Vue files for better integration with non-standard template languages.
  • Export PluginUtils from tailwindcss/plugin to improve compatibility with v3 plugins.

🐛 Bug Fixes

  • Fix incorrect angle in -bg-conic-* utilities.
  • Fix border-[12px_4px] being incorrectly interpreted as a border-color instead of border-width.
  • Work around a crash in Safari 16.4 and 16.5 related to default Preflight styles.
  • Ensure all CSS variables used by Preflight are prefixed.
  • Prevent segfault when loaded in a worker thread on Linux.
  • Ensure multiple --value(…) or --modifier(…) calls don't delete subsequent declarations.
  • Fix class extraction followed by '(' in Slim templates.
  • Remove redundant line-height: initial from Preflight.
  • Increase Standalone hardware compatibility on macOS x64 builds.
  • Ensure CSS file rebuilds when a new CSS variable is used from templates.

🔧 Affected Symbols

--theme()-bg-conic-*border-widthPreflighttailwindcss/pluginPluginUtils--value()--modifier()