tailwindcss/integrations/cli
Robin Malfait 0c5f8bfd88
Ignore the standalone CLI (#20139)
This PR fixes an issue where if you use the standalone CLI, and you move
the standalone CLI into the current project, then we would scan that
standalone CLI as-if it contains Tailwind CSS classes. Since the CLI
contains actual Tailwind CSS classes, and is in fact readable text, this
binary would've been used as a source.

There are a few ways of fixing this, we could hardcode all the known
names, but that would result in an issue if you rename the CLI. We could
check whether it's a binary format and look for magic numbers at the
top. We could also check for a shebang at the top of the file and skip
it that way.

While some of these solutions might still be useful for the future. For
now I fixed it by essentially always ignoring `process.execPath`. That
way we never ever scan the actual executable regardless of whether you
renamed it or not.

Fixes: #20134

## Test plan

- Added an integration tests
- Works on every OS [ci-all]
2026-06-02 12:49:53 +02:00
..
config.test.ts Fix TS2742 error when inferring exported Config type (#19707) 2026-04-29 18:48:08 +00:00
index.test.ts Ensure @tailwindcss/cli recovers from a deleted transitive dependency (#20137) 2026-06-01 19:15:40 +02:00
plugins.test.ts Add list, compound, and complex Selector nodes (#20088) 2026-05-20 15:04:05 +02:00
standalone.test.ts Ignore the standalone CLI (#20139) 2026-06-02 12:49:53 +02:00