Skip to content

Fix declaration-property-value-no-unknown false negatives for math functions#9011

Merged
jeddy3 merged 16 commits intostylelint:mainfrom
ragini-pandey:fix/8891-calc-support-declaration-property-value
Feb 8, 2026
Merged

Fix declaration-property-value-no-unknown false negatives for math functions#9011
jeddy3 merged 16 commits intostylelint:mainfrom
ragini-pandey:fix/8891-calc-support-declaration-property-value

Conversation

@ragini-pandey
Copy link
Copy Markdown
Contributor

@ragini-pandey ragini-pandey commented Feb 1, 2026

Which issue, if any, is this issue related to?

Fixes #8891

Is there anything in the PR that needs further explanation?

This PR adds validation for calc() expressions in the declaration-property-value-no-unknown rule to catch invalid type combinations.

Changes

  1. Added @csstools/css-calc dependency to validate calc expressions
  2. Enhanced calc validation by:
    • Attempting to solve calc expressions using @csstools/css-calc
    • If the expression can be solved (e.g., calc(2px * 2)4px), validating the result with csstree
    • If the expression cannot be solved, checking for invalid type mixing patterns (e.g., calc(2px + 2) - adding dimension and unitless number)
  3. Added helper functions:
    • validateMathFunctions() - validates calc/clamp/min/max expressions
    • hasInvalidTypeMix() - detects invalid type combinations in expressions
    • findMathExpression() - extracts the math expression from the value for error reporting

Examples

Now correctly reports errors for:

/* Invalid: unitless number for property expecting length */
a { height: calc(2); }
a { height: calc(2 + 2); }

/* Invalid: mixing dimension and unitless number in addition */
a { height: calc(2px + 2); }

Still accepts valid expressions:

/* Valid: results in a length */
a { height: calc(2px * 2); }

/* Valid: mixed units that are both lengths */
a { margin: calc(100% - 10px); }

/* Valid: multiplication with variables */
a { height: calc(var(--foo) * 2); }

The validation is conservative - it only reports errors for clearly invalid patterns while allowing expressions that might be valid but cannot be fully resolved at parse time (like percentage + pixel combinations).

@ragini-pandey ragini-pandey requested a review from a team as a code owner February 1, 2026 09:17
@changeset-bot
Copy link
Copy Markdown

changeset-bot bot commented Feb 1, 2026

🦋 Changeset detected

Latest commit: c3d5e13

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 1 package
Name Type
stylelint Minor

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

@ragini-pandey ragini-pandey changed the title Add support for calc() and other math functions in declaration-proper… Add support for calc() and other math functions in declaration-property-value-no-unknown rule Feb 1, 2026
@github-actions
Copy link
Copy Markdown
Contributor

github-actions bot commented Feb 4, 2026

This PR is packaged and the instant preview is available (c3d5e13). View the demo website.

Install it locally:

npm i -D https://pkg.pr.new/stylelint@c3d5e13

@ybiquitous ybiquitous changed the title Add support for calc() and other math functions in declaration-property-value-no-unknown rule Add calc support to declaration-property-value-no-unknown Feb 4, 2026
Copy link
Copy Markdown
Member

@ybiquitous ybiquitous left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the pull request. Please take a look at my review comments?

@ybiquitous
Copy link
Copy Markdown
Member

Plus, can you improve the coverage? There are uncovered lines, ref:
https://app.codecov.io/gh/stylelint/stylelint/pull/9011

Copy link
Copy Markdown
Member

@ybiquitous ybiquitous left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[suggestion]

RejectedMessage<[property: string, value: string]> & {
rejectedParseError: (property: string, value: string) => string;
}

@ybiquitous
Copy link
Copy Markdown
Member

@ragini-pandey Thanks, overall LGTM. 👍🏼

But there are still uncovered lines. Do you think it's reasonable to cover them by adding test cases?
https://app.codecov.io/gh/stylelint/stylelint/pull/9011

Copy link
Copy Markdown
Member

@ybiquitous ybiquitous left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@romainmenke This PR introduces your package @csstools/css-calc. I'd appreciate it if you could provide any thoughts on using the package. 🙏🏼

@jeddy3 jeddy3 changed the title Add calc support to declaration-property-value-no-unknown Fix declaration-property-value-no-unknown false negatives for math functions Feb 5, 2026
Copy link
Copy Markdown
Member

@jeddy3 jeddy3 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you for the PR.

I've made two minor suggestions.

@ybiquitous
Copy link
Copy Markdown
Member

But there are still uncovered lines. Do you think it's reasonable to cover them by adding test cases?
https://app.codecov.io/gh/stylelint/stylelint/pull/9011

@ragini-pandey Any updates on the coverage?

@romainmenke
Copy link
Copy Markdown
Member

@ybiquitous I will take a look as soon as possible.


My immediate concern is that this library isn't intended for this use case.

It does implement most of the math related features in CSS but its focus is on doing so outside the context of a browser. This means that it can't convert between rem and px and likewise can't resolve percentage values.

It was created to be able to generate fallback values for relative colors that can contain math expressions. This scope is considerably narrow than validating/linting math expressions in general in the context of a browser.

I did mention this library in the linked issue because it does illustrate some of the complexity involved in handling CSS math expressions. But I did not mean to imply it should be used to solve that issue. I could have stated that more clearly.


That said, if it does seem to work and makes this rule more helpful then that is obviously good.

My concern is that it can only be used in the simplest of cases, e.g. width: calc(3 + 2). As in this case it can simplify the expression to 5 which isn't valid for width.

So I wonder if all the analysis can instead be done without this package?

But I need to take a closer look and I am unsure when I will have time for this.

@ybiquitous
Copy link
Copy Markdown
Member

@romainmenke Thanks a lot for providing helpful information. Your concern about the @csstools/css-calc package makes sense to me, and I understand that your time for OSS is limited. Please take care of your own time. 😃

It looks like all the test cases added by this PR cover a wide range of use cases, but to be honest, are you concerned that the math function support might be causing a bunch of false positives and reported issues?

Also, could we mitigate this by documenting the limitation in the rule's README?

As much as possible, I'd like to avoid potential issues that can exhaust maintainers.

@romainmenke
Copy link
Copy Markdown
Member

First of all, thank you for working on this @ragini-pandey 🙇
I think this direction is indeed interesting and will help users avoid some issues 🎉


I think the current approach will only cause false negatives and no (or very few) false positives.

We might have to tweak the rule in the future in case math functions are added that do mix numbers with either dimensions or percentages. I recall such a function being discussed in the CSSWG recently but don't remember what it was. I hope I stumble on it again :) But this is the only source of false negatives this approach can cause.

As @ragini-pandey stated the rule is conservative and I think that is the right tradeoff for now :)


Some interesting false positives:

Demo

.a {
  width: calc(20ms + 10%);
}

.b {
  width: calc((50px) + 50);
  width: calc((30px + 20px) + (30 + 20));
  width: calc(calc(30px + 20px) + calc(30 + 20));
}

I think that the chance of user error goes up as complexity of the expression increases.
So it would be nice if we can also handle some of these cases.

But we can also do that in a follow up issue.


Overal I think this change is good :)
It strikes a good balance between adding some extra reporting and having too much complexity here in Stylelint for something that should be added upstream in csstree.

Thank you again @ragini-pandey for working on this

@ragini-pandey
Copy link
Copy Markdown
Contributor Author

ragini-pandey commented Feb 5, 2026

Thank you for such a detailed and through review @jeddy3 @ybiquitous @romainmenke
Learned a lot and will carry these learnings forward in upcoming PRs.

Copy link
Copy Markdown
Member

@ybiquitous ybiquitous left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@romainmenke Thanks for your thoughts. We can go ahead.

@ragini-pandey Thanks for addressing my requests, LGTM 👍🏼

Copy link
Copy Markdown
Member

@jeddy3 jeddy3 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@ragini-pandey Thank you for the pull request. It's looking great.

@ybiquitous & @romainmenke Thanks for the first reviews; it shaped up nicely.

I've requested a couple of changes: a style nit and a performance one.

This is one of our slowest rules, and tokenising adds an additional overhead. We can mitigate it with an early, cheap (regex) check before doing a thorough one.

Benchmarks:

# Baseline (`main`)
Warnings: 40
Mean: 745.3653410909092 ms
Deviation: 40.79649635044739 ms

# This branch:
Warnings: 40
Mean: 837.4639167 ms
Deviation: 42.56683379415065 ms

# With cheap check:
Warnings: 40
Mean: 747.5652725454546 ms
Deviation: 51.039669110864516 ms

import { mathFunctions } from '../../reference/functions.mjs';

const { next: syntaxPatches } = syntaxPatchesJson;

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Suggested change
const HAS_MATH_FUNCTION = new RegExp(`\\b(?:${[...mathFunctions.values()].join('|')})\\(`, 'i');

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Done

@ragini-pandey
Copy link
Copy Markdown
Contributor Author

I’m having trouble hitting 98% coverage. I tried using AI as well, but some negative cases seem impossible to cover.

Screenshot 2026-02-06 at 11 55 23 PM

@ragini-pandey ragini-pandey requested a review from jeddy3 February 6, 2026 18:28
Copy link
Copy Markdown
Member

@jeddy3 jeddy3 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for making the changes. LGTM, thank you!

I’m having trouble hitting 98% coverage

I think that's fine as it's sometimes not possible.

@ragini-pandey
Copy link
Copy Markdown
Contributor Author

Thanks for making the changes. LGTM, thank you!

I’m having trouble hitting 98% coverage

I think that's fine as it's sometimes not possible.

Ohk. Understood.
Then how do we merge this PR with failing check of codecov/patc?

@jeddy3 jeddy3 merged commit 8ea57a9 into stylelint:main Feb 8, 2026
15 of 16 checks passed
@jeddy3
Copy link
Copy Markdown
Member

jeddy3 commented Feb 8, 2026

Merged, thank you. Your fix will be included in the next release.

Then how do we merge this PR with failing check of codecov/patc?

Maintainers have the permissions to do that.

renovate bot added a commit to andrei-picus-tink/auto-renovate that referenced this pull request Feb 11, 2026
| datasource | package   | from   | to     |
| ---------- | --------- | ------ | ------ |
| npm        | stylelint | 17.1.0 | 17.2.0 |


## [v17.2.0](https://github.com/stylelint/stylelint/blob/HEAD/CHANGELOG.md#1720---2026-02-10)

It fixes 7 bugs, including 5 performance ones that make Stylelint 7x faster and use 3x less memory on larger codebases such as design systems and monorepos. We also restructured our docs to create a [contributor guide](CONTRIBUTING.md). If you'd like to help out and contribute to Stylelint, that's the place to start.

- Fixed: performance of config augmentation and module imports ([#9021](stylelint/stylelint#9021)) ([@adalinesimonian](https://github.com/adalinesimonian)).
- Fixed: performance of config override matching ([#9023](stylelint/stylelint#9023)) ([@adalinesimonian](https://github.com/adalinesimonian)).
- Fixed: performance of config resolution ([#9033](stylelint/stylelint#9033)) ([@adalinesimonian](https://github.com/adalinesimonian)).
- Fixed: performance of rule resolution ([#9022](stylelint/stylelint#9022)) ([@adalinesimonian](https://github.com/adalinesimonian)).
- Fixed: `declaration-property-value-no-unknown` false negatives for math functions ([#9011](stylelint/stylelint#9011)) ([@ragini-pandey](https://github.com/ragini-pandey)).
- Fixed: `no-duplicate-selectors` false negatives for matching escaped selectors ([#8953](stylelint/stylelint#8953)) ([@bjnewman](https://github.com/bjnewman)).
- Fixed: `no-invalid-position-at-import-rule` false negatives for layers with blocks ([#9026](stylelint/stylelint#9026)) ([@romainmenke](https://github.com/romainmenke)).


## [v17.1.1](https://github.com/stylelint/stylelint/blob/HEAD/CHANGELOG.md#1711---2026-02-03)

It fixes 2 bugs.

- Fixed: resolution of configs, plugins, processors, and custom syntaxes in Yarn PnP environments ([#9010](stylelint/stylelint#9010)) ([@adalinesimonian](https://github.com/adalinesimonian)).
- Fixed: `lightness-notation` autofix for decimals ([#9009](stylelint/stylelint#9009)) ([@IlyaSemenov](https://github.com/IlyaSemenov)).
renovate bot added a commit to andrei-picus-tink/auto-renovate that referenced this pull request Feb 13, 2026
| datasource | package   | from   | to     |
| ---------- | --------- | ------ | ------ |
| npm        | stylelint | 17.1.0 | 17.3.0 |


## [v17.3.0](https://github.com/stylelint/stylelint/blob/HEAD/CHANGELOG.md#1730---2026-02-13)

It fixes 17 bugs. 3 related to supporting `calc()` in `declaration-property-value-no-unknown`, and 13 performance ones that make Stylelint a further 3x faster when using the rules in our [standard config](https://www.npmjs.com/package/stylelint-config-standard).

- Fixed: performance of rule sequencing ([#9055](stylelint/stylelint#9055)) ([@jeddy3](https://github.com/jeddy3)).
- Fixed: `*-list` performance ([#9056](stylelint/stylelint#9056)) ([@jeddy3](https://github.com/jeddy3)).
- Fixed: `*-notation` performance ([#9044](stylelint/stylelint#9044)) ([@jeddy3](https://github.com/jeddy3)).
- Fixed: `declaration-property-max-values` performance ([#9057](stylelint/stylelint#9057)) ([@jeddy3](https://github.com/jeddy3)).
- Fixed: `declaration-property-value-keyword-no-deprecated` performance ([#9058](stylelint/stylelint#9058)) ([@jeddy3](https://github.com/jeddy3)).
- Fixed: `declaration-property-value-no-unknown` false negatives for math functions inside of non-math functions ([#9064](stylelint/stylelint#9064)) ([@romainmenke](https://github.com/romainmenke)).
- Fixed: `declaration-property-value-no-unknown` false positives for `calc()` with mixed operations ([#9064](stylelint/stylelint#9064)) ([@romainmenke](https://github.com/romainmenke)).
- Fixed: `declaration-property-value-no-unknown` performance ([#9062](stylelint/stylelint#9062)) ([@jeddy3](https://github.com/jeddy3)).
- Fixed: `declaration-property-value-no-unknown` reported ranges for multiple math functions ([#9064](stylelint/stylelint#9064)) ([@romainmenke](https://github.com/romainmenke)).
- Fixed: `length-zero-no-unit` performance ([#9046](stylelint/stylelint#9046)) ([@jeddy3](https://github.com/jeddy3)).
- Fixed: `named-grid-areas-no-invalid` false positives for mix of tabs and spaces ([#9039](stylelint/stylelint#9039)) ([@adalinesimonian](https://github.com/adalinesimonian)).
- Fixed: `no-unknown-custom-media` performance ([#9059](stylelint/stylelint#9059)) ([@jeddy3](https://github.com/jeddy3)).
- Fixed: `selector-max-*` performance ([#9042](stylelint/stylelint#9042)) ([@jeddy3](https://github.com/jeddy3)).
- Fixed: `shorthand-property-no-redundant-values` performance ([#9047](stylelint/stylelint#9047)) ([@jeddy3](https://github.com/jeddy3)).
- Fixed: `syntax-string-no-invalid` performance ([#9061](stylelint/stylelint#9061)) ([@jeddy3](https://github.com/jeddy3)).
- Fixed: `time-min-milliseconds` performance ([#9060](stylelint/stylelint#9060)) ([@jeddy3](https://github.com/jeddy3)).
- Fixed: `value-keyword-case` performance ([#9048](stylelint/stylelint#9048)) ([@jeddy3](https://github.com/jeddy3)).


## [v17.2.0](https://github.com/stylelint/stylelint/blob/HEAD/CHANGELOG.md#1720---2026-02-10)

It fixes 7 bugs, including 5 performance ones that make Stylelint 7x faster and use 3x less memory on larger codebases such as design systems and monorepos. We also restructured our docs to create a [contributor guide](CONTRIBUTING.md). If you'd like to help out and contribute to Stylelint, that's the place to start.

- Fixed: performance of config augmentation and module imports ([#9021](stylelint/stylelint#9021)) ([@adalinesimonian](https://github.com/adalinesimonian)).
- Fixed: performance of config override matching ([#9023](stylelint/stylelint#9023)) ([@adalinesimonian](https://github.com/adalinesimonian)).
- Fixed: performance of config resolution ([#9033](stylelint/stylelint#9033)) ([@adalinesimonian](https://github.com/adalinesimonian)).
- Fixed: performance of rule resolution ([#9022](stylelint/stylelint#9022)) ([@adalinesimonian](https://github.com/adalinesimonian)).
- Fixed: `declaration-property-value-no-unknown` false negatives for math functions ([#9011](stylelint/stylelint#9011)) ([@ragini-pandey](https://github.com/ragini-pandey)).
- Fixed: `no-duplicate-selectors` false negatives for matching escaped selectors ([#8953](stylelint/stylelint#8953)) ([@bjnewman](https://github.com/bjnewman)).
- Fixed: `no-invalid-position-at-import-rule` false negatives for layers with blocks ([#9026](stylelint/stylelint#9026)) ([@romainmenke](https://github.com/romainmenke)).


## [v17.1.1](https://github.com/stylelint/stylelint/blob/HEAD/CHANGELOG.md#1711---2026-02-03)

It fixes 2 bugs.

- Fixed: resolution of configs, plugins, processors, and custom syntaxes in Yarn PnP environments ([#9010](stylelint/stylelint#9010)) ([@adalinesimonian](https://github.com/adalinesimonian)).
- Fixed: `lightness-notation` autofix for decimals ([#9009](stylelint/stylelint#9009)) ([@IlyaSemenov](https://github.com/IlyaSemenov)).
renovate bot added a commit to andrei-picus-tink/auto-renovate that referenced this pull request Feb 13, 2026
| datasource | package   | from   | to     |
| ---------- | --------- | ------ | ------ |
| npm        | stylelint | 17.1.0 | 17.3.0 |


## [v17.3.0](https://github.com/stylelint/stylelint/blob/HEAD/CHANGELOG.md#1730---2026-02-13)

It fixes 17 bugs. 3 related to supporting `calc()` in `declaration-property-value-no-unknown`, and 13 performance ones that make Stylelint a further 3x faster when using the rules in our [standard config](https://www.npmjs.com/package/stylelint-config-standard).

- Fixed: performance of rule sequencing ([#9055](stylelint/stylelint#9055)) ([@jeddy3](https://github.com/jeddy3)).
- Fixed: `*-list` performance ([#9056](stylelint/stylelint#9056)) ([@jeddy3](https://github.com/jeddy3)).
- Fixed: `*-notation` performance ([#9044](stylelint/stylelint#9044)) ([@jeddy3](https://github.com/jeddy3)).
- Fixed: `declaration-property-max-values` performance ([#9057](stylelint/stylelint#9057)) ([@jeddy3](https://github.com/jeddy3)).
- Fixed: `declaration-property-value-keyword-no-deprecated` performance ([#9058](stylelint/stylelint#9058)) ([@jeddy3](https://github.com/jeddy3)).
- Fixed: `declaration-property-value-no-unknown` false negatives for math functions inside of non-math functions ([#9064](stylelint/stylelint#9064)) ([@romainmenke](https://github.com/romainmenke)).
- Fixed: `declaration-property-value-no-unknown` false positives for `calc()` with mixed operations ([#9064](stylelint/stylelint#9064)) ([@romainmenke](https://github.com/romainmenke)).
- Fixed: `declaration-property-value-no-unknown` performance ([#9062](stylelint/stylelint#9062)) ([@jeddy3](https://github.com/jeddy3)).
- Fixed: `declaration-property-value-no-unknown` reported ranges for multiple math functions ([#9064](stylelint/stylelint#9064)) ([@romainmenke](https://github.com/romainmenke)).
- Fixed: `length-zero-no-unit` performance ([#9046](stylelint/stylelint#9046)) ([@jeddy3](https://github.com/jeddy3)).
- Fixed: `named-grid-areas-no-invalid` false positives for mix of tabs and spaces ([#9039](stylelint/stylelint#9039)) ([@adalinesimonian](https://github.com/adalinesimonian)).
- Fixed: `no-unknown-custom-media` performance ([#9059](stylelint/stylelint#9059)) ([@jeddy3](https://github.com/jeddy3)).
- Fixed: `selector-max-*` performance ([#9042](stylelint/stylelint#9042)) ([@jeddy3](https://github.com/jeddy3)).
- Fixed: `shorthand-property-no-redundant-values` performance ([#9047](stylelint/stylelint#9047)) ([@jeddy3](https://github.com/jeddy3)).
- Fixed: `syntax-string-no-invalid` performance ([#9061](stylelint/stylelint#9061)) ([@jeddy3](https://github.com/jeddy3)).
- Fixed: `time-min-milliseconds` performance ([#9060](stylelint/stylelint#9060)) ([@jeddy3](https://github.com/jeddy3)).
- Fixed: `value-keyword-case` performance ([#9048](stylelint/stylelint#9048)) ([@jeddy3](https://github.com/jeddy3)).


## [v17.2.0](https://github.com/stylelint/stylelint/blob/HEAD/CHANGELOG.md#1720---2026-02-10)

It fixes 7 bugs, including 5 performance ones that make Stylelint 7x faster and use 3x less memory on larger codebases such as design systems and monorepos. We also restructured our docs to create a [contributor guide](CONTRIBUTING.md). If you'd like to help out and contribute to Stylelint, that's the place to start.

- Fixed: performance of config augmentation and module imports ([#9021](stylelint/stylelint#9021)) ([@adalinesimonian](https://github.com/adalinesimonian)).
- Fixed: performance of config override matching ([#9023](stylelint/stylelint#9023)) ([@adalinesimonian](https://github.com/adalinesimonian)).
- Fixed: performance of config resolution ([#9033](stylelint/stylelint#9033)) ([@adalinesimonian](https://github.com/adalinesimonian)).
- Fixed: performance of rule resolution ([#9022](stylelint/stylelint#9022)) ([@adalinesimonian](https://github.com/adalinesimonian)).
- Fixed: `declaration-property-value-no-unknown` false negatives for math functions ([#9011](stylelint/stylelint#9011)) ([@ragini-pandey](https://github.com/ragini-pandey)).
- Fixed: `no-duplicate-selectors` false negatives for matching escaped selectors ([#8953](stylelint/stylelint#8953)) ([@bjnewman](https://github.com/bjnewman)).
- Fixed: `no-invalid-position-at-import-rule` false negatives for layers with blocks ([#9026](stylelint/stylelint#9026)) ([@romainmenke](https://github.com/romainmenke)).


## [v17.1.1](https://github.com/stylelint/stylelint/blob/HEAD/CHANGELOG.md#1711---2026-02-03)

It fixes 2 bugs.

- Fixed: resolution of configs, plugins, processors, and custom syntaxes in Yarn PnP environments ([#9010](stylelint/stylelint#9010)) ([@adalinesimonian](https://github.com/adalinesimonian)).
- Fixed: `lightness-notation` autofix for decimals ([#9009](stylelint/stylelint#9009)) ([@IlyaSemenov](https://github.com/IlyaSemenov)).
renovate bot added a commit to andrei-picus-tink/auto-renovate that referenced this pull request Feb 14, 2026
| datasource | package   | from   | to     |
| ---------- | --------- | ------ | ------ |
| npm        | stylelint | 17.1.0 | 17.3.0 |


## [v17.3.0](https://github.com/stylelint/stylelint/blob/HEAD/CHANGELOG.md#1730---2026-02-13)

It fixes 17 bugs. 3 related to supporting `calc()` in `declaration-property-value-no-unknown`, and 13 performance ones that make Stylelint a further 3x faster when using the rules in our [standard config](https://www.npmjs.com/package/stylelint-config-standard).

- Fixed: performance of rule sequencing ([#9055](stylelint/stylelint#9055)) ([@jeddy3](https://github.com/jeddy3)).
- Fixed: `*-list` performance ([#9056](stylelint/stylelint#9056)) ([@jeddy3](https://github.com/jeddy3)).
- Fixed: `*-notation` performance ([#9044](stylelint/stylelint#9044)) ([@jeddy3](https://github.com/jeddy3)).
- Fixed: `declaration-property-max-values` performance ([#9057](stylelint/stylelint#9057)) ([@jeddy3](https://github.com/jeddy3)).
- Fixed: `declaration-property-value-keyword-no-deprecated` performance ([#9058](stylelint/stylelint#9058)) ([@jeddy3](https://github.com/jeddy3)).
- Fixed: `declaration-property-value-no-unknown` false negatives for math functions inside of non-math functions ([#9064](stylelint/stylelint#9064)) ([@romainmenke](https://github.com/romainmenke)).
- Fixed: `declaration-property-value-no-unknown` false positives for `calc()` with mixed operations ([#9064](stylelint/stylelint#9064)) ([@romainmenke](https://github.com/romainmenke)).
- Fixed: `declaration-property-value-no-unknown` performance ([#9062](stylelint/stylelint#9062)) ([@jeddy3](https://github.com/jeddy3)).
- Fixed: `declaration-property-value-no-unknown` reported ranges for multiple math functions ([#9064](stylelint/stylelint#9064)) ([@romainmenke](https://github.com/romainmenke)).
- Fixed: `length-zero-no-unit` performance ([#9046](stylelint/stylelint#9046)) ([@jeddy3](https://github.com/jeddy3)).
- Fixed: `named-grid-areas-no-invalid` false positives for mix of tabs and spaces ([#9039](stylelint/stylelint#9039)) ([@adalinesimonian](https://github.com/adalinesimonian)).
- Fixed: `no-unknown-custom-media` performance ([#9059](stylelint/stylelint#9059)) ([@jeddy3](https://github.com/jeddy3)).
- Fixed: `selector-max-*` performance ([#9042](stylelint/stylelint#9042)) ([@jeddy3](https://github.com/jeddy3)).
- Fixed: `shorthand-property-no-redundant-values` performance ([#9047](stylelint/stylelint#9047)) ([@jeddy3](https://github.com/jeddy3)).
- Fixed: `syntax-string-no-invalid` performance ([#9061](stylelint/stylelint#9061)) ([@jeddy3](https://github.com/jeddy3)).
- Fixed: `time-min-milliseconds` performance ([#9060](stylelint/stylelint#9060)) ([@jeddy3](https://github.com/jeddy3)).
- Fixed: `value-keyword-case` performance ([#9048](stylelint/stylelint#9048)) ([@jeddy3](https://github.com/jeddy3)).


## [v17.2.0](https://github.com/stylelint/stylelint/blob/HEAD/CHANGELOG.md#1720---2026-02-10)

It fixes 7 bugs, including 5 performance ones that make Stylelint 7x faster and use 3x less memory on larger codebases such as design systems and monorepos. We also restructured our docs to create a [contributor guide](CONTRIBUTING.md). If you'd like to help out and contribute to Stylelint, that's the place to start.

- Fixed: performance of config augmentation and module imports ([#9021](stylelint/stylelint#9021)) ([@adalinesimonian](https://github.com/adalinesimonian)).
- Fixed: performance of config override matching ([#9023](stylelint/stylelint#9023)) ([@adalinesimonian](https://github.com/adalinesimonian)).
- Fixed: performance of config resolution ([#9033](stylelint/stylelint#9033)) ([@adalinesimonian](https://github.com/adalinesimonian)).
- Fixed: performance of rule resolution ([#9022](stylelint/stylelint#9022)) ([@adalinesimonian](https://github.com/adalinesimonian)).
- Fixed: `declaration-property-value-no-unknown` false negatives for math functions ([#9011](stylelint/stylelint#9011)) ([@ragini-pandey](https://github.com/ragini-pandey)).
- Fixed: `no-duplicate-selectors` false negatives for matching escaped selectors ([#8953](stylelint/stylelint#8953)) ([@bjnewman](https://github.com/bjnewman)).
- Fixed: `no-invalid-position-at-import-rule` false negatives for layers with blocks ([#9026](stylelint/stylelint#9026)) ([@romainmenke](https://github.com/romainmenke)).


## [v17.1.1](https://github.com/stylelint/stylelint/blob/HEAD/CHANGELOG.md#1711---2026-02-03)

It fixes 2 bugs.

- Fixed: resolution of configs, plugins, processors, and custom syntaxes in Yarn PnP environments ([#9010](stylelint/stylelint#9010)) ([@adalinesimonian](https://github.com/adalinesimonian)).
- Fixed: `lightness-notation` autofix for decimals ([#9009](stylelint/stylelint#9009)) ([@IlyaSemenov](https://github.com/IlyaSemenov)).
robbevp pushed a commit to robbevp/website-robbevanpetegem that referenced this pull request Feb 28, 2026
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [eslint](https://eslint.org) ([source](https://github.com/eslint/eslint)) | devDependencies | patch | [`9.39.2` -> `9.39.3`](https://renovatebot.com/diffs/npm/eslint/9.39.2/9.39.3) |
| [prettier](https://prettier.io) ([source](https://github.com/prettier/prettier)) | devDependencies | patch | [`3.8.0` -> `3.8.1`](https://renovatebot.com/diffs/npm/prettier/3.8.0/3.8.1) |
| [stylelint](https://stylelint.io) ([source](https://github.com/stylelint/stylelint)) | devDependencies | minor | [`17.0.0` -> `17.4.0`](https://renovatebot.com/diffs/npm/stylelint/17.0.0/17.4.0) |

---

### Release Notes

<details>
<summary>eslint/eslint (eslint)</summary>

### [`v9.39.3`](https://github.com/eslint/eslint/releases/tag/v9.39.3)

[Compare Source](eslint/eslint@v9.39.2...v9.39.3)

#### Bug Fixes

- [`791bf8d`](eslint/eslint@791bf8d) fix: restore TypeScript 4.0 compatibility in types ([#&#8203;20504](eslint/eslint#20504)) (sethamus)

#### Chores

- [`8594a43`](eslint/eslint@8594a43) chore: upgrade [@&#8203;eslint/js](https://github.com/eslint/js)@&#8203;9.39.3 ([#&#8203;20529](eslint/eslint#20529)) (Milos Djermanovic)
- [`9ceef92`](eslint/eslint@9ceef92) chore: package.json update for [@&#8203;eslint/js](https://github.com/eslint/js) release (Jenkins)
- [`af498c6`](eslint/eslint@af498c6) chore: ignore `/docs/v9.x` in link checker ([#&#8203;20453](eslint/eslint#20453)) (Milos Djermanovic)

</details>

<details>
<summary>prettier/prettier (prettier)</summary>

### [`v3.8.1`](https://github.com/prettier/prettier/blob/HEAD/CHANGELOG.md#381)

[Compare Source](prettier/prettier@3.8.0...3.8.1)

[diff](prettier/prettier@3.8.0...3.8.1)

##### Include available `printers` in plugin type declarations ([#&#8203;18706](prettier/prettier#18706) by [@&#8203;porada](https://github.com/porada))

<!-- prettier-ignore -->

```ts
// Input
import * as prettierPluginEstree from "prettier/plugins/estree";

// Prettier 3.8.0
// Property 'printers' does not exist on type 'typeof import("prettier/plugins/estree")'. ts(2339)
prettierPluginEstree.printers.estree; //=> any

// Prettier 3.8.1
prettierPluginEstree.printers.estree; //=> Printer
prettierPluginEstree.printers["estree-json"]; //=> Printer
```

</details>

<details>
<summary>stylelint/stylelint (stylelint)</summary>

### [`v17.4.0`](https://github.com/stylelint/stylelint/blob/HEAD/CHANGELOG.md#1740---2026-02-25)

[Compare Source](stylelint/stylelint@17.3.0...17.4.0)

It adds 2 options to the rules and fixes 7 bugs.

- Added: `ignoreAtRules: []` to `at-rule-no-vendor-prefix` ([#&#8203;9096](stylelint/stylelint#9096)) ([@&#8203;theacrat](https://github.com/theacrat)).
- Added: `ignoreMediaFeatureNames: []` to `media-feature-name-no-vendor-prefix` ([#&#8203;9097](stylelint/stylelint#9097)) ([@&#8203;theacrat](https://github.com/theacrat)).
- Fixed: performance of selector cloning rules ([#&#8203;9089](stylelint/stylelint#9089)) ([@&#8203;jeddy3](https://github.com/jeddy3)).
- Fixed: `*-empty-line-before` performance ([#&#8203;9092](stylelint/stylelint#9092)) ([@&#8203;jeddy3](https://github.com/jeddy3)).
- Fixed: `declaration-property-value-no-unknown` performance ([#&#8203;9090](stylelint/stylelint#9090)) ([@&#8203;jeddy3](https://github.com/jeddy3)).
- Fixed: `no-irregular-whitespace` performance ([#&#8203;9091](stylelint/stylelint#9091)) ([@&#8203;jeddy3](https://github.com/jeddy3)).
- Fixed: `property-no-unknown` false negatives for at-rule descriptors ([#&#8203;9109](stylelint/stylelint#9109)) ([@&#8203;jeddy3](https://github.com/jeddy3)).
- Fixed: `property-no-unknown` false positives for `corner-shape` ([#&#8203;9099](stylelint/stylelint#9099)) ([@&#8203;jeddy3](https://github.com/jeddy3)).
- Fixed: `property-no-unknown` false positives for double-slashed properties ([#&#8203;9099](stylelint/stylelint#9099)) ([@&#8203;jeddy3](https://github.com/jeddy3)).

### [`v17.3.0`](https://github.com/stylelint/stylelint/blob/HEAD/CHANGELOG.md#1730---2026-02-13)

[Compare Source](stylelint/stylelint@17.2.0...17.3.0)

It fixes 17 bugs. 3 related to supporting `calc()` in `declaration-property-value-no-unknown`, and 13 performance ones that make Stylelint a further 3x faster when using the rules in our [standard config](https://www.npmjs.com/package/stylelint-config-standard).

- Fixed: performance of rule sequencing ([#&#8203;9055](stylelint/stylelint#9055)) ([@&#8203;jeddy3](https://github.com/jeddy3)).
- Fixed: `*-list` performance ([#&#8203;9056](stylelint/stylelint#9056)) ([@&#8203;jeddy3](https://github.com/jeddy3)).
- Fixed: `*-notation` performance ([#&#8203;9044](stylelint/stylelint#9044)) ([@&#8203;jeddy3](https://github.com/jeddy3)).
- Fixed: `declaration-property-max-values` performance ([#&#8203;9057](stylelint/stylelint#9057)) ([@&#8203;jeddy3](https://github.com/jeddy3)).
- Fixed: `declaration-property-value-keyword-no-deprecated` performance ([#&#8203;9058](stylelint/stylelint#9058)) ([@&#8203;jeddy3](https://github.com/jeddy3)).
- Fixed: `declaration-property-value-no-unknown` false negatives for math functions inside of non-math functions ([#&#8203;9064](stylelint/stylelint#9064)) ([@&#8203;romainmenke](https://github.com/romainmenke)).
- Fixed: `declaration-property-value-no-unknown` false positives for `calc()` with mixed operations ([#&#8203;9064](stylelint/stylelint#9064)) ([@&#8203;romainmenke](https://github.com/romainmenke)).
- Fixed: `declaration-property-value-no-unknown` performance ([#&#8203;9062](stylelint/stylelint#9062)) ([@&#8203;jeddy3](https://github.com/jeddy3)).
- Fixed: `declaration-property-value-no-unknown` reported ranges for multiple math functions ([#&#8203;9064](stylelint/stylelint#9064)) ([@&#8203;romainmenke](https://github.com/romainmenke)).
- Fixed: `length-zero-no-unit` performance ([#&#8203;9046](stylelint/stylelint#9046)) ([@&#8203;jeddy3](https://github.com/jeddy3)).
- Fixed: `named-grid-areas-no-invalid` false positives for mix of tabs and spaces ([#&#8203;9039](stylelint/stylelint#9039)) ([@&#8203;adalinesimonian](https://github.com/adalinesimonian)).
- Fixed: `no-unknown-custom-media` performance ([#&#8203;9059](stylelint/stylelint#9059)) ([@&#8203;jeddy3](https://github.com/jeddy3)).
- Fixed: `selector-max-*` performance ([#&#8203;9042](stylelint/stylelint#9042)) ([@&#8203;jeddy3](https://github.com/jeddy3)).
- Fixed: `shorthand-property-no-redundant-values` performance ([#&#8203;9047](stylelint/stylelint#9047)) ([@&#8203;jeddy3](https://github.com/jeddy3)).
- Fixed: `syntax-string-no-invalid` performance ([#&#8203;9061](stylelint/stylelint#9061)) ([@&#8203;jeddy3](https://github.com/jeddy3)).
- Fixed: `time-min-milliseconds` performance ([#&#8203;9060](stylelint/stylelint#9060)) ([@&#8203;jeddy3](https://github.com/jeddy3)).
- Fixed: `value-keyword-case` performance ([#&#8203;9048](stylelint/stylelint#9048)) ([@&#8203;jeddy3](https://github.com/jeddy3)).

### [`v17.2.0`](https://github.com/stylelint/stylelint/blob/HEAD/CHANGELOG.md#1720---2026-02-10)

[Compare Source](stylelint/stylelint@17.1.1...17.2.0)

It fixes 7 bugs, including 5 performance ones that make Stylelint 7x faster and use 3x less memory on larger codebases such as design systems and monorepos. We also restructured our docs to create a [contributor guide](CONTRIBUTING.md). If you'd like to help out and contribute to Stylelint, that's the place to start.

- Fixed: performance of config augmentation and module imports ([#&#8203;9021](stylelint/stylelint#9021)) ([@&#8203;adalinesimonian](https://github.com/adalinesimonian)).
- Fixed: performance of config override matching ([#&#8203;9023](stylelint/stylelint#9023)) ([@&#8203;adalinesimonian](https://github.com/adalinesimonian)).
- Fixed: performance of config resolution ([#&#8203;9033](stylelint/stylelint#9033)) ([@&#8203;adalinesimonian](https://github.com/adalinesimonian)).
- Fixed: performance of rule resolution ([#&#8203;9022](stylelint/stylelint#9022)) ([@&#8203;adalinesimonian](https://github.com/adalinesimonian)).
- Fixed: `declaration-property-value-no-unknown` false negatives for math functions ([#&#8203;9011](stylelint/stylelint#9011)) ([@&#8203;ragini-pandey](https://github.com/ragini-pandey)).
- Fixed: `no-duplicate-selectors` false negatives for matching escaped selectors ([#&#8203;8953](stylelint/stylelint#8953)) ([@&#8203;bjnewman](https://github.com/bjnewman)).
- Fixed: `no-invalid-position-at-import-rule` false negatives for layers with blocks ([#&#8203;9026](stylelint/stylelint#9026)) ([@&#8203;romainmenke](https://github.com/romainmenke)).

### [`v17.1.1`](https://github.com/stylelint/stylelint/blob/HEAD/CHANGELOG.md#1711---2026-02-03)

[Compare Source](stylelint/stylelint@17.1.0...17.1.1)

It fixes 2 bugs.

- Fixed: resolution of configs, plugins, processors, and custom syntaxes in Yarn PnP environments ([#&#8203;9010](stylelint/stylelint#9010)) ([@&#8203;adalinesimonian](https://github.com/adalinesimonian)).
- Fixed: `lightness-notation` autofix for decimals ([#&#8203;9009](stylelint/stylelint#9009)) ([@&#8203;IlyaSemenov](https://github.com/IlyaSemenov)).

### [`v17.1.0`](https://github.com/stylelint/stylelint/blob/HEAD/CHANGELOG.md#1710---2026-01-30)

[Compare Source](stylelint/stylelint@17.0.0...17.1.0)

It fixes 5 bugs and adds the `display-notation` rule. Before we turn it on in our [standard config](https://www.npmjs.com/package/stylelint-config-standard), we'd like to [hear the community's thoughts](stylelint/stylelint-config-standard#387) on which options to use.

- Added: `display-notation` rule ([#&#8203;8981](stylelint/stylelint#8981)) ([@&#8203;romainmenke](https://github.com/romainmenke)).
- Fixed: `GlobbyOptions` TypeScript errors ([#&#8203;8992](stylelint/stylelint#8992)) ([@&#8203;zalishchuk](https://github.com/zalishchuk)).
- Fixed: `hue-degree-notation` false negatives and positives for relative colors ([#&#8203;8985](stylelint/stylelint#8985)) ([@&#8203;jamesnw](https://github.com/jamesnw)).
- Fixed: `lightness-notation` false negatives for relative colors ([#&#8203;8987](stylelint/stylelint#8987)) ([@&#8203;jamesnw](https://github.com/jamesnw)).
- Fixed: `selector-type-no-unknown` false positives for `geolocation` and `usermedia` ([#&#8203;9004](stylelint/stylelint#9004)) ([@&#8203;Mouvedia](https://github.com/Mouvedia)).
- Fixed: `selector-type-no-unknown` false positives for `rb`, `rtc` and `menuitem` ([#&#8203;8972](stylelint/stylelint#8972)) ([@&#8203;Mouvedia](https://github.com/Mouvedia)).

</details>

---

### Configuration

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

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

♻ **Rebasing**: Whenever PR becomes conflicted, 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:eyJjcmVhdGVkSW5WZXIiOiI0MS42MS4wIiwidXBkYXRlZEluVmVyIjoiNDEuNjEuMCIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOltdfQ==-->

Reviewed-on: https://git.robbevp.be/robbevp/website-robbevanpetegem/pulls/505
Co-authored-by: Renovate Bot <[email protected]>
Co-committed-by: Renovate Bot <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

Fix declaration-property-value-no-unknown false negatives for math functions

4 participants