v4.3.3 is a focused bugfix release across the CLI, compiler, and framework integrations. It also tightens a few edge cases in color handling, selectors, and upgrade tooling.
What's new
@tailwindcss/clinow supports--watch --poll[=ms]again, which gives you a fallback for environments where filesystem events are unreliable or unavailable. You can use the default poll interval or pass your own in milliseconds. (#20297)- Tailwind now handles CSS nesting natively in places where Lightning CSS is not being used, including
@tailwindcss/browserand Tailwind Play. This also lets the nesting pass clean up empty nodes as it walks the AST. (#20124)
Breaking changes
- None documented.
Fixes
- Preflight no longer overrides Firefox’s native
iframe:focus-visibleoutline styling. (#20292) - Arbitrary hex colors are now canonicalized case-insensitively, so values like
bg-[#fff]andbg-[#FFF]both match theme colors correctly. (#20298) theme('colors.foo')in JS plugins now resolves to the expected value when both--color-fooand--color-foo-barexist. (#20299)- Fractional opacity modifiers now work for named shadow sizes such as
shadow-sm/12.5,text-shadow-sm/12.5,drop-shadow-sm/12.5, andinset-shadow-sm/12.5. (#20302) - Attribute selectors like
[data-foo]divare now parsed as two selectors instead of one. (#20303) @tailwindcss/postcssnow rebuilds when the input CSS changes even if the source file’s mtime does not, which matters for upstream preprocessors like Sass. (#20310)- Achromatic theme colors now preserve their hue as
noneinstead of0, avoiding unwanted hue shifts when they are mixed in polar color spaces likeoklch. (#20314) --spacing(0)now optimizes to0pxso it stays a<length>incalc(...)contexts. (#20319)@tailwindcss/clinow lazy-loads@parcel/watcher, so one-off builds and--watch --pollwork even when that package can’t be loaded. (#20325)- The Windows Japanese-locale font issue is fixed by using explicit platform fonts instead of
system-uiandui-sans-serif. (#20318) @tailwindcss/upgradeno longer rewrites ignored files when run from a workspace subpackage. (#20329)- Earlier
@sourcerules pointing at nested files are now scanned correctly even when a later@sourcepoints at a file in a parent folder. (#20335) @tailwindcss/viteno longer triggers a full page reload for scanned files that Vite can process as modules but has not loaded yet. (#20336)
Other notable changes
- Dependency updates were refreshed as part of the release. (#20300)
Contributors
@RobinMalfait @highoncomputers @benface @koreahghg @lazerg