Commit Graph
177 Commits
Author SHA1 Message Date
Robin MalfaitandGitHub d8573926f6 Prepare v4.0.14 release (#17173) 2025-03-13 12:36:34 +01:00
Robin MalfaitandGitHub 9b37af5508 Prepare release 4.0.13 (#17132) 2025-03-11 17:58:53 +01:00
6dde284a63 Prepare v4.0.12 release (#17033)
Co-authored-by: Philipp Spiess <[email protected]>
2025-03-07 12:38:53 +01:00
Philipp SpiessandGitHub bd5a64258b Prepare v4.0.11 release (#16987) 2025-03-06 11:09:39 +00:00
a98d9b374d Prepare v4.0.10 release (#16963)
Co-authored-by: Adam Wathan <[email protected]>
2025-03-05 18:32:15 +01:00
3d4871420a Prepare v4.0.9 release (#16804)
Co-authored-by: Adam Wathan <[email protected]>
2025-02-25 17:33:28 +01:00
4de5b3c7bd Prepare v4.0.8 release (#16713)
<!--

👋 Hey, thanks for your interest in contributing to Tailwind!

**Please ask first before starting work on any significant new
features.**

It's never a fun experience to have your pull request declined after
investing a lot of time and effort into a new feature. To avoid this
from happening, we request that contributors create an issue to first
discuss any significant new features. This includes things like adding
new utilities, creating new at-rules, or adding new component examples
to the documentation.


https://github.com/tailwindcss/tailwindcss/blob/master/.github/CONTRIBUTING.md

-->

---------

Co-authored-by: Adam Wathan <[email protected]>
2025-02-21 16:06:37 +01:00
632414c827 Prepare v4.0.7 release (#16629)
Co-authored-by: Adam Wathan <[email protected]>
2025-02-18 16:51:20 +01:00
Philipp SpiessandGitHub c384d48dad Upgrade: Use latest tag for packages (#16620) 2025-02-18 11:57:51 +01:00
Robin MalfaitandGitHub 7cf455b174 Pin exact versions of tailwindcss and @tailwindcss/* (#16623)
This PR fixes an issue where installing a specific version of
`@tailwindcss/postcss` and `tailwindcss` could still result in a version
mismatch. This is because we were relying on `^4.0.6` for example
instead of `4.0.6`.

This PR now pins all these versions to prevent this:
```
❯ pnpm why tailwindcss
devDependencies:
@tailwindcss/postcss 4.0.5
├─┬ @tailwindcss/node 4.0.6
│ └── tailwindcss 4.0.6
└── tailwindcss 4.0.5
```
2025-02-18 11:44:12 +01:00
depfu[bot]andGitHub fd470d566a Update postcss-selector-parser 7.0.0 → 7.1.0 (minor) (#16558) 2025-02-17 12:07:13 +01:00
depfu[bot]andGitHub 2f5a80a71e Update globby 14.0.2 → 14.1.0 (minor) (#16564) 2025-02-17 12:06:53 +01:00
Philipp SpiessandGitHub edae30e21c Upgrade: Handle darkMode value with block syntax (#16507)
Closes #16171

This PR handles `darkMode` variant configs containing braces (so
creating sub-rules) the same way we handle it in the interop layer.
Since the interop layer runs inside the `addVariant` API that we do not
run here, I instead oped to copy the one liner.

## Test plan

Updated one of the migration tests to include a rule that wasn't working
before. Ensured the new output works via
https://play.tailwindcss.com/nR99uhKtv3
2025-02-14 16:48:52 +01:00
Philipp SpiessandGitHub 2af1c33d6e Upgrade: Report errors when updating dependencies (#16504)
Closes #16391

Like the title suggest this PR adds error reporting when the `npm
install` or `npm remove` commands fail.

## Test plan

Tested by swapping out the command for `echo "bla"; exit 1` and
capturing the output from the integration tests:

<img width="792" alt="Screenshot 2025-02-13 at 14 33 02"
src="https://github.com/user-attachments/assets/d1288114-106a-4ac6-a54b-d02b74c98f35"
/>

<img width="761" alt="Screenshot 2025-02-13 at 14 31 05"
src="https://github.com/user-attachments/assets/6d5b9427-457f-4e67-9723-4e340da61749"
/>

Decided not to add a new test for this since it's unlikely we'll do big
changes here and the upgrade integration tests are already quite slow.
2025-02-13 16:02:59 +01:00
depfu[bot]andGitHub 7646f5cc41 Update enhanced-resolve 5.18.0 → 5.18.1 (patch) (#16439) 2025-02-11 18:02:29 +01:00
6f898decfd fix(upgrade): prevent nextjs image blur property from modified (#16405)
Fix #16404

---------

Co-authored-by: Philipp Spiess <[email protected]>
2025-02-11 17:37:59 +01:00
Robin MalfaitandGitHub f47bec0c0d Prepare v4.0.6 (#16407) 2025-02-10 14:09:00 +01:00
Robin MalfaitandGitHub 283dd4687c Bump and pin prettier (#16382)
This PR bumps the Prettier dependencies, and also pins the version.

Noticed that a PR with a single empty commit started failing at the time
of writing this
(https://github.com/tailwindlabs/tailwindcss/pull/16306). This is
because prettier released a new minor version which results in slightly
different output.

Let's bump prettier and handle the differences, but also pin the version
to avoid this in the future.
2025-02-10 10:54:45 +01:00
15ead3303d Prepare v4.0.5 (#16373)
<!--

👋 Hey, thanks for your interest in contributing to Tailwind!

**Please ask first before starting work on any significant new
features.**

It's never a fun experience to have your pull request declined after
investing a lot of time and effort into a new feature. To avoid this
from happening, we request that contributors create an issue to first
discuss any significant new features. This includes things like adding
new utilities, creating new at-rules, or adding new component examples
to the documentation.


https://github.com/tailwindcss/tailwindcss/blob/master/.github/CONTRIBUTING.md

-->

---------

Co-authored-by: Adam Wathan <[email protected]>
2025-02-08 13:48:34 -05:00
5895a5ae3f Prepare v4.0.4 (#16302)
Co-authored-by: Adam Wathan <[email protected]>
2025-02-06 15:18:11 +01:00
5e82f22056 Ensure first argument to var(…) still unescapes \_ (#16206)
Resolves #16170

This PR fixes an issue where the previously opted-out escaping of the
first argument for the `var(…)` function was not unescaped at all. This
was introduced in https://github.com/tailwindlabs/tailwindcss/pull/14776
where the intention was to not require escaping of underscores in the
var function (e.g. `ml-[var(--spacing-1_5)]`). However, I do think it
still makes sense to unescape an eventually escaped underline for
consistency.

## Test plan

The example from #1670 now parses as expected:

<img width="904" alt="Screenshot 2025-02-03 at 13 51 35"
src="https://github.com/user-attachments/assets/cac0f06e-37da-4dcb-a554-9606d144a8d5"
/>

---------

Co-authored-by: Robin Malfait <[email protected]>
2025-02-04 15:13:18 +01:00
Robin MalfaitandGitHub b6d9fea6a7 Prepare v4.0.3 (#16146) 2025-02-01 12:38:55 +01:00
8b473067a3 Prepare for v4.0.2 release (#16131)
Co-authored-by: Adam Wathan <[email protected]>
2025-01-31 19:30:36 +01:00
3946686e25 Prepare v4.0.1 release (#16018)
Co-authored-by: Adam Wathan <[email protected]>
2025-01-29 14:14:35 -05:00
Robin MalfaitandGitHub f35129f3bd Correctly migrate leading-* classes (#16004)
This PR fixes the upgrade tool by properly migrating the
`leading-[<number>]` classes.

The issue is that `leading-[<number>]` maps to the number directly, but
if you use a bare value, then it's a multiplier for based on the
`--spacing` value.

E.g.:

*leading-[2]*:
```css
.leading-\[2\] {
  --tw-leading: 2;
  line-height: 2;
}
@property --tw-leading {
  syntax: "*";
  inherits: false;
}
```

*leading-2*:
```css
.leading-2 {
  --tw-leading: calc(var(--spacing) * 2);
  line-height: calc(var(--spacing) * 2);
}
@property --tw-leading {
  syntax: "*";
  inherits: false;
}
```

This PR will now prevent migrating arbitrary values to bare values for
`leading-*` utilities.

That said, this does introduce a small improvement where `leading-[1]`
is migrated to `leading-none`.

Fixes: https://github.com/tailwindlabs/tailwindcss/issues/15924
2025-01-29 15:22:13 +01:00
Philipp SpiessandGitHub c3a934dc38 Fix handling of absolute config files in upgrade tool (#15927)
Closes #15220

This PR fixes an issue where the upgrade tool would not be able to load
some JavaScript config files across different drive letters on Windows.

The issue in detail is that `path.relative(…)` tries to build a relative
path but if the file is inside the same folder, it won't start the
relative path with a `./` so we manually appended it in case that it
isn't there. The issue on Windows specifically is that
`file.relative(…)` can also return a legit absolute path, e.g. when the
file is on a different drive. In this case we obviously don't want to
prefix a path with `./`.

## Test plan

To reproduce this issue, I checked out a Tailwind v3 project _on a
different drive letter than my Windows installation_. In that case, I
was adding a repo inside `D:` while `npm` was installed in `C:`. I then
run `npx @tailwindcss/upgrade` to reproduce the issue.

The fix was validated with a local `bun` run of the upgrade tool:


![telegram-cloud-photo-size-4-5818901845756725194-y](https://github.com/user-attachments/assets/d32b21e3-a08d-4608-b65a-93dddc04f890)
2025-01-28 12:42:30 +01:00
Jordan PittmanandGitHub adfa212ea1 Prepare v4.0.0 release (#15693) 2025-01-21 20:58:59 +00:00
94b99cb1fd v4.0.0-beta.10 (#15691)
Co-authored-by: Adam Wathan <[email protected]>
2025-01-21 16:19:28 +00:00
Robin MalfaitandGitHub d80147253a Implement @variant (#15663)
This PR replaces `@variant` with `@custom-variant` for registering
custom variants via your CSS.

In addition, this PR introduces `@variant` that can be used in your CSS
to use a variant while writing custom CSS.

E.g.:

```css
.btn {
  background: white;

  @variant dark {
    background: black;
  }
}
```

Compiles to:

```css
.btn {
  background: white;
}

@media (prefers-color-scheme: dark) {
  .btn {
    background: black;
  }
}
```

For backwards compatibility, the `@variant` rules that don't have a body
and are
defined inline:

```css
@variant hocus (&:hover, &:focus);
```

And `@variant` rules that are defined with a body and a `@slot`:

```css
@variant hocus {
  &:hover, &:focus {
    @slot;
  }
}
```

Will automatically be upgraded to `@custom-variant` internally, so no
breaking changes are introduced with this PR.

---

TODO:
- [x] ~~Decide whether we want to allow multiple variants and if so,
what syntax should be used. If not, nesting `@variant <variant> {}` will
be the way to go.~~ Only a single `@variant <variant>` can be used, if
you want to use multiple, nesting should be used:

```css
.foo {
  @variant hover {
    @variant focus {
      color: red;
    }
  }
}
```
2025-01-21 10:20:35 -05:00
depfu[bot]andGitHub 24ea1ba6d5 Update @types/braces 3.0.4 → 3.0.5 (patch) (#15612) 2025-01-13 10:53:47 +01:00
Robin MalfaitandGitHub 011cfe8290 Improve upgrade tool to pretty print --spacing(2) (#15596)
This PR improves the upgrade tool to make sure that newly upgraded
`--spacing(2)` CSS functions is pretty printed to prevent unambiguous
looking classes (even though it compiles correctly).

If you have a class such as `m-[calc(100dvh-theme(spacing.2))]`, then we
used to convert it to `m-[calc(100dvh-calc(var(--spacing)*2))]`. But
recently we introduced the `--spacing(2)` CSS function which means that
the output now looks like this instead: `m-[calc(100dvh---spacing(2))]`.

The triple `-` is valid because the first `-` is the minus sign, the
next two `-` characters are from the function.

One solution is to introduce spaces via underscores:

```
m-[calc(100dvh_-_--spacing(2))]
```

But a simpler solution, is to wrap the `--spacing(2)` in parens to
remove the underscores and improve the readability of the `---`
characters.

```
m-[calc(100dvh-(--spacing(2)))]
```
2025-01-10 09:07:23 -05:00
depfu[bot]andGitHub 58bc7922e6 Update tree-sitter 0.22.1 → 0.22.4 (minor) (#15585) 2025-01-10 10:26:48 +01:00
0c4bd02e74 Prepare v4.0.0-beta.9 release (#15583)
Co-authored-by: Adam Wathan <[email protected]>
2025-01-09 17:04:34 +00:00
depfu[bot]GitHubdepfu[bot] <23717796+depfu[bot]@users.noreply.github.com>
996a9891d6 Update prettier 3.3.3 → 3.4.2 (minor) (#15564)
Here is everything you need to know about this update. Please take a
good look at what changed and the test results before merging this pull
request.

### What changed?




#### ✳️ prettier (3.3.3 → 3.4.2) ·
[Repo](https://github.com/prettier/prettier) ·
[Changelog](https://github.com/prettier/prettier/blob/main/CHANGELOG.md)



<details>
<summary>Release Notes</summary>
<h4><a
href="https://github.com/prettier/prettier/releases/tag/3.4.2">3.4.2</a></h4>

<blockquote><p dir="auto">🔗 <a
href="https://bounce.depfu.com/github.com/prettier/prettier/blob/main/CHANGELOG.md#342">Changelog</a></p></blockquote>
<h4><a
href="https://github.com/prettier/prettier/releases/tag/3.4.1">3.4.1</a></h4>

<blockquote><p dir="auto">🔗 <a
href="https://bounce.depfu.com/github.com/prettier/prettier/blob/main/CHANGELOG.md#341">Changelog</a></p></blockquote>
<p><em>Does any of this look wrong? <a
href="https://depfu.com/packages/npm/prettier/feedback">Please let us
know.</a></em></p>
</details>

<details>
<summary>Commits</summary>
<p><a
href="https://github.com/prettier/prettier/compare/52829385bcc4d785e58ae2602c0b098a643523c9...cca946176c3ec04ae46bf7bcb08c5bba8c041682">See
the full diff on Github</a>. The new version differs by more commits
than we can show here.</p>
</details>












---
![Depfu
Status](https://depfu.com/badges/edd6acd35d74c8d41cbb540c30442adf/stats.svg)

[Depfu](https://depfu.com) will automatically keep this PR
conflict-free, as long as you don't add any commits to this branch
yourself. You can also trigger a rebase manually by commenting with
`@depfu rebase`.

<details><summary>All Depfu comment commands</summary>
<blockquote><dl>
<dt>@​depfu rebase</dt><dd>Rebases against your default branch and
redoes this update</dd>
<dt>@​depfu recreate</dt><dd>Recreates this PR, overwriting any edits
that you've made to it</dd>
<dt>@​depfu merge</dt><dd>Merges this PR once your tests are passing and
conflicts are resolved</dd>
<dt>@​depfu cancel merge</dt><dd>Cancels automatic merging of this
PR</dd>
<dt>@​depfu close</dt><dd>Closes this PR and deletes the branch</dd>
<dt>@​depfu reopen</dt><dd>Restores the branch and reopens this PR (if
it's closed)</dd>
<dt>@​depfu pause</dt><dd>Ignores all future updates for this dependency
and closes this PR</dd>
<dt>@​depfu pause [minor|major]</dt><dd>Ignores all future minor/major
updates for this dependency and closes this PR</dd>
<dt>@​depfu resume</dt><dd>Future versions of this dependency will
create PRs again (leaves this PR as is)</dd>
</dl></blockquote>
</details>

Co-authored-by: depfu[bot] <23717796+depfu[bot]@users.noreply.github.com>
2025-01-09 17:27:12 +01:00
depfu[bot]GitHubdepfu[bot] <23717796+depfu[bot]@users.noreply.github.com>
95f9e49134 Update enhanced-resolve 5.17.1 → 5.18.0 (minor) (#15582)
Here is everything you need to know about this update. Please take a
good look at what changed and the test results before merging this pull
request.

### What changed?




#### ✳️ enhanced-resolve (5.17.1 → 5.18.0) ·
[Repo](https://github.com/webpack/enhanced-resolve)



<details>
<summary>Release Notes</summary>
<h4><a
href="https://github.com/webpack/enhanced-resolve/releases/tag/v5.18.0">5.18.0</a></h4>

<blockquote><h3 dir="auto">Features</h3>
<ul dir="auto">
<li>Added wildcards support for aliases</li>
</ul></blockquote>
<p><em>Does any of this look wrong? <a
href="https://depfu.com/packages/npm/enhanced-resolve/feedback">Please
let us know.</a></em></p>
</details>

<details>
<summary>Commits</summary>
<p><a
href="https://github.com/webpack/enhanced-resolve/compare/247edebc909040ff99200108f7165e57f4fac2b1...27e457a905776154c9c0f75bc0f822eeab36d2c8">See
the full diff on Github</a>. The new version differs by 9 commits:</p>
<ul>
<li><a
href="https://github.com/webpack/enhanced-resolve/commit/27e457a905776154c9c0f75bc0f822eeab36d2c8"><code>chore(release):
5.18.0</code></a></li>
<li><a
href="https://github.com/webpack/enhanced-resolve/commit/88ceebe3cca0a054786f12659f5239f377087f8e"><code>feat:
add wildcards support for aliases</code></a></li>
<li><a
href="https://github.com/webpack/enhanced-resolve/commit/35b67ce83434be840c6af0012449d94130ee4dd7"><code>feat:
add wildcards</code></a></li>
<li><a
href="https://github.com/webpack/enhanced-resolve/commit/4fbcfa1c831858b495b7ac7835cb3a9f10496495"><code>chore(deps):
bump cross-spawn from 7.0.3 to 7.0.6</code></a></li>
<li><a
href="https://github.com/webpack/enhanced-resolve/commit/572a54f0c68dcf64a017433c188eee047a3cfea2"><code>chore(deps):
bump cross-spawn from 7.0.3 to 7.0.6</code></a></li>
<li><a
href="https://github.com/webpack/enhanced-resolve/commit/af4e2fb155b0e885ec50f7a631f3298fdc1c08ec"><code>ci:
add Node.js v23</code></a></li>
<li><a
href="https://github.com/webpack/enhanced-resolve/commit/bf443c04acc913461c033c1f8af1ab0a58b770ca"><code>ci:
add Node.js v23</code></a></li>
<li><a
href="https://github.com/webpack/enhanced-resolve/commit/72999caf002f6f7bb4624e65fdeb7ba980b11e24"><code>chore(deps):
bump micromatch from 4.0.5 to 4.0.8</code></a></li>
<li><a
href="https://github.com/webpack/enhanced-resolve/commit/fbee162cc291a84e5f711f9d7152985a904fda2f"><code>chore(deps):
bump micromatch from 4.0.5 to 4.0.8</code></a></li>
</ul>
</details>












---
![Depfu
Status](https://depfu.com/badges/edd6acd35d74c8d41cbb540c30442adf/stats.svg)

[Depfu](https://depfu.com) will automatically keep this PR
conflict-free, as long as you don't add any commits to this branch
yourself. You can also trigger a rebase manually by commenting with
`@depfu rebase`.

<details><summary>All Depfu comment commands</summary>
<blockquote><dl>
<dt>@​depfu rebase</dt><dd>Rebases against your default branch and
redoes this update</dd>
<dt>@​depfu recreate</dt><dd>Recreates this PR, overwriting any edits
that you've made to it</dd>
<dt>@​depfu merge</dt><dd>Merges this PR once your tests are passing and
conflicts are resolved</dd>
<dt>@​depfu cancel merge</dt><dd>Cancels automatic merging of this
PR</dd>
<dt>@​depfu close</dt><dd>Closes this PR and deletes the branch</dd>
<dt>@​depfu reopen</dt><dd>Restores the branch and reopens this PR (if
it's closed)</dd>
<dt>@​depfu pause</dt><dd>Ignores all future updates for this dependency
and closes this PR</dd>
<dt>@​depfu pause [minor|major]</dt><dd>Ignores all future minor/major
updates for this dependency and closes this PR</dd>
<dt>@​depfu resume</dt><dd>Future versions of this dependency will
create PRs again (leaves this PR as is)</dd>
</dl></blockquote>
</details>

Co-authored-by: depfu[bot] <23717796+depfu[bot]@users.noreply.github.com>
2025-01-09 17:26:48 +01:00
Robin MalfaitandGitHub b8bc6bf9c7 Migrate theme(…) to --theme(…), migrate calc(var(--spacing)*x) to --spacing(x) (#15579)
This PR improves the codemod tool to simplify 2 things:

1. Whenever you have a `theme(…)` call, we try to change it to a
`var(…)`, but if that doesn't work for some reason, we will make sure to
at least convert it to the more modern `--theme(…)`.
2. When converting `theme(spacing.2)`, we used to convert it to
`calc(var(--spacing)*2)`, but now we will convert it to `--spacing(2)`
instead.
2025-01-09 17:17:07 +01:00
Philipp SpiessandGitHub 890a5e37ae Upgrade: Do not extract class names from functions (#15566)
This PR prevents the migration of utilities detected in function names,
e.g.: the use of `shadow` inside `filter: 'drop-shadow(…)'`.

## Test plan

Have content like this in a project you're migrating using the upgrade
tool:

```js
{
  filter: 'drop-shadow(0 0 0.5rem #000)'
}
```

This was verified by adding unit tests to the specific codemods and
adding an integration test.
2025-01-07 15:31:48 +01:00
Robin MalfaitandGitHub f50f80c302 Prepare v4.0.0-beta.8 release (#15418) 2024-12-17 13:31:28 +01:00
37dd8d2377 Prepare v4.0.0-beta.7 release (#15392)
Co-authored-by: Adam Wathan <[email protected]>
2024-12-13 14:18:21 +00:00
Jordan PittmanandGitHub 886a358d13 Prepare v4.0.0-beta.6 release (#15325) 2024-12-06 14:32:21 -05:00
bcc85b2eff Prepare v4.0.0-beta.5 (#15285)
Co-authored-by: Adam Wathan <[email protected]>
2024-12-04 16:28:16 +01:00
Robin MalfaitandGitHub 3d4547ad58 Prepare v4.0.0-beta.4 (#15245) 2024-11-29 17:18:42 +01:00
Robin MalfaitandGitHub b738499ca4 Migrate backdrop-blur-* utilities (#15242)
This PR adds missing migrations for the `backdrop-blur-*` utilities. It
uses the same values from your theme as `blur` does.
2024-11-29 11:11:47 -05:00
c859d2fe90 Upgrade: Do not migrate overflow-clip utility (#15244)
`overflow-clip` was the name for `text-clip` in v4. However, that was
changed in v3 already so in v3 `overflow-clip` is already doing the same
as in v4. Hence a codemod is not necessary.

Co-authored-by: Adam Wathan <[email protected]>
2024-11-29 11:00:15 -05:00
0ef282ba76 Improve performance of @tailwindcss/postcss and @tailwindcss/vite (#15226)
This PR improves the performance of the `@tailwindcss/postcss` and
`@tailwindcss/vite` implementations.

The issue is that in some scenarios, if you have multiple `.css` files,
then all of the CSS files are ran through the Tailwind CSS compiler. The
issue with this is that in a lot of cases, the CSS files aren't even
related to Tailwind CSS at all.

E.g.: in a Next.js project, if you use the `next/font/local` tool, then
every font you used will be in a separate CSS file. This means that we
run Tailwind CSS in all these files as well.

That said, running Tailwind CSS on these files isn't the end of the
world because we still need to handle `@import` in case `@tailwind
utilities` is being used. However, we also run the auto source detection
logic for every CSS file in the system. This part is bad.

To solve this, this PR introduces an internal `features` to collect what
CSS features are used throughout the system (`@import`, `@plugin`,
`@apply`, `@tailwind utilities`, etc…)

The `@tailwindcss/postcss` and `@tailwindcss/vite` plugin can use that
information to decide if they can take some shortcuts or not.

---

Overall, this means that we don't run the slow parts of Tailwind CSS if
we don't need to.

---------

Co-authored-by: Adam Wathan <[email protected]>
2024-11-29 10:59:29 -05:00
Philipp SpiessandAdam Wathan d5be5dac22 Prepare v4.0.0-beta.3 (#15217)
Co-authored-by: Adam Wathan <[email protected]>
2024-11-27 18:25:37 +01:00
Philipp SpiessandGitHub a9be756b96 Upgrade: Migrate prefixed group and peer classes (#15208)
Resolves #15193

This PR fixes an issue where `group` and `peer` would not have their
prefixes migrated as part of the upgrade script. We do this by
registering `group` and `peer` as utilities during the codemods. This
way, `parseCandidate` will find these classes to be valid Tailwind
candidates and the prefix can be migrated just like any other utility.

## Test Plan

Tried it with the v3 upgrade playground in the repo and it worked fine: 

<img width="1257" alt="Screenshot 2024-11-27 at 12 17 25"
src="https://github.com/user-attachments/assets/1ee101e1-1d6a-4ce0-b0d4-8d51e5f6b0d2">

I've also added tests to our prefix upgrade integration test and the
prefix migration unit tests.
2024-11-27 11:34:27 -05:00
depfu[bot]andGitHub 691194d05a Update tree-sitter 0.22.0 → 0.22.1 (minor) (#15130) 2024-11-26 14:06:25 +01:00
17064b3bfc Prepare v4.0.0-beta.2 release (#15104)
Co-authored-by: Adam Wathan <[email protected]>
2024-11-22 11:17:21 -05:00
Robin MalfaitandGitHub 792e4446ac Always add layer(…) as the first param to @import (#15102)
This PR ensures that when we inject `layer(…)` into an `@import` that it
always gets inserted as the first param. The `layer(…)` has to come
first by spec.

Input:
```css
@import "./foo" supports(--foo);
```

Before:
```css
@import "./foo" supports(--foo) layer(utilities);
```

After:
```css
@import "./foo" layer(utilities) supports(--foo);
```
2024-11-22 14:09:26 +00:00