Skip to content

Update dependency eslint-plugin-tailwindcss to v4.0.4#28814

Open
tryghost-renovate[bot] wants to merge 1 commit into
mainfrom
renovate/eslint-plugin-tailwindcss-4.x
Open

Update dependency eslint-plugin-tailwindcss to v4.0.4#28814
tryghost-renovate[bot] wants to merge 1 commit into
mainfrom
renovate/eslint-plugin-tailwindcss-4.x

Conversation

@tryghost-renovate

@tryghost-renovate tryghost-renovate Bot commented Jun 22, 2026

Copy link
Copy Markdown
Contributor

This PR contains the following updates:

Package Change Age Confidence
eslint-plugin-tailwindcss 4.0.0-beta.04.0.4 age confidence

Release Notes

francoismassart/eslint-plugin-tailwindcss (eslint-plugin-tailwindcss)

v4.0.4

Compare Source

v4.0.3: Tailwind CSS v4

Compare Source

Made for Tailwind CSS v4

Version 4 of the eslint-plugin-tailwindcss is:

This version has been made possible thanks to the work of hyoban and his project tailwind-api-utils.

The pre-release versions were tested on our Nx monorepo which uses Next.js, react and offcourse Tailwind CSS 4.

v4.0.2

Compare Source


Configuration

📅 Schedule: (in timezone Etc/UTC)

  • Branch creation
    • Only on Sunday and Saturday (* * * * 0,6)
    • Between 11:00 PM and 11:59 PM, Monday through Friday (* 23 * * 1-5)
    • Between 12:00 AM and 04:59 AM, Monday through Saturday (* 0-4 * * 1-6)
  • Automerge
    • Only on Sunday and Saturday (* * * * 0,6)
    • Between 11:00 PM and 11:59 PM, Monday through Friday (* 23 * * 1-5)
    • Between 12:00 AM and 04:59 AM, Monday through Saturday (* 0-4 * * 1-6)

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

Rebasing: Never, 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 has been generated by Mend Renovate.

@tryghost-renovate

tryghost-renovate Bot commented Jun 22, 2026

Copy link
Copy Markdown
Contributor Author

⚠️ Artifact update problem

Renovate failed to update an artifact related to this branch. You probably do not want to merge this PR as-is.

♻ Renovate will retry this branch, including artifacts, only when one of the following happens:

  • any of the package files in this branch needs updating, or
  • the branch becomes conflicted, or
  • you click the rebase/retry checkbox if found above, or
  • you rename this PR's title to start with "rebase!" to trigger it manually

The artifact failure details are included below:

File name: pnpm-lock.yaml

<--- Last few GCs --->

[556:0x7637000]    25128 ms: Scavenge (reduce) (interleaved) 1012.6 (1028.2) -> 1012.3 (1029.0) MB, pooled: 0 MB, 3.63 / 0.00 ms  (average mu = 0.427, current mu = 0.309) task; 
[556:0x7637000]    25501 ms: Mark-Compact (reduce) 1034.3 (1050.1) -> 1033.9 (1049.6) MB, pooled: 0 MB, 329.66 / 0.00 ms  (+ 1.5 ms in 0 steps since start of marking, biggest step 0.0 ms, walltime since start of marking 419 ms) (average mu = 0.386, curren

<--- JS stacktrace --->

FATAL ERROR: Reached heap limit Allocation failed - JavaScript heap out of memory
----- Native stack trace -----

 1: 0xe1603a node::OOMErrorHandler(char const*, v8::OOMDetails const&) [/opt/containerbase/tools/node/22.18.0/bin/node]
 2: 0x11e3540 v8::Utils::ReportOOMFailure(v8::internal::Isolate*, char const*, v8::OOMDetails const&) [/opt/containerbase/tools/node/22.18.0/bin/node]
 3: 0x11e3817 v8::internal::V8::FatalProcessOutOfMemory(v8::internal::Isolate*, char const*, v8::OOMDetails const&) [/opt/containerbase/tools/node/22.18.0/bin/node]
 4: 0x14110f5  [/opt/containerbase/tools/node/22.18.0/bin/node]
 5: 0x142a989 v8::internal::Heap::CollectGarbage(v8::internal::AllocationSpace, v8::internal::GarbageCollectionReason, v8::GCCallbackFlags) [/opt/containerbase/tools/node/22.18.0/bin/node]
 6: 0x13ff038 v8::internal::HeapAllocator::AllocateRawWithLightRetrySlowPath(int, v8::internal::AllocationType, v8::internal::AllocationOrigin, v8::internal::AllocationAlignment) [/opt/containerbase/tools/node/22.18.0/bin/node]
 7: 0x13fff65 v8::internal::HeapAllocator::AllocateRawWithRetryOrFailSlowPath(int, v8::internal::AllocationType, v8::internal::AllocationOrigin, v8::internal::AllocationAlignment) [/opt/containerbase/tools/node/22.18.0/bin/node]
 8: 0x13d835e v8::internal::Factory::AllocateRaw(int, v8::internal::AllocationType, v8::internal::AllocationAlignment) [/opt/containerbase/tools/node/22.18.0/bin/node]
 9: 0x13c69bc v8::internal::FactoryBase<v8::internal::Factory>::AllocateRawArray(int, v8::internal::AllocationType) [/opt/containerbase/tools/node/22.18.0/bin/node]
10: 0x13c6b16 v8::internal::FactoryBase<v8::internal::Factory>::NewFixedArrayWithFiller(v8::internal::Handle<v8::internal::Map>, int, v8::internal::Handle<v8::internal::HeapObject>, v8::internal::AllocationType) [/opt/containerbase/tools/node/22.18.0/bin/node]
11: 0x16ecb58 v8::internal::Handle<v8::internal::NameDictionary> v8::internal::HashTable<v8::internal::NameDictionary, v8::internal::NameDictionaryShape>::New<v8::internal::Isolate>(v8::internal::Isolate*, int, v8::internal::AllocationType, v8::internal::MinimumCapacity) [/opt/containerbase/tools/node/22.18.0/bin/node]
12: 0x16ecd62 v8::internal::Handle<v8::internal::NameDictionary> v8::internal::HashTable<v8::internal::NameDictionary, v8::internal::NameDictionaryShape>::EnsureCapacity<v8::internal::Isolate>(v8::internal::Isolate*, v8::internal::Handle<v8::internal::NameDictionary>, int, v8::internal::AllocationType) [/opt/containerbase/tools/node/22.18.0/bin/node]
13: 0x16ed9b8 v8::internal::Handle<v8::internal::NameDictionary> v8::internal::Dictionary<v8::internal::NameDictionary, v8::internal::NameDictionaryShape>::Add<v8::internal::Isolate, (v8::internal::AllocationType)0>(v8::internal::Isolate*, v8::internal::Handle<v8::internal::NameDictionary>, v8::internal::Handle<v8::internal::Name>, v8::internal::Handle<v8::internal::Object>, v8::internal::PropertyDetails, v8::internal::InternalIndex*) [/opt/containerbase/tools/node/22.18.0/bin/node]
14: 0x16f3c1a v8::internal::BaseNameDictionary<v8::internal::NameDictionary, v8::internal::NameDictionaryShape>::Add(v8::internal::Isolate*, v8::internal::Handle<v8::internal::NameDictionary>, v8::internal::Handle<v8::internal::Name>, v8::internal::Handle<v8::internal::Object>, v8::internal::PropertyDetails, v8::internal::InternalIndex*) [/opt/containerbase/tools/node/22.18.0/bin/node]
15: 0x1842d38 v8::internal::Runtime_AddDictionaryProperty(int, unsigned long*, v8::internal::Isolate*) [/opt/containerbase/tools/node/22.18.0/bin/node]
16: 0x1d97476  [/opt/containerbase/tools/node/22.18.0/bin/node]
/usr/local/bin/node: line 18:   556 Aborted                 (core dumped) /opt/containerbase/tools/node/22.18.0/bin/node "$@"

@github-actions github-actions Bot added the dependencies Pull requests that update a dependency file label Jun 22, 2026
@tryghost-renovate tryghost-renovate Bot force-pushed the renovate/eslint-plugin-tailwindcss-4.x branch 2 times, most recently from b5c3a5f to d116792 Compare June 24, 2026 15:19
@tryghost-renovate tryghost-renovate Bot changed the title Update dependency eslint-plugin-tailwindcss to v4.0.2 Update dependency eslint-plugin-tailwindcss to v4.0.3 Jun 24, 2026
@9larsons

Copy link
Copy Markdown
Contributor

Triage from auto-loop: this beta-to-stable bump (4.0.0-beta.0 → 4.0.3) needs more than mechanical rebasing.

Required changes (out of scope for the auto-loop):

  1. Settings API rename in eslint.shared.mjs: the new plugin requires tailwindcss: {cssConfigPath: ...} instead of tailwindcss: {config: ...}.
  2. Auto-fixable new findings: ~24 new enforces-shorthand violations across @tryghost/shade, @tryghost/admin-x-design-system, @tryghost/admin-x-settings, @tryghost/posts, @tryghost/activitypub (e.g. h-5 w-5size-5, -translate-x-1/2 -translate-y-1/2-translate-1/2). Fixable via eslint --fix.
  3. False-positive blocker: the new no-contradicting-classname rule flags valid Tailwind v4 patterns:
    • outline outline-N (used in ~10 sites across apps/activitypub and apps/admin-x-design-system) — in TW v4, outline-N only sets outline-width; outline provides outline-style: solid, so the pair is intentional, not contradictory.
    • divide-gray-X + border-gray-X (1 site) — orthogonal: divide-color applies to child dividers, border-color to the outer border.

Recommend: file an upstream bug on francoismassart/eslint-plugin-tailwindcss for the false-positives, and either (a) wait for a fix before merging, or (b) decide whether to disable no-contradicting-classname until upstream patches.

The pre-existing comments-ui/signup-form lint failures (rule-schema mismatch for legacyTailwindV3ConfigPath apps with the v4 plugin loaded at root) are independent of this bump and already failing on main.

@tryghost-renovate tryghost-renovate Bot force-pushed the renovate/eslint-plugin-tailwindcss-4.x branch from d116792 to 79f9b52 Compare June 27, 2026 12:47
@tryghost-renovate tryghost-renovate Bot changed the title Update dependency eslint-plugin-tailwindcss to v4.0.3 Update dependency eslint-plugin-tailwindcss to v4.0.4 Jun 27, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant