Compare commits
3 commits
main
...
release/4.
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
9d69965f15 | ||
|
|
75b6cb0c45 | ||
|
|
5c01ae4056 |
25 changed files with 43 additions and 38 deletions
33
CHANGELOG.md
33
CHANGELOG.md
|
|
@ -7,30 +7,34 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
|
||||||
|
|
||||||
## [Unreleased]
|
## [Unreleased]
|
||||||
|
|
||||||
|
- Nothing yet!
|
||||||
|
|
||||||
|
## [4.3.4] - 2026-09-02
|
||||||
|
|
||||||
### Added
|
### Added
|
||||||
|
|
||||||
- Add `@tailwindcss/turbopack` package to run Tailwind CSS with Next.js ([20367](https://github.com/tailwindlabs/tailwindcss/pull/20367))
|
- Add `@tailwindcss/turbopack`, a Turbopack loader for using Tailwind CSS with Next.js ([#20367](https://github.com/tailwindlabs/tailwindcss/pull/20367))
|
||||||
|
|
||||||
### Fixed
|
### Fixed
|
||||||
|
|
||||||
- Ensure watch mode detects changes to symlinked `@source` files whose real paths aren't otherwise scanned ([#20356](https://github.com/tailwindlabs/tailwindcss/pull/20356))
|
- Ensure watch mode detects changes to symlinked `@source` files whose real paths aren't otherwise scanned ([#20356](https://github.com/tailwindlabs/tailwindcss/pull/20356))
|
||||||
- Ensure custom variants using `@scope` wrap the generated utilities instead of nesting inside them ([#20369](https://github.com/tailwindlabs/tailwindcss/pull/20369))
|
- Ensure variants using `@scope` wrap generated utilities instead of nesting inside them ([#20369](https://github.com/tailwindlabs/tailwindcss/pull/20369))
|
||||||
- Fix flattening of `@scope` at-rules ([#20369](https://github.com/tailwindlabs/tailwindcss/pull/20369))
|
- Ensure nested `@scope` rules preserve their scoping semantics when flattened ([#20369](https://github.com/tailwindlabs/tailwindcss/pull/20369))
|
||||||
- Fix standalone declarations in `@scope`, wrap them in `:where(:scope)` ([#20369](https://github.com/tailwindlabs/tailwindcss/pull/20369))
|
- Preserve declarations directly inside `@scope` by wrapping them in `:where(:scope)` ([#20369](https://github.com/tailwindlabs/tailwindcss/pull/20369))
|
||||||
- Always emit a space for empty fallback values in CSS variables (e.g. `var(--tw-blur,)` → `var(--tw-blur, )`) ([#20373](https://github.com/tailwindlabs/tailwindcss/pull/20373))
|
- Ensure generated utilities include a space in empty `var()` fallbacks (e.g. `var(--tw-blur,)` → `var(--tw-blur, )`) ([#20373](https://github.com/tailwindlabs/tailwindcss/pull/20373))
|
||||||
- Canonicalization: convert arbitrary breakpoint and container query variants to named equivalents (e.g. `max-[64rem]` → `max-lg`) ([#20380](https://github.com/tailwindlabs/tailwindcss/pull/20380))
|
- Canonicalization: convert arbitrary breakpoint and container query variants to named equivalents (e.g. `max-[64rem]:flex` → `max-lg:flex`) ([#20380](https://github.com/tailwindlabs/tailwindcss/pull/20380))
|
||||||
- Prevent `@tailwindcss/vite` from crashing on every edit under Vite's experimental `bundledDev` mode ([#20379](https://github.com/tailwindlabs/tailwindcss/pull/20379))
|
- Prevent `@tailwindcss/vite` from crashing on every edit under Vite's experimental `bundledDev` mode ([#20379](https://github.com/tailwindlabs/tailwindcss/pull/20379))
|
||||||
- Ensure `@tailwindcss/oxide` falls back to WASM on platforms without native bindings ([#20383](https://github.com/tailwindlabs/tailwindcss/pull/20383))
|
- Ensure `@tailwindcss/oxide` falls back to WASM on platforms without native bindings ([#20383](https://github.com/tailwindlabs/tailwindcss/pull/20383))
|
||||||
- Detect classes in Ruby percent literals using angle brackets or custom delimiters (e.g. `%w<flex>`, `%w|flex|`), including in Slim and Haml templates ([#20387](https://github.com/tailwindlabs/tailwindcss/pull/20387))
|
- Extract class candidates from Ruby `%w` and `%W` literals using angle brackets or custom delimiters (e.g. `%w<flex>`, `%w|flex|`), including in Slim and Haml templates ([#20387](https://github.com/tailwindlabs/tailwindcss/pull/20387))
|
||||||
- Preserve whitespace in `--default(…)` values in custom functional utilities (e.g. `--default(box alphabetic)` no longer becomes `boxalphabetic`) ([#20392](https://github.com/tailwindlabs/tailwindcss/pull/20392))
|
- Preserve whitespace in `--default(…)` values in functional `@utility` definitions (e.g. `--default(box alphabetic)` no longer becomes `boxalphabetic`) ([#20392](https://github.com/tailwindlabs/tailwindcss/pull/20392))
|
||||||
- Don't scan gitignored directories (e.g. `node_modules` and `.git`) when the project uses a safelist-style `.gitignore` (e.g. `/*` followed by `!/…` negations) ([#20397](https://github.com/tailwindlabs/tailwindcss/pull/20397))
|
- Ensure automatic source detection respects negation-based `.gitignore` files (e.g. `/*` followed by `!/…` patterns) ([#20397](https://github.com/tailwindlabs/tailwindcss/pull/20397))
|
||||||
- Ensure root `theme('…')` namespace lookups in JavaScript plugins and config files return the full namespace object instead of the value of its `DEFAULT` key ([#20399](https://github.com/tailwindlabs/tailwindcss/pull/20399))
|
- Ensure root `theme('…')` namespace lookups in JavaScript plugins and config files return the full namespace object instead of the value of its `DEFAULT` key ([#20399](https://github.com/tailwindlabs/tailwindcss/pull/20399))
|
||||||
- Skip ignored directories entirely when computing watch globs (`scanner.globs`), instead of walking their full contents on every rebuild ([#20408](https://github.com/tailwindlabs/tailwindcss/pull/20408))
|
- Skip ignored directories when generating watch globs instead of walking their contents on every rebuild ([#20408](https://github.com/tailwindlabs/tailwindcss/pull/20408))
|
||||||
- Oxide: drop invalid UTF-8 candidates ([#20389](https://github.com/tailwindlabs/tailwindcss/pull/20389))
|
- Drop invalid UTF-8 candidates during class detection ([#20389](https://github.com/tailwindlabs/tailwindcss/pull/20389))
|
||||||
- `@tailwindcss/vite` no longer forces a full page reload for external files (e.g.: `.php` files) ([#20414](https://github.com/tailwindlabs/tailwindcss/issues/20414))
|
- Prevent `@tailwindcss/vite` from forcing full-page reloads for scanned files that Vite does not handle as modules (e.g. `.php` files) ([#20414](https://github.com/tailwindlabs/tailwindcss/pull/20414))
|
||||||
- Canonicalization: don't merge utilities that reference different theme variables set to CSS-wide keywords like `unset` ([#20417](https://github.com/tailwindlabs/tailwindcss/pull/20417))
|
- Canonicalization: don't merge utilities that reference different theme variables set to CSS-wide keywords like `unset` ([#20417](https://github.com/tailwindlabs/tailwindcss/pull/20417))
|
||||||
- Don't generate utilities when a modifier is used that would otherwise be silently ignored (e.g. `rounded-sm/[5]`, `shadow-sm/foo`, `stroke-2/50`) ([#20419](https://github.com/tailwindlabs/tailwindcss/pull/20419))
|
- Don't generate utilities when a modifier is used that would otherwise be silently ignored (e.g. `rounded-sm/[5]`, `shadow-sm/foo`, `stroke-2/50`) ([#20419](https://github.com/tailwindlabs/tailwindcss/pull/20419))
|
||||||
- Only normalize top-level `and`, `or`, and `not` keywords in `supports-[…]` variants (e.g. `selector(a: not (.foo))` → `selector(a:not(.foo))`) ([#20420](https://github.com/tailwindlabs/tailwindcss/pull/20420))
|
- Preserve `and`, `or`, and `not` inside selectors in `supports-[…]` variants (e.g. `supports-[selector(a:not(.foo))]:flex`) ([#20420](https://github.com/tailwindlabs/tailwindcss/pull/20420))
|
||||||
- Don't warn about Angular's `::ng-deep` and `:host-context()` when optimizing CSS ([#20434](https://github.com/tailwindlabs/tailwindcss/pull/20434))
|
- Don't warn about Angular's `::ng-deep` and `:host-context()` when optimizing CSS ([#20434](https://github.com/tailwindlabs/tailwindcss/pull/20434))
|
||||||
- Don't generate CSS for candidates containing an empty additional modifier (e.g. `bg-red-500/50/` and `group-hover/foo//bar:flex`) ([#20466](https://github.com/tailwindlabs/tailwindcss/pull/20466))
|
- Don't generate CSS for candidates containing an empty additional modifier (e.g. `bg-red-500/50/` and `group-hover/foo//bar:flex`) ([#20466](https://github.com/tailwindlabs/tailwindcss/pull/20466))
|
||||||
|
|
||||||
|
|
@ -4120,7 +4124,8 @@ No release notes
|
||||||
|
|
||||||
- Everything!
|
- Everything!
|
||||||
|
|
||||||
[unreleased]: https://github.com/tailwindlabs/tailwindcss/compare/v4.3.3...HEAD
|
[unreleased]: https://github.com/tailwindlabs/tailwindcss/compare/v4.3.4...HEAD
|
||||||
|
[4.3.4]: https://github.com/tailwindlabs/tailwindcss/compare/v4.3.3...v4.3.4
|
||||||
[4.3.3]: https://github.com/tailwindlabs/tailwindcss/compare/v4.3.2...v4.3.3
|
[4.3.3]: https://github.com/tailwindlabs/tailwindcss/compare/v4.3.2...v4.3.3
|
||||||
[4.3.2]: https://github.com/tailwindlabs/tailwindcss/compare/v4.3.1...v4.3.2
|
[4.3.2]: https://github.com/tailwindlabs/tailwindcss/compare/v4.3.1...v4.3.2
|
||||||
[4.3.1]: https://github.com/tailwindlabs/tailwindcss/compare/v4.3.0...v4.3.1
|
[4.3.1]: https://github.com/tailwindlabs/tailwindcss/compare/v4.3.0...v4.3.1
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "@tailwindcss/oxide-android-arm-eabi",
|
"name": "@tailwindcss/oxide-android-arm-eabi",
|
||||||
"version": "4.3.3",
|
"version": "4.3.4",
|
||||||
"repository": {
|
"repository": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "git+https://github.com/tailwindlabs/tailwindcss.git",
|
"url": "git+https://github.com/tailwindlabs/tailwindcss.git",
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "@tailwindcss/oxide-android-arm64",
|
"name": "@tailwindcss/oxide-android-arm64",
|
||||||
"version": "4.3.3",
|
"version": "4.3.4",
|
||||||
"repository": {
|
"repository": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "git+https://github.com/tailwindlabs/tailwindcss.git",
|
"url": "git+https://github.com/tailwindlabs/tailwindcss.git",
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "@tailwindcss/oxide-darwin-arm64",
|
"name": "@tailwindcss/oxide-darwin-arm64",
|
||||||
"version": "4.3.3",
|
"version": "4.3.4",
|
||||||
"repository": {
|
"repository": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "git+https://github.com/tailwindlabs/tailwindcss.git",
|
"url": "git+https://github.com/tailwindlabs/tailwindcss.git",
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "@tailwindcss/oxide-darwin-x64",
|
"name": "@tailwindcss/oxide-darwin-x64",
|
||||||
"version": "4.3.3",
|
"version": "4.3.4",
|
||||||
"repository": {
|
"repository": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "git+https://github.com/tailwindlabs/tailwindcss.git",
|
"url": "git+https://github.com/tailwindlabs/tailwindcss.git",
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "@tailwindcss/oxide-freebsd-x64",
|
"name": "@tailwindcss/oxide-freebsd-x64",
|
||||||
"version": "4.3.3",
|
"version": "4.3.4",
|
||||||
"repository": {
|
"repository": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "git+https://github.com/tailwindlabs/tailwindcss.git",
|
"url": "git+https://github.com/tailwindlabs/tailwindcss.git",
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "@tailwindcss/oxide-linux-arm-gnueabihf",
|
"name": "@tailwindcss/oxide-linux-arm-gnueabihf",
|
||||||
"version": "4.3.3",
|
"version": "4.3.4",
|
||||||
"repository": {
|
"repository": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "git+https://github.com/tailwindlabs/tailwindcss.git",
|
"url": "git+https://github.com/tailwindlabs/tailwindcss.git",
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "@tailwindcss/oxide-linux-arm64-gnu",
|
"name": "@tailwindcss/oxide-linux-arm64-gnu",
|
||||||
"version": "4.3.3",
|
"version": "4.3.4",
|
||||||
"repository": {
|
"repository": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "git+https://github.com/tailwindlabs/tailwindcss.git",
|
"url": "git+https://github.com/tailwindlabs/tailwindcss.git",
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "@tailwindcss/oxide-linux-arm64-musl",
|
"name": "@tailwindcss/oxide-linux-arm64-musl",
|
||||||
"version": "4.3.3",
|
"version": "4.3.4",
|
||||||
"repository": {
|
"repository": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "git+https://github.com/tailwindlabs/tailwindcss.git",
|
"url": "git+https://github.com/tailwindlabs/tailwindcss.git",
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "@tailwindcss/oxide-linux-x64-gnu",
|
"name": "@tailwindcss/oxide-linux-x64-gnu",
|
||||||
"version": "4.3.3",
|
"version": "4.3.4",
|
||||||
"repository": {
|
"repository": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "git+https://github.com/tailwindlabs/tailwindcss.git",
|
"url": "git+https://github.com/tailwindlabs/tailwindcss.git",
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "@tailwindcss/oxide-linux-x64-musl",
|
"name": "@tailwindcss/oxide-linux-x64-musl",
|
||||||
"version": "4.3.3",
|
"version": "4.3.4",
|
||||||
"repository": {
|
"repository": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "git+https://github.com/tailwindlabs/tailwindcss.git",
|
"url": "git+https://github.com/tailwindlabs/tailwindcss.git",
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "@tailwindcss/oxide-wasm32-wasi",
|
"name": "@tailwindcss/oxide-wasm32-wasi",
|
||||||
"version": "4.3.3",
|
"version": "4.3.4",
|
||||||
"main": "tailwindcss-oxide.wasi.cjs",
|
"main": "tailwindcss-oxide.wasi.cjs",
|
||||||
"files": [
|
"files": [
|
||||||
"tailwindcss-oxide.wasm32-wasi.wasm",
|
"tailwindcss-oxide.wasm32-wasi.wasm",
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "@tailwindcss/oxide-win32-arm64-msvc",
|
"name": "@tailwindcss/oxide-win32-arm64-msvc",
|
||||||
"version": "4.3.3",
|
"version": "4.3.4",
|
||||||
"repository": {
|
"repository": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "git+https://github.com/tailwindlabs/tailwindcss.git",
|
"url": "git+https://github.com/tailwindlabs/tailwindcss.git",
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "@tailwindcss/oxide-win32-x64-msvc",
|
"name": "@tailwindcss/oxide-win32-x64-msvc",
|
||||||
"version": "4.3.3",
|
"version": "4.3.4",
|
||||||
"repository": {
|
"repository": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "git+https://github.com/tailwindlabs/tailwindcss.git",
|
"url": "git+https://github.com/tailwindlabs/tailwindcss.git",
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "@tailwindcss/oxide",
|
"name": "@tailwindcss/oxide",
|
||||||
"version": "4.3.3",
|
"version": "4.3.4",
|
||||||
"repository": {
|
"repository": {
|
||||||
"type": "git",
|
"type": "git",
|
||||||
"url": "git+https://github.com/tailwindlabs/tailwindcss.git",
|
"url": "git+https://github.com/tailwindlabs/tailwindcss.git",
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "@tailwindcss/browser",
|
"name": "@tailwindcss/browser",
|
||||||
"version": "4.3.3",
|
"version": "4.3.4",
|
||||||
"description": "A utility-first CSS framework for rapidly building custom user interfaces.",
|
"description": "A utility-first CSS framework for rapidly building custom user interfaces.",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"main": "./dist/index.global.js",
|
"main": "./dist/index.global.js",
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "@tailwindcss/cli",
|
"name": "@tailwindcss/cli",
|
||||||
"version": "4.3.3",
|
"version": "4.3.4",
|
||||||
"description": "A utility-first CSS framework for rapidly building custom user interfaces.",
|
"description": "A utility-first CSS framework for rapidly building custom user interfaces.",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"repository": {
|
"repository": {
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "@tailwindcss/node",
|
"name": "@tailwindcss/node",
|
||||||
"version": "4.3.3",
|
"version": "4.3.4",
|
||||||
"description": "A utility-first CSS framework for rapidly building custom user interfaces.",
|
"description": "A utility-first CSS framework for rapidly building custom user interfaces.",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"repository": {
|
"repository": {
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "@tailwindcss/postcss",
|
"name": "@tailwindcss/postcss",
|
||||||
"version": "4.3.3",
|
"version": "4.3.4",
|
||||||
"description": "PostCSS plugin for Tailwind CSS, a utility-first CSS framework for rapidly building custom user interfaces",
|
"description": "PostCSS plugin for Tailwind CSS, a utility-first CSS framework for rapidly building custom user interfaces",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"repository": {
|
"repository": {
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "@tailwindcss/standalone",
|
"name": "@tailwindcss/standalone",
|
||||||
"version": "4.3.3",
|
"version": "4.3.4",
|
||||||
"private": true,
|
"private": true,
|
||||||
"description": "Standalone CLI for Tailwind CSS",
|
"description": "Standalone CLI for Tailwind CSS",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "@tailwindcss/turbopack",
|
"name": "@tailwindcss/turbopack",
|
||||||
"version": "4.3.3",
|
"version": "4.3.4",
|
||||||
"description": "A Turbopack loader for Tailwind CSS v4.",
|
"description": "A Turbopack loader for Tailwind CSS v4.",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"repository": {
|
"repository": {
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "@tailwindcss/upgrade",
|
"name": "@tailwindcss/upgrade",
|
||||||
"version": "4.3.3",
|
"version": "4.3.4",
|
||||||
"description": "A utility-first CSS framework for rapidly building custom user interfaces.",
|
"description": "A utility-first CSS framework for rapidly building custom user interfaces.",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"repository": {
|
"repository": {
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "@tailwindcss/vite",
|
"name": "@tailwindcss/vite",
|
||||||
"version": "4.3.3",
|
"version": "4.3.4",
|
||||||
"description": "A utility-first CSS framework for rapidly building custom user interfaces.",
|
"description": "A utility-first CSS framework for rapidly building custom user interfaces.",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"repository": {
|
"repository": {
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "@tailwindcss/webpack",
|
"name": "@tailwindcss/webpack",
|
||||||
"version": "4.3.3",
|
"version": "4.3.4",
|
||||||
"description": "A webpack loader for Tailwind CSS v4.",
|
"description": "A webpack loader for Tailwind CSS v4.",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"repository": {
|
"repository": {
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
{
|
{
|
||||||
"name": "tailwindcss",
|
"name": "tailwindcss",
|
||||||
"version": "4.3.3",
|
"version": "4.3.4",
|
||||||
"description": "A utility-first CSS framework for rapidly building custom user interfaces.",
|
"description": "A utility-first CSS framework for rapidly building custom user interfaces.",
|
||||||
"license": "MIT",
|
"license": "MIT",
|
||||||
"repository": {
|
"repository": {
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue