Update all dependencies #192

Open
kjuulh wants to merge 1 commits from renovate/all into main
Owner

This PR contains the following updates:

Package Type Update Change
@types/node (source) devDependencies major 18.18.6 -> 22.15.34
@types/uuid (source) devDependencies major 9.0.6 -> 10.0.0
autoprefixer devDependencies patch 10.4.16 -> 10.4.21
postcss (source) devDependencies minor 8.4.31 -> 8.5.6
prettier (source) devDependencies minor 3.0.3 -> 3.6.2
prettier-plugin-tailwindcss devDependencies minor 0.5.6 -> 0.6.13
sass devDependencies minor 1.69.4 -> 1.89.2
typescript (source) devDependencies minor 5.2.2 -> 5.8.3
uuid dependencies major 9.0.1 -> 11.1.0

⚠️ Warning

Some dependencies could not be looked up. Check the Dependency Dashboard for more information.


Release Notes

postcss/autoprefixer (autoprefixer)

v10.4.21

Compare Source

v10.4.20

Compare Source

  • Fixed fit-content prefix for Firefox.

v10.4.19

Compare Source

  • Removed end value has mixed support, consider using flex-end warning
    since end/start now have good support.

v10.4.18

Compare Source

  • Fixed removing -webkit-box-orient on -webkit-line-clamp (@​Goodwine).

v10.4.17

Compare Source

  • Fixed user-select: contain prefixes.
postcss/postcss (postcss)

v8.5.6

Compare Source

  • Fixed ContainerWithChildren type discriminating (by @​Goodwine).

v8.5.5

Compare Source

  • Fixed package.jsonexports compatibility with some tools (by @​JounQin).

v8.5.4

Compare Source

v8.5.3

Compare Source

v8.5.2

Compare Source

v8.5.1

Compare Source

v8.5.0: 8.5 “Duke Alloces”

Compare Source

President Alloces seal

PostCSS 8.5 brought API to work better with non-CSS sources like HTML, Vue.js/Svelte sources or CSS-in-JS.

@​romainmenke during his work on Stylelint added Input#document in additional to Input#css.

root.source.input.document //=> "<p>Hello</p>
                           //    <style>
                           //    p {
                           //      color: green;
                           //    }
                           //    </style>"
root.source.input.css      //=> "p {
                           //      color: green;
                           //    }"

Thanks to Sponsors

This release was possible thanks to our community.

If your company wants to support the sustainability of front-end infrastructure or wants to give some love to PostCSS, you can join our supporters by:

v8.4.49

Compare Source

v8.4.48

Compare Source

  • Fixed position calculation in error/warnings methods (by @​romainmenke).

v8.4.47

Compare Source

  • Removed debug code.

v8.4.46

Compare Source

  • Fixed Cannot read properties of undefined (reading 'before').

v8.4.45

Compare Source

  • Removed unnecessary fix which could lead to infinite loop.

v8.4.44

Compare Source

  • Another way to fix markClean is not a function error.

v8.4.43

Compare Source

  • Fixed markClean is not a function error.

v8.4.42

Compare Source

  • Fixed CSS syntax error on long minified files (by @​varpstar).

v8.4.41

Compare Source

v8.4.40

Compare Source

  • Moved to getter/setter in nodes types to help Sass team (by @​nex3).

v8.4.39

Compare Source

v8.4.38

Compare Source

v8.4.37

Compare Source

  • Fixed original.column are not numbers error in another case.

v8.4.36

Compare Source

  • Fixed original.column are not numbers error on broken previous source map.

v8.4.35

Compare Source

  • Avoid ! in node.parent.nodes type.
  • Allow to pass undefined to node adding method to simplify types.

v8.4.34

Compare Source

  • Fixed AtRule#nodes type (by Tim Weißenfels).
  • Cleaned up code (by Dmitry Kirillov).

v8.4.33

Compare Source

  • Fixed NoWorkResult behavior difference with normal mode (by Romain Menke).
  • Fixed NoWorkResult usage conditions (by @​ahmdammarr).

v8.4.32

Compare Source

  • Fixed postcss().process() types (by Andrew Ferreira).
prettier/prettier (prettier)

v3.6.2

Compare Source

diff

Markdown: Add missing blank line around code block (#​17675 by @​fisker)
<!-- Input -->
1. Some text, and code block below, with newline after code block

   ```yaml
   ---
   foo: bar
   ```

   1. Another
   2. List

<!-- Prettier 3.6.1 -->
1. Some text, and code block below, with newline after code block

   ```yaml
   ---
   foo: bar
   ```
   1. Another
   2. List

<!-- Prettier 3.6.2 -->
1. Some text, and code block below, with newline after code block

   ```yaml
   ---
   foo: bar
   ```

   1. Another
   2. List

v3.6.1

Compare Source

diff

TypeScript: Allow const without initializer (#​17650, #​17654 by @​fisker)
// Input
export const version: string;

// Prettier 3.6.0 (--parser=babel-ts)
SyntaxError: Unexpected token (1:21)
> 1 | export const version: string;
    |                     ^

// Prettier 3.6.0 (--parser=oxc-ts)
SyntaxError: Missing initializer in const declaration (1:14)
> 1 | export const version: string;
    |              ^^^^^^^^^^^^^^^

// Prettier 3.6.1
export const version: string;
Miscellaneous: Avoid closing files multiple times (#​17665 by @​43081j)

When reading a file to infer the interpreter from a shebang, we use the
n-readlines library to read the first line in order to get the shebang.

This library closes files when it reaches EOF, and we later try close the same
files again. We now close files only if n-readlines did not already close
them.

v3.6.0

Compare Source

diff

🔗 Release Notes

v3.5.3

Compare Source

diff

Flow: Fix missing parentheses in ConditionalTypeAnnotation (#​17196 by @​fisker)
// Input
type T<U> = 'a' | ('b' extends U ? 'c' : empty);
type T<U> = 'a' & ('b' extends U ? 'c' : empty);

// Prettier 3.5.2
type T<U> = "a" | "b" extends U ? "c" : empty;
type T<U> = "a" & "b" extends U ? "c" : empty;

// Prettier 3.5.3
type T<U> = "a" | ("b" extends U ? "c" : empty);
type T<U> = "a" & ("b" extends U ? "c" : empty);

v3.5.2

Compare Source

diff

Remove module-sync condition (#​17156 by @​fisker)

In Prettier 3.5.0, we added module-sync condition to package.json, so that require("prettier") can use ESM version, but turns out it doesn't work if CommonJS and ESM plugins both imports builtin plugins. To solve this problem, we decide simply remove the module-sync condition, so require("prettier") will still use the CommonJS version, we'll revisit until require(ESM) feature is more stable.

v3.5.1

Compare Source

diff

Fix CLI crash when cache for old version exists (#​17100 by @​sosukesuzuki)

Prettier 3.5 uses a different cache format than previous versions, Prettier 3.5.0 crashes when reading existing cache file, Prettier 3.5.1 fixed the problem.

Support dockercompose and github-actions-workflow in VSCode (#​17101 by @​remcohaszing)

Prettier now supports the dockercompose and github-actions-workflow languages in Visual Studio Code.

v3.5.0

Compare Source

diff

🔗 Release Notes

v3.4.2

Compare Source

diff

Treat U+30A0 & U+30FB in Katakana Block as CJK (#​16796 by @​tats-u)

Prettier doesn't treat U+30A0 & U+30FB as Japanese. U+30FB is commonly used in Japanese to represent the delimitation of first and last names of non-Japanese people or “and”. The following “C言語・C++・Go・Rust” means “C language & C++ & Go & Rust” in Japanese.

<!-- Input (--prose-wrap=never) -->

C言
語
・
C++
・
Go
・
Rust

<!-- Prettier 3.4.1 -->
C言語・ C++ ・ Go ・ Rust

<!-- Prettier 3.4.2 -->
C言語・C++・Go・Rust

U+30A0 can be used as the replacement of the - in non-Japanese names (e.g. “Saint-Saëns” (Charles Camille Saint-Saëns) can be represented as “サン゠サーンス” in Japanese), but substituted by ASCII hyphen (U+002D) or U+FF1D (full width hyphen) in many cases (e.g. “サン=サーンス” or “サン=サーンス”).

Fix comments print on class methods with decorators (#​16891 by @​fisker)
// Input
class A {
  @&#8203;decorator
  /** 
   * The method description
   *
  */
  async method(foo: Foo, bar: Bar) {
    console.log(foo);
  }
}

// Prettier 3.4.1
class A {
  @&#8203;decorator
  async /**
   * The method description
   *
   */
  method(foo: Foo, bar: Bar) {
    console.log(foo);
  }
}

// Prettier 3.4.2
class A {
  @&#8203;decorator
  /**
   * The method description
   *
   */
  async method(foo: Foo, bar: Bar) {
    console.log(foo);
  }
}
Fix non-idempotent formatting (#​16899 by @​seiyab)

This bug fix is not language-specific. You may see similar change in any languages. This fixes regression in 3.4.0 so change caused by it should yield same formatting as 3.3.3.

// Input
<div>
  foo
  <span>longlonglonglonglonglonglonglonglonglonglonglonglonglonglongl foo</span>
  , abc
</div>;

// Prettier 3.4.1 (first)
<div>
  foo
  <span>
    longlonglonglonglonglonglonglonglonglonglonglonglonglonglongl foo
  </span>, abc
</div>;

// Prettier 3.4.1 (second)
<div>
  foo
  <span>longlonglonglonglonglonglonglonglonglonglonglonglonglonglongl foo</span>
  , abc
</div>;

// Prettier 3.4.2
<div>
  foo
  <span>longlonglonglonglonglonglonglonglonglonglonglonglonglonglongl foo</span>
  , abc
</div>;

v3.4.1

Compare Source

diff

Remove unnecessary parentheses around assignment in v-on (#​16887 by @​fisker)
<!-- Input -->
<template>
  <button @&#8203;click="foo += 2">Click</button>
</template>

<!-- Prettier 3.4.0 -->
<template>
  <button @&#8203;click="(foo += 2)">Click</button>
</template>

<!-- Prettier 3.4.1 -->
<template>
  <button @&#8203;click="foo += 2">Click</button>
</template>

v3.4.0

Compare Source

diff

🔗 Release Notes

v3.3.3

Compare Source

diff

Add parentheses for nullish coalescing in ternary (#​16391 by @​cdignam-segment)

This change adds clarity to operator precedence.

// Input
foo ? bar ?? foo : baz;
foo ?? bar ? a : b;
a ? b : foo ?? bar;

// Prettier 3.3.2
foo ? bar ?? foo : baz;
foo ?? bar ? a : b;
a ? b : foo ?? bar;

// Prettier 3.3.3
foo ? (bar ?? foo) : baz;
(foo ?? bar) ? a : b;
a ? b : (foo ?? bar);
Add parentheses for decorator expressions (#​16458 by @​y-schneider)

Prevent parentheses around member expressions or tagged template literals from being removed to follow the stricter parsing rules of TypeScript 5.5.

// Input
@&#8203;(foo`tagged template`)
class X {}

// Prettier 3.3.2
@&#8203;foo`tagged template`
class X {}

// Prettier 3.3.3
@&#8203;(foo`tagged template`)
class X {}
Support @let declaration syntax (#​16474 by @​sosukesuzuki)

Adds support for Angular v18 @let declaration syntax.

Please see the following code example. The @let declaration allows you to define local variables within the template:

@&#8203;let name = 'Frodo';

<h1>Dashboard for {{name}}</h1>
Hello, {{name}}

For more details, please refer to the excellent blog post by the Angular Team: Introducing @​let in Angular.

We also appreciate the Angular Team for kindly answering our questions to implement this feature.

v3.3.2

Compare Source

diff

Fix handlebars path expressions starts with @ (#​16358 by @​Princeyadav05)
{{! Input }}
<div>{{@&#8203;x.y.z}}</div>

{{! Prettier 3.3.1 }}
<div>{{@&#8203;x}}</div>

{{! Prettier 3.3.2 }}
<div>{{@&#8203;x.y.z}}</div>

v3.3.1

Compare Source

diff

Preserve empty lines in front matter (#​16347 by @​fisker)
<!-- Input -->
---
foo:
  - bar1

  - bar2

  - bar3
---
Markdown

<!-- Prettier 3.3.0 -->

---
foo:
  - bar1
  - bar2
  - bar3
---

Markdown

<!-- Prettier 3.3.1 -->
---
foo:
  - bar1

  - bar2

  - bar3
---

Markdown
Preserve explicit language in front matter (#​16348 by @​fisker)
<!-- Input -->
---yaml
title: Hello
slug: home
---

<!-- Prettier 3.3.0 -->
---
title: Hello
slug: home
---

<!-- Prettier 3.3.1 -->
---yaml
title: Hello
slug: home
---
Avoid line breaks in import attributes (#​16349 by @​fisker)
// Input
import something from "./some-very-very-very-very-very-very-very-very-long-path.json" with { type: "json" };

// Prettier 3.3.0
import something from "./some-very-very-very-very-very-very-very-very-long-path.json" with { type:
  "json" };

// Prettier 3.3.1
import something from "./some-very-very-very-very-very-very-very-very-long-path.json" with { type: "json" };

v3.3.0

Compare Source

diff

🔗 Release Notes

v3.2.5

Compare Source

diff

Support Angular inline styles as single template literal (#​15968 by @​sosukesuzuki)

Angular v17 supports single string inline styles.

// Input
@&#8203;Component({
  template: `<div>...</div>`,
  styles: `h1 { color: blue; }`,
})
export class AppComponent {}

// Prettier 3.2.4
@&#8203;Component({
  template: `<div>...</div>`,
  styles: `h1 { color: blue; }`,
})
export class AppComponent {}

// Prettier 3.2.5
@&#8203;Component({
  template: `<div>...</div>`,
  styles: `
    h1 {
      color: blue;
    }
  `,
})
export class AppComponent {}

Unexpected embedded formatting for Angular template (#​15969 by @​JounQin)

Computed template should not be considered as Angular component template

// Input
const template = "foobar";

@&#8203;Component({
  [template]: `<h1>{{       hello }}</h1>`,
})
export class AppComponent {}

// Prettier 3.2.4
const template = "foobar";

@&#8203;Component({
  [template]: `<h1>{{ hello }}</h1>`,
})
export class AppComponent {}

// Prettier 3.2.5
const template = "foobar";

@&#8203;Component({
  [template]: `<h1>{{       hello }}</h1>`,
})
export class AppComponent {}
Use "json" parser for tsconfig.json by default (#​16012 by @​sosukesuzuki)

In v3.2.0, we introduced "jsonc" parser which adds trailing comma by default.

When adding a new parser we also define how it will be used based on the linguist-languages data.

tsconfig.json is a special file used by TypeScript, it uses .json file extension, but it actually uses the JSON with Comments syntax. However, we found that there are many third-party tools not recognize it correctly because of the confusing .json file extension.

We decide to treat it as a JSON file for now to avoid the extra configuration step.

To keep using the "jsonc" parser for your tsconfig.json files, add the following to your .prettierrc file

{
  "overrides": [
    {
      "files": ["tsconfig.json", "jsconfig.json"],
      "options": {
        "parser": "jsonc"
      }
    }
  ]
}

v3.2.4

Compare Source

prettier --file-info tsconfig.json
{ "ignored": false, "inferredParser": "jsonc" }

v3.2.3

Compare Source

diff

Throw errors for invalid code (#​15881 by @​fisker, @​Josh-Cena, @​auvred)
// Input
1++;

// Prettier 3.2.2
1++;

// Prettier 3.2.3
SyntaxError: Invalid left-hand side expression in unary operation (1:1)
> 1 | 1++;
    | ^
// Input
try {} catch (error = 1){}

// Prettier 3.2.2
try {
} catch (error) {}

// Prettier 3.2.3
SyntaxError: Catch clause variable cannot have an initializer. (1:23)
> 1 | try {} catch (error = 1){}
    |                       ^
Fix parser inference (#​15927 by @​fisker)
// Prettier 3.2.2
prettier --file-info tsconfig.json
{ "ignored": false, "inferredParser": "json" }

// Prettier 3.2.3
prettier --file-info tsconfig.json
{ "ignored": false, "inferredParser": "jsonc" }

v3.2.2

Compare Source

diff

Fix crash when parsing template literal CSS in a JSX style tag using a spread attribute (#​15896 by @​eelco)

For example this code would crash before:

<style {...spread}>{`.{}`}</style>
Fix formatting error on optional call expression and member chain (#​15920 by @​sosukesuzuki)
// Input
a(() => {}, c?.d());

// Prettier 3.2.1
TypeError: Cannot read properties of undefined (reading 'type')

// Prettier 3.2.2
a(() => {}, c?.d());

v3.2.1

Compare Source

diff

Fix formatting error on member chain (#​15915 by @​sosukesuzuki)
// Input
test().test2().test2(thing?.something);

// Prettier 3.2.0
TypeError: Cannot read properties of undefined (reading 'type')

// Prettier 3.2.1
test().test2().test2(thing?.something);

v3.2.0

Compare Source

diff

🔗 Release Notes

v3.1.1

Compare Source

diff

Fix config file search (#​15363 by @​fisker)

Previously, we start search for config files from the filePath as a directory, if it happened to be a directory and contains config file, it will be used by mistake.

├─ .prettierrc
└─ test.js         (A directory)
  └─ .prettierrc
// Prettier 3.1.0
await prettier.resolveConfigFile(new URL("./test.js", import.meta.url));
// <CWD>/test.js/.prettierrc

// Prettier 3.1.1
await prettier.resolveConfigFile(new URL("./test.js", import.meta.url));
// <CWD>/.prettierrc

Since Prettier v3, we stopped following symbolic links, however in some use cases, the symbolic link patterns can't be filtered out, and there is no way to prevent Prettier from throwing errors.

In Prettier 3.1.1, you can use --no-error-on-unmatched-pattern to simply skip symbolic links.

Consistently use tabs in ternaries when useTabs is true (#​15662 by @​auvred)
// Input
aaaaaaaaaaaaaaa
	? bbbbbbbbbbbbbbbbbb
	: ccccccccccccccc
	  ? ddddddddddddddd
	  : eeeeeeeeeeeeeee
	    ? fffffffffffffff
	    : gggggggggggggggg;

// Prettier 3.1.0
aaaaaaaaaaaaaaa
	? bbbbbbbbbbbbbbbbbb
	: ccccccccccccccc
	  ? ddddddddddddddd
	  : eeeeeeeeeeeeeee
	    ? fffffffffffffff
	    : gggggggggggggggg;

// Prettier 3.1.1
aaaaaaaaaaaaaaa
	? bbbbbbbbbbbbbbbbbb
	: ccccccccccccccc
		? ddddddddddddddd
		: eeeeeeeeeeeeeee
			? fffffffffffffff
			: gggggggggggggggg;
Improve config file search (#​15663 by @​fisker)

The Prettier config file search performance has been improved by more effective cache strategy.

Fix unstable and ugly formatting for comments in destructuring patterns (#​15708 by @​sosukesuzuki)
// Input
const {
  foo,
  // bar
  // baz
}: Foo = expr;

// Prettier 3.1.0
const {
  foo1,
} // bar
// baz
: Foo = expr;

// Prettier 3.1.0 second output
const {
  foo1, // bar
} // baz
: Foo = expr;

// Prettier 3.1.1
const {
  foo1,
  // bar
  // baz
}: Foo = expr;
Support "Import Attributes" (#​15718 by @​fisker)

TypeScript 5.3 supports the latest updates to the import attributes proposal.

import something from "./something.json" with { type: "json" };
Fix false claim in docs that cursorOffset is incompatible with rangeStart/rangeEnd (#​15750 by @​ExplodingCabbage)

The cursorOffset option has in fact been compatible with rangeStart/rangeEnd for over 5 years, thanks to work by @​ds300. However, Prettier's documentation (including the CLI --help text) continued to claim otherwise, falsely. The documentation is now fixed.

Keep curly braces and from keyword in empty import statements (#​15756 by @​fisker)
// Input
import { } from 'foo';
import { /* comment */ } from 'bar';

// Prettier 3.1.0
import {} from "foo";
import /* comment */ "bar";

// Prettier 3.1.1
import {} from "foo";
import {} from /* comment */ "bar";
Keep empty import attributes and assertions (#​15757 by @​fisker)
// Input
import foo from "foo" with {};
import bar from "bar" assert {};

// Prettier 3.1.0
import foo from "foo";
import bar from "bar";

// Prettier 3.1.1
import foo from "foo" with {};
import bar from "bar" assert {};

v3.1.0

Compare Source

diff

🔗 Release Notes

tailwindlabs/prettier-plugin-tailwindcss (prettier-plugin-tailwindcss)

v0.6.13

Compare Source

  • Prevent Svelte files from breaking when there are duplicate classes (#​359)
  • Ensure prettier-plugin-multiline-arrays and prettier-plugin-jsdoc work when used together with this plugin (#​372)

v0.6.12

Compare Source

  • Add internal (unsupported) option to load Tailwind CSS using a different package name (#​366)

v0.6.11

Compare Source

  • Support TypeScript configs and plugins when using v4 (#​342)

v0.6.10

Compare Source

  • Add support for @zackad/prettier-plugin-twig (#​327)
  • Drop support for @zackad/prettier-plugin-twig-melody (#​327)
  • Update Prettier options types (#​325)
  • Don't remove whitespace inside template literals in Svelte (#​332)

v0.6.9

Compare Source

  • Introduce tailwindStylesheet option to replace tailwindEntryPoint (#​330)

v0.6.8

Compare Source

v0.6.7

Compare Source

  • Improved performance with large Svelte, Liquid, and Angular files (#​312)
  • Add support for @plugin and @config in v4 (#​316)
  • Add support for Tailwind CSS v4.0.0-alpha.25 (#​317)

v0.6.6

Compare Source

  • Add support for prettier-plugin-multiline-arrays (#​299)
  • Add resolution cache for known plugins (#​301)
  • Support Tailwind CSS v4.0.0-alpha.19 (#​310)

v0.6.5

Compare Source

  • Only re-apply string escaping when necessary (#​295)

v0.6.4

Compare Source

  • Export PluginOptions type (#​292)

v0.6.3

Compare Source

  • Improve detection of string concatenation (#​288)

v0.6.2

Compare Source

Changed
  • Only remove duplicate Tailwind classes (#​277)
  • Make sure escapes in classes are preserved in string literals (#​286)

v0.6.1

Compare Source

  • Prevent Svelte files from breaking when there are duplicate classes (#​359)
  • Ensure prettier-plugin-multiline-arrays and prettier-plugin-jsdoc work when used together with this plugin (#​372)

v0.6.0

Compare Source

Changed
  • Remove duplicate classes (#​272)
  • Remove extra whitespace around classes (#​272)

v0.5.14

Compare Source

Fixed
  • Fix detection of v4 projects on Windows (#​265)

v0.5.13

Compare Source

Added
  • Add support for @zackad/prettier-plugin-twig-melody (#​255)

v0.5.12

Compare Source

Added
  • Add support for prettier-plugin-sort-imports (#​241)
  • Add support for Tailwind CSS v4.0 (#​249)

v0.5.11

Compare Source

Changed
  • Bumped bundled version of Tailwind CSS to v3.4.1 (#​240)

v0.5.10

Compare Source

Changed
  • Bumped bundled version of Tailwind CSS to v3.4 (#​235)

v0.5.9

Compare Source

Fixed
  • Fixed location of embedded preflight CSS file (#​231)

v0.5.8

Compare Source

Added
  • Re-enable support for prettier-plugin-marko (#​229)

v0.5.7

Compare Source

Fixed
  • Fix sorting inside dynamic custom attributes (#​225)
sass/dart-sass (sass)

v1.89.2

Compare Source

Embedded Host
  • Fixed a compilation error caused by an outdated buf dependency.

v1.89.1

Compare Source

  • No user-visible changes.

v1.89.0

Compare Source

  • Allow the Node package importer to load files even when there are multiple
    potential resolutions, as long as those resolutions all point to the same
    file.

v1.88.0

Compare Source

  • Allow custom properties with empty values (such as --var:;).

  • Fix a bug when calculating source spans for interpolations.

Dart and JS APIs
  • Potentially breaking bug fix: Throw an error when passing a function or
    mixin object from one compilation to another.
Dart API
  • Deprecate passing a relative URL to compileString() and related functions.

v1.87.0

Compare Source

  • Potentially breaking bug fix: When a plain CSS file with a top-level
    nesting selector & is loaded into a nested Sass context via
    meta.load-css() or @import, Sass now emits plain CSS nesting rather than
    incorrectly combining it with the parent selector using a descendant
    combinator.

v1.86.3

Compare Source

  • Fix a bug introduced in 1.86.1 where Sass fails to resolve paths starting with
    a .. segment.

v1.86.2

Compare Source

  • No user-visible changes.

v1.86.1

Compare Source

  • Improve the performance of file: URL case canonicalization on Windows and
    Mac OS.

v1.86.0

Compare Source

  • Add support for % as an expression in its own right. It will still be parsed
    as the modulo operator when between two other expressions, but in any other
    context it will be an expression whose value is the unquoted string %.

  • Consider attr() to be a special number function that can be used as a
    channel in color functions.

  • Deprecate user-defined functions named type() so that we can eventually
    support the new CSS type() function.

Dart API
  • Increase the minimum Dart SDK to 3.6.0.

v1.85.1

Compare Source

  • Fix a bug where global Sass functions whose names overlap with CSS math
    functions could incorrectly be treated as CSS math functions even though they
    used Sass-only features, causing compilation failures. For example,
    round(-$var / 2) previously threw an error but now works as intended.

v1.85.0

Compare Source

  • No longer fully trim redundant selectors generated by @extend. This caused
    unacceptable performance issues for certain heavy users of @extend. We'll
    try to find a more performant way to accomplish it in the future.

v1.84.0

Compare Source

  • Allow newlines in whitespace in the indented syntax.

  • Potentially breaking bug fix: Selectors with unmatched brackets now always
    produce a parser error. Previously, some edge cases like [foo#{"]:is(bar"}) {a: b} would compile without error, but this was an unintentional bug.

  • Fix a bug in which various Color Level 4 functions weren't allowed in plain
    CSS.

  • Fix the error message for @extend without a selector and possibly other
    parsing edge-cases in contexts that allow interpolation.

Embedded Host
  • Fixed the implementation of the SassBoolean type to adhere to the spec,
    now using a class instead of an interface.

v1.83.4

Compare Source

  • No user-visible changes.

v1.83.3

Compare Source

  • No user-visible changes.

v1.83.2

Compare Source

  • Properly display deprecation IDs for the JS Sass API.

  • Don't display deprecation IDs for user-defined deprecations.

v1.83.1

Compare Source

  • Fix a bug where --quiet-deps would get deactivated for @content blocks,
    even when those blocks were entirely contained within dependencies.

  • Include deprecation IDs in deprecation warnings to make it easier to determine
    what to pass to --silence-deprecation or --fatal-deprecation.

v1.83.0

Compare Source

  • Allow trailing commas in all argument and parameter lists.

v1.82.0

Compare Source

Command-Line Interface
  • Improve --watch mode reliability when making multiple changes at once, such
    as checking out a different Git branch.

  • Parse the calc-size() function as a calculation now that it's supported in
    some browsers.

Dart API
  • Add a SassCalculation.calcSize() function.

v1.81.1

Compare Source

  • No user-visible changes.

v1.81.0

Compare Source

  • Fix a few cases where deprecation warnings weren't being emitted for global
    built-in functions whose names overlap with CSS calculations.

  • Add support for the CSS round() calculation with a single argument, as long
    as that argument might be a unitless number.

v1.80.7

Compare Source

Embedded Host
  • Don't treat 0 as undefined for the green and blue channels in the
    LegacyColor constructor.

v1.80.6

Compare Source

Command-Line Interface
  • Make @parcel/watcher an optional dependency so this can still be installed
    on operating systems where it's unavailable.

v1.80.5

Compare Source

Embedded Host
  • Don't produce phantom @import deprecations when using an importer with the
    legacy API.

v1.80.4

Compare Source

  • No user-visible changes.

v1.80.3

Compare Source

  • Fix a bug where @import url("...") would crash in plain CSS files.

  • Improve consistency of how warnings are emitted by different parts of the
    compiler. This should result in minimal user-visible changes, but different
    types of warnings should now respond more reliably to flags like --quiet,
    --verbose, and --silence-deprecation.

v1.80.2

Compare Source

  • Fix a bug where deprecation warnings were incorrectly emitted for the
    plain-CSS invert() function.

v1.80.1

Compare Source

  • Fix a bug where repeated deprecation warnings were not automatically limited.

v1.80.0

Compare Source

  • @import is now officially deprecated, as are global built-in functions that
    are available within built-in modules. See the Sass blog post for more
    details on the deprecation process.
Embedded Host
  • Fix an error that would sometimes occur when deprecation warnings were
    emitted when using a custom importer with the legacy API.

v1.79.6

Compare Source

  • Fix a bug where Sass would add an extra */ after loud comments with
    whitespace after an explicit */ in the indented syntax.

  • Potentially breaking bug fix: Adding text after an explicit */ in the
    indented syntax is now an error, rather than silently generating invalid CSS.

Embedded Host
  • Properly export the SassBoolean type.

v1.79.5

Compare Source

  • Changes to how selector.unify() and @extend combine selectors:

    • The relative order of pseudo-classes (like :hover) and pseudo-elements
      (like ::before) within each original selector is now preserved when
      they're combined.

    • Pseudo selectors are now consistently placed at the end of the combined
      selector, regardless of which selector they came from. Previously, this
      reordering only applied to pseudo-selectors in the second selector.

  • Tweak the color transformation matrices for OKLab and OKLCH to match the
    newer, more accurate values in the CSS spec.

  • Fix a slight inaccuracy case when converting to srgb-linear and
    display-p3.

  • Potentially breaking bug fix: math.unit() now wraps multiple denominator
    units in parentheses. For example, px/(em*em) instead of px/em*em.

Command-Line Interface
  • Use @parcel/watcher to watch the filesystem when running from JavaScript and
    not using --poll. This should mitigate more frequent failures users have
    been seeing since version 4.0.0 of Chokidar, our previous watching tool, was
    released.
JS API
  • Fix SassColor.interpolate() to allow an undefined options parameter, as
    the types indicate.
Embedded Sass
  • Properly pass missing color channel values to and from custom functions.

v1.79.4

Compare Source

JS API
  • Fix a bug where passing green or blue to color.change() for legacy
    colors would fail.

v1.79.3

Compare Source

  • Update the $channel parameter in the suggested replacement for
    color.red(), color.green(), color.blue(), color.hue(),
    color.saturation(), color.lightness(), color.whiteness(), and
    color.blackness() to use a quoted string.

v1.79.2

Compare Source

  • Add a $space parameter to the suggested replacement for color.red(),
    color.green(), color.blue(), color.hue(), color.saturation(),
    color.lightness(), color.whiteness(), and color.blackness().

  • Update deprecation warnings for the legacy JS API to include a link to
    relevant documentation.

v1.79.1

Compare Source

  • No user-visible changes.

v1.79.0

Compare Source

  • Breaking change: Passing a number with unit % to the $alpha parameter
    of color.change(), color.adjust(), change-color(), and adjust-color()
    is now interpreted as a percentage, instead of ignoring the unit. For example,
    color.change(red, $alpha: 50%) now returns rgb(255 0 0 / 0.5).

  • Potentially breaking compatibility fix: Sass no longer rounds RGB channels
    to the nearest integer. This means that, for example, rgb(0 0 1) != rgb(0 0 0.6). This matches the latest version of the CSS spec and browser behavior.

  • Potentially breaking compatibility fix: Passing large positive or negative
    values to color.adjust() can now cause a color's channels to go outside that
    color's gamut. In most cases this will currently be clipped by the browser and
    end up showing the same color as before, but once browsers implement gamut
    mapping it may produce a different result.

  • Add support for CSS Color Level 4 color spaces. Each color value now tracks
    its color space along with the values of each channel in that color space.
    There are two general principles to keep in mind when dealing with new color
    spaces:

    1. With the exception of legacy color spaces (rgb, hsl, and hwb), colors
      will always be emitted in the color space they were defined in unless
      they're explicitly converted.

    2. The color.to-space() function is the only way to convert a color to
      another color space. Some built-in functions may do operations in a
      different color space, but they'll always convert back to the original space
      afterwards.

  • rgb colors can now have non-integer channels and channels outside the normal
    gamut of 0-255. These colors are always emitted using the rgb() syntax so
    that modern browsers that are being displayed on wide-gamut devices can
    display the most accurate color possible.

  • Add support for all the new color syntax defined in Color Level 4, including:

    • oklab(), oklch(), lab(), and lch() functions;
    • a top-level hwb() function that matches the space-separated CSS syntax;
    • and a color() function that supports the srgb, srgb-linear,
      display-p3, a98-rgb, prophoto-rgb, rec2020, xyz, xyz-d50, and
      xyz-d65 color spaces.
  • Add new functions for working with color spaces:

    • color.to-space($color, $space) converts $color to the given $space. In
      most cases this conversion is lossless—the color may end up out-of-gamut for
      the destination color space, but browsers will generally display it as best
      they can regardless. However, the hsl and hwb spaces can't represent
      out-of-gamut colors and so will be clamped.

    • color.channel($color, $channel, $space: null) returns the value of the
      given $channel in $color, after converting it to $space if necessary.
      It should be used instead of the old channel-specific functions such as
      color.red() and color.hue().

    • color.same($color1, $color2) returns whether two colors represent the same
      color even across color spaces. It differs from $color1 == $color2 because
      == never consider colors in different (non-legacy) spaces as equal.

    • color.is-in-gamut($color, $space: null) returns whether $color is
      in-gamut for its color space (or $space if it's passed).

    • color.to-gamut($color, $space: null) returns $color constrained to its
      space's gamut (or to $space's gamut, if passed). This is generally not
      recommended since even older browsers will display out-of-gamut colors as
      best they can, but it may be necessary in some cases.

    • color.space($color): Returns the name of $color's color space.

    • color.is-legacy($color): Returns whether $color is in a legacy color
      space (rgb, hsl, or hwb).

    • color.is-powerless($color, $channel, $space: null): Returns whether the
      given $channel of $color is powerless in $space (or its own color
      space). A channel is "powerless" if its value doesn't affect the way the
      color is displayed, such as hue for a color with 0 chroma.

    • color.is-missing($color, $channel): Returns whether $channel's value is
      missing in $color. Missing channels can be explicitly specified using the
      special value none and can appear automatically when color.to-space()
      returns a color with a powerless channel. Missing channels are usually
      treated as 0, except when interpolating between two colors and in
      color.mix() where they're treated as the same value as the other color.

  • Update existing functions to support color spaces:

    • hsl() and color.hwb() no longer forbid out-of-bounds values. Instead,
      they follow the CSS spec by clamping them to within the allowed range.

    • color.change(), color.adjust(), and color.scale() now support all
      channels of all color spaces. However, if you want to modify a channel
      that's not in $color's own color space, you have to explicitly specify the
      space with the $space parameter. (For backwards-compatibility, this
      doesn't apply to legacy channels of legacy colors—for example, you can still
      adjust an rgb color's saturation without passing $space: hsl).

    • color.mix() and color.invert() now support the standard CSS algorithm
      for interpolating between two colors (the same one that's used for gradients
      and animations). To use this, pass the color space to use for interpolation
      to the $method parameter. For polar color spaces like hsl and oklch,
      this parameter also allows you to specify how hue interpolation is handled.

    • color.complement() now supports a $space parameter that indicates which
      color space should be used to take the complement.

    • color.grayscale() now operates in the oklch space for non-legacy colors.

    • color.ie-hex-str() now automatically converts its color to the rgb space
      and gamut-maps it so that it can continue to take colors from any color
      space.

  • The following functions are now deprecated, and uses should be replaced with
    the new color-space-aware functions defined above:

    • The color.red(), color.green(), color.blue(), color.hue(),
      color.saturation(), color.lightness(), color.whiteness(), and
      color.blackness() functions, as well as their global counterparts, should
      be replaced with calls to color.channel().

    • The global adjust-hue(), saturate(), desaturate(), lighten(),
      darken(), transaprentize(), fade-out(), opacify(), and fade-in()
      functions should be replaced by color.adjust() or color.scale().

  • Add a global-builtin future deprecation, which can be opted-into with the
    --future-deprecation flag or the futureDeprecations option in the JS or
    Dart API. This emits warnings when any global built-in functions that are
    now available in sass: modules are called. It will become active by default
    in an upcoming release alongside the @import deprecation.

Dart API
  • Added a ColorSpace class which represents the various color spaces defined
    in the CSS spec.

  • Added SassColor.space which returns a color's color space.

  • Added SassColor.channels and .channelsOrNull which returns a list
    of channel values, with missing channels converted to 0 or exposed as null,
    respectively.

  • Added SassColor.isLegacy, .isInGamut, .channel(), .isChannelMissing(),
    .isChannelPowerless(), .toSpace(), .toGamut(), .changeChannels(), and
    .interpolate() which do the same thing as the Sass functions of the
    corresponding names.

  • SassColor.rgb() now allows out-of-bounds and non-integer arguments.

  • SassColor.hsl() and .hwb() now allow out-of-bounds arguments.

  • Added SassColor.hwb(), .srgb(), .srgbLinear(), .displayP3(),
    .a98Rgb(), .prophotoRgb(), .rec2020(), .xyzD50(), .xyzD65(),
    .lab(), .lch(), .oklab(), .oklch(), and .forSpace() constructors.

  • Deprecated SassColor.red, .green, .blue, .hue, .saturation,
    .lightness, .whiteness, and .blackness in favor of
    SassColor.channel().

  • Deprecated SassColor.changeRgb(), .changeHsl(), and .changeHwb() in
    favor of SassColor.changeChannels().

  • Added SassNumber.convertValueToUnit() as a shorthand for
    SassNumber.convertValue() with a single numerator.

  • Added InterpolationMethod and HueInterpolationMethod which collectively
    represent the method to use to interpolate two colors.

JS API
  • While the legacy API has been deprecated since we released the modern API, we
    now emit warnings when the legacy API is used to make sure users are aware
    that it will be removed in Dart Sass 2.0.0. In the meantime, you can silence
    these warnings by passing legacy-js-api in silenceDeprecations when using
    the legacy API.

  • Modify SassColor to accept a new space option, with support for all the
    new color spaces defined in Color Level 4.

  • Add SassColor.space which returns a color's color space.

  • Add SassColor.channels and .channelsOrNull which returns a list of channel
    values, with missing channels converted to 0 or exposed as null, respectively.

  • Add SassColor.isLegacy, .isInGamut(), .channel(), .isChannelMissing(),
    .isChannelPowerless(), .toSpace(), .toGamut(), .change(), and
    .interpolate() which do the same thing as the Sass functions of the
    corresponding names.

  • Deprecate SassColor.red, .green, .blue, .hue, .saturation,
    .lightness, .whiteness, and .blackness in favor of
    SassColor.channel().

Embedded Sass
  • Add Color SassScript value, with support for all the new color spaces
    defined in Color Level 4.

  • Remove RgbColor, HslColor and HwbColor SassScript values.

v1.78.0

Compare Source

  • The meta.feature-exists function is now deprecated. This deprecation is
    named feature-exists.

  • Fix a crash when using @at-root without any queries or children in the
    indented syntax.

JS API
  • Backport the deprecation options (fatalDeprecations, futureDeprecations,
    and silenceDeprecations) to the legacy JS API. The legacy JS API is itself
    deprecated, and you should move off of it if possible, but this will allow
    users of bundlers and other tools that are still using the legacy API to
    still control deprecation warnings.

  • Fix a bug where accessing SourceSpan.url would crash when a relative URL was
    passed to the Sass API.

Embedded Sass
  • Explicitly expose a sass executable from the sass-embedded npm package.
    This was intended to be included in 1.63.0, but due to the way
    platform-specific dependency executables are installed it did not work as
    intended. Now users can run npx sass for local installs or just sass when
    sass-embedded is installed globally.

  • Add linux-riscv64, linux-musl-riscv64, and android-riscv64 support for the
    sass-embedded npm package.

  • Fix an edge case where the Dart VM could hang when shutting down when requests
    were in flight.

  • Fix a race condition where the embedded host could fail to shut down if it was
    closed around the same time a new compilation was started.

  • Fix a bug where parse-time deprecation warnings could not be controlled by
    the deprecation options in some circumstances.

v1.77.8

Compare Source

  • No user-visible changes.

v1.77.7

Compare Source

  • Declarations that appear after nested rules are deprecated, because the
    semantics Sass has historically used are different from the semantics
    specified by CSS. In the future, Sass will adopt the standard CSS semantics.

    See the Sass website for details.

  • Potentially breaking bug fix: // in certain places such as unknown
    at-rule values was being preserved in the CSS output, leading to potentially
    invalid CSS. It's now properly parsed as a silent comment and omitted from the
    CSS output.

v1.77.6

Compare Source

  • Fix a few cases where comments and occasionally even whitespace wasn't allowed
    between the end of Sass statements and the following semicolon.

v1.77.5

Compare Source

  • Fully trim redundant selectors generated by @extend.

v1.77.4

Compare Source

Embedded Sass
  • Support passing Version input for fatalDeprecations as string over
    embedded protocol.

  • Fix a bug in the JS Embedded Host where Version could be incorrectly accepted
    as input for silenceDeprecations and futureDeprecations in pure JS.

v1.77.3

Compare Source

Dart API
  • Deprecation.duplicateVariableFlags has been deprecated and replaced with
    Deprecation.duplicateVarFlags to make it consistent with the
    duplicate-var-flags name used on the command line and in the JS API.

v1.77.2

Compare Source

  • Don't emit deprecation warnings for functions and mixins beginning with __.

  • Allow user-defined functions whose names begin with _ and otherwise look
    like vendor-prefixed functions with special CSS syntax.

Command-Line Interface
  • Properly handle the --silence-deprecation flag.

  • Handle the --fatal-deprecation and --future-deprecation flags for
    --interactive mode.

v1.77.1

Compare Source

  • Fix a crash that could come up with importers in certain contexts.

v1.77.0

Compare Source

  • Don't throw errors for at-rules in keyframe blocks.

v1.76.0

Compare Source

  • Throw errors for misplaced statements in keyframe blocks.

  • Mixins and functions whose names begin with -- are now deprecated for
    forwards-compatibility with the in-progress CSS functions and mixins spec.
    This deprecation is named css-function-mixin.

v1.75.0

Compare Source

  • Fix a bug in which stylesheet canonicalization could be cached incorrectly
    when custom importers or the Node.js package importer made decisions based on
    the URL of the containing stylesheet.
JS API
  • Allow importer to be passed without url in StringOptionsWithImporter.

v1.74.1

Compare Source

  • No user-visible changes.

v1.72.0

Compare Source

  • Support adjacent /s without whitespace in between when parsing plain CSS
    expressions.

  • Allow the Node.js pkg: importer to load Sass stylesheets for package.json
    exports field entries without extensions.

  • When printing suggestions for variables, use underscores in variable names
    when the original usage used underscores.

JavaScript API
  • Properly resolve pkg: imports with the Node.js package importer when
    arguments are passed to the JavaScript process.

v1.71.1

Compare Source

Command-Line Interface
  • Ship the musl Linux release with the proper Dart executable.
JavaScript API
  • Export the NodePackageImporter class in ESM mode.

  • Allow NodePackageImporter to locate a default directory even when the
    entrypoint is an ESM module.

Dart API
  • Make passing a null argument to NodePackageImporter() a static error rather
    than just a runtime error.
Embedded Sass
  • In the JS Embedded Host, properly install the musl Linux embedded compiler
    when running on musl Linux.

v1.71.0

Compare Source

For more information about pkg: importers, see the
announcement
on the Sass blog.

Command-Line Interface
  • Add a --pkg-importer flag to enable built-in pkg: importers. Currently
    this only supports the Node.js package resolution algorithm, via
    --pkg-importer=node. For example, @use "pkg:bootstrap" will load
    node_modules/bootstrap/scss/bootstrap.scss.
JavaScript API
  • Add a NodePackageImporter importer that can be passed to the importers
    option. This loads files using the pkg: URL scheme according to the Node.js
    package resolution algorithm. For example, @use "pkg:bootstrap" will load
    node_modules/bootstrap/scss/bootstrap.scss. The constructor takes a single
    optional argument, which indicates the base directory to use when locating
    node_modules directories. It defaults to
    path.dirname(require.main.filename).
Dart API
  • Add a NodePackageImporter importer that can be passed to the importers
    option. This loads files using the pkg: URL scheme according to the Node.js
    package resolution algorithm. For example, @use "pkg:bootstrap" will load
    node_modules/bootstrap/scss/bootstrap.scss. The constructor takes a single
    argument, which indicates the base directory to use when locating
    node_modules directories.

v1.70.0

Compare Source

JavaScript API
  • Add a sass.initCompiler() function that returns a sass.Compiler object
    which supports compile() and compileString() methods with the same API as
    the global Sass object. On the Node.js embedded host, each sass.Compiler
    object uses a single long-lived subprocess, making compiling multiple
    stylesheets much more efficient.

  • Add a sass.initAsyncCompiler() function that returns a sass.AsyncCompiler
    object which supports compileAsync() and compileStringAsync() methods with
    the same API as the global Sass object. On the Node.js embedded host, each
    sass.AsynCompiler object uses a single long-lived subprocess, making
    compiling multiple stylesheets much more efficient.

Embedded Sass
  • Support the CompileRequest.silent field. This allows compilations with no
    logging to avoid unnecessary request/response cycles.

  • The Dart Sass embedded compiler now reports its name as "dart-sass" rather
    than "Dart Sass", to match the JS API's info field.

v1.69.7

Compare Source

Embedded Sass
  • In the JS Embedded Host, properly install the x64 Dart Sass executable on
    ARM64 Windows.

v1.69.6

Compare Source

  • Produce better output for numbers with complex units in meta.inspect() and
    debugging messages.

  • Escape U+007F DELETE when serializing strings.

  • When generating CSS error messages to display in-browser, escape all code
    points that aren't in the US-ASCII region. Previously only code points U+0100
    LATIN CAPITAL LETTER A WITH MACRON were escaped.

  • Provide official releases for musl LibC and for Android.

  • Don't crash when running meta.apply() in asynchronous mode.

JS API
  • Fix a bug where certain exceptions could produce SourceSpans that didn't
    follow the documented SourceSpan API.

v1.69.5

Compare Source

JS API
  • Compatibility with Node.js 21.0.0.
microsoft/TypeScript (typescript)

v5.8.3: TypeScript 5.8.3

Compare Source

For release notes, check out the release announcement.

Downloads are available on:

v5.8.2: TypeScript 5.8

Compare Source

For release notes, check out the release announcement.

Downloads are available on:

v5.7.3: TypeScript 5.7.3

Compare Source

For release notes, check out the release announcement.

Downloads are available on npm

v5.7.2: TypeScript 5.7

Compare Source

For release notes, check out the release announcement.

Downloads are available on:

v5.6.3: TypeScript 5.6.3

Compare Source

For release notes, check out the release announcement.

For the complete list of fixed issues, check out the

Downloads are available on:

v5.6.2: TypeScript 5.6

Compare Source

For release notes, check out the release announcement.

For the complete list of fixed issues, check out the

Downloads are available on:

v5.5.4: TypeScript 5.5.4

Compare Source

For release notes, check out the release announcement.

For the complete list of fixed issues, check out the

Downloads are available on:

v5.5.3: TypeScript 5.5.3

Compare Source

For release notes, check out the release announcement.

For the complete list of fixed issues, check out the

Downloads are available on:

v5.5.2: TypeScript 5.5

Compare Source

For release notes, check out the release announcement.

For the complete list of fixed issues, check out the

Downloads are available on:

v5.4.5: TypeScript 5.4.5

Compare Source

For release notes, check out the release announcement.

For the complete list of fixed issues, check out the

Downloads are available on:

v5.4.4: TypeScript 5.4.4

Compare Source

For release notes, check out the release announcement.

For the complete list of fixed issues, check out the

Downloads are available on:

v5.4.3: TypeScript 5.4.3

Compare Source

For release notes, check out the release announcement.

For the complete list of fixed issues, check out the

Downloads are available on:

v5.4.2: TypeScript 5.4

Compare Source

For release notes, check out the release announcement.

For the complete list of fixed issues, check out the

Downloads are available on:

v5.3.3: TypeScript 5.3.3

Compare Source

For release notes, check out the release announcement.

For the complete list of fixed issues, check out the

Downloads are available on:

v5.3.2: TypeScript 5.3

Compare Source

For release notes, check out the release announcement.

For the complete list of fixed issues, check out the

Downloads are available on:

uuidjs/uuid (uuid)

v11.1.0

Compare Source

Features
  • update TS types to allowUint8Array subtypes for buffer option (#​865) (a5231e7)

v11.0.5

Compare Source

Bug Fixes

v11.0.4

Compare Source

Bug Fixes

v11.0.3

Compare Source

Bug Fixes

v11.0.2

Compare Source

Bug Fixes

v11.0.1

Compare Source

Bug Fixes

v11.0.0

Compare Source

⚠ BREAKING CHANGES
  • refactor v1 internal state and options logic (#​780)
  • refactor v7 internal state and options logic, fixes #​764 (#​779)
  • Port to TypeScript, closes #​762 (#​763)
  • update node support matrix (only support node 16-20) (#​750)
Features
Bug Fixes

v10.0.0

Compare Source

⚠ BREAKING CHANGES
  • update node support (drop node@12, node@14, add node@20) (#​750)
Features
Bug Fixes

Configuration

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

🚦 Automerge: Enabled.

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

👻 Immortal: This PR will be recreated if closed unmerged. Get config help if that's undesired.


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

This PR has been generated by Renovate Bot.

This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node)) | devDependencies | major | [`18.18.6` -> `22.15.34`](https://renovatebot.com/diffs/npm/@types%2fnode/18.18.6/22.15.34) | | [@types/uuid](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/uuid) ([source](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/uuid)) | devDependencies | major | [`9.0.6` -> `10.0.0`](https://renovatebot.com/diffs/npm/@types%2fuuid/9.0.6/10.0.0) | | [autoprefixer](https://github.com/postcss/autoprefixer) | devDependencies | patch | [`10.4.16` -> `10.4.21`](https://renovatebot.com/diffs/npm/autoprefixer/10.4.16/10.4.21) | | [postcss](https://postcss.org/) ([source](https://github.com/postcss/postcss)) | devDependencies | minor | [`8.4.31` -> `8.5.6`](https://renovatebot.com/diffs/npm/postcss/8.4.31/8.5.6) | | [prettier](https://prettier.io) ([source](https://github.com/prettier/prettier)) | devDependencies | minor | [`3.0.3` -> `3.6.2`](https://renovatebot.com/diffs/npm/prettier/3.0.3/3.6.2) | | [prettier-plugin-tailwindcss](https://github.com/tailwindlabs/prettier-plugin-tailwindcss) | devDependencies | minor | [`0.5.6` -> `0.6.13`](https://renovatebot.com/diffs/npm/prettier-plugin-tailwindcss/0.5.6/0.6.13) | | [sass](https://github.com/sass/dart-sass) | devDependencies | minor | [`1.69.4` -> `1.89.2`](https://renovatebot.com/diffs/npm/sass/1.69.4/1.89.2) | | [typescript](https://www.typescriptlang.org/) ([source](https://github.com/microsoft/TypeScript)) | devDependencies | minor | [`5.2.2` -> `5.8.3`](https://renovatebot.com/diffs/npm/typescript/5.2.2/5.8.3) | | [uuid](https://github.com/uuidjs/uuid) | dependencies | major | [`9.0.1` -> `11.1.0`](https://renovatebot.com/diffs/npm/uuid/9.0.1/11.1.0) | --- > ⚠️ **Warning** > > Some dependencies could not be looked up. Check the Dependency Dashboard for more information. --- ### Release Notes <details> <summary>postcss/autoprefixer (autoprefixer)</summary> ### [`v10.4.21`](https://github.com/postcss/autoprefixer/blob/HEAD/CHANGELOG.md#10421) [Compare Source](https://github.com/postcss/autoprefixer/compare/10.4.20...10.4.21) - Fixed old `-moz-` prefix for `:placeholder-shown` (by [@&#8203;Marukome0743](https://github.com/Marukome0743)). ### [`v10.4.20`](https://github.com/postcss/autoprefixer/blob/HEAD/CHANGELOG.md#10420) [Compare Source](https://github.com/postcss/autoprefixer/compare/10.4.19...10.4.20) - Fixed `fit-content` prefix for Firefox. ### [`v10.4.19`](https://github.com/postcss/autoprefixer/blob/HEAD/CHANGELOG.md#10419) [Compare Source](https://github.com/postcss/autoprefixer/compare/10.4.18...10.4.19) - Removed `end value has mixed support, consider using flex-end` warning since `end`/`start` now have good support. ### [`v10.4.18`](https://github.com/postcss/autoprefixer/blob/HEAD/CHANGELOG.md#10418) [Compare Source](https://github.com/postcss/autoprefixer/compare/10.4.17...10.4.18) - Fixed removing `-webkit-box-orient` on `-webkit-line-clamp` ([@&#8203;Goodwine](https://github.com/Goodwine)). ### [`v10.4.17`](https://github.com/postcss/autoprefixer/blob/HEAD/CHANGELOG.md#10417) [Compare Source](https://github.com/postcss/autoprefixer/compare/10.4.16...10.4.17) - Fixed `user-select: contain` prefixes. </details> <details> <summary>postcss/postcss (postcss)</summary> ### [`v8.5.6`](https://github.com/postcss/postcss/blob/HEAD/CHANGELOG.md#856) [Compare Source](https://github.com/postcss/postcss/compare/8.5.5...8.5.6) - Fixed `ContainerWithChildren` type discriminating (by [@&#8203;Goodwine](https://github.com/Goodwine)). ### [`v8.5.5`](https://github.com/postcss/postcss/blob/HEAD/CHANGELOG.md#855) [Compare Source](https://github.com/postcss/postcss/compare/8.5.4...8.5.5) - Fixed `package.json`→`exports` compatibility with some tools (by [@&#8203;JounQin](https://github.com/JounQin)). ### [`v8.5.4`](https://github.com/postcss/postcss/blob/HEAD/CHANGELOG.md#854) [Compare Source](https://github.com/postcss/postcss/compare/8.5.3...8.5.4) - Fixed Parcel compatibility issue (by [@&#8203;git-sumitchaudhary](https://github.com/git-sumitchaudhary)). ### [`v8.5.3`](https://github.com/postcss/postcss/blob/HEAD/CHANGELOG.md#853) [Compare Source](https://github.com/postcss/postcss/compare/8.5.2...8.5.3) - Added more details to `Unknown word` error (by [@&#8203;hiepxanh](https://github.com/hiepxanh)). - Fixed types (by [@&#8203;romainmenke](https://github.com/romainmenke)). - Fixed docs (by [@&#8203;catnipan](https://github.com/catnipan)). ### [`v8.5.2`](https://github.com/postcss/postcss/blob/HEAD/CHANGELOG.md#852) [Compare Source](https://github.com/postcss/postcss/compare/8.5.1...8.5.2) - Fixed end position of rules with semicolon (by [@&#8203;romainmenke](https://github.com/romainmenke)). ### [`v8.5.1`](https://github.com/postcss/postcss/blob/HEAD/CHANGELOG.md#851) [Compare Source](https://github.com/postcss/postcss/compare/8.5.0...8.5.1) - Fixed backwards compatibility for complex cases (by [@&#8203;romainmenke](https://github.com/romainmenke)). ### [`v8.5.0`](https://github.com/postcss/postcss/releases/tag/8.5.0): 8.5 “Duke Alloces” [Compare Source](https://github.com/postcss/postcss/compare/8.4.49...8.5.0) <img src="https://github.com/user-attachments/assets/6ef654a0-d675-4ba0-a670-e28ef27062f5" align="right" width="200" height="200" alt="President Alloces seal"> PostCSS 8.5 brought API to work better with non-CSS sources like HTML, Vue.js/Svelte sources or CSS-in-JS. [@&#8203;romainmenke](https://github.com/romainmenke) during [his work](https://github.com/postcss/postcss/issues/1995) on [Stylelint](https://stylelint.io) added `Input#document` in additional to `Input#css`. ```js root.source.input.document //=> "<p>Hello</p> // <style> // p { // color: green; // } // </style>" root.source.input.css //=> "p { // color: green; // }" ``` #### Thanks to Sponsors This release was possible thanks to our community. If your company wants to support the sustainability of front-end infrastructure or wants to give some love to PostCSS, you can join our supporters by: - [**Tidelift**](https://tidelift.com/) with a Spotify-like subscription model supporting all projects from your lock file. - Direct donations at [**GitHub Sponsors**](https://github.com/sponsors/ai) or [**Open Collective**](https://opencollective.com/postcss#section-contributors). ### [`v8.4.49`](https://github.com/postcss/postcss/blob/HEAD/CHANGELOG.md#8449) [Compare Source](https://github.com/postcss/postcss/compare/8.4.48...8.4.49) - Fixed custom syntax without `source.offset` (by [@&#8203;romainmenke](https://github.com/romainmenke)). ### [`v8.4.48`](https://github.com/postcss/postcss/blob/HEAD/CHANGELOG.md#8448) [Compare Source](https://github.com/postcss/postcss/compare/8.4.47...8.4.48) - Fixed position calculation in error/warnings methods (by [@&#8203;romainmenke](https://github.com/romainmenke)). ### [`v8.4.47`](https://github.com/postcss/postcss/blob/HEAD/CHANGELOG.md#8447) [Compare Source](https://github.com/postcss/postcss/compare/8.4.46...8.4.47) - Removed debug code. ### [`v8.4.46`](https://github.com/postcss/postcss/blob/HEAD/CHANGELOG.md#8446) [Compare Source](https://github.com/postcss/postcss/compare/8.4.45...8.4.46) - Fixed `Cannot read properties of undefined (reading 'before')`. ### [`v8.4.45`](https://github.com/postcss/postcss/blob/HEAD/CHANGELOG.md#8445) [Compare Source](https://github.com/postcss/postcss/compare/8.4.44...8.4.45) - Removed unnecessary fix which could lead to infinite loop. ### [`v8.4.44`](https://github.com/postcss/postcss/blob/HEAD/CHANGELOG.md#8444) [Compare Source](https://github.com/postcss/postcss/compare/8.4.43...8.4.44) - Another way to fix `markClean is not a function` error. ### [`v8.4.43`](https://github.com/postcss/postcss/blob/HEAD/CHANGELOG.md#8443) [Compare Source](https://github.com/postcss/postcss/compare/8.4.42...8.4.43) - Fixed `markClean is not a function` error. ### [`v8.4.42`](https://github.com/postcss/postcss/blob/HEAD/CHANGELOG.md#8442) [Compare Source](https://github.com/postcss/postcss/compare/8.4.41...8.4.42) - Fixed CSS syntax error on long minified files (by [@&#8203;varpstar](https://github.com/varpstar)). ### [`v8.4.41`](https://github.com/postcss/postcss/blob/HEAD/CHANGELOG.md#8441) [Compare Source](https://github.com/postcss/postcss/compare/8.4.40...8.4.41) - Fixed types (by [@&#8203;nex3](https://github.com/nex3) and [@&#8203;querkmachine](https://github.com/querkmachine)). - Cleaned up RegExps (by [@&#8203;bluwy](https://github.com/bluwy)). ### [`v8.4.40`](https://github.com/postcss/postcss/blob/HEAD/CHANGELOG.md#8440) [Compare Source](https://github.com/postcss/postcss/compare/8.4.39...8.4.40) - Moved to getter/setter in nodes types to help Sass team (by [@&#8203;nex3](https://github.com/nex3)). ### [`v8.4.39`](https://github.com/postcss/postcss/blob/HEAD/CHANGELOG.md#8439) [Compare Source](https://github.com/postcss/postcss/compare/8.4.38...8.4.39) - Fixed `CssSyntaxError` types (by [@&#8203;romainmenke](https://github.com/romainmenke)). ### [`v8.4.38`](https://github.com/postcss/postcss/blob/HEAD/CHANGELOG.md#8438) [Compare Source](https://github.com/postcss/postcss/compare/8.4.37...8.4.38) - Fixed `endIndex: 0` in errors and warnings (by [@&#8203;romainmenke](https://github.com/romainmenke)). ### [`v8.4.37`](https://github.com/postcss/postcss/blob/HEAD/CHANGELOG.md#8437) [Compare Source](https://github.com/postcss/postcss/compare/8.4.36...8.4.37) - Fixed `original.column are not numbers` error in another case. ### [`v8.4.36`](https://github.com/postcss/postcss/blob/HEAD/CHANGELOG.md#8436) [Compare Source](https://github.com/postcss/postcss/compare/8.4.35...8.4.36) - Fixed `original.column are not numbers` error on broken previous source map. ### [`v8.4.35`](https://github.com/postcss/postcss/blob/HEAD/CHANGELOG.md#8435) [Compare Source](https://github.com/postcss/postcss/compare/8.4.34...8.4.35) - Avoid `!` in `node.parent.nodes` type. - Allow to pass `undefined` to node adding method to simplify types. ### [`v8.4.34`](https://github.com/postcss/postcss/blob/HEAD/CHANGELOG.md#8434) [Compare Source](https://github.com/postcss/postcss/compare/8.4.33...8.4.34) - Fixed `AtRule#nodes` type (by Tim Weißenfels). - Cleaned up code (by Dmitry Kirillov). ### [`v8.4.33`](https://github.com/postcss/postcss/blob/HEAD/CHANGELOG.md#8433) [Compare Source](https://github.com/postcss/postcss/compare/8.4.32...8.4.33) - Fixed `NoWorkResult` behavior difference with normal mode (by Romain Menke). - Fixed `NoWorkResult` usage conditions (by [@&#8203;ahmdammarr](https://github.com/ahmdammarr)). ### [`v8.4.32`](https://github.com/postcss/postcss/blob/HEAD/CHANGELOG.md#8432) [Compare Source](https://github.com/postcss/postcss/compare/8.4.31...8.4.32) - Fixed `postcss().process()` types (by Andrew Ferreira). </details> <details> <summary>prettier/prettier (prettier)</summary> ### [`v3.6.2`](https://github.com/prettier/prettier/blob/HEAD/CHANGELOG.md#362) [Compare Source](https://github.com/prettier/prettier/compare/3.6.1...3.6.2) [diff](https://github.com/prettier/prettier/compare/3.6.1...3.6.2) ##### Markdown: Add missing blank line around code block ([#&#8203;17675](https://github.com/prettier/prettier/pull/17675) by [@&#8203;fisker](https://github.com/fisker)) <!-- prettier-ignore --> ````md <!-- Input --> 1. Some text, and code block below, with newline after code block ```yaml --- foo: bar ``` 1. Another 2. List <!-- Prettier 3.6.1 --> 1. Some text, and code block below, with newline after code block ```yaml --- foo: bar ``` 1. Another 2. List <!-- Prettier 3.6.2 --> 1. Some text, and code block below, with newline after code block ```yaml --- foo: bar ``` 1. Another 2. List ```` ### [`v3.6.1`](https://github.com/prettier/prettier/blob/HEAD/CHANGELOG.md#361) [Compare Source](https://github.com/prettier/prettier/compare/3.6.0...3.6.1) [diff](https://github.com/prettier/prettier/compare/3.6.0...3.6.1) ##### TypeScript: Allow const without initializer ([#&#8203;17650](https://github.com/prettier/prettier/pull/17650), [#&#8203;17654](https://github.com/prettier/prettier/pull/17654) by [@&#8203;fisker](https://github.com/fisker)) <!-- prettier-ignore --> ```jsx // Input export const version: string; // Prettier 3.6.0 (--parser=babel-ts) SyntaxError: Unexpected token (1:21) > 1 | export const version: string; | ^ // Prettier 3.6.0 (--parser=oxc-ts) SyntaxError: Missing initializer in const declaration (1:14) > 1 | export const version: string; | ^^^^^^^^^^^^^^^ // Prettier 3.6.1 export const version: string; ``` ##### Miscellaneous: Avoid closing files multiple times ([#&#8203;17665](https://github.com/prettier/prettier/pull/17665) by [@&#8203;43081j](https://github.com/43081j)) When reading a file to infer the interpreter from a shebang, we use the `n-readlines` library to read the first line in order to get the shebang. This library closes files when it reaches EOF, and we later try close the same files again. We now close files only if `n-readlines` did not already close them. ### [`v3.6.0`](https://github.com/prettier/prettier/blob/HEAD/CHANGELOG.md#360) [Compare Source](https://github.com/prettier/prettier/compare/3.5.3...3.6.0) [diff](https://github.com/prettier/prettier/compare/3.5.3...3.6.0) 🔗 [Release Notes](https://prettier.io/blog/2025/06/23/3.6.0) ### [`v3.5.3`](https://github.com/prettier/prettier/blob/HEAD/CHANGELOG.md#353) [Compare Source](https://github.com/prettier/prettier/compare/3.5.2...3.5.3) [diff](https://github.com/prettier/prettier/compare/3.5.2...3.5.3) ##### Flow: Fix missing parentheses in `ConditionalTypeAnnotation` ([#&#8203;17196](https://github.com/prettier/prettier/pull/17196) by [@&#8203;fisker](https://github.com/fisker)) <!-- prettier-ignore --> ```jsx // Input type T<U> = 'a' | ('b' extends U ? 'c' : empty); type T<U> = 'a' & ('b' extends U ? 'c' : empty); // Prettier 3.5.2 type T<U> = "a" | "b" extends U ? "c" : empty; type T<U> = "a" & "b" extends U ? "c" : empty; // Prettier 3.5.3 type T<U> = "a" | ("b" extends U ? "c" : empty); type T<U> = "a" & ("b" extends U ? "c" : empty); ``` ### [`v3.5.2`](https://github.com/prettier/prettier/blob/HEAD/CHANGELOG.md#352) [Compare Source](https://github.com/prettier/prettier/compare/3.5.1...3.5.2) [diff](https://github.com/prettier/prettier/compare/3.5.1...3.5.2) ##### Remove `module-sync` condition ([#&#8203;17156](https://github.com/prettier/prettier/pull/17156) by [@&#8203;fisker](https://github.com/fisker)) In Prettier 3.5.0, [we added `module-sync` condition to `package.json`](https://prettier.io/blog/2025/02/09/3.5.0#use-esm-entrypoint-for-requireesm-16958-by-tats-u), so that `require("prettier")` can use ESM version, but turns out it doesn't work if CommonJS and ESM plugins both imports builtin plugins. To solve this problem, we decide simply remove the `module-sync` condition, so `require("prettier")` will still use the CommonJS version, we'll revisit until `require(ESM)` feature is more stable. ### [`v3.5.1`](https://github.com/prettier/prettier/blob/HEAD/CHANGELOG.md#351) [Compare Source](https://github.com/prettier/prettier/compare/3.5.0...3.5.1) [diff](https://github.com/prettier/prettier/compare/3.5.0...3.5.1) ##### Fix CLI crash when cache for old version exists ([#&#8203;17100](https://github.com/prettier/prettier/pull/17100) by [@&#8203;sosukesuzuki](https://github.com/sosukesuzuki)) Prettier 3.5 uses a different cache format than previous versions, Prettier 3.5.0 crashes when reading existing cache file, Prettier 3.5.1 fixed the problem. ##### Support dockercompose and github-actions-workflow in VSCode ([#&#8203;17101](https://github.com/prettier/prettier/pull/17101) by [@&#8203;remcohaszing](https://github.com/remcohaszing)) Prettier now supports the `dockercompose` and `github-actions-workflow` languages in Visual Studio Code. ### [`v3.5.0`](https://github.com/prettier/prettier/blob/HEAD/CHANGELOG.md#350) [Compare Source](https://github.com/prettier/prettier/compare/3.4.2...3.5.0) [diff](https://github.com/prettier/prettier/compare/3.4.2...3.5.0) 🔗 [Release Notes](https://prettier.io/blog/2025/02/09/3.5.0.html) ### [`v3.4.2`](https://github.com/prettier/prettier/blob/HEAD/CHANGELOG.md#342) [Compare Source](https://github.com/prettier/prettier/compare/3.4.1...3.4.2) [diff](https://github.com/prettier/prettier/compare/3.4.1...3.4.2) ##### Treat U+30A0 & U+30FB in Katakana Block as CJK ([#&#8203;16796](https://github.com/prettier/prettier/pull/16796) by [@&#8203;tats-u](https://github.com/tats-u)) Prettier doesn't treat U+30A0 & U+30FB as Japanese. U+30FB is commonly used in Japanese to represent the delimitation of first and last names of non-Japanese people or “and”. The following “C言語・C++・Go・Rust” means “C language & C++ & Go & Rust” in Japanese. <!-- prettier-ignore --> ```md <!-- Input (--prose-wrap=never) --> C言 語 ・ C++ ・ Go ・ Rust <!-- Prettier 3.4.1 --> C言語・ C++ ・ Go ・ Rust <!-- Prettier 3.4.2 --> C言語・C++・Go・Rust ``` U+30A0 can be used as the replacement of the `-` in non-Japanese names (e.g. “Saint-Saëns” (Charles Camille Saint-Saëns) can be represented as “サン゠サーンス” in Japanese), but substituted by ASCII hyphen (U+002D) or U+FF1D (full width hyphen) in many cases (e.g. “サン=サーンス” or “サン=サーンス”). ##### Fix comments print on class methods with decorators ([#&#8203;16891](https://github.com/prettier/prettier/pull/16891) by [@&#8203;fisker](https://github.com/fisker)) <!-- prettier-ignore --> ```jsx // Input class A { @&#8203;decorator /** * The method description * */ async method(foo: Foo, bar: Bar) { console.log(foo); } } // Prettier 3.4.1 class A { @&#8203;decorator async /** * The method description * */ method(foo: Foo, bar: Bar) { console.log(foo); } } // Prettier 3.4.2 class A { @&#8203;decorator /** * The method description * */ async method(foo: Foo, bar: Bar) { console.log(foo); } } ``` ##### Fix non-idempotent formatting ([#&#8203;16899](https://github.com/prettier/prettier/pull/16899) by [@&#8203;seiyab](https://github.com/seiyab)) This bug fix is not language-specific. You may see similar change in any languages. This fixes regression in 3.4.0 so change caused by it should yield same formatting as 3.3.3. <!-- prettier-ignore --> ```jsx // Input <div> foo <span>longlonglonglonglonglonglonglonglonglonglonglonglonglonglongl foo</span> , abc </div>; // Prettier 3.4.1 (first) <div> foo <span> longlonglonglonglonglonglonglonglonglonglonglonglonglonglongl foo </span>, abc </div>; // Prettier 3.4.1 (second) <div> foo <span>longlonglonglonglonglonglonglonglonglonglonglonglonglonglongl foo</span> , abc </div>; // Prettier 3.4.2 <div> foo <span>longlonglonglonglonglonglonglonglonglonglonglonglonglonglongl foo</span> , abc </div>; ``` ### [`v3.4.1`](https://github.com/prettier/prettier/blob/HEAD/CHANGELOG.md#341) [Compare Source](https://github.com/prettier/prettier/compare/3.4.0...3.4.1) [diff](https://github.com/prettier/prettier/compare/3.4.0...3.4.1) ##### Remove unnecessary parentheses around assignment in `v-on` ([#&#8203;16887](https://github.com/prettier/prettier/pull/16887) by [@&#8203;fisker](https://github.com/fisker)) <!-- prettier-ignore --> ```vue <!-- Input --> <template> <button @&#8203;click="foo += 2">Click</button> </template> <!-- Prettier 3.4.0 --> <template> <button @&#8203;click="(foo += 2)">Click</button> </template> <!-- Prettier 3.4.1 --> <template> <button @&#8203;click="foo += 2">Click</button> </template> ``` ### [`v3.4.0`](https://github.com/prettier/prettier/blob/HEAD/CHANGELOG.md#340) [Compare Source](https://github.com/prettier/prettier/compare/3.3.3...3.4.0) [diff](https://github.com/prettier/prettier/compare/3.3.3...3.4.0) 🔗 [Release Notes](https://prettier.io/blog/2024/11/26/3.4.0.html) ### [`v3.3.3`](https://github.com/prettier/prettier/blob/HEAD/CHANGELOG.md#333) [Compare Source](https://github.com/prettier/prettier/compare/3.3.2...3.3.3) [diff](https://github.com/prettier/prettier/compare/3.3.2...3.3.3) ##### Add parentheses for nullish coalescing in ternary ([#&#8203;16391](https://github.com/prettier/prettier/pull/16391) by [@&#8203;cdignam-segment](https://github.com/cdignam-segment)) This change adds clarity to operator precedence. <!-- prettier-ignore --> ```js // Input foo ? bar ?? foo : baz; foo ?? bar ? a : b; a ? b : foo ?? bar; // Prettier 3.3.2 foo ? bar ?? foo : baz; foo ?? bar ? a : b; a ? b : foo ?? bar; // Prettier 3.3.3 foo ? (bar ?? foo) : baz; (foo ?? bar) ? a : b; a ? b : (foo ?? bar); ``` ##### Add parentheses for decorator expressions ([#&#8203;16458](https://github.com/prettier/prettier/pull/16458) by [@&#8203;y-schneider](https://github.com/y-schneider)) Prevent parentheses around member expressions or tagged template literals from being removed to follow the stricter parsing rules of TypeScript 5.5. <!-- prettier-ignore --> ```ts // Input @&#8203;(foo`tagged template`) class X {} // Prettier 3.3.2 @&#8203;foo`tagged template` class X {} // Prettier 3.3.3 @&#8203;(foo`tagged template`) class X {} ``` ##### Support `@let` declaration syntax ([#&#8203;16474](https://github.com/prettier/prettier/pull/16474) by [@&#8203;sosukesuzuki](https://github.com/sosukesuzuki)) Adds support for Angular v18 `@let` declaration syntax. Please see the following code example. The `@let` declaration allows you to define local variables within the template: <!-- prettier-ignore --> ```html @&#8203;let name = 'Frodo'; <h1>Dashboard for {{name}}</h1> Hello, {{name}} ``` For more details, please refer to the excellent blog post by the Angular Team: [Introducing @&#8203;let in Angular](https://blog.angular.dev/introducing-let-in-angular-686f9f383f0f). We also appreciate the Angular Team for kindly answering our questions to implement this feature. ### [`v3.3.2`](https://github.com/prettier/prettier/blob/HEAD/CHANGELOG.md#332) [Compare Source](https://github.com/prettier/prettier/compare/3.3.1...3.3.2) [diff](https://github.com/prettier/prettier/compare/3.3.1...3.3.2) ##### Fix handlebars path expressions starts with `@` ([#&#8203;16358](https://github.com/prettier/prettier/pull/16358) by [@&#8203;Princeyadav05](https://github.com/Princeyadav05)) <!-- prettier-ignore --> ```hbs {{! Input }} <div>{{@&#8203;x.y.z}}</div> {{! Prettier 3.3.1 }} <div>{{@&#8203;x}}</div> {{! Prettier 3.3.2 }} <div>{{@&#8203;x.y.z}}</div> ``` ### [`v3.3.1`](https://github.com/prettier/prettier/blob/HEAD/CHANGELOG.md#331) [Compare Source](https://github.com/prettier/prettier/compare/3.3.0...3.3.1) [diff](https://github.com/prettier/prettier/compare/3.3.0...3.3.1) ##### Preserve empty lines in front matter ([#&#8203;16347](https://github.com/prettier/prettier/pull/16347) by [@&#8203;fisker](https://github.com/fisker)) <!-- prettier-ignore --> ```markdown <!-- Input --> --- foo: - bar1 - bar2 - bar3 --- Markdown <!-- Prettier 3.3.0 --> --- foo: - bar1 - bar2 - bar3 --- Markdown <!-- Prettier 3.3.1 --> --- foo: - bar1 - bar2 - bar3 --- Markdown ``` ##### Preserve explicit language in front matter ([#&#8203;16348](https://github.com/prettier/prettier/pull/16348) by [@&#8203;fisker](https://github.com/fisker)) <!-- prettier-ignore --> ```markdown <!-- Input --> ---yaml title: Hello slug: home --- <!-- Prettier 3.3.0 --> --- title: Hello slug: home --- <!-- Prettier 3.3.1 --> ---yaml title: Hello slug: home --- ``` ##### Avoid line breaks in import attributes ([#&#8203;16349](https://github.com/prettier/prettier/pull/16349) by [@&#8203;fisker](https://github.com/fisker)) <!-- prettier-ignore --> ```jsx // Input import something from "./some-very-very-very-very-very-very-very-very-long-path.json" with { type: "json" }; // Prettier 3.3.0 import something from "./some-very-very-very-very-very-very-very-very-long-path.json" with { type: "json" }; // Prettier 3.3.1 import something from "./some-very-very-very-very-very-very-very-very-long-path.json" with { type: "json" }; ``` ### [`v3.3.0`](https://github.com/prettier/prettier/blob/HEAD/CHANGELOG.md#330) [Compare Source](https://github.com/prettier/prettier/compare/3.2.5...3.3.0) [diff](https://github.com/prettier/prettier/compare/3.2.5...3.3.0) 🔗 [Release Notes](https://prettier.io/blog/2024/06/01/3.3.0.html) ### [`v3.2.5`](https://github.com/prettier/prettier/blob/HEAD/CHANGELOG.md#325) [Compare Source](https://github.com/prettier/prettier/compare/3.2.4...3.2.5) [diff](https://github.com/prettier/prettier/compare/3.2.4...3.2.5) ##### Support Angular inline styles as single template literal ([#&#8203;15968](https://github.com/prettier/prettier/pull/15968) by [@&#8203;sosukesuzuki](https://github.com/sosukesuzuki)) [Angular v17](https://blog.angular.io/introducing-angular-v17-4d7033312e4b) supports single string inline styles. <!-- prettier-ignore --> ```ts // Input @&#8203;Component({ template: `<div>...</div>`, styles: `h1 { color: blue; }`, }) export class AppComponent {} // Prettier 3.2.4 @&#8203;Component({ template: `<div>...</div>`, styles: `h1 { color: blue; }`, }) export class AppComponent {} // Prettier 3.2.5 @&#8203;Component({ template: `<div>...</div>`, styles: ` h1 { color: blue; } `, }) export class AppComponent {} ``` ##### Unexpected embedded formatting for Angular template ([#&#8203;15969](https://github.com/prettier/prettier/pull/15969) by [@&#8203;JounQin](https://github.com/JounQin)) Computed template should not be considered as Angular component template <!-- prettier-ignore --> ```ts // Input const template = "foobar"; @&#8203;Component({ [template]: `<h1>{{ hello }}</h1>`, }) export class AppComponent {} // Prettier 3.2.4 const template = "foobar"; @&#8203;Component({ [template]: `<h1>{{ hello }}</h1>`, }) export class AppComponent {} // Prettier 3.2.5 const template = "foobar"; @&#8203;Component({ [template]: `<h1>{{ hello }}</h1>`, }) export class AppComponent {} ``` ##### Use `"json"` parser for `tsconfig.json` by default ([#&#8203;16012](https://github.com/prettier/prettier/pull/16012) by [@&#8203;sosukesuzuki](https://github.com/sosukesuzuki)) In [v3.2.0](https://prettier.io/blog/2024/01/12/3.2.0#new-jsonc-parser-added-15831httpsgithubcomprettierprettierpull15831-by-fiskerhttpsgithubcomfisker), we introduced `"jsonc"` parser which adds trailing comma **by default**. When adding a new parser we also define how it will be used based on the [`linguist-languages`](https://www.npmjs.com/package/linguist-languages) data. `tsconfig.json` is a special file used by [TypeScript](https://www.typescriptlang.org/docs/handbook/tsconfig-json.html#using-tsconfigjson-or-jsconfigjson), it uses `.json` file extension, but it actually uses the [JSON with Comments](https://code.visualstudio.com/docs/languages/json#\_json-with-comments) syntax. However, we found that there are many third-party tools not recognize it correctly because of the confusing `.json` file extension. We decide to treat it as a JSON file for now to avoid the extra configuration step. To keep using the `"jsonc"` parser for your `tsconfig.json` files, add the following to your `.prettierrc` file ```json { "overrides": [ { "files": ["tsconfig.json", "jsconfig.json"], "options": { "parser": "jsonc" } } ] } ``` <!-- prettier-ignore --> ``` ``` ### [`v3.2.4`](https://github.com/prettier/prettier/blob/HEAD/CHANGELOG.md#Prettier-324) [Compare Source](https://github.com/prettier/prettier/compare/3.2.3...3.2.4) prettier --file-info tsconfig.json { "ignored": false, "inferredParser": "jsonc" } ### [`v3.2.3`](https://github.com/prettier/prettier/blob/HEAD/CHANGELOG.md#323) [Compare Source](https://github.com/prettier/prettier/compare/3.2.2...3.2.3) [diff](https://github.com/prettier/prettier/compare/3.2.2...3.2.3) ##### Throw errors for invalid code ([#&#8203;15881](https://github.com/prettier/prettier/pull/15881) by [@&#8203;fisker](https://github.com/fisker), [@&#8203;Josh-Cena](https://github.com/Josh-Cena), [@&#8203;auvred](https://github.com/auvred)) <!-- prettier-ignore --> ```ts // Input 1++; // Prettier 3.2.2 1++; // Prettier 3.2.3 SyntaxError: Invalid left-hand side expression in unary operation (1:1) > 1 | 1++; | ^ ``` <!-- prettier-ignore --> ```ts // Input try {} catch (error = 1){} // Prettier 3.2.2 try { } catch (error) {} // Prettier 3.2.3 SyntaxError: Catch clause variable cannot have an initializer. (1:23) > 1 | try {} catch (error = 1){} | ^ ``` ##### Fix parser inference ([#&#8203;15927](https://github.com/prettier/prettier/pull/15927) by [@&#8203;fisker](https://github.com/fisker)) <!-- prettier-ignore --> ```console // Prettier 3.2.2 prettier --file-info tsconfig.json { "ignored": false, "inferredParser": "json" } // Prettier 3.2.3 prettier --file-info tsconfig.json { "ignored": false, "inferredParser": "jsonc" } ``` ### [`v3.2.2`](https://github.com/prettier/prettier/blob/HEAD/CHANGELOG.md#322) [Compare Source](https://github.com/prettier/prettier/compare/3.2.1...3.2.2) [diff](https://github.com/prettier/prettier/compare/3.2.1...3.2.2) ##### Fix crash when parsing template literal CSS in a JSX style tag using a spread attribute ([#&#8203;15896](https://github.com/prettier/prettier/pull/15896) by [@&#8203;eelco](https://github.com/eelco)) For example this code would crash before: <!-- prettier-ignore --> ```jsx <style {...spread}>{`.{}`}</style> ``` ##### Fix formatting error on optional call expression and member chain ([#&#8203;15920](https://github.com/prettier/prettier/pull/15920) by [@&#8203;sosukesuzuki](https://github.com/sosukesuzuki)) <!-- prettier-ignore --> ```jsx // Input a(() => {}, c?.d()); // Prettier 3.2.1 TypeError: Cannot read properties of undefined (reading 'type') // Prettier 3.2.2 a(() => {}, c?.d()); ``` ### [`v3.2.1`](https://github.com/prettier/prettier/blob/HEAD/CHANGELOG.md#321) [Compare Source](https://github.com/prettier/prettier/compare/3.2.0...3.2.1) [diff](https://github.com/prettier/prettier/compare/3.2.0...3.2.1) ##### Fix formatting error on member chain ([#&#8203;15915](https://github.com/prettier/prettier/pull/15915) by [@&#8203;sosukesuzuki](https://github.com/sosukesuzuki)) <!-- prettier-ignore --> ```jsx // Input test().test2().test2(thing?.something); // Prettier 3.2.0 TypeError: Cannot read properties of undefined (reading 'type') // Prettier 3.2.1 test().test2().test2(thing?.something); ``` ### [`v3.2.0`](https://github.com/prettier/prettier/blob/HEAD/CHANGELOG.md#320) [Compare Source](https://github.com/prettier/prettier/compare/3.1.1...3.2.0) [diff](https://github.com/prettier/prettier/compare/3.1.1...3.2.0) 🔗 [Release Notes](https://prettier.io/blog/2024/01/12/3.2.0.html) ### [`v3.1.1`](https://github.com/prettier/prettier/blob/HEAD/CHANGELOG.md#311) [Compare Source](https://github.com/prettier/prettier/compare/3.1.0...3.1.1) [diff](https://github.com/prettier/prettier/compare/3.1.0...3.1.1) ##### Fix config file search ([#&#8203;15363](https://github.com/prettier/prettier/pull/15363) by [@&#8203;fisker](https://github.com/fisker)) Previously, we start search for config files from the filePath as a directory, if it happened to be a directory and contains config file, it will be used by mistake. ```text ├─ .prettierrc └─ test.js (A directory) └─ .prettierrc ``` ```js // Prettier 3.1.0 await prettier.resolveConfigFile(new URL("./test.js", import.meta.url)); // <CWD>/test.js/.prettierrc // Prettier 3.1.1 await prettier.resolveConfigFile(new URL("./test.js", import.meta.url)); // <CWD>/.prettierrc ``` ##### Skip explicitly passed symbolic links with `--no-error-on-unmatched-pattern` ([#&#8203;15533](https://github.com/prettier/prettier/pull/15533) by [@&#8203;sanmai-NL](https://github.com/sanmai-NL)) Since Prettier v3, we stopped following symbolic links, however in some use cases, the symbolic link patterns can't be filtered out, and there is no way to prevent Prettier from throwing errors. In Prettier 3.1.1, you can use `--no-error-on-unmatched-pattern` to simply skip symbolic links. ##### Consistently use tabs in ternaries when `useTabs` is `true` ([#&#8203;15662](https://github.com/prettier/prettier/pull/15662) by [@&#8203;auvred](https://github.com/auvred)) <!-- prettier-ignore --> ```jsx // Input aaaaaaaaaaaaaaa ? bbbbbbbbbbbbbbbbbb : ccccccccccccccc ? ddddddddddddddd : eeeeeeeeeeeeeee ? fffffffffffffff : gggggggggggggggg; // Prettier 3.1.0 aaaaaaaaaaaaaaa ? bbbbbbbbbbbbbbbbbb : ccccccccccccccc ? ddddddddddddddd : eeeeeeeeeeeeeee ? fffffffffffffff : gggggggggggggggg; // Prettier 3.1.1 aaaaaaaaaaaaaaa ? bbbbbbbbbbbbbbbbbb : ccccccccccccccc ? ddddddddddddddd : eeeeeeeeeeeeeee ? fffffffffffffff : gggggggggggggggg; ``` ##### Improve config file search ([#&#8203;15663](https://github.com/prettier/prettier/pull/15663) by [@&#8203;fisker](https://github.com/fisker)) The Prettier config file search performance has been improved by more effective cache strategy. ##### Fix unstable and ugly formatting for comments in destructuring patterns ([#&#8203;15708](https://github.com/prettier/prettier/pull/15708) by [@&#8203;sosukesuzuki](https://github.com/sosukesuzuki)) <!-- prettier-ignore --> ```tsx // Input const { foo, // bar // baz }: Foo = expr; // Prettier 3.1.0 const { foo1, } // bar // baz : Foo = expr; // Prettier 3.1.0 second output const { foo1, // bar } // baz : Foo = expr; // Prettier 3.1.1 const { foo1, // bar // baz }: Foo = expr; ``` ##### Support "Import Attributes" ([#&#8203;15718](https://github.com/prettier/prettier/pull/15718) by [@&#8203;fisker](https://github.com/fisker)) [TypeScript 5.3](https://devblogs.microsoft.com/typescript/announcing-typescript-5-3/#import-attributes) supports the latest updates to the [import attributes](https://github.com/tc39/proposal-import-attributes) proposal. ```tsx import something from "./something.json" with { type: "json" }; ``` ##### Fix false claim in docs that cursorOffset is incompatible with rangeStart/rangeEnd ([#&#8203;15750](https://github.com/prettier/prettier/pull/15750) by [@&#8203;ExplodingCabbage](https://github.com/ExplodingCabbage)) The cursorOffset option has in fact been compatible with rangeStart/rangeEnd for over 5 years, thanks to work by [@&#8203;ds300](https://github.com/ds300). However, Prettier's documentation (including the CLI `--help` text) continued to claim otherwise, falsely. The documentation is now fixed. ##### Keep curly braces and `from` keyword in empty `import` statements ([#&#8203;15756](https://github.com/prettier/prettier/pull/15756) by [@&#8203;fisker](https://github.com/fisker)) <!-- prettier-ignore --> ```js // Input import { } from 'foo'; import { /* comment */ } from 'bar'; // Prettier 3.1.0 import {} from "foo"; import /* comment */ "bar"; // Prettier 3.1.1 import {} from "foo"; import {} from /* comment */ "bar"; ``` ##### Keep empty import attributes and assertions ([#&#8203;15757](https://github.com/prettier/prettier/pull/15757) by [@&#8203;fisker](https://github.com/fisker)) <!-- prettier-ignore --> ```js // Input import foo from "foo" with {}; import bar from "bar" assert {}; // Prettier 3.1.0 import foo from "foo"; import bar from "bar"; // Prettier 3.1.1 import foo from "foo" with {}; import bar from "bar" assert {}; ``` ### [`v3.1.0`](https://github.com/prettier/prettier/blob/HEAD/CHANGELOG.md#310) [Compare Source](https://github.com/prettier/prettier/compare/3.0.3...3.1.0) [diff](https://github.com/prettier/prettier/compare/3.0.3...3.1.0) 🔗 [Release Notes](https://prettier.io/blog/2023/11/13/3.1.0.html) </details> <details> <summary>tailwindlabs/prettier-plugin-tailwindcss (prettier-plugin-tailwindcss)</summary> ### [`v0.6.13`](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/blob/HEAD/CHANGELOG.md#0613---2025-06-19) [Compare Source](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/compare/v0.6.12...v0.6.13) - Prevent Svelte files from breaking when there are duplicate classes ([#&#8203;359](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/pull/359)) - Ensure `prettier-plugin-multiline-arrays` and `prettier-plugin-jsdoc` work when used together with this plugin ([#&#8203;372](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/pull/372)) ### [`v0.6.12`](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/blob/HEAD/CHANGELOG.md#0612---2025-05-30) [Compare Source](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/compare/v0.6.11...v0.6.12) - Add internal (unsupported) option to load Tailwind CSS using a different package name ([#&#8203;366](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/pull/366)) ### [`v0.6.11`](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/blob/HEAD/CHANGELOG.md#0611---2025-01-23) [Compare Source](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/compare/v0.6.10...v0.6.11) - Support TypeScript configs and plugins when using v4 ([#&#8203;342](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/pull/342)) ### [`v0.6.10`](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/blob/HEAD/CHANGELOG.md#0610---2025-01-15) [Compare Source](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/compare/v0.6.9...v0.6.10) - Add support for `@zackad/prettier-plugin-twig` ([#&#8203;327](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/pull/327)) - Drop support for `@zackad/prettier-plugin-twig-melody` ([#&#8203;327](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/pull/327)) - Update Prettier options types ([#&#8203;325](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/pull/325)) - Don't remove whitespace inside template literals in Svelte ([#&#8203;332](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/pull/332)) ### [`v0.6.9`](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/blob/HEAD/CHANGELOG.md#069---2024-11-19) [Compare Source](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/compare/v0.6.8...v0.6.9) - Introduce `tailwindStylesheet` option to replace `tailwindEntryPoint` ([#&#8203;330](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/pull/330)) ### [`v0.6.8`](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/blob/HEAD/CHANGELOG.md#068---2024-09-24) [Compare Source](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/compare/v0.6.7...v0.6.8) - Fix crash ([#&#8203;320](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/pull/320)) ### [`v0.6.7`](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/blob/HEAD/CHANGELOG.md#067---2024-09-24) [Compare Source](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/compare/v0.6.6...v0.6.7) - Improved performance with large Svelte, Liquid, and Angular files ([#&#8203;312](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/pull/312)) - Add support for `@plugin` and `@config` in v4 ([#&#8203;316](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/pull/316)) - Add support for Tailwind CSS v4.0.0-alpha.25 ([#&#8203;317](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/pull/317)) ### [`v0.6.6`](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/blob/HEAD/CHANGELOG.md#066---2024-08-09) [Compare Source](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/compare/v0.6.5...v0.6.6) - Add support for `prettier-plugin-multiline-arrays` ([#&#8203;299](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/pull/299)) - Add resolution cache for known plugins ([#&#8203;301](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/pull/301)) - Support Tailwind CSS `v4.0.0-alpha.19` ([#&#8203;310](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/pull/310)) ### [`v0.6.5`](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/blob/HEAD/CHANGELOG.md#065---2024-06-17) [Compare Source](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/compare/v0.6.4...v0.6.5) - Only re-apply string escaping when necessary ([#&#8203;295](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/pull/295)) ### [`v0.6.4`](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/blob/HEAD/CHANGELOG.md#064---2024-06-12) [Compare Source](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/compare/v0.6.3...v0.6.4) - Export `PluginOptions` type ([#&#8203;292](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/pull/292)) ### [`v0.6.3`](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/blob/HEAD/CHANGELOG.md#063---2024-06-11) [Compare Source](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/compare/v0.6.2...v0.6.3) - Improve detection of string concatenation ([#&#8203;288](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/pull/288)) ### [`v0.6.2`](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/blob/HEAD/CHANGELOG.md#062---2024-06-07) [Compare Source](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/compare/v0.6.1...v0.6.2) ##### Changed - Only remove duplicate Tailwind classes ([#&#8203;277](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/pull/277)) - Make sure escapes in classes are preserved in string literals ([#&#8203;286](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/pull/286)) ### [`v0.6.1`](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/blob/HEAD/CHANGELOG.md#0613---2025-06-19) [Compare Source](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/compare/v0.6.0...v0.6.1) - Prevent Svelte files from breaking when there are duplicate classes ([#&#8203;359](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/pull/359)) - Ensure `prettier-plugin-multiline-arrays` and `prettier-plugin-jsdoc` work when used together with this plugin ([#&#8203;372](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/pull/372)) ### [`v0.6.0`](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/blob/HEAD/CHANGELOG.md#060---2024-05-30) [Compare Source](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/compare/v0.5.14...v0.6.0) ##### Changed - Remove duplicate classes ([#&#8203;272](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/pull/272)) - Remove extra whitespace around classes ([#&#8203;272](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/pull/272)) ### [`v0.5.14`](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/blob/HEAD/CHANGELOG.md#0514---2024-04-15) [Compare Source](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/compare/v0.5.13...v0.5.14) ##### Fixed - Fix detection of v4 projects on Windows ([#&#8203;265](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/pull/265)) ### [`v0.5.13`](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/blob/HEAD/CHANGELOG.md#0513---2024-03-27) [Compare Source](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/compare/v0.5.12...v0.5.13) ##### Added - Add support for `@zackad/prettier-plugin-twig-melody` ([#&#8203;255](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/pull/255)) ### [`v0.5.12`](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/blob/HEAD/CHANGELOG.md#0512---2024-03-06) [Compare Source](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/compare/v0.5.11...v0.5.12) ##### Added - Add support for `prettier-plugin-sort-imports` ([#&#8203;241](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/pull/241)) - Add support for Tailwind CSS v4.0 ([#&#8203;249](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/pull/249)) ### [`v0.5.11`](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/blob/HEAD/CHANGELOG.md#0511---2024-01-05) [Compare Source](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/compare/v0.5.10...v0.5.11) ##### Changed - Bumped bundled version of Tailwind CSS to v3.4.1 ([#&#8203;240](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/pull/240)) ### [`v0.5.10`](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/blob/HEAD/CHANGELOG.md#0510---2023-12-28) [Compare Source](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/compare/v0.5.9...v0.5.10) ##### Changed - Bumped bundled version of Tailwind CSS to v3.4 ([#&#8203;235](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/pull/235)) ### [`v0.5.9`](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/blob/HEAD/CHANGELOG.md#059---2023-12-05) [Compare Source](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/compare/v0.5.8...v0.5.9) ##### Fixed - Fixed location of embedded preflight CSS file ([#&#8203;231](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/pull/231)) ### [`v0.5.8`](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/blob/HEAD/CHANGELOG.md#058---2023-12-05) [Compare Source](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/compare/v0.5.7...v0.5.8) ##### Added - Re-enable support for `prettier-plugin-marko` ([#&#8203;229](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/pull/229)) ### [`v0.5.7`](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/blob/HEAD/CHANGELOG.md#057---2023-11-08) [Compare Source](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/compare/v0.5.6...v0.5.7) ##### Fixed - Fix sorting inside dynamic custom attributes ([#&#8203;225](https://github.com/tailwindlabs/prettier-plugin-tailwindcss/pull/225)) </details> <details> <summary>sass/dart-sass (sass)</summary> ### [`v1.89.2`](https://github.com/sass/dart-sass/blob/HEAD/CHANGELOG.md#1892) [Compare Source](https://github.com/sass/dart-sass/compare/1.89.1...1.89.2) ##### Embedded Host - Fixed a compilation error caused by an outdated `buf` dependency. ### [`v1.89.1`](https://github.com/sass/dart-sass/blob/HEAD/CHANGELOG.md#1891) [Compare Source](https://github.com/sass/dart-sass/compare/1.89.0...1.89.1) - No user-visible changes. ### [`v1.89.0`](https://github.com/sass/dart-sass/blob/HEAD/CHANGELOG.md#1890) [Compare Source](https://github.com/sass/dart-sass/compare/1.88.0...1.89.0) - Allow the Node package importer to load files even when there are multiple potential resolutions, as long as those resolutions all point to the same file. ### [`v1.88.0`](https://github.com/sass/dart-sass/blob/HEAD/CHANGELOG.md#1880) [Compare Source](https://github.com/sass/dart-sass/compare/1.87.0...1.88.0) - Allow custom properties with empty values (such as `--var:;`). - Fix a bug when calculating source spans for interpolations. ##### Dart and JS APIs - **Potentially breaking bug fix:** Throw an error when passing a function or mixin object from one compilation to another. ##### Dart API - Deprecate passing a relative URL to `compileString()` and related functions. ### [`v1.87.0`](https://github.com/sass/dart-sass/blob/HEAD/CHANGELOG.md#1870) [Compare Source](https://github.com/sass/dart-sass/compare/1.86.3...1.87.0) - **Potentially breaking bug fix:** When a plain CSS file with a top-level nesting selector `&` is loaded into a nested Sass context via `meta.load-css()` or `@import`, Sass now emits plain CSS nesting rather than incorrectly combining it with the parent selector using a descendant combinator. ### [`v1.86.3`](https://github.com/sass/dart-sass/blob/HEAD/CHANGELOG.md#1863) [Compare Source](https://github.com/sass/dart-sass/compare/1.86.2...1.86.3) - Fix a bug introduced in 1.86.1 where Sass fails to resolve paths starting with a `..` segment. ### [`v1.86.2`](https://github.com/sass/dart-sass/blob/HEAD/CHANGELOG.md#1862) [Compare Source](https://github.com/sass/dart-sass/compare/1.86.1...1.86.2) - No user-visible changes. ### [`v1.86.1`](https://github.com/sass/dart-sass/blob/HEAD/CHANGELOG.md#1861) [Compare Source](https://github.com/sass/dart-sass/compare/1.86.0...1.86.1) - Improve the performance of `file:` URL case canonicalization on Windows and Mac OS. ### [`v1.86.0`](https://github.com/sass/dart-sass/blob/HEAD/CHANGELOG.md#1860) [Compare Source](https://github.com/sass/dart-sass/compare/1.85.1...1.86.0) - Add support for `%` as an expression in its own right. It will still be parsed as the modulo operator when between two other expressions, but in any other context it will be an expression whose value is the unquoted string `%`. - Consider `attr()` to be a special number function that can be used as a channel in color functions. - Deprecate user-defined functions named `type()` so that we can eventually support the new CSS `type()` function. ##### Dart API - Increase the minimum Dart SDK to 3.6.0. ### [`v1.85.1`](https://github.com/sass/dart-sass/blob/HEAD/CHANGELOG.md#1851) [Compare Source](https://github.com/sass/dart-sass/compare/1.85.0...1.85.1) - Fix a bug where global Sass functions whose names overlap with CSS math functions could incorrectly be treated as CSS math functions even though they used Sass-only features, causing compilation failures. For example, `round(-$var / 2)` previously threw an error but now works as intended. ### [`v1.85.0`](https://github.com/sass/dart-sass/blob/HEAD/CHANGELOG.md#1850) [Compare Source](https://github.com/sass/dart-sass/compare/1.84.0...1.85.0) - No longer fully trim redundant selectors generated by `@extend`. This caused unacceptable performance issues for certain heavy users of `@extend`. We'll try to find a more performant way to accomplish it in the future. ### [`v1.84.0`](https://github.com/sass/dart-sass/blob/HEAD/CHANGELOG.md#1840) [Compare Source](https://github.com/sass/dart-sass/compare/1.83.4...1.84.0) - Allow newlines in whitespace in the indented syntax. - **Potentially breaking bug fix**: Selectors with unmatched brackets now always produce a parser error. Previously, some edge cases like `[foo#{"]:is(bar"}) {a: b}` would compile without error, but this was an unintentional bug. - Fix a bug in which various Color Level 4 functions weren't allowed in plain CSS. - Fix the error message for `@extend` without a selector and possibly other parsing edge-cases in contexts that allow interpolation. ##### Embedded Host - Fixed the implementation of the `SassBoolean` type to adhere to the spec, now using a class instead of an interface. ### [`v1.83.4`](https://github.com/sass/dart-sass/blob/HEAD/CHANGELOG.md#1834) [Compare Source](https://github.com/sass/dart-sass/compare/1.83.3...1.83.4) - No user-visible changes. ### [`v1.83.3`](https://github.com/sass/dart-sass/blob/HEAD/CHANGELOG.md#1833) [Compare Source](https://github.com/sass/dart-sass/compare/1.83.2...1.83.3) - No user-visible changes. ### [`v1.83.2`](https://github.com/sass/dart-sass/blob/HEAD/CHANGELOG.md#1832) [Compare Source](https://github.com/sass/dart-sass/compare/1.83.1...1.83.2) - Properly display deprecation IDs for the JS Sass API. - Don't display deprecation IDs for user-defined deprecations. ### [`v1.83.1`](https://github.com/sass/dart-sass/blob/HEAD/CHANGELOG.md#1831) [Compare Source](https://github.com/sass/dart-sass/compare/1.83.0...1.83.1) - Fix a bug where `--quiet-deps` would get deactivated for `@content` blocks, even when those blocks were entirely contained within dependencies. - Include deprecation IDs in deprecation warnings to make it easier to determine what to pass to `--silence-deprecation` or `--fatal-deprecation`. ### [`v1.83.0`](https://github.com/sass/dart-sass/blob/HEAD/CHANGELOG.md#1830) [Compare Source](https://github.com/sass/dart-sass/compare/1.82.0...1.83.0) - Allow trailing commas in *all* argument and parameter lists. ### [`v1.82.0`](https://github.com/sass/dart-sass/blob/HEAD/CHANGELOG.md#1820) [Compare Source](https://github.com/sass/dart-sass/compare/1.81.1...1.82.0) ##### Command-Line Interface - Improve `--watch` mode reliability when making multiple changes at once, such as checking out a different Git branch. - Parse the `calc-size()` function as a calculation now that it's supported in some browsers. ##### Dart API - Add a `SassCalculation.calcSize()` function. ### [`v1.81.1`](https://github.com/sass/dart-sass/blob/HEAD/CHANGELOG.md#1811) [Compare Source](https://github.com/sass/dart-sass/compare/1.81.0...1.81.1) - No user-visible changes. ### [`v1.81.0`](https://github.com/sass/dart-sass/blob/HEAD/CHANGELOG.md#1810) [Compare Source](https://github.com/sass/dart-sass/compare/1.80.7...1.81.0) - Fix a few cases where deprecation warnings weren't being emitted for global built-in functions whose names overlap with CSS calculations. - Add support for the CSS `round()` calculation with a single argument, as long as that argument might be a unitless number. ### [`v1.80.7`](https://github.com/sass/dart-sass/blob/HEAD/CHANGELOG.md#1807) [Compare Source](https://github.com/sass/dart-sass/compare/1.80.6...1.80.7) ##### Embedded Host - Don't treat `0` as `undefined` for the `green` and `blue` channels in the `LegacyColor` constructor. ### [`v1.80.6`](https://github.com/sass/dart-sass/blob/HEAD/CHANGELOG.md#1806) [Compare Source](https://github.com/sass/dart-sass/compare/1.80.5...1.80.6) ##### Command-Line Interface - Make `@parcel/watcher` an optional dependency so this can still be installed on operating systems where it's unavailable. ### [`v1.80.5`](https://github.com/sass/dart-sass/blob/HEAD/CHANGELOG.md#1805) [Compare Source](https://github.com/sass/dart-sass/compare/1.80.4...1.80.5) ##### Embedded Host - Don't produce phantom `@import` deprecations when using an importer with the legacy API. ### [`v1.80.4`](https://github.com/sass/dart-sass/blob/HEAD/CHANGELOG.md#1804) [Compare Source](https://github.com/sass/dart-sass/compare/1.80.3...1.80.4) - No user-visible changes. ### [`v1.80.3`](https://github.com/sass/dart-sass/blob/HEAD/CHANGELOG.md#1803) [Compare Source](https://github.com/sass/dart-sass/compare/1.80.2...1.80.3) - Fix a bug where `@import url("...")` would crash in plain CSS files. - Improve consistency of how warnings are emitted by different parts of the compiler. This should result in minimal user-visible changes, but different types of warnings should now respond more reliably to flags like `--quiet`, `--verbose`, and `--silence-deprecation`. ### [`v1.80.2`](https://github.com/sass/dart-sass/blob/HEAD/CHANGELOG.md#1802) [Compare Source](https://github.com/sass/dart-sass/compare/1.80.1...1.80.2) - Fix a bug where deprecation warnings were incorrectly emitted for the plain-CSS `invert()` function. ### [`v1.80.1`](https://github.com/sass/dart-sass/blob/HEAD/CHANGELOG.md#1801) [Compare Source](https://github.com/sass/dart-sass/compare/1.80.0...1.80.1) - Fix a bug where repeated deprecation warnings were not automatically limited. ### [`v1.80.0`](https://github.com/sass/dart-sass/blob/HEAD/CHANGELOG.md#1800) [Compare Source](https://github.com/sass/dart-sass/compare/1.79.6...1.80.0) - `@import` is now officially deprecated, as are global built-in functions that are available within built-in modules. See [the Sass blog post] for more details on the deprecation process. [the Sass blog post]: https://sass-lang.com/blog/import-is-deprecated/ ##### Embedded Host - Fix an error that would sometimes occur when deprecation warnings were emitted when using a custom importer with the legacy API. ### [`v1.79.6`](https://github.com/sass/dart-sass/blob/HEAD/CHANGELOG.md#1796) [Compare Source](https://github.com/sass/dart-sass/compare/1.79.5...1.79.6) - Fix a bug where Sass would add an extra `*/` after loud comments with whitespace after an explicit `*/` in the indented syntax. - **Potentially breaking bug fix:** Adding text after an explicit `*/` in the indented syntax is now an error, rather than silently generating invalid CSS. ##### Embedded Host - Properly export the `SassBoolean` type. ### [`v1.79.5`](https://github.com/sass/dart-sass/blob/HEAD/CHANGELOG.md#1795) [Compare Source](https://github.com/sass/dart-sass/compare/1.79.4...1.79.5) - Changes to how `selector.unify()` and `@extend` combine selectors: - The relative order of pseudo-classes (like `:hover`) and pseudo-elements (like `::before`) within each original selector is now preserved when they're combined. - Pseudo selectors are now consistently placed at the end of the combined selector, regardless of which selector they came from. Previously, this reordering only applied to pseudo-selectors in the second selector. - Tweak the color transformation matrices for OKLab and OKLCH to match the newer, more accurate values in the CSS spec. - Fix a slight inaccuracy case when converting to `srgb-linear` and `display-p3`. - **Potentially breaking bug fix:** `math.unit()` now wraps multiple denominator units in parentheses. For example, `px/(em*em)` instead of `px/em*em`. ##### Command-Line Interface - Use `@parcel/watcher` to watch the filesystem when running from JavaScript and not using `--poll`. This should mitigate more frequent failures users have been seeing since version 4.0.0 of Chokidar, our previous watching tool, was released. ##### JS API - Fix `SassColor.interpolate()` to allow an undefined `options` parameter, as the types indicate. ##### Embedded Sass - Properly pass missing color channel values to and from custom functions. ### [`v1.79.4`](https://github.com/sass/dart-sass/blob/HEAD/CHANGELOG.md#1794) [Compare Source](https://github.com/sass/dart-sass/compare/1.79.3...1.79.4) ##### JS API - Fix a bug where passing `green` or `blue` to `color.change()` for legacy colors would fail. ### [`v1.79.3`](https://github.com/sass/dart-sass/blob/HEAD/CHANGELOG.md#1793) [Compare Source](https://github.com/sass/dart-sass/compare/1.79.2...1.79.3) - Update the `$channel` parameter in the suggested replacement for `color.red()`, `color.green()`, `color.blue()`, `color.hue()`, `color.saturation()`, `color.lightness()`, `color.whiteness()`, and `color.blackness()` to use a quoted string. ### [`v1.79.2`](https://github.com/sass/dart-sass/blob/HEAD/CHANGELOG.md#1792) [Compare Source](https://github.com/sass/dart-sass/compare/1.79.1...1.79.2) - Add a `$space` parameter to the suggested replacement for `color.red()`, `color.green()`, `color.blue()`, `color.hue()`, `color.saturation()`, `color.lightness()`, `color.whiteness()`, and `color.blackness()`. - Update deprecation warnings for the legacy JS API to include a link to [relevant documentation]. [relevant documentation]: https://sass-lang.com/d/legacy-js-api ### [`v1.79.1`](https://github.com/sass/dart-sass/blob/HEAD/CHANGELOG.md#1791) [Compare Source](https://github.com/sass/dart-sass/compare/1.79.0...1.79.1) - No user-visible changes. ### [`v1.79.0`](https://github.com/sass/dart-sass/blob/HEAD/CHANGELOG.md#1790) [Compare Source](https://github.com/sass/dart-sass/compare/1.78.0...1.79.0) - **Breaking change**: Passing a number with unit `%` to the `$alpha` parameter of `color.change()`, `color.adjust()`, `change-color()`, and `adjust-color()` is now interpreted as a percentage, instead of ignoring the unit. For example, `color.change(red, $alpha: 50%)` now returns `rgb(255 0 0 / 0.5)`. - **Potentially breaking compatibility fix**: Sass no longer rounds RGB channels to the nearest integer. This means that, for example, `rgb(0 0 1) != rgb(0 0 0.6)`. This matches the latest version of the CSS spec and browser behavior. - **Potentially breaking compatibility fix**: Passing large positive or negative values to `color.adjust()` can now cause a color's channels to go outside that color's gamut. In most cases this will currently be clipped by the browser and end up showing the same color as before, but once browsers implement gamut mapping it may produce a different result. - Add support for CSS Color Level 4 [color spaces]. Each color value now tracks its color space along with the values of each channel in that color space. There are two general principles to keep in mind when dealing with new color spaces: 1. With the exception of legacy color spaces (`rgb`, `hsl`, and `hwb`), colors will always be emitted in the color space they were defined in unless they're explicitly converted. 2. The `color.to-space()` function is the only way to convert a color to another color space. Some built-in functions may do operations in a different color space, but they'll always convert back to the original space afterwards. - `rgb` colors can now have non-integer channels and channels outside the normal gamut of 0-255. These colors are always emitted using the `rgb()` syntax so that modern browsers that are being displayed on wide-gamut devices can display the most accurate color possible. - Add support for all the new color syntax defined in Color Level 4, including: - `oklab()`, `oklch()`, `lab()`, and `lch()` functions; - a top-level `hwb()` function that matches the space-separated CSS syntax; - and a `color()` function that supports the `srgb`, `srgb-linear`, `display-p3`, `a98-rgb`, `prophoto-rgb`, `rec2020`, `xyz`, `xyz-d50`, and `xyz-d65` color spaces. - Add new functions for working with color spaces: - `color.to-space($color, $space)` converts `$color` to the given `$space`. In most cases this conversion is lossless—the color may end up out-of-gamut for the destination color space, but browsers will generally display it as best they can regardless. However, the `hsl` and `hwb` spaces can't represent out-of-gamut colors and so will be clamped. - `color.channel($color, $channel, $space: null)` returns the value of the given `$channel` in `$color`, after converting it to `$space` if necessary. It should be used instead of the old channel-specific functions such as `color.red()` and `color.hue()`. - `color.same($color1, $color2)` returns whether two colors represent the same color even across color spaces. It differs from `$color1 == $color2` because `==` never consider colors in different (non-legacy) spaces as equal. - `color.is-in-gamut($color, $space: null)` returns whether `$color` is in-gamut for its color space (or `$space` if it's passed). - `color.to-gamut($color, $space: null)` returns `$color` constrained to its space's gamut (or to `$space`'s gamut, if passed). This is generally not recommended since even older browsers will display out-of-gamut colors as best they can, but it may be necessary in some cases. - `color.space($color)`: Returns the name of `$color`'s color space. - `color.is-legacy($color)`: Returns whether `$color` is in a legacy color space (`rgb`, `hsl`, or `hwb`). - `color.is-powerless($color, $channel, $space: null)`: Returns whether the given `$channel` of `$color` is powerless in `$space` (or its own color space). A channel is "powerless" if its value doesn't affect the way the color is displayed, such as hue for a color with 0 chroma. - `color.is-missing($color, $channel)`: Returns whether `$channel`'s value is missing in `$color`. Missing channels can be explicitly specified using the special value `none` and can appear automatically when `color.to-space()` returns a color with a powerless channel. Missing channels are usually treated as 0, except when interpolating between two colors and in `color.mix()` where they're treated as the same value as the other color. - Update existing functions to support color spaces: - `hsl()` and `color.hwb()` no longer forbid out-of-bounds values. Instead, they follow the CSS spec by clamping them to within the allowed range. - `color.change()`, `color.adjust()`, and `color.scale()` now support all channels of all color spaces. However, if you want to modify a channel that's not in `$color`'s own color space, you have to explicitly specify the space with the `$space` parameter. (For backwards-compatibility, this doesn't apply to legacy channels of legacy colors—for example, you can still adjust an `rgb` color's saturation without passing `$space: hsl`). - `color.mix()` and `color.invert()` now support the standard CSS algorithm for interpolating between two colors (the same one that's used for gradients and animations). To use this, pass the color space to use for interpolation to the `$method` parameter. For polar color spaces like `hsl` and `oklch`, this parameter also allows you to specify how hue interpolation is handled. - `color.complement()` now supports a `$space` parameter that indicates which color space should be used to take the complement. - `color.grayscale()` now operates in the `oklch` space for non-legacy colors. - `color.ie-hex-str()` now automatically converts its color to the `rgb` space and gamut-maps it so that it can continue to take colors from any color space. [color spaces]: https://developer.mozilla.org/en-US/docs/Web/CSS/color_value - The following functions are now deprecated, and uses should be replaced with the new color-space-aware functions defined above: - The `color.red()`, `color.green()`, `color.blue()`, `color.hue()`, `color.saturation()`, `color.lightness()`, `color.whiteness()`, and `color.blackness()` functions, as well as their global counterparts, should be replaced with calls to `color.channel()`. - The global `adjust-hue()`, `saturate()`, `desaturate()`, `lighten()`, `darken()`, `transaprentize()`, `fade-out()`, `opacify()`, and `fade-in()` functions should be replaced by `color.adjust()` or `color.scale()`. - Add a `global-builtin` future deprecation, which can be opted-into with the `--future-deprecation` flag or the `futureDeprecations` option in the JS or Dart API. This emits warnings when any global built-in functions that are now available in `sass:` modules are called. It will become active by default in an upcoming release alongside the `@import` deprecation. ##### Dart API - Added a `ColorSpace` class which represents the various color spaces defined in the CSS spec. - Added `SassColor.space` which returns a color's color space. - Added `SassColor.channels` and `.channelsOrNull` which returns a list of channel values, with missing channels converted to 0 or exposed as null, respectively. - Added `SassColor.isLegacy`, `.isInGamut`, `.channel()`, `.isChannelMissing()`, `.isChannelPowerless()`, `.toSpace()`, `.toGamut()`, `.changeChannels()`, and `.interpolate()` which do the same thing as the Sass functions of the corresponding names. - `SassColor.rgb()` now allows out-of-bounds and non-integer arguments. - `SassColor.hsl()` and `.hwb()` now allow out-of-bounds arguments. - Added `SassColor.hwb()`, `.srgb()`, `.srgbLinear()`, `.displayP3()`, `.a98Rgb()`, `.prophotoRgb()`, `.rec2020()`, `.xyzD50()`, `.xyzD65()`, `.lab()`, `.lch()`, `.oklab()`, `.oklch()`, and `.forSpace()` constructors. - Deprecated `SassColor.red`, `.green`, `.blue`, `.hue`, `.saturation`, `.lightness`, `.whiteness`, and `.blackness` in favor of `SassColor.channel()`. - Deprecated `SassColor.changeRgb()`, `.changeHsl()`, and `.changeHwb()` in favor of `SassColor.changeChannels()`. - Added `SassNumber.convertValueToUnit()` as a shorthand for `SassNumber.convertValue()` with a single numerator. - Added `InterpolationMethod` and `HueInterpolationMethod` which collectively represent the method to use to interpolate two colors. ##### JS API - While the legacy API has been deprecated since we released the modern API, we now emit warnings when the legacy API is used to make sure users are aware that it will be removed in Dart Sass 2.0.0. In the meantime, you can silence these warnings by passing `legacy-js-api` in `silenceDeprecations` when using the legacy API. - Modify `SassColor` to accept a new `space` option, with support for all the new color spaces defined in Color Level 4. - Add `SassColor.space` which returns a color's color space. - Add `SassColor.channels` and `.channelsOrNull` which returns a list of channel values, with missing channels converted to 0 or exposed as null, respectively. - Add `SassColor.isLegacy`, `.isInGamut()`, `.channel()`, `.isChannelMissing()`, `.isChannelPowerless()`, `.toSpace()`, `.toGamut()`, `.change()`, and `.interpolate()` which do the same thing as the Sass functions of the corresponding names. - Deprecate `SassColor.red`, `.green`, `.blue`, `.hue`, `.saturation`, `.lightness`, `.whiteness`, and `.blackness` in favor of `SassColor.channel()`. ##### Embedded Sass - Add `Color` SassScript value, with support for all the new color spaces defined in Color Level 4. - Remove `RgbColor`, `HslColor` and `HwbColor` SassScript values. ### [`v1.78.0`](https://github.com/sass/dart-sass/blob/HEAD/CHANGELOG.md#1780) [Compare Source](https://github.com/sass/dart-sass/compare/1.77.8...1.78.0) - The `meta.feature-exists` function is now deprecated. This deprecation is named `feature-exists`. - Fix a crash when using `@at-root` without any queries or children in the indented syntax. ##### JS API - Backport the deprecation options (`fatalDeprecations`, `futureDeprecations`, and `silenceDeprecations`) to the legacy JS API. The legacy JS API is itself deprecated, and you should move off of it if possible, but this will allow users of bundlers and other tools that are still using the legacy API to still control deprecation warnings. - Fix a bug where accessing `SourceSpan.url` would crash when a relative URL was passed to the Sass API. ##### Embedded Sass - Explicitly expose a `sass` executable from the `sass-embedded` npm package. This was intended to be included in 1.63.0, but due to the way platform-specific dependency executables are installed it did not work as intended. Now users can run `npx sass` for local installs or just `sass` when `sass-embedded` is installed globally. - Add linux-riscv64, linux-musl-riscv64, and android-riscv64 support for the `sass-embedded` npm package. - Fix an edge case where the Dart VM could hang when shutting down when requests were in flight. - Fix a race condition where the embedded host could fail to shut down if it was closed around the same time a new compilation was started. - Fix a bug where parse-time deprecation warnings could not be controlled by the deprecation options in some circumstances. ### [`v1.77.8`](https://github.com/sass/dart-sass/blob/HEAD/CHANGELOG.md#1778) [Compare Source](https://github.com/sass/dart-sass/compare/1.77.7...1.77.8) - No user-visible changes. ### [`v1.77.7`](https://github.com/sass/dart-sass/blob/HEAD/CHANGELOG.md#1777) [Compare Source](https://github.com/sass/dart-sass/compare/1.77.6...1.77.7) - Declarations that appear after nested rules are deprecated, because the semantics Sass has historically used are different from the semantics specified by CSS. In the future, Sass will adopt the standard CSS semantics. See [the Sass website](https://sass-lang.com/d/mixed-decls) for details. - **Potentially breaking bug fix:** `//` in certain places such as unknown at-rule values was being preserved in the CSS output, leading to potentially invalid CSS. It's now properly parsed as a silent comment and omitted from the CSS output. ### [`v1.77.6`](https://github.com/sass/dart-sass/blob/HEAD/CHANGELOG.md#1776) [Compare Source](https://github.com/sass/dart-sass/compare/1.77.5...1.77.6) - Fix a few cases where comments and occasionally even whitespace wasn't allowed between the end of Sass statements and the following semicolon. ### [`v1.77.5`](https://github.com/sass/dart-sass/blob/HEAD/CHANGELOG.md#1775) [Compare Source](https://github.com/sass/dart-sass/compare/1.77.4...1.77.5) - Fully trim redundant selectors generated by `@extend`. ### [`v1.77.4`](https://github.com/sass/dart-sass/blob/HEAD/CHANGELOG.md#1774) [Compare Source](https://github.com/sass/dart-sass/compare/1.77.3...1.77.4) ##### Embedded Sass - Support passing `Version` input for `fatalDeprecations` as string over embedded protocol. - Fix a bug in the JS Embedded Host where `Version` could be incorrectly accepted as input for `silenceDeprecations` and `futureDeprecations` in pure JS. ### [`v1.77.3`](https://github.com/sass/dart-sass/blob/HEAD/CHANGELOG.md#1773) [Compare Source](https://github.com/sass/dart-sass/compare/1.77.2...1.77.3) ##### Dart API - `Deprecation.duplicateVariableFlags` has been deprecated and replaced with `Deprecation.duplicateVarFlags` to make it consistent with the `duplicate-var-flags` name used on the command line and in the JS API. ### [`v1.77.2`](https://github.com/sass/dart-sass/blob/HEAD/CHANGELOG.md#1772) [Compare Source](https://github.com/sass/dart-sass/compare/1.77.1...1.77.2) - Don't emit deprecation warnings for functions and mixins beginning with `__`. - Allow user-defined functions whose names begin with `_` and otherwise look like vendor-prefixed functions with special CSS syntax. ##### Command-Line Interface - Properly handle the `--silence-deprecation` flag. - Handle the `--fatal-deprecation` and `--future-deprecation` flags for `--interactive` mode. ### [`v1.77.1`](https://github.com/sass/dart-sass/blob/HEAD/CHANGELOG.md#1771) [Compare Source](https://github.com/sass/dart-sass/compare/1.77.0...1.77.1) - Fix a crash that could come up with importers in certain contexts. ### [`v1.77.0`](https://github.com/sass/dart-sass/blob/HEAD/CHANGELOG.md#1770) [Compare Source](https://github.com/sass/dart-sass/compare/1.76.0...1.77.0) - *Don't* throw errors for at-rules in keyframe blocks. ### [`v1.76.0`](https://github.com/sass/dart-sass/blob/HEAD/CHANGELOG.md#1760) [Compare Source](https://github.com/sass/dart-sass/compare/1.75.0...1.76.0) - Throw errors for misplaced statements in keyframe blocks. - Mixins and functions whose names begin with `--` are now deprecated for forwards-compatibility with the in-progress CSS functions and mixins spec. This deprecation is named `css-function-mixin`. ### [`v1.75.0`](https://github.com/sass/dart-sass/blob/HEAD/CHANGELOG.md#1750) [Compare Source](https://github.com/sass/dart-sass/compare/1.74.1...1.75.0) - Fix a bug in which stylesheet canonicalization could be cached incorrectly when custom importers or the Node.js package importer made decisions based on the URL of the containing stylesheet. ##### JS API - Allow `importer` to be passed without `url` in `StringOptionsWithImporter`. ### [`v1.74.1`](https://github.com/sass/dart-sass/blob/HEAD/CHANGELOG.md#1741) [Compare Source](https://github.com/sass/dart-sass/compare/1.72.0...1.74.1) - No user-visible changes. ### [`v1.72.0`](https://github.com/sass/dart-sass/blob/HEAD/CHANGELOG.md#1720) [Compare Source](https://github.com/sass/dart-sass/compare/1.71.1...1.72.0) - Support adjacent `/`s without whitespace in between when parsing plain CSS expressions. - Allow the Node.js `pkg:` importer to load Sass stylesheets for `package.json` `exports` field entries without extensions. - When printing suggestions for variables, use underscores in variable names when the original usage used underscores. ##### JavaScript API - Properly resolve `pkg:` imports with the Node.js package importer when arguments are passed to the JavaScript process. ### [`v1.71.1`](https://github.com/sass/dart-sass/blob/HEAD/CHANGELOG.md#1711) [Compare Source](https://github.com/sass/dart-sass/compare/1.71.0...1.71.1) ##### Command-Line Interface - Ship the musl Linux release with the proper Dart executable. ##### JavaScript API - Export the `NodePackageImporter` class in ESM mode. - Allow `NodePackageImporter` to locate a default directory even when the entrypoint is an ESM module. ##### Dart API - Make passing a null argument to `NodePackageImporter()` a static error rather than just a runtime error. ##### Embedded Sass - In the JS Embedded Host, properly install the musl Linux embedded compiler when running on musl Linux. ### [`v1.71.0`](https://github.com/sass/dart-sass/blob/HEAD/CHANGELOG.md#1710) [Compare Source](https://github.com/sass/dart-sass/compare/1.70.0...1.71.0) For more information about `pkg:` importers, see [the announcement][pkg-importers] on the Sass blog. [pkg-importers]: https://sass-lang.com/blog/announcing-pkg-importers ##### Command-Line Interface - Add a `--pkg-importer` flag to enable built-in `pkg:` importers. Currently this only supports the Node.js package resolution algorithm, via `--pkg-importer=node`. For example, `@use "pkg:bootstrap"` will load `node_modules/bootstrap/scss/bootstrap.scss`. ##### JavaScript API - Add a `NodePackageImporter` importer that can be passed to the `importers` option. This loads files using the `pkg:` URL scheme according to the Node.js package resolution algorithm. For example, `@use "pkg:bootstrap"` will load `node_modules/bootstrap/scss/bootstrap.scss`. The constructor takes a single optional argument, which indicates the base directory to use when locating `node_modules` directories. It defaults to `path.dirname(require.main.filename)`. ##### Dart API - Add a `NodePackageImporter` importer that can be passed to the `importers` option. This loads files using the `pkg:` URL scheme according to the Node.js package resolution algorithm. For example, `@use "pkg:bootstrap"` will load `node_modules/bootstrap/scss/bootstrap.scss`. The constructor takes a single argument, which indicates the base directory to use when locating `node_modules` directories. ### [`v1.70.0`](https://github.com/sass/dart-sass/blob/HEAD/CHANGELOG.md#1700) [Compare Source](https://github.com/sass/dart-sass/compare/1.69.7...1.70.0) ##### JavaScript API - Add a `sass.initCompiler()` function that returns a `sass.Compiler` object which supports `compile()` and `compileString()` methods with the same API as the global Sass object. On the Node.js embedded host, each `sass.Compiler` object uses a single long-lived subprocess, making compiling multiple stylesheets much more efficient. - Add a `sass.initAsyncCompiler()` function that returns a `sass.AsyncCompiler` object which supports `compileAsync()` and `compileStringAsync()` methods with the same API as the global Sass object. On the Node.js embedded host, each `sass.AsynCompiler` object uses a single long-lived subprocess, making compiling multiple stylesheets much more efficient. ##### Embedded Sass - Support the `CompileRequest.silent` field. This allows compilations with no logging to avoid unnecessary request/response cycles. - The Dart Sass embedded compiler now reports its name as "dart-sass" rather than "Dart Sass", to match the JS API's `info` field. ### [`v1.69.7`](https://github.com/sass/dart-sass/blob/HEAD/CHANGELOG.md#1697) [Compare Source](https://github.com/sass/dart-sass/compare/1.69.6...1.69.7) ##### Embedded Sass - In the JS Embedded Host, properly install the x64 Dart Sass executable on ARM64 Windows. ### [`v1.69.6`](https://github.com/sass/dart-sass/blob/HEAD/CHANGELOG.md#1696) [Compare Source](https://github.com/sass/dart-sass/compare/1.69.5...1.69.6) - Produce better output for numbers with complex units in `meta.inspect()` and debugging messages. - Escape U+007F DELETE when serializing strings. - When generating CSS error messages to display in-browser, escape all code points that aren't in the US-ASCII region. Previously only code points U+0100 LATIN CAPITAL LETTER A WITH MACRON were escaped. - Provide official releases for musl LibC and for Android. - Don't crash when running `meta.apply()` in asynchronous mode. ##### JS API - Fix a bug where certain exceptions could produce `SourceSpan`s that didn't follow the documented `SourceSpan` API. ### [`v1.69.5`](https://github.com/sass/dart-sass/blob/HEAD/CHANGELOG.md#1695) [Compare Source](https://github.com/sass/dart-sass/compare/1.69.4...1.69.5) ##### JS API - Compatibility with Node.js 21.0.0. </details> <details> <summary>microsoft/TypeScript (typescript)</summary> ### [`v5.8.3`](https://github.com/microsoft/TypeScript/releases/tag/v5.8.3): TypeScript 5.8.3 [Compare Source](https://github.com/microsoft/TypeScript/compare/v5.8.2...v5.8.3) For release notes, check out the [release announcement](https://devblogs.microsoft.com/typescript/announcing-typescript-5-8/). - [fixed issues query for Typescript 5.8.0 (Beta)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.8.0%22+is%3Aclosed+). - [fixed issues query for Typescript 5.8.1 (RC)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.8.1%22+is%3Aclosed+). - [fixed issues query for Typescript 5.8.2 (Stable)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.8.2%22+is%3Aclosed+). - [fixed issues query for Typescript 5.8.3 (Stable)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.8.3%22+is%3Aclosed+). Downloads are available on: - [npm](https://www.npmjs.com/package/typescript) ### [`v5.8.2`](https://github.com/microsoft/TypeScript/releases/tag/v5.8.2): TypeScript 5.8 [Compare Source](https://github.com/microsoft/TypeScript/compare/v5.7.3...v5.8.2) For release notes, check out the [release announcement](https://devblogs.microsoft.com/typescript/announcing-typescript-5-8/). - [fixed issues query for Typescript 5.8.0 (Beta)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.8.0%22+is%3Aclosed+). - [fixed issues query for Typescript 5.8.1 (RC)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.8.1%22+is%3Aclosed+). - [fixed issues query for Typescript 5.8.2 (Stable)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.8.2%22+is%3Aclosed+). Downloads are available on: - [npm](https://www.npmjs.com/package/typescript) ### [`v5.7.3`](https://github.com/microsoft/TypeScript/releases/tag/v5.7.3): TypeScript 5.7.3 [Compare Source](https://github.com/microsoft/TypeScript/compare/v5.7.2...v5.7.3) For release notes, check out the [release announcement](https://devblogs.microsoft.com/typescript/announcing-typescript-5-7/). - [fixed issues query for Typescript 5.7.0 (Beta)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.7.0%22+is%3Aclosed+). - [fixed issues query for Typescript 5.7.1 (RC)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.7.1%22+is%3Aclosed+). - [fixed issues query for Typescript 5.7.2 (Stable)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.7.2%22+is%3Aclosed+). - [fixed issues query for Typescript 5.7.3 (Stable)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.7.2%22+is%3Aclosed+). Downloads are available on [npm](https://www.npmjs.com/package/typescript) ### [`v5.7.2`](https://github.com/microsoft/TypeScript/releases/tag/v5.7.2): TypeScript 5.7 [Compare Source](https://github.com/microsoft/TypeScript/compare/v5.6.3...v5.7.2) For release notes, check out the [release announcement](https://devblogs.microsoft.com/typescript/announcing-typescript-5-7/). - [fixed issues query for Typescript 5.7.0 (Beta)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.7.0%22+is%3Aclosed+). - [fixed issues query for Typescript 5.7.1 (RC)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.7.1%22+is%3Aclosed+). - [fixed issues query for Typescript 5.7.2 (Stable)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.7.2%22+is%3Aclosed+). Downloads are available on: - [npm](https://www.npmjs.com/package/typescript) ### [`v5.6.3`](https://github.com/microsoft/TypeScript/releases/tag/v5.6.3): TypeScript 5.6.3 [Compare Source](https://github.com/microsoft/TypeScript/compare/v5.6.2...v5.6.3) For release notes, check out the [release announcement](https://devblogs.microsoft.com/typescript/announcing-typescript-5-6/). For the complete list of fixed issues, check out the - [fixed issues query for Typescript 5.6.0 (Beta)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.6.0%22+is%3Aclosed+). - [fixed issues query for Typescript 5.6.1 (RC)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.6.1%22+is%3Aclosed+). - [fixed issues query for Typescript 5.6.2 (Stable)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.6.2%22+is%3Aclosed+). - [fixed issues query for Typescript 5.6.3 (Stable)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.6.3%22+is%3Aclosed+). Downloads are available on: - [npm](https://www.npmjs.com/package/typescript) - [NuGet package](https://www.nuget.org/packages/Microsoft.TypeScript.MSBuild) ### [`v5.6.2`](https://github.com/microsoft/TypeScript/releases/tag/v5.6.2): TypeScript 5.6 [Compare Source](https://github.com/microsoft/TypeScript/compare/v5.5.4...v5.6.2) For release notes, check out the [release announcement](https://devblogs.microsoft.com/typescript/announcing-typescript-5-6/). For the complete list of fixed issues, check out the - [fixed issues query for Typescript 5.6.0 (Beta)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.6.0%22+is%3Aclosed+). - [fixed issues query for Typescript 5.6.1 (RC)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.6.1%22+is%3Aclosed+). - [fixed issues query for Typescript 5.6.2 (Stable)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.6.2%22+is%3Aclosed+). Downloads are available on: - [npm](https://www.npmjs.com/package/typescript) - [NuGet package](https://www.nuget.org/packages/Microsoft.TypeScript.MSBuild) ### [`v5.5.4`](https://github.com/microsoft/TypeScript/releases/tag/v5.5.4): TypeScript 5.5.4 [Compare Source](https://github.com/microsoft/TypeScript/compare/v5.5.3...v5.5.4) For release notes, check out the [release announcement](https://devblogs.microsoft.com/typescript/announcing-typescript-5-5/). For the complete list of fixed issues, check out the - [fixed issues query for TypeScript v5.5.4 (Stable)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=is%3Aissue+milestone%3A%22TypeScript+5.5.4%22+is%3Aclosed+). - [fixed issues query for TypeScript v5.5.3 (Stable)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=is%3Aissue+milestone%3A%22TypeScript+5.5.3%22+is%3Aclosed+). - [fixed issues query for TypeScript v5.5.2 (Stable)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=is%3Aissue+milestone%3A%22TypeScript+5.5.2%22+is%3Aclosed+). - [fixed issues query for TypeScript v5.5.1 (RC)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=is%3Aissue+milestone%3A%22TypeScript+5.5.1%22+is%3Aclosed+). - [fixed issues query for TypeScript v5.5.0 (Beta)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=is%3Aissue+milestone%3A%22TypeScript+5.5.0%22+is%3Aclosed+). Downloads are available on: - [npm](https://www.npmjs.com/package/typescript) - [NuGet package](https://www.nuget.org/packages/Microsoft.TypeScript.MSBuild) (soon!) ### [`v5.5.3`](https://github.com/microsoft/TypeScript/releases/tag/v5.5.3): TypeScript 5.5.3 [Compare Source](https://github.com/microsoft/TypeScript/compare/v5.5.2...v5.5.3) For release notes, check out the [release announcement](https://devblogs.microsoft.com/typescript/announcing-typescript-5-5/). For the complete list of fixed issues, check out the - [fixed issues query for TypeScript v5.5.3 (Stable)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=is%3Aissue+milestone%3A%22TypeScript+5.5.3%22+is%3Aclosed+). - [fixed issues query for TypeScript v5.5.2 (Stable)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=is%3Aissue+milestone%3A%22TypeScript+5.5.2%22+is%3Aclosed+). - [fixed issues query for TypeScript v5.5.1 (RC)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=is%3Aissue+milestone%3A%22TypeScript+5.5.1%22+is%3Aclosed+). - [fixed issues query for TypeScript v5.5.0 (Beta)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=is%3Aissue+milestone%3A%22TypeScript+5.5.0%22+is%3Aclosed+). Downloads are available on: - [npm](https://www.npmjs.com/package/typescript) - [NuGet package](https://www.nuget.org/packages/Microsoft.TypeScript.MSBuild) ### [`v5.5.2`](https://github.com/microsoft/TypeScript/releases/tag/v5.5.2): TypeScript 5.5 [Compare Source](https://github.com/microsoft/TypeScript/compare/v5.4.5...v5.5.2) For release notes, check out the [release announcement](https://devblogs.microsoft.com/typescript/announcing-typescript-5-5/). For the complete list of fixed issues, check out the - [fixed issues query for TypeScript v5.5.2 (Stable)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=is%3Aissue+milestone%3A%22TypeScript+5.5.2%22+is%3Aclosed+). - [fixed issues query for TypeScript v5.5.1 (RC)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=is%3Aissue+milestone%3A%22TypeScript+5.5.1%22+is%3Aclosed+). - [fixed issues query for TypeScript v5.5.0 (Beta)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=is%3Aissue+milestone%3A%22TypeScript+5.5.0%22+is%3Aclosed+). Downloads are available on: - [npm](https://www.npmjs.com/package/typescript) ### [`v5.4.5`](https://github.com/microsoft/TypeScript/releases/tag/v5.4.5): TypeScript 5.4.5 [Compare Source](https://github.com/microsoft/TypeScript/compare/v5.4.4...v5.4.5) For release notes, check out the [release announcement](https://devblogs.microsoft.com/typescript/announcing-typescript-5-4/). For the complete list of fixed issues, check out the - [fixed issues query for Typescript 5.4.0 (Beta)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.4.0%22+is%3Aclosed+). - [fixed issues query for Typescript 5.4.1 (RC)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.4.1%22+is%3Aclosed+). - [fixed issues query for Typescript 5.4.2 (Stable)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.4.2%22+is%3Aclosed+). - [fixed issues query for Typescript 5.4.3 (Stable)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.4.3%22+is%3Aclosed+). - [fixed issues query for Typescript 5.4.4 (Stable)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.4.4%22+is%3Aclosed+). - [fixed issues query for Typescript 5.4.5 (Stable)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.4.5%22+is%3Aclosed+). Downloads are available on: - [NuGet package](https://www.nuget.org/packages/Microsoft.TypeScript.MSBuild) ### [`v5.4.4`](https://github.com/microsoft/TypeScript/releases/tag/v5.4.4): TypeScript 5.4.4 [Compare Source](https://github.com/microsoft/TypeScript/compare/v5.4.3...v5.4.4) For release notes, check out the [release announcement](https://devblogs.microsoft.com/typescript/announcing-typescript-5-4/). For the complete list of fixed issues, check out the - [fixed issues query for Typescript 5.4.0 (Beta)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.4.0%22+is%3Aclosed+). - [fixed issues query for Typescript 5.4.1 (RC)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.4.1%22+is%3Aclosed+). - [fixed issues query for Typescript 5.4.2 (Stable)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.4.2%22+is%3Aclosed+). - [fixed issues query for Typescript 5.4.3 (Stable)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.4.3%22+is%3Aclosed+). - [fixed issues query for Typescript 5.4.4 (Stable)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.4.4%22+is%3Aclosed+). Downloads are available on: - [NuGet package](https://www.nuget.org/packages/Microsoft.TypeScript.MSBuild) ### [`v5.4.3`](https://github.com/microsoft/TypeScript/releases/tag/v5.4.3): TypeScript 5.4.3 [Compare Source](https://github.com/microsoft/TypeScript/compare/v5.4.2...v5.4.3) For release notes, check out the [release announcement](https://devblogs.microsoft.com/typescript/announcing-typescript-5-4/). For the complete list of fixed issues, check out the - [fixed issues query for Typescript 5.4.0 (Beta)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.4.0%22+is%3Aclosed+). - [fixed issues query for Typescript 5.4.1 (RC)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.4.1%22+is%3Aclosed+). - [fixed issues query for Typescript 5.4.2 (Stable)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.4.2%22+is%3Aclosed+). - [fixed issues query for Typescript 5.4.3 (Stable)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.4.3%22+is%3Aclosed+). Downloads are available on: - [NuGet package](https://www.nuget.org/packages/Microsoft.TypeScript.MSBuild) ### [`v5.4.2`](https://github.com/microsoft/TypeScript/releases/tag/v5.4.2): TypeScript 5.4 [Compare Source](https://github.com/microsoft/TypeScript/compare/v5.3.3...v5.4.2) For release notes, check out the [release announcement](https://devblogs.microsoft.com/typescript/announcing-typescript-5-4/). For the complete list of fixed issues, check out the - [fixed issues query for Typescript 5.4.0 (Beta)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.4.0%22+is%3Aclosed+). - [fixed issues query for Typescript 5.4.1 (RC)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.4.1%22+is%3Aclosed+). - [fixed issues query for Typescript 5.4.2 (Stable)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.4.2%22+is%3Aclosed+). Downloads are available on: - [NuGet package](https://www.nuget.org/packages/Microsoft.TypeScript.MSBuild) ### [`v5.3.3`](https://github.com/microsoft/TypeScript/releases/tag/v5.3.3): TypeScript 5.3.3 [Compare Source](https://github.com/microsoft/TypeScript/compare/v5.3.2...v5.3.3) For release notes, check out the [release announcement](https://devblogs.microsoft.com/typescript/announcing-typescript-5-3/). For the complete list of fixed issues, check out the - [fixed issues query for Typescript 5.3.0 (Beta)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.3.0%22+is%3Aclosed+). - [fixed issues query for Typescript 5.3.1 (RC)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.3.1%22+is%3Aclosed+). - [fixed issues query for Typescript 5.3.2 (Stable)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.3.2%22+is%3Aclosed+). - [fixed issues query for Typescript 5.3.3 (Stable)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.3.3%22+is%3Aclosed+). Downloads are available on: - [NuGet package](https://www.nuget.org/packages/Microsoft.TypeScript.MSBuild) ### [`v5.3.2`](https://github.com/microsoft/TypeScript/releases/tag/v5.3.2): TypeScript 5.3 [Compare Source](https://github.com/microsoft/TypeScript/compare/v5.2.2...v5.3.2) For release notes, check out the [release announcement](https://devblogs.microsoft.com/typescript/announcing-typescript-5-3/). For the complete list of fixed issues, check out the - [fixed issues query for Typescript 5.3.0 (Beta)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.3.0%22+is%3Aclosed+). - [fixed issues query for Typescript 5.3.1 (RC)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.3.1%22+is%3Aclosed+). - [fixed issues query for Typescript 5.3.2 (Stable)](https://github.com/Microsoft/TypeScript/issues?utf8=%E2%9C%93\&q=milestone%3A%22TypeScript+5.3.2%22+is%3Aclosed+). Downloads are available on: - [NuGet package](https://www.nuget.org/packages/Microsoft.TypeScript.MSBuild) </details> <details> <summary>uuidjs/uuid (uuid)</summary> ### [`v11.1.0`](https://github.com/uuidjs/uuid/blob/HEAD/CHANGELOG.md#1110-2025-02-19) [Compare Source](https://github.com/uuidjs/uuid/compare/v11.0.5...v11.1.0) ##### Features - update TS types to allow`Uint8Array` subtypes for `buffer` option ([#&#8203;865](https://github.com/uuidjs/uuid/issues/865)) ([a5231e7](https://github.com/uuidjs/uuid/commit/a5231e7e1b98c20b23c35402a232167f476b39a2)) ### [`v11.0.5`](https://github.com/uuidjs/uuid/blob/HEAD/CHANGELOG.md#1105-2025-01-09) [Compare Source](https://github.com/uuidjs/uuid/compare/v11.0.4...v11.0.5) ##### Bug Fixes - add TS unit test, pin to typescript@5.0.4 ([#&#8203;860](https://github.com/uuidjs/uuid/issues/860)) ([24ac2fd](https://github.com/uuidjs/uuid/commit/24ac2fd067e5bab97a5ccea3f6f365a64c01d140)) ### [`v11.0.4`](https://github.com/uuidjs/uuid/blob/HEAD/CHANGELOG.md#1104-2025-01-05) [Compare Source](https://github.com/uuidjs/uuid/compare/v11.0.3...v11.0.4) ##### Bug Fixes - **docs:** insure -> ensure ([#&#8203;843](https://github.com/uuidjs/uuid/issues/843)) ([d2a61e1](https://github.com/uuidjs/uuid/commit/d2a61e154d861e58549466e753bb9e4d5bfffb68)) - exclude tests from published package ([#&#8203;840](https://github.com/uuidjs/uuid/issues/840)) ([f992ff4](https://github.com/uuidjs/uuid/commit/f992ff4780937089b0134195fa22e76e2e1cb3a7)) - Test for invalid byte array sizes and ranges in `v1()`, `v4()`, and `v7()` ([#&#8203;845](https://github.com/uuidjs/uuid/issues/845)) ([e0ee900](https://github.com/uuidjs/uuid/commit/e0ee90051ebd13475bbcff4d371330aa4f9bd1dd)) ### [`v11.0.3`](https://github.com/uuidjs/uuid/blob/HEAD/CHANGELOG.md#1103-2024-11-04) [Compare Source](https://github.com/uuidjs/uuid/compare/v11.0.2...v11.0.3) ##### Bug Fixes - apply stricter typing to the v\* signatures ([#&#8203;831](https://github.com/uuidjs/uuid/issues/831)) ([c2d3fed](https://github.com/uuidjs/uuid/commit/c2d3fed22cfd47c22c8f22f6154abb5060648ce5)) - export internal uuid types ([#&#8203;833](https://github.com/uuidjs/uuid/issues/833)) ([341edf4](https://github.com/uuidjs/uuid/commit/341edf444ced63708ba336285dbec29443523939)) - remove sourcemaps ([#&#8203;827](https://github.com/uuidjs/uuid/issues/827)) ([b93ea10](https://github.com/uuidjs/uuid/commit/b93ea101af7382053032d4fb61cc85599d6c7216)) - revert "simplify type for v3 and v5" ([#&#8203;835](https://github.com/uuidjs/uuid/issues/835)) ([e2dee69](https://github.com/uuidjs/uuid/commit/e2dee691e95aba854a892d2507d8cd9f009bf61d)) ### [`v11.0.2`](https://github.com/uuidjs/uuid/blob/HEAD/CHANGELOG.md#1102-2024-10-28) [Compare Source](https://github.com/uuidjs/uuid/compare/v11.0.1...v11.0.2) ##### Bug Fixes - remove wrapper.mjs ([#&#8203;822](https://github.com/uuidjs/uuid/issues/822)) ([6683ad3](https://github.com/uuidjs/uuid/commit/6683ad38b048375b451eac1194960f24ba20e0ca)) ### [`v11.0.1`](https://github.com/uuidjs/uuid/blob/HEAD/CHANGELOG.md#1101-2024-10-27) [Compare Source](https://github.com/uuidjs/uuid/compare/v11.0.0...v11.0.1) ##### Bug Fixes - restore package.json#browser field ([#&#8203;817](https://github.com/uuidjs/uuid/issues/817)) ([ae8f386](https://github.com/uuidjs/uuid/commit/ae8f38657bca0ee053bf29c88c006b1ea05af1b5)) ### [`v11.0.0`](https://github.com/uuidjs/uuid/blob/HEAD/CHANGELOG.md#1100-2024-10-26) [Compare Source](https://github.com/uuidjs/uuid/compare/v10.0.0...v11.0.0) ##### ⚠ BREAKING CHANGES - refactor v1 internal state and options logic ([#&#8203;780](https://github.com/uuidjs/uuid/issues/780)) - refactor v7 internal state and options logic, fixes [#&#8203;764](https://github.com/uuidjs/uuid/issues/764) ([#&#8203;779](https://github.com/uuidjs/uuid/issues/779)) - Port to TypeScript, closes [#&#8203;762](https://github.com/uuidjs/uuid/issues/762) ([#&#8203;763](https://github.com/uuidjs/uuid/issues/763)) - update node support matrix (only support node 16-20) ([#&#8203;750](https://github.com/uuidjs/uuid/issues/750)) ##### Features - Port to TypeScript, closes [#&#8203;762](https://github.com/uuidjs/uuid/issues/762) ([#&#8203;763](https://github.com/uuidjs/uuid/issues/763)) ([1e0f987](https://github.com/uuidjs/uuid/commit/1e0f9870db864ca93f7a69db0d468b5e1b7605e7)) - update node support matrix (only support node 16-20) ([#&#8203;750](https://github.com/uuidjs/uuid/issues/750)) ([883b163](https://github.com/uuidjs/uuid/commit/883b163b9ab9d6655bfbd8a35e61a3c71674dfe1)) ##### Bug Fixes - missing v7 expectations in browser spec ([#&#8203;751](https://github.com/uuidjs/uuid/issues/751)) ([f54a866](https://github.com/uuidjs/uuid/commit/f54a866cedb2b3b96581157c1f4ac935a0b11411)) - refactor v1 internal state and options logic ([#&#8203;780](https://github.com/uuidjs/uuid/issues/780)) ([031b3d3](https://github.com/uuidjs/uuid/commit/031b3d3d738bc6694501ac0a37152b95ed500989)) - refactor v7 internal state and options logic, fixes [#&#8203;764](https://github.com/uuidjs/uuid/issues/764) ([#&#8203;779](https://github.com/uuidjs/uuid/issues/779)) ([9dbd1cd](https://github.com/uuidjs/uuid/commit/9dbd1cd4177c43fcaac961a3b16fb2d044c9940a)) - remove v4 options default assignment preventing native.randomUUID from being used ([#&#8203;786](https://github.com/uuidjs/uuid/issues/786)) ([afe6232](https://github.com/uuidjs/uuid/commit/afe62323c4408a824755a39d7b971a8ae06f7199)), closes [#&#8203;763](https://github.com/uuidjs/uuid/issues/763) - seq_hi shift for byte 6 ([#&#8203;775](https://github.com/uuidjs/uuid/issues/775)) ([1d532ca](https://github.com/uuidjs/uuid/commit/1d532ca374f181932a24a83fa98f71a5bd4f3e96)) - tsconfig module type ([#&#8203;778](https://github.com/uuidjs/uuid/issues/778)) ([7eff835](https://github.com/uuidjs/uuid/commit/7eff835cba334ad418f57768c00d15b918a9b419)) ### [`v10.0.0`](https://github.com/uuidjs/uuid/blob/HEAD/CHANGELOG.md#1000-2024-06-07) [Compare Source](https://github.com/uuidjs/uuid/compare/v9.0.1...v10.0.0) ##### ⚠ BREAKING CHANGES - update node support (drop node@12, node@14, add node@20) ([#&#8203;750](https://github.com/uuidjs/uuid/issues/750)) ##### Features - support support rfc9562 MAX uuid (new in RFC9562) ([#&#8203;714](https://github.com/uuidjs/uuid/issues/714)) ([0385cd3](https://github.com/uuidjs/uuid/commit/0385cd3f18ae9920678b2849932fa7a9d9aee7d0)) - support rfc9562 v6 uuids ([#&#8203;754](https://github.com/uuidjs/uuid/issues/754)) ([c4ed13e](https://github.com/uuidjs/uuid/commit/c4ed13e7159d87c9e42a349bdd9dc955f1af46b6)) - support rfc9562 v7 uuids ([#&#8203;681](https://github.com/uuidjs/uuid/issues/681)) ([db76a12](https://github.com/uuidjs/uuid/commit/db76a1284760c441438f50a57924b322dae08891)) - update node support matrix (only support node 16-20) ([#&#8203;750](https://github.com/uuidjs/uuid/issues/750)) ([883b163](https://github.com/uuidjs/uuid/commit/883b163b9ab9d6655bfbd8a35e61a3c71674dfe1)) - support rfc9562 v8 uuids ([#&#8203;759](https://github.com/uuidjs/uuid/issues/759)) ([35a5342](https://github.com/uuidjs/uuid/commit/35a53428202657e402e6b4aa68f56c08194541bf)) ##### Bug Fixes - revert "perf: remove superfluous call to toLowerCase ([#&#8203;677](https://github.com/uuidjs/uuid/issues/677))" ([#&#8203;738](https://github.com/uuidjs/uuid/issues/738)) ([e267b90](https://github.com/uuidjs/uuid/commit/e267b9073df1d0ce119ee53c0487fe76acb2be37)) </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Enabled. ♻ **Rebasing**: Whenever PR is behind base branch, or you tick the rebase/retry checkbox. 👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://github.com/renovatebot/renovate/discussions) if that's undesired. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNC4xNjAuMCIsInVwZGF0ZWRJblZlciI6IjM5LjI2NC4wIiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9-->
kjuulh force-pushed renovate/all from 44d8cedcc6 to b37a4c314d 2023-10-24 02:34:50 +02:00 Compare
kjuulh changed title from Update Node.js to v21 to Update all dependencies 2023-10-24 02:34:52 +02:00
Author
Owner

⚠ 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
 WARN  The "store" setting has been renamed to "store-dir". Please use the new name.
 WARN  GET https://registry.npmjs.org/next error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.
 WARN  GET https://registry.npmjs.org/@types/react/-/react-18.2.31.tgz error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.
 WARN  GET https://registry.npmjs.org/react/-/react-18.2.0.tgz error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.
 WARN  GET https://registry.npmjs.org/react-dom/-/react-dom-18.2.0.tgz error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.
 WARN  GET https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.
 WARN  GET https://registry.npmjs.org/@types%2Fnode error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.
 WARN  GET https://registry.npmjs.org/@types%2Fuuid error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.
 WARN  GET https://registry.npmjs.org/autoprefixer error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.
 WARN  GET https://registry.npmjs.org/postcss error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.
 WARN  GET https://registry.npmjs.org/prettier error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.
 WARN  GET https://registry.npmjs.org/prettier-plugin-tailwindcss error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.
 WARN  GET https://registry.npmjs.org/sass error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.
 WARN  GET https://registry.npmjs.org/tailwindcss error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.
 WARN  GET https://registry.npmjs.org/typescript error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.
 WARN  GET https://registry.npmjs.org/next error (ERR_INVALID_THIS). Will retry in 1 minute. 1 retries left.
 WARN  GET https://registry.npmjs.org/@types/react/-/react-18.2.31.tgz error (ERR_INVALID_THIS). Will retry in 1 minute. 1 retries left.
 WARN  GET https://registry.npmjs.org/react/-/react-18.2.0.tgz error (ERR_INVALID_THIS). Will retry in 1 minute. 1 retries left.
 WARN  GET https://registry.npmjs.org/react-dom/-/react-dom-18.2.0.tgz error (ERR_INVALID_THIS). Will retry in 1 minute. 1 retries left.
 WARN  GET https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz error (ERR_INVALID_THIS). Will retry in 1 minute. 1 retries left.
 WARN  GET https://registry.npmjs.org/@types%2Fnode error (ERR_INVALID_THIS). Will retry in 1 minute. 1 retries left.
 WARN  GET https://registry.npmjs.org/@types%2Fuuid error (ERR_INVALID_THIS). Will retry in 1 minute. 1 retries left.
 WARN  GET https://registry.npmjs.org/autoprefixer error (ERR_INVALID_THIS). Will retry in 1 minute. 1 retries left.
 WARN  GET https://registry.npmjs.org/postcss error (ERR_INVALID_THIS). Will retry in 1 minute. 1 retries left.
 WARN  GET https://registry.npmjs.org/prettier error (ERR_INVALID_THIS). Will retry in 1 minute. 1 retries left.
 WARN  GET https://registry.npmjs.org/prettier-plugin-tailwindcss error (ERR_INVALID_THIS). Will retry in 1 minute. 1 retries left.
 WARN  GET https://registry.npmjs.org/sass error (ERR_INVALID_THIS). Will retry in 1 minute. 1 retries left.
 WARN  GET https://registry.npmjs.org/tailwindcss error (ERR_INVALID_THIS). Will retry in 1 minute. 1 retries left.
 WARN  GET https://registry.npmjs.org/typescript error (ERR_INVALID_THIS). Will retry in 1 minute. 1 retries left.
undefined
 ERR_INVALID_THIS  Value of "this" must be of type URLSearchParams

### ⚠ 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 ```  WARN  The "store" setting has been renamed to "store-dir". Please use the new name.  WARN  GET https://registry.npmjs.org/next error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.  WARN  GET https://registry.npmjs.org/@types/react/-/react-18.2.31.tgz error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.  WARN  GET https://registry.npmjs.org/react/-/react-18.2.0.tgz error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.  WARN  GET https://registry.npmjs.org/react-dom/-/react-dom-18.2.0.tgz error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.  WARN  GET https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.  WARN  GET https://registry.npmjs.org/@types%2Fnode error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.  WARN  GET https://registry.npmjs.org/@types%2Fuuid error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.  WARN  GET https://registry.npmjs.org/autoprefixer error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.  WARN  GET https://registry.npmjs.org/postcss error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.  WARN  GET https://registry.npmjs.org/prettier error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.  WARN  GET https://registry.npmjs.org/prettier-plugin-tailwindcss error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.  WARN  GET https://registry.npmjs.org/sass error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.  WARN  GET https://registry.npmjs.org/tailwindcss error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.  WARN  GET https://registry.npmjs.org/typescript error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.  WARN  GET https://registry.npmjs.org/next error (ERR_INVALID_THIS). Will retry in 1 minute. 1 retries left.  WARN  GET https://registry.npmjs.org/@types/react/-/react-18.2.31.tgz error (ERR_INVALID_THIS). Will retry in 1 minute. 1 retries left.  WARN  GET https://registry.npmjs.org/react/-/react-18.2.0.tgz error (ERR_INVALID_THIS). Will retry in 1 minute. 1 retries left.  WARN  GET https://registry.npmjs.org/react-dom/-/react-dom-18.2.0.tgz error (ERR_INVALID_THIS). Will retry in 1 minute. 1 retries left.  WARN  GET https://registry.npmjs.org/uuid/-/uuid-9.0.1.tgz error (ERR_INVALID_THIS). Will retry in 1 minute. 1 retries left.  WARN  GET https://registry.npmjs.org/@types%2Fnode error (ERR_INVALID_THIS). Will retry in 1 minute. 1 retries left.  WARN  GET https://registry.npmjs.org/@types%2Fuuid error (ERR_INVALID_THIS). Will retry in 1 minute. 1 retries left.  WARN  GET https://registry.npmjs.org/autoprefixer error (ERR_INVALID_THIS). Will retry in 1 minute. 1 retries left.  WARN  GET https://registry.npmjs.org/postcss error (ERR_INVALID_THIS). Will retry in 1 minute. 1 retries left.  WARN  GET https://registry.npmjs.org/prettier error (ERR_INVALID_THIS). Will retry in 1 minute. 1 retries left.  WARN  GET https://registry.npmjs.org/prettier-plugin-tailwindcss error (ERR_INVALID_THIS). Will retry in 1 minute. 1 retries left.  WARN  GET https://registry.npmjs.org/sass error (ERR_INVALID_THIS). Will retry in 1 minute. 1 retries left.  WARN  GET https://registry.npmjs.org/tailwindcss error (ERR_INVALID_THIS). Will retry in 1 minute. 1 retries left.  WARN  GET https://registry.npmjs.org/typescript error (ERR_INVALID_THIS). Will retry in 1 minute. 1 retries left. undefined  ERR_INVALID_THIS  Value of "this" must be of type URLSearchParams ```
kjuulh force-pushed renovate/all from b37a4c314d to e7204556f6 2023-10-24 03:44:51 +02:00 Compare
kjuulh force-pushed renovate/all from e7204556f6 to 1a9df0fe72 2023-10-24 20:24:15 +02:00 Compare
kjuulh force-pushed renovate/all from 1a9df0fe72 to 904999b693 2023-10-25 16:11:02 +02:00 Compare
kjuulh force-pushed renovate/all from 904999b693 to f8ca7bc9ad 2023-10-25 20:14:59 +02:00 Compare
kjuulh force-pushed renovate/all from f8ca7bc9ad to 5c9dc2d871 2023-10-26 03:10:18 +02:00 Compare
kjuulh force-pushed renovate/all from 5c9dc2d871 to e8242366d4 2023-10-31 10:14:11 +01:00 Compare
kjuulh force-pushed renovate/all from e8242366d4 to dc3881974d 2023-11-07 22:05:36 +01:00 Compare
kjuulh force-pushed renovate/all from dc3881974d to 71ab4297ff 2023-11-07 22:40:56 +01:00 Compare
kjuulh force-pushed renovate/all from 71ab4297ff to af5bb7d3cf 2023-11-08 17:30:07 +01:00 Compare
kjuulh force-pushed renovate/all from af5bb7d3cf to f4ab2cda05 2023-11-13 04:15:45 +01:00 Compare
kjuulh force-pushed renovate/all from f4ab2cda05 to cb9e22313f 2023-11-16 22:19:36 +01:00 Compare
kjuulh force-pushed renovate/all from cb9e22313f to cab5b1bda3 2023-11-18 21:32:05 +01:00 Compare
kjuulh force-pushed renovate/all from cab5b1bda3 to 5f36ddcd9e 2023-11-20 19:02:59 +01:00 Compare
kjuulh force-pushed renovate/all from 5f36ddcd9e to 2d46aedb38 2023-11-21 02:44:17 +01:00 Compare
kjuulh force-pushed renovate/all from 2d46aedb38 to ff0ad54a7d 2023-11-22 02:23:29 +01:00 Compare
kjuulh force-pushed renovate/all from ff0ad54a7d to 9ebec9eef5 2023-11-23 23:09:23 +01:00 Compare
kjuulh force-pushed renovate/all from 9ebec9eef5 to fe1b3bfc00 2023-11-24 10:24:36 +01:00 Compare
kjuulh force-pushed renovate/all from fe1b3bfc00 to f82934f300 2023-11-29 20:57:30 +01:00 Compare
kjuulh force-pushed renovate/all from f82934f300 to cfd7b3f74e 2023-12-01 22:07:48 +01:00 Compare
kjuulh force-pushed renovate/all from cfd7b3f74e to 3b90c22e2a 2023-12-02 04:15:45 +01:00 Compare
kjuulh force-pushed renovate/all from 3b90c22e2a to 1a115a2869 2023-12-03 19:27:10 +01:00 Compare
kjuulh force-pushed renovate/all from 1a115a2869 to 34b0eb6e98 2023-12-04 19:58:44 +01:00 Compare
kjuulh force-pushed renovate/all from 34b0eb6e98 to aa281960dc 2023-12-05 15:48:15 +01:00 Compare
kjuulh force-pushed renovate/all from aa281960dc to 127c89d54d 2023-12-06 00:19:58 +01:00 Compare
kjuulh force-pushed renovate/all from 127c89d54d to 0c3f4062f7 2023-12-06 20:21:06 +01:00 Compare
kjuulh force-pushed renovate/all from 0c3f4062f7 to 421efcaa7e 2023-12-07 08:31:49 +01:00 Compare
kjuulh force-pushed renovate/all from 421efcaa7e to 34058d4883 2023-12-10 09:43:19 +01:00 Compare
kjuulh force-pushed renovate/all from 34058d4883 to d434d72560 2023-12-17 23:05:13 +01:00 Compare
kjuulh force-pushed renovate/all from d434d72560 to cdd20d81a1 2023-12-18 20:17:36 +01:00 Compare
kjuulh force-pushed renovate/all from cdd20d81a1 to 886d14d218 2023-12-19 18:49:00 +01:00 Compare
kjuulh force-pushed renovate/all from 886d14d218 to 51f6a81195 2023-12-26 18:08:40 +01:00 Compare
kjuulh force-pushed renovate/all from 51f6a81195 to f2eb5ad158 2023-12-28 18:21:39 +01:00 Compare
kjuulh force-pushed renovate/all from f2eb5ad158 to 5d4a08b308 2023-12-29 00:32:42 +01:00 Compare
kjuulh force-pushed renovate/all from 5d4a08b308 to ac1a29c417 2023-12-30 02:02:47 +01:00 Compare
kjuulh force-pushed renovate/all from ac1a29c417 to 1e8021ae38 2024-01-02 23:15:30 +01:00 Compare
kjuulh force-pushed renovate/all from 1e8021ae38 to 43771e16ff 2024-01-04 20:23:38 +01:00 Compare
kjuulh force-pushed renovate/all from 43771e16ff to 428d1a1f78 2024-01-05 22:00:38 +01:00 Compare
kjuulh force-pushed renovate/all from 428d1a1f78 to 91d4146412 2024-01-05 23:15:43 +01:00 Compare
kjuulh force-pushed renovate/all from 91d4146412 to 1099f235d4 2024-01-07 17:17:25 +01:00 Compare
kjuulh force-pushed renovate/all from 1099f235d4 to 20d98eb0af 2024-01-09 17:11:54 +01:00 Compare
kjuulh force-pushed renovate/all from 20d98eb0af to febf212212 2024-01-11 06:48:56 +01:00 Compare
kjuulh force-pushed renovate/all from febf212212 to f4d44e8043 2024-01-12 17:48:41 +01:00 Compare
kjuulh force-pushed renovate/all from f4d44e8043 to 9bf67748d2 2024-01-12 20:42:00 +01:00 Compare
kjuulh force-pushed renovate/all from 9bf67748d2 to 37dddc8751 2024-01-14 04:39:41 +01:00 Compare
kjuulh force-pushed renovate/all from 37dddc8751 to f1249f453c 2024-01-15 05:32:09 +01:00 Compare
kjuulh force-pushed renovate/all from f1249f453c to 8928867c67 2024-01-15 12:56:15 +01:00 Compare
kjuulh force-pushed renovate/all from 8928867c67 to bfbd2ae6c0 2024-01-15 22:52:51 +01:00 Compare
kjuulh force-pushed renovate/all from bfbd2ae6c0 to dff1578d8a 2024-01-16 10:28:25 +01:00 Compare
kjuulh force-pushed renovate/all from dff1578d8a to 75d51738de 2024-01-17 05:04:28 +01:00 Compare
kjuulh force-pushed renovate/all from 75d51738de to e065de6bda 2024-01-17 07:50:40 +01:00 Compare
kjuulh force-pushed renovate/all from e065de6bda to f80150467e 2024-01-17 11:34:32 +01:00 Compare
kjuulh force-pushed renovate/all from f80150467e to de17da0837 2024-01-17 19:19:51 +01:00 Compare
kjuulh force-pushed renovate/all from de17da0837 to 6d871f218e 2024-01-18 04:17:37 +01:00 Compare
kjuulh force-pushed renovate/all from 6d871f218e to 1cadf261e7 2024-01-24 07:53:21 +01:00 Compare
kjuulh force-pushed renovate/all from 1cadf261e7 to 3066339ff9 2024-01-26 00:13:41 +01:00 Compare
kjuulh force-pushed renovate/all from 3066339ff9 to 04aee705c6 2024-01-26 06:00:11 +01:00 Compare
kjuulh force-pushed renovate/all from 04aee705c6 to 4c3ffee566 2024-01-27 17:23:20 +01:00 Compare
kjuulh force-pushed renovate/all from 4c3ffee566 to e152112038 2024-01-28 11:34:34 +01:00 Compare
kjuulh force-pushed renovate/all from e152112038 to e9796d01e9 2024-01-28 21:39:45 +01:00 Compare
kjuulh force-pushed renovate/all from e9796d01e9 to 0f953345a0 2024-01-30 20:24:19 +01:00 Compare
kjuulh force-pushed renovate/all from 0f953345a0 to b16d6a2ab6 2024-01-30 23:23:12 +01:00 Compare
kjuulh force-pushed renovate/all from b16d6a2ab6 to d36e71f52d 2024-01-31 00:26:48 +01:00 Compare
kjuulh force-pushed renovate/all from d36e71f52d to 371ab29723 2024-01-31 21:37:04 +01:00 Compare
kjuulh force-pushed renovate/all from 371ab29723 to dc39017364 2024-02-01 10:31:04 +01:00 Compare
kjuulh force-pushed renovate/all from dc39017364 to f06c18a3be 2024-02-01 18:47:18 +01:00 Compare
kjuulh force-pushed renovate/all from f06c18a3be to 74ca6ffa9b 2024-02-04 06:52:08 +01:00 Compare
kjuulh force-pushed renovate/all from 74ca6ffa9b to 1297b89992 2024-02-05 22:25:54 +01:00 Compare
kjuulh force-pushed renovate/all from 1297b89992 to 87009e6c78 2024-02-07 17:15:18 +01:00 Compare
kjuulh force-pushed renovate/all from 87009e6c78 to e133d1b6ac 2024-02-08 22:23:13 +01:00 Compare
kjuulh force-pushed renovate/all from e133d1b6ac to 05297471b0 2024-02-10 11:40:24 +01:00 Compare
kjuulh force-pushed renovate/all from 05297471b0 to 29c818e58f 2024-02-15 11:41:27 +01:00 Compare
kjuulh force-pushed renovate/all from 29c818e58f to f6dc58ba15 2024-02-15 17:47:49 +01:00 Compare
kjuulh force-pushed renovate/all from f6dc58ba15 to 81e197552e 2024-02-16 02:54:43 +01:00 Compare
kjuulh force-pushed renovate/all from 81e197552e to a4de6d497a 2024-02-16 20:10:57 +01:00 Compare
kjuulh force-pushed renovate/all from a4de6d497a to a88ed3206a 2024-02-21 03:27:35 +01:00 Compare
kjuulh force-pushed renovate/all from a88ed3206a to 32f958d369 2024-02-22 19:40:00 +01:00 Compare
kjuulh force-pushed renovate/all from 32f958d369 to 31e9973bca 2024-02-28 00:40:14 +01:00 Compare
kjuulh force-pushed renovate/all from 31e9973bca to 8c8ff7b9e5 2024-02-28 18:43:49 +01:00 Compare
kjuulh force-pushed renovate/all from 8c8ff7b9e5 to df7a08d0cf 2024-02-29 13:36:42 +01:00 Compare
kjuulh force-pushed renovate/all from df7a08d0cf to 0ca749f7af 2024-02-29 17:43:03 +01:00 Compare
kjuulh force-pushed renovate/all from 0ca749f7af to d6eb04817a 2024-03-01 18:37:58 +01:00 Compare
kjuulh force-pushed renovate/all from d6eb04817a to e3cebfae0c 2024-03-06 18:02:18 +01:00 Compare
kjuulh force-pushed renovate/all from e3cebfae0c to 5adfb19bf0 2024-03-06 18:55:18 +01:00 Compare
kjuulh force-pushed renovate/all from 5adfb19bf0 to 2dea02e464 2024-03-06 19:52:32 +01:00 Compare
kjuulh force-pushed renovate/all from 2dea02e464 to 53bcaaec9d 2024-03-11 23:14:11 +01:00 Compare
kjuulh force-pushed renovate/all from 53bcaaec9d to 171132d857 2024-03-13 14:49:08 +01:00 Compare
kjuulh force-pushed renovate/all from 171132d857 to 22e7b08fd1 2024-03-13 22:36:15 +01:00 Compare
kjuulh force-pushed renovate/all from 22e7b08fd1 to 697d132bfe 2024-03-15 09:23:22 +01:00 Compare
kjuulh force-pushed renovate/all from 697d132bfe to e261d1d7a9 2024-03-15 12:36:40 +01:00 Compare
kjuulh force-pushed renovate/all from e261d1d7a9 to f862a1b7e3 2024-03-17 21:49:42 +01:00 Compare
kjuulh force-pushed renovate/all from f862a1b7e3 to f8f26b058a 2024-03-18 21:50:27 +01:00 Compare
kjuulh force-pushed renovate/all from f8f26b058a to bfe1f65fc3 2024-03-19 13:56:09 +01:00 Compare
kjuulh force-pushed renovate/all from bfe1f65fc3 to f6b5f2577e 2024-03-19 18:26:00 +01:00 Compare
kjuulh force-pushed renovate/all from f6b5f2577e to d79eb2e79b 2024-03-20 21:59:57 +01:00 Compare
kjuulh force-pushed renovate/all from d79eb2e79b to f913fbc23d 2024-03-21 00:15:55 +01:00 Compare
kjuulh force-pushed renovate/all from f913fbc23d to 526f87973c 2024-03-27 16:53:20 +01:00 Compare
kjuulh force-pushed renovate/all from 526f87973c to 97ade99a55 2024-03-27 18:29:13 +01:00 Compare
kjuulh force-pushed renovate/all from 97ade99a55 to 1219e9d903 2024-03-27 21:49:41 +01:00 Compare
kjuulh force-pushed renovate/all from 1219e9d903 to 54057bbbed 2024-03-30 06:00:28 +01:00 Compare
kjuulh force-pushed renovate/all from 54057bbbed to c1307aa02c 2024-03-30 06:48:41 +01:00 Compare
kjuulh force-pushed renovate/all from c1307aa02c to faa214b3fd 2024-03-30 07:37:48 +01:00 Compare
kjuulh force-pushed renovate/all from faa214b3fd to b698a7f69f 2024-04-02 23:35:33 +02:00 Compare
kjuulh force-pushed renovate/all from b698a7f69f to 87c3663c3b 2024-04-04 00:17:16 +02:00 Compare
kjuulh force-pushed renovate/all from 87c3663c3b to 236aea3347 2024-04-04 03:32:49 +02:00 Compare
kjuulh force-pushed renovate/all from 236aea3347 to 9689e8d7e5 2024-04-04 18:40:57 +02:00 Compare
kjuulh force-pushed renovate/all from 9689e8d7e5 to 3ff896821b 2024-04-04 20:18:57 +02:00 Compare
kjuulh force-pushed renovate/all from 3ff896821b to 3f2682e747 2024-04-06 01:01:35 +02:00 Compare
kjuulh force-pushed renovate/all from 3f2682e747 to 6a7798e9c6 2024-04-09 06:29:00 +02:00 Compare
kjuulh force-pushed renovate/all from 6a7798e9c6 to 6c0b61385d 2024-04-09 23:11:11 +02:00 Compare
kjuulh force-pushed renovate/all from 6c0b61385d to 7d6a8b8f38 2024-04-10 17:09:46 +02:00 Compare
kjuulh force-pushed renovate/all from 7d6a8b8f38 to aa3b7ed582 2024-04-12 01:35:08 +02:00 Compare
kjuulh force-pushed renovate/all from aa3b7ed582 to 095a8f058d 2024-04-14 16:11:56 +02:00 Compare
kjuulh force-pushed renovate/all from 095a8f058d to 105e14d4ba 2024-04-15 22:42:44 +02:00 Compare
kjuulh force-pushed renovate/all from 105e14d4ba to 5381da19c5 2024-04-28 15:14:18 +02:00 Compare
kjuulh force-pushed renovate/all from 5381da19c5 to 9db7c9f36d 2024-04-30 23:43:09 +02:00 Compare
kjuulh force-pushed renovate/all from 9db7c9f36d to 14ad5fdfce 2024-05-01 20:50:01 +02:00 Compare
kjuulh force-pushed renovate/all from 14ad5fdfce to cbc14ddfa9 2024-05-06 16:35:01 +02:00 Compare
kjuulh force-pushed renovate/all from cbc14ddfa9 to 3994eae74c 2024-05-06 19:11:12 +02:00 Compare
kjuulh force-pushed renovate/all from 3994eae74c to 302f73d6d1 2024-05-07 03:05:40 +02:00 Compare
kjuulh force-pushed renovate/all from 302f73d6d1 to 9acdc9059a 2024-05-08 02:37:03 +02:00 Compare
kjuulh force-pushed renovate/all from 9acdc9059a to 5671c14c82 2024-05-08 14:57:20 +02:00 Compare
kjuulh force-pushed renovate/all from 5671c14c82 to 4219bcaca0 2024-05-11 01:12:36 +02:00 Compare
kjuulh force-pushed renovate/all from 4219bcaca0 to 2f3e2c24db 2024-05-14 08:44:09 +02:00 Compare
kjuulh force-pushed renovate/all from 2f3e2c24db to 285d06a96e 2024-05-17 00:27:41 +02:00 Compare
kjuulh force-pushed renovate/all from 285d06a96e to 8ec06aa806 2024-05-24 03:33:12 +02:00 Compare
Author
Owner

⚠️ 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
 WARN  The "store" setting has been renamed to "store-dir". Please use the new name.
 WARN  GET https://registry.npmjs.org/next error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.
 WARN  GET https://registry.npmjs.org/@types/react/-/react-18.2.31.tgz error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.
 WARN  GET https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.3.3.tgz error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.
 WARN  GET https://registry.npmjs.org/react/-/react-18.2.0.tgz error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.
 WARN  GET https://registry.npmjs.org/react-dom/-/react-dom-18.2.0.tgz error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.
 WARN  GET https://registry.npmjs.org/@types%2Fuuid error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.
 WARN  GET https://registry.npmjs.org/autoprefixer error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.
 WARN  GET https://registry.npmjs.org/prettier error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.
 WARN  GET https://registry.npmjs.org/prettier-plugin-tailwindcss error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.
 WARN  GET https://registry.npmjs.org/sass error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.
 WARN  GET https://registry.npmjs.org/uuid error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.
Progress: resolved 1, reused 0, downloaded 0, added 0
 WARN  GET https://registry.npmjs.org/postcss/-/postcss-8.5.6.tgz error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.
 WARN  GET https://registry.npmjs.org/@types/node/-/node-22.15.34.tgz error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.
 WARN  GET https://registry.npmjs.org/typescript/-/typescript-5.8.3.tgz error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.
Progress: resolved 3, reused 0, downloaded 0, added 0
 WARN  GET https://registry.npmjs.org/next error (ERR_INVALID_THIS). Will retry in 1 minute. 1 retries left.
 WARN  GET https://registry.npmjs.org/@types/react/-/react-18.2.31.tgz error (ERR_INVALID_THIS). Will retry in 1 minute. 1 retries left.
 WARN  GET https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.3.3.tgz error (ERR_INVALID_THIS). Will retry in 1 minute. 1 retries left.
 WARN  GET https://registry.npmjs.org/react/-/react-18.2.0.tgz error (ERR_INVALID_THIS). Will retry in 1 minute. 1 retries left.
 WARN  GET https://registry.npmjs.org/react-dom/-/react-dom-18.2.0.tgz error (ERR_INVALID_THIS). Will retry in 1 minute. 1 retries left.
 WARN  GET https://registry.npmjs.org/@types%2Fuuid error (ERR_INVALID_THIS). Will retry in 1 minute. 1 retries left.
 WARN  GET https://registry.npmjs.org/autoprefixer error (ERR_INVALID_THIS). Will retry in 1 minute. 1 retries left.
 WARN  GET https://registry.npmjs.org/prettier error (ERR_INVALID_THIS). Will retry in 1 minute. 1 retries left.
 WARN  GET https://registry.npmjs.org/prettier-plugin-tailwindcss error (ERR_INVALID_THIS). Will retry in 1 minute. 1 retries left.
 WARN  GET https://registry.npmjs.org/sass error (ERR_INVALID_THIS). Will retry in 1 minute. 1 retries left.
 WARN  GET https://registry.npmjs.org/uuid error (ERR_INVALID_THIS). Will retry in 1 minute. 1 retries left.
 WARN  GET https://registry.npmjs.org/postcss/-/postcss-8.5.6.tgz error (ERR_INVALID_THIS). Will retry in 1 minute. 1 retries left.
 WARN  GET https://registry.npmjs.org/@types/node/-/node-22.15.34.tgz error (ERR_INVALID_THIS). Will retry in 1 minute. 1 retries left.
 WARN  GET https://registry.npmjs.org/typescript/-/typescript-5.8.3.tgz error (ERR_INVALID_THIS). Will retry in 1 minute. 1 retries left.
 ERR_INVALID_THIS  Value of "this" must be of type URLSearchParams

### ⚠️ 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 ```  WARN  The "store" setting has been renamed to "store-dir". Please use the new name.  WARN  GET https://registry.npmjs.org/next error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.  WARN  GET https://registry.npmjs.org/@types/react/-/react-18.2.31.tgz error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.  WARN  GET https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.3.3.tgz error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.  WARN  GET https://registry.npmjs.org/react/-/react-18.2.0.tgz error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.  WARN  GET https://registry.npmjs.org/react-dom/-/react-dom-18.2.0.tgz error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.  WARN  GET https://registry.npmjs.org/@types%2Fuuid error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.  WARN  GET https://registry.npmjs.org/autoprefixer error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.  WARN  GET https://registry.npmjs.org/prettier error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.  WARN  GET https://registry.npmjs.org/prettier-plugin-tailwindcss error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.  WARN  GET https://registry.npmjs.org/sass error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.  WARN  GET https://registry.npmjs.org/uuid error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left. Progress: resolved 1, reused 0, downloaded 0, added 0  WARN  GET https://registry.npmjs.org/postcss/-/postcss-8.5.6.tgz error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.  WARN  GET https://registry.npmjs.org/@types/node/-/node-22.15.34.tgz error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left.  WARN  GET https://registry.npmjs.org/typescript/-/typescript-5.8.3.tgz error (ERR_INVALID_THIS). Will retry in 10 seconds. 2 retries left. Progress: resolved 3, reused 0, downloaded 0, added 0  WARN  GET https://registry.npmjs.org/next error (ERR_INVALID_THIS). Will retry in 1 minute. 1 retries left.  WARN  GET https://registry.npmjs.org/@types/react/-/react-18.2.31.tgz error (ERR_INVALID_THIS). Will retry in 1 minute. 1 retries left.  WARN  GET https://registry.npmjs.org/tailwindcss/-/tailwindcss-3.3.3.tgz error (ERR_INVALID_THIS). Will retry in 1 minute. 1 retries left.  WARN  GET https://registry.npmjs.org/react/-/react-18.2.0.tgz error (ERR_INVALID_THIS). Will retry in 1 minute. 1 retries left.  WARN  GET https://registry.npmjs.org/react-dom/-/react-dom-18.2.0.tgz error (ERR_INVALID_THIS). Will retry in 1 minute. 1 retries left.  WARN  GET https://registry.npmjs.org/@types%2Fuuid error (ERR_INVALID_THIS). Will retry in 1 minute. 1 retries left.  WARN  GET https://registry.npmjs.org/autoprefixer error (ERR_INVALID_THIS). Will retry in 1 minute. 1 retries left.  WARN  GET https://registry.npmjs.org/prettier error (ERR_INVALID_THIS). Will retry in 1 minute. 1 retries left.  WARN  GET https://registry.npmjs.org/prettier-plugin-tailwindcss error (ERR_INVALID_THIS). Will retry in 1 minute. 1 retries left.  WARN  GET https://registry.npmjs.org/sass error (ERR_INVALID_THIS). Will retry in 1 minute. 1 retries left.  WARN  GET https://registry.npmjs.org/uuid error (ERR_INVALID_THIS). Will retry in 1 minute. 1 retries left.  WARN  GET https://registry.npmjs.org/postcss/-/postcss-8.5.6.tgz error (ERR_INVALID_THIS). Will retry in 1 minute. 1 retries left.  WARN  GET https://registry.npmjs.org/@types/node/-/node-22.15.34.tgz error (ERR_INVALID_THIS). Will retry in 1 minute. 1 retries left.  WARN  GET https://registry.npmjs.org/typescript/-/typescript-5.8.3.tgz error (ERR_INVALID_THIS). Will retry in 1 minute. 1 retries left.  ERR_INVALID_THIS  Value of "this" must be of type URLSearchParams ```
kjuulh force-pushed renovate/all from 8ec06aa806 to 9db0a3d8ce 2024-08-21 23:51:31 +02:00 Compare
kjuulh force-pushed renovate/all from 9db0a3d8ce to 71332a421e 2024-08-28 02:48:39 +02:00 Compare
kjuulh force-pushed renovate/all from 71332a421e to c370a0f5a1 2024-09-01 03:01:07 +02:00 Compare
kjuulh force-pushed renovate/all from c370a0f5a1 to 33a80b325a 2024-09-02 03:03:18 +02:00 Compare
kjuulh force-pushed renovate/all from 33a80b325a to 1b98061879 2024-09-03 03:01:39 +02:00 Compare
kjuulh force-pushed renovate/all from 1b98061879 to 7b6a930f3f 2024-09-04 03:02:26 +02:00 Compare
kjuulh force-pushed renovate/all from 7b6a930f3f to d51555684d 2024-09-05 03:14:02 +02:00 Compare
kjuulh force-pushed renovate/all from d51555684d to 0436e9815a 2024-09-10 03:13:01 +02:00 Compare
kjuulh force-pushed renovate/all from 0436e9815a to 15cadd4ce3 2024-09-12 03:15:02 +02:00 Compare
kjuulh force-pushed renovate/all from 15cadd4ce3 to 96f941391b 2024-09-15 03:03:31 +02:00 Compare
kjuulh force-pushed renovate/all from 96f941391b to cc3c58cfe6 2024-09-18 03:18:33 +02:00 Compare
kjuulh force-pushed renovate/all from cc3c58cfe6 to c8851359bf 2024-09-20 03:43:51 +02:00 Compare
kjuulh force-pushed renovate/all from c8851359bf to 351e301dec 2024-09-21 03:40:44 +02:00 Compare
kjuulh force-pushed renovate/all from 351e301dec to 0ed483c89a 2024-09-24 03:20:54 +02:00 Compare
kjuulh force-pushed renovate/all from 0ed483c89a to 371474a003 2024-09-25 03:19:00 +02:00 Compare
kjuulh force-pushed renovate/all from 371474a003 to bc3f43d731 2024-09-26 03:13:55 +02:00 Compare
kjuulh force-pushed renovate/all from bc3f43d731 to 9b5f65c891 2024-09-28 03:24:05 +02:00 Compare
kjuulh force-pushed renovate/all from 9b5f65c891 to 32ad398dd5 2024-09-28 07:12:13 +02:00 Compare
kjuulh force-pushed renovate/all from 32ad398dd5 to 02c9fb36d3 2024-10-08 03:07:22 +02:00 Compare
kjuulh force-pushed renovate/all from 02c9fb36d3 to 16bb4d9e6a 2024-10-09 03:22:18 +02:00 Compare
kjuulh force-pushed renovate/all from 16bb4d9e6a to 1d4d9934f9 2024-10-11 03:14:48 +02:00 Compare
kjuulh force-pushed renovate/all from 1d4d9934f9 to 88df835036 2024-10-16 03:04:06 +02:00 Compare
kjuulh force-pushed renovate/all from 88df835036 to e2ca8bd339 2024-10-17 03:23:09 +02:00 Compare
kjuulh force-pushed renovate/all from e2ca8bd339 to 288dfcfd2c 2024-10-17 07:08:43 +02:00 Compare
kjuulh force-pushed renovate/all from 288dfcfd2c to 86fc64948e 2024-10-18 03:19:40 +02:00 Compare
kjuulh force-pushed renovate/all from 86fc64948e to 1be0fa4b52 2024-10-19 07:42:57 +02:00 Compare
kjuulh force-pushed renovate/all from 1be0fa4b52 to 96f3a150fc 2024-10-22 07:10:49 +02:00 Compare
kjuulh force-pushed renovate/all from 96f3a150fc to 3dee30996a 2024-10-23 07:29:57 +02:00 Compare
kjuulh force-pushed renovate/all from 3dee30996a to 7eaa94eb56 2024-10-24 07:28:11 +02:00 Compare
kjuulh force-pushed renovate/all from 7eaa94eb56 to 5f3b7ceb37 2024-10-26 03:15:59 +02:00 Compare
kjuulh force-pushed renovate/all from 5f3b7ceb37 to 556fd4a2d8 2024-10-28 03:06:04 +01:00 Compare
kjuulh force-pushed renovate/all from 556fd4a2d8 to 417990febb 2024-10-29 03:23:56 +01:00 Compare
kjuulh force-pushed renovate/all from 417990febb to bf4bec59c2 2024-10-30 03:18:03 +01:00 Compare
kjuulh force-pushed renovate/all from bf4bec59c2 to 9409cff463 2024-10-31 07:13:55 +01:00 Compare
kjuulh force-pushed renovate/all from 9409cff463 to 9a412caa40 2024-11-01 03:24:00 +01:00 Compare
kjuulh force-pushed renovate/all from 9a412caa40 to b1ac73d17b 2024-11-02 03:21:50 +01:00 Compare
kjuulh force-pushed renovate/all from b1ac73d17b to 126dfd024d 2024-11-04 03:01:35 +01:00 Compare
kjuulh force-pushed renovate/all from 126dfd024d to ab7b1221ec 2024-11-05 03:04:26 +01:00 Compare
kjuulh force-pushed renovate/all from ab7b1221ec to 98b3e96cac 2024-11-11 03:01:42 +01:00 Compare
kjuulh force-pushed renovate/all from 98b3e96cac to 083e61aae7 2024-11-12 03:04:38 +01:00 Compare
kjuulh force-pushed renovate/all from 083e61aae7 to 5856934c9e 2024-11-13 03:38:28 +01:00 Compare
kjuulh force-pushed renovate/all from 5856934c9e to d8a2c44cfd 2024-11-15 03:15:21 +01:00 Compare
kjuulh force-pushed renovate/all from d8a2c44cfd to be36d85c4f 2024-11-20 03:04:13 +01:00 Compare
kjuulh force-pushed renovate/all from be36d85c4f to a363a8ead4 2024-11-23 03:28:06 +01:00 Compare
kjuulh force-pushed renovate/all from a363a8ead4 to 3f38e95158 2024-11-23 07:38:54 +01:00 Compare
kjuulh force-pushed renovate/all from 3f38e95158 to c768c75cc6 2024-11-26 03:42:01 +01:00 Compare
kjuulh force-pushed renovate/all from c768c75cc6 to 1c789cecfa 2024-11-26 07:26:44 +01:00 Compare
kjuulh force-pushed renovate/all from 1c789cecfa to 4c2f49b3dd 2024-11-27 04:14:41 +01:00 Compare
kjuulh force-pushed renovate/all from 4c2f49b3dd to 1aa9ef0c25 2024-11-28 07:06:19 +01:00 Compare
kjuulh force-pushed renovate/all from 1aa9ef0c25 to 8b00a376a9 2024-12-03 03:02:43 +01:00 Compare
kjuulh force-pushed renovate/all from 8b00a376a9 to fcddcf34a1 2024-12-04 07:12:37 +01:00 Compare
kjuulh force-pushed renovate/all from fcddcf34a1 to f3943433f8 2024-12-05 03:20:01 +01:00 Compare
kjuulh force-pushed renovate/all from f3943433f8 to 24b5259122 2024-12-12 03:12:16 +01:00 Compare
kjuulh force-pushed renovate/all from 24b5259122 to d1832c9579 2024-12-13 03:07:08 +01:00 Compare
kjuulh force-pushed renovate/all from d1832c9579 to c8c9381e66 2024-12-18 03:05:31 +01:00 Compare
kjuulh force-pushed renovate/all from c8c9381e66 to dc998e0034 2025-01-01 03:06:53 +01:00 Compare
kjuulh force-pushed renovate/all from dc998e0034 to f5cc6b1c46 2025-01-03 03:03:21 +01:00 Compare
kjuulh force-pushed renovate/all from f5cc6b1c46 to bd5e2bbf85 2025-01-04 03:07:02 +01:00 Compare
kjuulh force-pushed renovate/all from bd5e2bbf85 to 1317e87ca4 2025-01-06 02:58:13 +01:00 Compare
kjuulh force-pushed renovate/all from 1317e87ca4 to a5a1a6b5a6 2025-01-09 03:18:03 +01:00 Compare
kjuulh force-pushed renovate/all from a5a1a6b5a6 to 28421a44a9 2025-01-10 03:13:52 +01:00 Compare
kjuulh force-pushed renovate/all from 28421a44a9 to 5c4feca6ce 2025-01-14 03:13:17 +01:00 Compare
kjuulh force-pushed renovate/all from 5c4feca6ce to 85662cf316 2025-01-15 03:27:44 +01:00 Compare
kjuulh force-pushed renovate/all from 85662cf316 to 3215b7daaa 2025-01-16 03:19:21 +01:00 Compare
kjuulh force-pushed renovate/all from 3215b7daaa to d6db98a2a4 2025-01-23 03:20:20 +01:00 Compare
kjuulh force-pushed renovate/all from d6db98a2a4 to 786a0186b6 2025-01-24 03:32:41 +01:00 Compare
kjuulh force-pushed renovate/all from 786a0186b6 to ca3fd067d7 2025-01-28 03:26:21 +01:00 Compare
kjuulh force-pushed renovate/all from ca3fd067d7 to c215d32828 2025-01-30 07:36:48 +01:00 Compare
kjuulh force-pushed renovate/all from c215d32828 to 8db3c92cc5 2025-02-01 03:20:16 +01:00 Compare
kjuulh force-pushed renovate/all from 8db3c92cc5 to 442f00f9e9 2025-02-02 03:18:46 +01:00 Compare
kjuulh force-pushed renovate/all from 442f00f9e9 to e8c9146640 2025-02-04 03:25:56 +01:00 Compare
kjuulh force-pushed renovate/all from e8c9146640 to 907382d7e9 2025-02-06 03:27:44 +01:00 Compare
kjuulh force-pushed renovate/all from 907382d7e9 to 9740f1b244 2025-02-07 03:19:46 +01:00 Compare
kjuulh force-pushed renovate/all from 9740f1b244 to e1c5cc8d74 2025-02-09 03:25:03 +01:00 Compare
kjuulh force-pushed renovate/all from e1c5cc8d74 to 6810960948 2025-02-10 03:17:40 +01:00 Compare
kjuulh force-pushed renovate/all from 6810960948 to 8ab06148ae 2025-02-11 03:25:59 +01:00 Compare
kjuulh force-pushed renovate/all from 8ab06148ae to 535ad7275b 2025-02-13 07:15:49 +01:00 Compare
kjuulh force-pushed renovate/all from 535ad7275b to fb45b56918 2025-02-14 03:16:02 +01:00 Compare
kjuulh force-pushed renovate/all from fb45b56918 to 7ad433349b 2025-02-19 03:11:17 +01:00 Compare
kjuulh force-pushed renovate/all from 7ad433349b to 11ebea95de 2025-02-20 03:28:14 +01:00 Compare
kjuulh force-pushed renovate/all from 11ebea95de to 6d7d1ee33c 2025-02-22 03:16:35 +01:00 Compare
kjuulh force-pushed renovate/all from 6d7d1ee33c to 0e44f8646d 2025-02-22 07:20:13 +01:00 Compare
kjuulh force-pushed renovate/all from 0e44f8646d to 30ef028c2b 2025-02-25 03:21:23 +01:00 Compare
kjuulh force-pushed renovate/all from 30ef028c2b to a9402cb4fa 2025-02-26 03:15:21 +01:00 Compare
kjuulh force-pushed renovate/all from a9402cb4fa to 3ccb39ddad 2025-03-01 03:23:07 +01:00 Compare
kjuulh force-pushed renovate/all from 3ccb39ddad to 342a0a59b3 2025-03-02 03:23:18 +01:00 Compare
kjuulh force-pushed renovate/all from 342a0a59b3 to c9569c1da0 2025-03-03 03:17:12 +01:00 Compare
kjuulh force-pushed renovate/all from c9569c1da0 to d7e20f2943 2025-03-04 07:25:06 +01:00 Compare
kjuulh force-pushed renovate/all from d7e20f2943 to 337c1c9cf8 2025-03-06 03:27:04 +01:00 Compare
kjuulh force-pushed renovate/all from 337c1c9cf8 to 641816bde1 2025-03-26 00:27:26 +01:00 Compare
kjuulh force-pushed renovate/all from 641816bde1 to 0c6611ab8e 2025-03-27 04:58:10 +01:00 Compare
kjuulh force-pushed renovate/all from 0c6611ab8e to 645d5d9536 2025-04-01 02:50:33 +02:00 Compare
kjuulh force-pushed renovate/all from 645d5d9536 to c794edd8f1 2025-04-02 02:55:59 +02:00 Compare
kjuulh force-pushed renovate/all from c794edd8f1 to 0e0bf55891 2025-04-03 02:53:35 +02:00 Compare
kjuulh force-pushed renovate/all from 0e0bf55891 to f18e6f9238 2025-04-04 02:49:01 +02:00 Compare
kjuulh force-pushed renovate/all from f18e6f9238 to fa80c2d7d3 2025-04-05 02:51:27 +02:00 Compare
kjuulh force-pushed renovate/all from fa80c2d7d3 to 7c023ace49 2025-04-12 02:56:53 +02:00 Compare
kjuulh force-pushed renovate/all from 7c023ace49 to fd354d6bde 2025-04-22 02:53:51 +02:00 Compare
kjuulh force-pushed renovate/all from fd354d6bde to 3dd965c49a 2025-04-25 02:53:56 +02:00 Compare
kjuulh force-pushed renovate/all from 3dd965c49a to 86d01ed407 2025-04-26 02:53:16 +02:00 Compare
kjuulh force-pushed renovate/all from 86d01ed407 to f87b54328b 2025-04-29 02:58:45 +02:00 Compare
kjuulh force-pushed renovate/all from f87b54328b to 815d998a8c 2025-04-30 02:55:46 +02:00 Compare
kjuulh force-pushed renovate/all from 815d998a8c to f1c810b4a6 2025-05-06 02:51:00 +02:00 Compare
kjuulh force-pushed renovate/all from f1c810b4a6 to 1408d6c6cd 2025-05-06 05:50:24 +02:00 Compare
kjuulh force-pushed renovate/all from 1408d6c6cd to ccd3574e37 2025-05-07 02:54:55 +02:00 Compare
kjuulh force-pushed renovate/all from ccd3574e37 to 93f88040a0 2025-05-08 02:52:15 +02:00 Compare
kjuulh force-pushed renovate/all from 93f88040a0 to 9b0031c93f 2025-05-08 05:48:54 +02:00 Compare
kjuulh force-pushed renovate/all from 9b0031c93f to c7c48d85a5 2025-05-09 02:50:40 +02:00 Compare
kjuulh force-pushed renovate/all from c7c48d85a5 to e3446242e3 2025-05-11 02:51:01 +02:00 Compare
kjuulh force-pushed renovate/all from e3446242e3 to fc142bd575 2025-05-15 02:51:02 +02:00 Compare
kjuulh force-pushed renovate/all from fc142bd575 to c33e1c0a20 2025-05-17 02:50:30 +02:00 Compare
kjuulh force-pushed renovate/all from c33e1c0a20 to bd952b5e46 2025-05-19 02:49:54 +02:00 Compare
kjuulh force-pushed renovate/all from bd952b5e46 to 25189f6ca8 2025-05-21 02:51:27 +02:00 Compare
kjuulh force-pushed renovate/all from 25189f6ca8 to 86bca57983 2025-05-28 02:56:59 +02:00 Compare
kjuulh force-pushed renovate/all from 86bca57983 to af11766a19 2025-05-29 02:53:17 +02:00 Compare
kjuulh force-pushed renovate/all from af11766a19 to 02d21067f8 2025-05-30 02:54:28 +02:00 Compare
kjuulh force-pushed renovate/all from 02d21067f8 to 71089a8589 2025-05-31 02:53:44 +02:00 Compare
kjuulh force-pushed renovate/all from 71089a8589 to 6b59f8074b 2025-06-06 02:56:30 +02:00 Compare
kjuulh force-pushed renovate/all from 6b59f8074b to 0f3a600130 2025-06-10 03:01:39 +02:00 Compare
kjuulh force-pushed renovate/all from 0f3a600130 to 4ab43f1e60 2025-06-10 05:58:03 +02:00 Compare
kjuulh force-pushed renovate/all from 4ab43f1e60 to dfb0322ac8 2025-06-12 03:01:32 +02:00 Compare
kjuulh force-pushed renovate/all from dfb0322ac8 to 4c8cd348f1 2025-06-18 02:54:36 +02:00 Compare
kjuulh force-pushed renovate/all from 4c8cd348f1 to ed9127b1ae 2025-06-20 02:51:13 +02:00 Compare
kjuulh force-pushed renovate/all from ed9127b1ae to 9a6231df96 2025-06-23 05:50:39 +02:00 Compare
kjuulh force-pushed renovate/all from 9a6231df96 to 9877b26c54 2025-06-25 02:53:03 +02:00 Compare
kjuulh force-pushed renovate/all from 9877b26c54 to 3b8974d340 2025-06-26 02:54:13 +02:00 Compare
kjuulh force-pushed renovate/all from 3b8974d340 to a60f303f7b 2025-06-27 05:52:31 +02:00 Compare
kjuulh force-pushed renovate/all from a60f303f7b to 4e607b2a3b 2025-06-29 02:53:32 +02:00 Compare
Some checks failed
renovate/artifacts Artifact file update failure
This pull request can be merged automatically.
You are not authorized to merge this pull request.

Checkout

From your project repository, check out a new branch and test the changes.
git fetch -u origin renovate/all:renovate/all
git checkout renovate/all
Sign in to join this conversation.
No Reviewers
No Label
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: kjuulh/wishlist-client#192
No description provided.