Skip to content

build(deps-dev): Bump tailwindcss from 3.4.19 to 4.3.2 in /ui - #82

Closed
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/npm_and_yarn/ui/tailwindcss-4.3.1
Closed

dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/npm_and_yarn/ui/tailwindcss-4.3.1

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Jun 29, 2026

Copy link
Copy Markdown
Contributor

Bumps tailwindcss from 3.4.19 to 4.3.2.

Release notes

Sourced from tailwindcss's releases.

v4.3.2

Fixed

  • Support bare spacing values for auto-rows-* and auto-cols-* utilities (e.g. auto-rows-12 and auto-cols-16) (#20229)
  • Prevent @tailwindcss/cli in --watch mode from crashing on Windows when @source points to a directory that doesn't exist (#20242)
  • Prevent @tailwindcss/vite from crashing in Deno v2.8.x when context.parentURL is not a valid URL (#20245)
  • Ensure @tailwindcss/cli in --watch mode rebuilds when the input CSS file changes in an ignored directory (#20246)
  • Allow @variant rules used in addBase(…) to use custom variants defined later (#20247)
  • Prevent @tailwindcss/vite from crashing during HMR when scanned files or directories are deleted (#20259)
  • Generate font-size instead of color declarations for text-[--spacing(…)] (#20260)
  • Prevent @source patterns from scanning unrelated sibling files and folders (#20263)
  • Extract class candidates adjacent to Template Toolkit delimiters like %]…[% in .tt, .tt2, and .tx files (#20269)
  • Extract class candidates from conditional Maud syntax like p.text-black[condition] (#20269)
  • Prevent @position-try rules from triggering unknown at-rule warnings when optimizing CSS (#20277)
  • Support class suggestions for named opacity modifiers from --opacity theme values (#20287)
  • Prevent type errors in @tailwindcss/postcss when used with newer PostCSS patch releases (#20289)

v4.3.1

Added

  • Add --silent option to suppress output in @tailwindcss/cli (#20100)

Fixed

  • Remove deprecation warnings by using Module#registerHooks instead of Module#register on Node 26+ (#20028)
  • Canonicalization: don't crash when plugin utilities throw for unsupported values (#20052)
  • Allow @apply to be used with CSS mixins (#19427)
  • Ensure not-* correctly negates @container queries, including style(…) queries (#20059)
  • Ensure drop-shadow-* color utilities work with custom shadow values containing calc(…) (#20080)
  • Fix 'Sourcemap is likely to be incorrect' warnings when using @tailwindcss/vite (#20103)
  • Ensure @tailwindcss/webpack can be installed in Rspack projects without requiring webpack as a peer dependency (#20027)
  • Canonicalization: don't suggest invalid calc(…) expressions (e.g. px-[calc(1rem+0px)]px-[calc(1rem+0)]) (#20127)
  • Canonicalization: avoid suggesting large spacing-scale values for arbitrary lengths (e.g. left-[99999px]left-[99999px], not left-24999.75) (#20130)
  • Ensure @tailwindcss/cli in --watch mode recovers when a tracked dependency is deleted and restored (#20137)
  • Ensure standalone @tailwindcss/cli binaries are ignored when scanning for class candidates (#20139)
  • Ensure class candidates are extracted from Twig addClass(…) and removeClass(…) calls (#20198)
  • Don't crash in the Ruby or Vue preprocessors when scanning files containing invalid UTF-8 bytes (#19588)
  • Allow @variant to be used inside addBase (#19480)
  • Ensure @source globs with symlinks are preserved (#20203)
  • Ensure later @source rules can re-include files excluded by earlier @source not rules (#20203)
  • Upgrade: don't migrate empty class rules to invalid @utility rules (#20205)
  • Ensure transitions between inset-shadow-none and other inset shadows work correctly (#20208)
  • Ensure explicitly referenced @source directories are scanned even when ignored by git (#20214)
  • Ensure @source globs ending in **/* preserve dynamic path segments to avoid scanning too many files (#20217)
  • Canonicalization: don't fold calc(…) divisions when the result would require high precision (e.g. w-[calc(100%/3.5)]w-[calc(100%/3.5)], not w-[28.571428571428573%]) (#20221)
  • Serve ESM type declarations to ESM importers of @tailwindcss/postcss (#20228)

Changed

  • Generate 0 instead of calc(var(--spacing) * 0) for spacing utilities like m-0 and left-0 (#20196)

... (truncated)

Changelog

Sourced from tailwindcss's changelog.

[4.3.2] - 2026-06-26

Fixed

  • Support bare spacing values for auto-rows-* and auto-cols-* utilities (e.g. auto-rows-12 and auto-cols-16) (#20229)
  • Prevent @tailwindcss/cli in --watch mode from crashing on Windows when @source points to a directory that doesn't exist (#20242)
  • Prevent @tailwindcss/vite from crashing in Deno v2.8.x when context.parentURL is not a valid URL (#20245)
  • Ensure @tailwindcss/cli in --watch mode rebuilds when the input CSS file changes in an ignored directory (#20246)
  • Allow @variant rules used in addBase(…) to use custom variants defined later (#20247)
  • Prevent @tailwindcss/vite from crashing during HMR when scanned files or directories are deleted (#20259)
  • Generate font-size instead of color declarations for text-[--spacing(…)] (#20260)
  • Prevent @source patterns from scanning unrelated sibling files and folders (#20263)
  • Extract class candidates adjacent to Template Toolkit delimiters like %]…[% in .tt, .tt2, and .tx files (#20269)
  • Extract class candidates from conditional Maud syntax like p.text-black[condition] (#20269)
  • Prevent @position-try rules from triggering unknown at-rule warnings when optimizing CSS (#20277)
  • Support class suggestions for named opacity modifiers from --opacity theme values (#20287)
  • Prevent type errors in @tailwindcss/postcss when used with newer PostCSS patch releases (#20289)

[4.3.1] - 2026-06-12

Added

  • Add --silent option to suppress output in @tailwindcss/cli (#20100)

Fixed

  • Remove deprecation warnings by using Module#registerHooks instead of Module#register on Node 26+ (#20028)
  • Canonicalization: don't crash when plugin utilities throw for unsupported values (#20052)
  • Allow @apply to be used with CSS mixins (#19427)
  • Ensure not-* correctly negates @container queries, including style(…) queries (#20059)
  • Ensure drop-shadow-* color utilities work with custom shadow values containing calc(…) (#20080)
  • Fix 'Sourcemap is likely to be incorrect' warnings when using @tailwindcss/vite (#20103)
  • Ensure @tailwindcss/webpack can be installed in Rspack projects without requiring webpack as a peer dependency (#20027)
  • Canonicalization: don't suggest invalid calc(…) expressions (e.g. px-[calc(1rem+0px)]px-[calc(1rem+0)]) (#20127)
  • Canonicalization: avoid suggesting large spacing-scale values for arbitrary lengths (e.g. left-[99999px]left-[99999px], not left-24999.75) (#20130)
  • Ensure @tailwindcss/cli in --watch mode recovers when a tracked dependency is deleted and restored (#20137)
  • Ensure standalone @tailwindcss/cli binaries are ignored when scanning for class candidates (#20139)
  • Ensure class candidates are extracted from Twig addClass(…) and removeClass(…) calls (#20198)
  • Don't crash in the Ruby or Vue preprocessors when scanning files containing invalid UTF-8 bytes (#19588)
  • Allow @variant to be used inside addBase (#19480)
  • Ensure @source globs with symlinks are preserved (#20203)
  • Ensure later @source rules can re-include files excluded by earlier @source not rules (#20203)
  • Upgrade: don't migrate empty class rules to invalid @utility rules (#20205)
  • Ensure transitions between inset-shadow-none and other inset shadows work correctly (#20208)
  • Ensure explicitly referenced @source directories are scanned even when ignored by git (#20214)
  • Ensure @source globs ending in **/* preserve dynamic path segments to avoid scanning too many files (#20217)
  • Canonicalization: don't fold calc(…) divisions when the result would require high precision (e.g. w-[calc(100%/3.5)]w-[calc(100%/3.5)], not w-[28.571428571428573%]) (#20221)
  • Serve ESM type declarations to ESM importers of @tailwindcss/postcss (#20228)

Changed

... (truncated)

Commits
Maintainer changes

This version was pushed to npm by GitHub Actions, a new releaser for tailwindcss since your current version.


@dependabot dependabot Bot added dependencies Pull requests that update a dependency file javascript Pull requests that update javascript code labels Jun 29, 2026
@github-project-automation github-project-automation Bot moved this to Todo in Driven Jun 29, 2026
Bumps [tailwindcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss) from 3.4.19 to 4.3.2.
- [Release notes](https://github.com/tailwindlabs/tailwindcss/releases)
- [Changelog](https://github.com/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/tailwindcss/commits/v4.3.2/packages/tailwindcss)

---
updated-dependencies:
- dependency-name: tailwindcss
  dependency-version: 4.3.1
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot changed the title build(deps-dev): Bump tailwindcss from 3.4.19 to 4.3.1 in /ui build(deps-dev): Bump tailwindcss from 3.4.19 to 4.3.2 in /ui Jul 3, 2026
@dependabot
dependabot Bot force-pushed the dependabot/npm_and_yarn/ui/tailwindcss-4.3.1 branch from 0829d3d to 7fa075b Compare July 3, 2026 20:41
@pmaxhogan

Copy link
Copy Markdown
Owner

Superseded by #93, which lands the same tailwindcss 3 -> 4 major but with the full hand-done migration (v4 CSS-first config, postcss/vite wiring, class updates across views) that a version-only bump cannot provide.

@pmaxhogan pmaxhogan closed this Jul 19, 2026
@github-project-automation github-project-automation Bot moved this from Todo to Done in Driven Jul 19, 2026
@dependabot @github

dependabot Bot commented on behalf of github Jul 19, 2026

Copy link
Copy Markdown
Contributor Author

OK, I won't notify you again about this release, but will get in touch when a new version is available. If you'd rather skip all updates until the next major or minor version, let me know by commenting @dependabot ignore this major version or @dependabot ignore this minor version. You can also ignore all major, minor, or patch releases for a dependency by adding an ignore condition with the desired update_types to your config file.

If you change your mind, just re-open this PR and I'll resolve any conflicts on it.

@dependabot
dependabot Bot deleted the dependabot/npm_and_yarn/ui/tailwindcss-4.3.1 branch July 19, 2026 16:50
pmaxhogan added a commit that referenced this pull request Jul 19, 2026
## Summary

Migrates `ui/` (Vue 3 + Vite + pnpm) from Tailwind CSS 3.4.19 to 4.3.2,
superseding dependabot PR #82 which failed CI with:

```
[postcss] It looks like you're trying to use tailwindcss directly as a PostCSS plugin ... install @tailwindcss/postcss and update your PostCSS configuration.
```

## Migration approach

Ran the official `npx @tailwindcss/upgrade` tool (requires Node 20+),
then hand-reviewed every changed line against the [v4 upgrade
guide](https://tailwindcss.com/docs/upgrade-guide) (fetched via
context7, not from memory).

**Tooling:**
- `postcss.config.js`: `tailwindcss` + `autoprefixer` ->
`@tailwindcss/postcss` only. v4 handles vendor prefixing internally, so
`autoprefixer` is removed from devDependencies.
- Chose **`@tailwindcss/postcss`** over `@tailwindcss/vite`: same CI
behavior, zero `vite.config.ts` changes, smaller diff. The Vite plugin's
main benefit (faster dev-server rebuilds) isn't worth the extra diff
surface on a project this small.

**Config -> CSS-first:**
- `src/style.css`: `@tailwind base/components/utilities` -> `@import
"tailwindcss"`.
- `tailwind.config.ts` deleted. Its `brand` alias (the teal scale used
for the Driven road-to-cloud accent) now lives as a CSS-first `@theme`
block with the literal teal-50..950 hex values (verified they match
Tailwind's stock teal scale exactly).
- Added the compat rule the upgrade tool generates: `border-color:
var(--color-gray-200, currentcolor)` in a base layer, since v4's default
border color changed from `gray-200` to `currentColor`.

**Renamed utilities** (mechanical, upgrade-tool-driven, across all 13
templates):
- `shadow-sm` -> `shadow-xs` (v4 shifted the shadow scale down a step)
- `outline-none` -> `outline-hidden` (the "remove focus ring" idiom; v4
introduces a *different* `outline-none` that means literal
`outline-style: none`)
- bare `focus-visible:outline` -> `focus-visible:outline-solid` (v4's
bare `outline` utility now only sets outline-width, not style)
- bare `rounded` -> `rounded-sm`, bare `rounded-sm` -> `rounded-xs`
- `grid-cols-[auto,1fr]` -> `grid-cols-[auto_1fr]` (arbitrary-value
comma/underscore parsing changed under v4's Lightning CSS engine)

**Docs:** `DESIGN_SPEC.md` updated - the "exact class strings" reference
and the `tailwind.config.ts` file pointer now match the migrated code,
so it doesn't steer future edits back to v3 class names.

**Rebase note:** rebased onto `origin/main` partway through to pick up
the pinia 2.3.1->3.0.4 dependabot bump (#79) that landed while this was
in progress; `pnpm-lock.yaml` conflict resolved by regenerating from the
merged `package.json`.

## Verification (all from `ui/`)

- [x] `pnpm install --frozen-lockfile` (same as CI) - clean
- [x] `pnpm lint` - 0 errors (13 pre-existing i18n unused-key warnings,
unrelated to this change)
- [x] `pnpm format:check` - clean
- [x] `pnpm build` (`vue-tsc --noEmit && vite build`) - succeeds, emits
a 29.11 kB (6.25 kB gzip) CSS bundle
- [x] `pnpm test:unit` - **251/251 passing** (28 files)

## Manual visual-risk audit

Grepped every template for v3->v4 changed defaults before and after
migration:
- No bare `ring`/`shadow`/`blur` utilities relying on removed defaults.
- No `bg-opacity-*` / `text-opacity-*` / `border-opacity-*` (all
deprecated in v4).
- No `flex-shrink-*` / `flex-grow-*`, no `overflow-ellipsis`.
- Every `ring-2` usage in this codebase already carries an explicit
width and color (e.g. `ring-2 ring-teal-500/40`), so the v3->v4 default
ring-width (3px->1px) and ring-color (blue-500->currentColor) changes
don't affect anything here.

## Visual-review checklist (recommend a human click-through)

The utility renames above are documented by Tailwind as 1:1
value-preserving, but a human pass is cheap insurance:

- [ ] Buttons/cards: `shadow-xs` renders the same subtle shadow as v3's
`shadow-sm` (primary/secondary/destructive buttons, all card panels)
- [ ] Focus rings: `outline-solid outline-2 outline-teal-500` looks
identical to v3's bare `outline` on every focusable control (nav links,
buttons, About/Restore/Settings links)
- [ ] Form inputs: `outline-hidden` + `ring-2 ring-teal-500/40` still
shows the teal focus ring with no double outline (AddSourceWizard,
CredentialsWalkthrough, SourceTable, Restore/Activity/Settings selects)
- [ ] Borders: the new default-currentColor compat override doesn't
change the visible zinc-200/300 borders on cards, inputs, or the bare
`border` on the Settings day-of-week toggle buttons
- [ ] Rounded corners: `rounded-sm` (was bare `rounded`) on nav links,
breadcrumbs, and the pending-recovery-ack badge; `rounded-xs` (was
`rounded-sm`) on the About "view changelog" and Restore row links
- [ ] Progress bar track: `rounded-sm` (was bare `rounded`) on the About
update-install progress bar

Supersedes #82.

🤖 Generated with [Claude Code](https://claude.com/claude-code)
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 javascript Pull requests that update javascript code

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

1 participant