Skip to content

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Sep 11, 2025

This PR contains the following updates:

Package Change Age Confidence
tailwind-merge ^1.10.0 -> ^3.0.0 age confidence

Release Notes

dcastil/tailwind-merge (tailwind-merge)

v3.3.1

Compare Source

Bug Fixes
  • Fix arbitrary value using color-mix() not being detected as color by @​dcastil in #​591

Full Changelog: dcastil/tailwind-merge@v3.3.0...v3.3.1

Thanks to @​brandonmcconnell, @​manavm1990, @​langy, @​roboflow, @​syntaxfm, @​getsentry, @​codecov, @​sourcegraph, a private sponsor, @​block and @​shawt3000 for sponsoring tailwind-merge! ❤️

v3.3.0

Compare Source

New Features

Full Changelog: dcastil/tailwind-merge@v3.2.0...v3.3.0

Thanks to @​brandonmcconnell, @​manavm1990, @​langy, @​roboflow, @​syntaxfm, @​getsentry, @​codecov, @​sourcegraph, a private sponsor and @​block for sponsoring tailwind-merge! ❤️

v3.2.0

Compare Source

New Features

Full Changelog: dcastil/tailwind-merge@v3.1.0...v3.2.0

Thanks to @​brandonmcconnell, @​manavm1990, @​langy, @​jamesreaco, @​roboflow, @​syntaxfm, @​getsentry, @​codecov, @​sourcegraph and a private sponsor for sponsoring tailwind-merge! ❤️

v3.1.0

Compare Source

New Features
Bug Fixes
  • Fix length variable in via-(length:*) class being merged with via-<color> classes accidentally by @​dcastil in #​559
Documentation
Other

Full Changelog: dcastil/tailwind-merge@v3.0.2...v3.1.0

Thanks to @​brandonmcconnell, @​manavm1990, @​langy, @​jamesreaco, @​roboflow, @​syntaxfm, @​getsentry, @​codecov, @​sourcegraph and a private sponsor for sponsoring tailwind-merge! ❤️

v3.0.2

Compare Source

Bug Fixes

Full Changelog: dcastil/tailwind-merge@v3.0.1...v3.0.2

Thanks to @​brandonmcconnell, @​manavm1990, @​langy, @​jamesreaco, @​roboflow, @​syntaxfm, @​getsentry, @​codecov, @​sourcegraph and a private sponsor for sponsoring tailwind-merge! ❤️

v3.0.1

Compare Source

Bug Fixes

Full Changelog: dcastil/tailwind-merge@v3.0.0...v3.0.1

Thanks to @​brandonmcconnell, @​manavm1990, @​langy, @​jamesreaco, @​roboflow, @​syntaxfm, @​getsentry, @​codecov, @​sourcegraph and a private sponsor for sponsoring tailwind-merge! ❤️

v3.0.0

Compare Source

Tailwind CSS v4 is here and it's time to upgrade tailwind-merge to support it. tailwind-merge v3.0.0 is more accurate than ever and follows the Tailwind CSS spec more closely than in v2. That is thanks to Tailwind CSS v4 being more consistent than ever.

This release drops support for Tailwind CSS v3 and in turn adds support for Tailwind CSS v4. That means you should upgrade to Tailwind CSS v4 and tailwind-merge v3 together. All breaking changes are related to the Tailwind CSS v4 support.

Check out the migration guide and if you have any questions, feel free to create an issue.

Breaking Changes
  • Dropping support for Tailwind CSS v3 in favor of support for Tailwind CSS v4 by @​dcastil in #​518
  • Theme scales keys changed and now match Tailwind CSS v4 theme variable namespace exactly by @​dcastil in #​518
  • isLength validator was removed and split into separate validators isNumber and isFraction by @​dcastil in #​518
  • Prefix defined in config shouldn't include combining - character anymore by @​dcastil in #​518
  • Tailwind CSS v3 prefix position in class not supported anymore in favor of Tailwind CSS v4 position by @​dcastil in #​518
  • Custom separators are no longer supported by @​dcastil in #​518
  • New mandatory orderSensitiveModifiers property in config when using createTailwindMerge by @​dcastil in #​518
  • DefaultThemeGroupIds type union consists of different string literals than before by @​dcastil in #​518
  • Classes removed in Tailwind CSS v4 are not supported by tailwind-merge anymore by @​dcastil in #​518
New Features
  • Support for new important modifier position at the end of class by @​dcastil in #​518
  • Support for arbitrary CSS variable syntax by @​dcastil in #​518
  • There are a bunch of new validators used by tailwind-merge, primarily for new Tailwind CSS v4 features like arbitrary CSS variables by @​dcastil in #​518
Bug Fixes
  • Previously some order-sensitive modifiers like before: were treated as not order-sensitive. This is now fixed by @​dcastil in #​518
Documentation

Full Changelog: dcastil/tailwind-merge@v2.6.0...v3.0.0

Thanks to @​brandonmcconnell, @​manavm1990, @​langy, @​jamesreaco, @​roboflow, @​syntaxfm, @​getsentry, @​codecov, @​sourcegraph and a private sponsor for sponsoring tailwind-merge! ❤️

v2.6.0

Compare Source

New Features

Full Changelog: dcastil/tailwind-merge@v2.5.5...v2.6.0

Thanks to @​brandonmcconnell, @​manavm1990, @​langy, @​jamesreaco, @​roboflow, @​syntaxfm, @​getsentry, @​codecov, @​sourcegraph, a private sponsor and more via @​thnxdev for sponsoring tailwind-merge! ❤️

v2.5.5

Compare Source

Bug Fixes
Documentation

Full Changelog: dcastil/tailwind-merge@v2.5.4...v2.5.5

Thanks to @​brandonmcconnell, @​manavm1990, @​langy, @​jamesreaco, @​roboflow, @​syntaxfm, @​getsentry, @​codecov and more via @​thnxdev for sponsoring tailwind-merge! ❤️

v2.5.4

Compare Source

Bug Fixes

Full Changelog: dcastil/tailwind-merge@v2.5.3...v2.5.4

Thanks to @​brandonmcconnell, @​manavm1990, @​langy, @​jamesreaco, @​roboflow and @​codecov for sponsoring tailwind-merge! ❤️

v2.5.3

Compare Source

Bug Fixes
Documentation
Other

Full Changelog: dcastil/tailwind-merge@v2.5.2...v2.5.3

Thanks to @​brandonmcconnell, @​manavm1990, @​langy, @​jamesreaco, @​roboflow, @​xeger and @​MrDeatHHH for sponsoring tailwind-merge! ❤️

v2.5.2

Compare Source

Sorry for all the bugs today!

Bug Fixes

Full Changelog: dcastil/tailwind-merge@v2.5.1...v2.5.2

Thanks to @​brandonmcconnell, @​manavm1990, @​langy, @​jamesreaco and @​jamaluddinrumi for sponsoring tailwind-merge! ❤️

v2.5.1

Compare Source

Bug Fixes

Full Changelog: dcastil/tailwind-merge@v2.5.0...v2.5.1

Thanks to @​brandonmcconnell, @​manavm1990, @​langy, @​jamesreaco and @​jamaluddinrumi for sponsoring tailwind-merge! ❤️

v2.5.0

Compare Source

New Features
Bug Fixes
  • Fix bg-opacity arbitrary percentages not being recognized properly by @​dcastil in #​451

Full Changelog: dcastil/tailwind-merge@v2.4.0...v2.5.0

Thanks to @​brandonmcconnell, @​manavm1990, @​langy and @​jamesreaco for sponsoring tailwind-merge! ❤️

v2.4.0

Compare Source

New Features
  • Allow hooking into class parsing logic (experimental) by @​dcastil in #​444
    • There is no info to this in the docs because this is experimental, but there is a new experimentalParseClassName property in the config that allows you to customize how tailwind-merge recognizes classes. If you're interested, you can read how to use it in the inline JSDocs and subscribe to #​385 for upcoming more powerful low-level functionality.
  • Create security policy by @​dcastil in #​439
    • Added documentation on how to report potential vulnerabilities
  • Avoid @babel/runtime dependency by @​dcastil in #​431
    • Now no dependencies in tailwind-merge anymore. This dependency was only used in the tailwind-merge/es5 bundle anyway which I don't optimize for.
Documentation
Other

Full Changelog: dcastil/tailwind-merge@v2.3.0...v2.4.0

Thanks to @​brandonmcconnell, @​manavm1990, @​langy, @​jamesreaco and @​microsoft for sponsoring tailwind-merge! ❤️

v2.3.0

Compare Source

New Features
Documentation

Full Changelog: dcastil/tailwind-merge@v2.2.2...v2.3.0

Thanks to @​brandonmcconnell, @​manavm1990, @​langy and @​jamesreaco for sponsoring tailwind-merge! ❤️

v2.2.2

Compare Source

Bug Fixes
Documentation

Full Changelog: dcastil/tailwind-merge@v2.2.1...v2.2.2

Thanks to @​brandonmcconnell, @​manavm1990, @​langy, a private sponsor and @​jamesreaco for sponsoring tailwind-merge! ❤️

v2.2.1

Compare Source

Bug Fixes

Full Changelog: dcastil/tailwind-merge@v2.2.0...v2.2.1

Thanks to @​brandonmcconnell, @​manavm1990 and @​langy for sponsoring tailwind-merge! ❤️

v2.2.0

Compare Source

New Features

Full Changelog: dcastil/tailwind-merge@v2.1.0...v2.2.0

Thanks to @​brandonmcconnell, @​manavm1990, @​ErwinAI and @​langy for sponsoring tailwind-merge! ❤️

v2.1.0

Compare Source

New Features
Bug Fixes
  • Fix display class not removed when it precedes line-clamp class by @​dcastil in #​347
Documentation

Full Changelog: dcastil/tailwind-merge@v2.0.0...v2.1.0

Thanks to @​brandonmcconnell, @​manavm1990, @​ErwinAI and @​langy for sponsoring tailwind-merge! ❤️

v2.0.0

Compare Source

The tailwind-merge v2 release has been sitting here almost finished for 2 months already. But the timing was never quite right, especially thinking about the increased support needed after the release. In the meantime, the product of the company I work at launched in public beta and I married. Thank you for your patience.

This release focuses on making it easier to configure the library for new users. Check out the migration guide and if you have any questions, feel free to create an issue.

Breaking Changes
  • Fix background-image and background-position being merged incorrectly by @​dcastil in #​300
    • Values for background-position and background-size can look very similar and Tailwind CSS uses the same bg- prefix for both groups. This results in some limitations for tailwind-merge. If you use background position or background size with arbitrary values, please read this section about how to use them.
  • Make types of available keys more strict and configurable through generics by @​kachkaev in #​279
  • Make it possible to override elements with extendTailwindMerge by @​dcastil in #​294
  • Separate validators better by @​dcastil in #​292
  • Make conflictingClassGroupModifiers in config non-optional by @​dcastil in #​291
  • Move separator to config by @​dcastil in #​290
  • Remove module field from package.json by @​dcastil in #​289
  • Remove deprecated exports by @​dcastil in #​288
  • Transpile lib to more modern JS by @​dcastil in #​287
New Features
Bug Fixes
Documentation
  • Explain limitations of arbitrary values in bg-size and bg-position class groups in docs by @​dcastil in #​328

Full Changelog: dcastil/tailwind-merge@v1.14.0...v2.0.0

Thanks to @​quezlatch, @​brandonmcconnell, @​manavm1990 and @​ErwinAI for sponsoring tailwind-merge! ❤️

v1.14.0

Compare Source

New Features
  • Improve support for arbitrary values by @​dcastil in #​263
    • Previously, tailwind-merge checked the content of the arbitrary value portion of a class in most cases to understand whether the type of the arbitrary value is correct (e.g. it checked for number followed by length unit for the length type). That lead to the issue that a class like mt-[calc(theme(fontSize.4xl)/1.125)] would not be recognized correctly because no length unit is present in the arbitrary value.
    • I changed the check of the arbitrary value to also pass when a calc(), min(), max() and clamp() function is used in the arbitrary value.
    • In ambiguous cases, you can use data type labels to mark the type of a class. Read more
    • Moreover, I removed the check where the type of the arbitrary value is unambiguous. In the class mt-[…] the arbitrary value can only be a length, so I don't check for it. A consequence of this is that if you use non-Tailwind classes like mt-[this-is-totally-not-tailwind], tailwind-merge will recognize it as a Tailwind class from now on. Please don't use classes that look like Tailwind classes with arbitrary value but aren't Tailwind classes with tailwind-merge (in default config) to prevent incorrect merging behavior.
Bug Fixes
Documentation

Full Changelog: dcastil/tailwind-merge@v1.13.2...v1.14.0

v1.13.2

Compare Source

Bug Fixes
Documentation

Full Changelog: dcastil/tailwind-merge@v1.13.1...v1.13.2

Thanks to @​bluetch for sponsoring tailwind-merge! ❤️

v1.13.1

Compare Source

Bug Fixes

Full Changelog: dcastil/tailwind-merge@v1.13.0...v1.13.1

v1.13.0

Compare Source

This release focuses on improvements to the docs.

Bug Fixes
Documentation
Other
  • Add npm package provenance by @​dcastil in #​219
    • GitHub introduced a new security feature to verify which source commit and build file were used for a specific npm package version. tailwind-merge now publishes provenance signatures alongside all releases on npm. Read more on the GitHub blog.

Full Changelog: dcastil/tailwind-merge@v1.12.0...v1.13.0

v1.12.0

Compare Source

With this release tailwind-merge supports all features introduced in Tailwind CSS v3.3.

New Features
  • Add support for postfix modifier by @​dcastil in #​214
    • This adds support for line-height modifiers in font-size utilities like text-lg/7 and more potential postfix modifiers in the future (learn more).
    • All classes are checked for postfix modifiers since there will be more in the future and they'll be configurable with plugins.
    • tailwind-merge can't know from the class syntax alone whether something is a modifier or not. E.g. there is w-1/2 which doesn't contain a modifier. So tailwind-merge always checks whether class without potential modifier exists and if it doesn't it checks for full class. This behavior might get reversed in the next major version as a breaking change (learn more).
    • Added conflictingClassGroupModifiers object to tailwind-merge config (learn more).

Full Changelog: dcastil/tailwind-merge@v1.11.0...v1.12.0

v1.11.0

Compare Source

New Features
  • Add support for Tailwind CSS v3.3 except line-height shorthand by @​dcastil in #​210
    • The line-height shorthand in font-size utilities (text-lg/7) introduced in Tailwind CSS v3.3 is not yet supported in tailwind-merge because that feature is a bit more involved. I'll add support for it in a future release. More info in #​211.
    • Added new validator isPercent which is needed internally for the default scale of color stop positions.
    • New theme key gradientColorStopPositions supported in tailwind-merge.
    • New logical properties like ps-0 (padding-inline-start: 0px;) are de-duplicated away when using the matching property for all sides afterwards like in this case p-0, but not when using single axis sides like px-0 because padding-inline-start can also be the top or bottom padding depending on writing mode.
      • Basically twMerge('ps-0 p-0') === 'p-0' && twMerge('ps-0 px-0') === 'ps-0 px-0'.
      • If you want to use logical properties and know which writing modes your app is limited to, add the right conflicts yourself to your tailwind-merge config.

Full Changelog: dcastil/tailwind-merge@v1.10.0...v1.11.0

Thanks to @​brandonmcconnell for sponsoring tailwind-merge! ❤️


Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.

Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

Copy link

vercel bot commented Sep 11, 2025

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Preview Comments Updated (UTC)
supabase-cache-helpers Ready Ready Preview Comment Oct 8, 2025 9:25am
supabase-cache-helpers-react-query Error Error Oct 8, 2025 9:25am
supabase-cache-helpers-swr-demo Error Error Oct 8, 2025 9:25am

Copy link

changeset-bot bot commented Sep 11, 2025

⚠️ No Changeset found

Latest commit: 0188bfb

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

Copy link

codecov bot commented Sep 11, 2025

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 91.28%. Comparing base (6f1fd45) to head (55f9930).

Additional details and impacted files
@@           Coverage Diff           @@
##             main     #639   +/-   ##
=======================================
  Coverage   91.28%   91.28%           
=======================================
  Files         144      144           
  Lines        2261     2261           
  Branches      738      739    +1     
=======================================
  Hits         2064     2064           
  Misses        162      162           
  Partials       35       35           
Flag Coverage Δ
postgrest-core 91.28% <ø> (ø)
postgrest-react-query 91.28% <ø> (ø)
postgrest-server 91.28% <ø> (ø)
postgrest-swr 91.28% <ø> (ø)
storage-core 91.28% <ø> (ø)
storage-react-query 91.28% <ø> (ø)
storage-swr 91.28% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@renovate renovate bot force-pushed the renovate/tailwind-merge-3.x branch from 55f9930 to 5d64af9 Compare October 8, 2025 09:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants