-
-
Notifications
You must be signed in to change notification settings - Fork 941
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add selector-pseudo-class-allowed-list
@page
support
#8176
Conversation
🦋 Changeset detectedLatest commit: 17c3e4e The changes in this PR will be included in the next version bump. This PR includes changesets to release 1 package
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 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you @Mouvedia
I've left some questions and a suggestion, please take a look when you have time.
lib/rules/selector-pseudo-class-allowed-list/__tests__/index.mjs
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you for applying the feedback @Mouvedia
I've left two suggestions to improve code coverage.
}); | ||
|
||
root.walkAtRules('page', (atRuleNode) => { | ||
if (!isStandardSyntaxAtRule(atRuleNode)) return; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can we add a test with a non-standard at rule?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think that codecov is being overzealous with these warnings.
i.e. it would be akin to adding cases to isStandardSyntaxAtRule.test.mjs
directly
If you have a relevant test to add to /selector-pseudo-class-allowed-list/__tests__/index.mjs
please provide it.
To be clear I think that new tests could probably be added to isStandardSyntaxAtRule.test.mjs
but I won't add them in this PR.
e.g. margin at-rules
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think it could be fine to add a single test with non standard syntax.
Not to test the utility itself, but to encode that this rule doesn't support non-standard syntax in at rules.
But I don't think this is blocking :)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thank you. LGTM 👍
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, thanks.
| datasource | package | from | to | | ---------- | --------- | ------- | ------- | | npm | stylelint | 16.11.0 | 16.12.0 | ## [v16.12.0](https://github.com/stylelint/stylelint/blob/HEAD/CHANGELOG.md#16120) - Added: `selector-pseudo-class-allowed-list` now checks `@page` pseudo-classes ([#8176](stylelint/stylelint#8176)) ([@Mouvedia](https://github.com/Mouvedia)). - Added: `selector-pseudo-class-disallowed-list` now checks `@page` pseudo-classes ([#8171](stylelint/stylelint#8171)) ([@Mouvedia](https://github.com/Mouvedia)). - Fixed: `at-rule-property-required-list` message to use "descriptor" for accuracy ([#8186](stylelint/stylelint#8186)) ([@ybiquitous](https://github.com/ybiquitous)). - Fixed: `custom-property-no-missing-var-function` false positives for `container-name` ([#8157](stylelint/stylelint#8157)) ([@Mouvedia](https://github.com/Mouvedia)). - Fixed: `custom-property-no-missing-var-function` false positives for custom properties passed to `running()` ([#8172](stylelint/stylelint#8172)) ([@Mouvedia](https://github.com/Mouvedia)). - Fixed: `function-no-unknown` false positives for `running()` ([#8172](stylelint/stylelint#8172)) ([@Mouvedia](https://github.com/Mouvedia)). - Fixed: `selector-pseudo-class-no-unknown` false positives for `:open` ([#8184](stylelint/stylelint#8184)) ([@lukewarlow](https://github.com/lukewarlow)). - Fixed: `selector-pseudo-class-no-unknown` false positives for `:recto`, `:verso` and `:nth()` ([#8170](stylelint/stylelint#8170)) ([@Mouvedia](https://github.com/Mouvedia)). - Fixed: `selector-pseudo-class-no-unknown` false positives for some `moz-*` vendor-prefixed pseudo-classes ([#8188](stylelint/stylelint#8188)) ([@Mouvedia](https://github.com/Mouvedia)). - Fixed: `selector-pseudo-element-no-unknown` false positives for `::details-content` ([#8174](stylelint/stylelint#8174)) ([@lukewarlow](https://github.com/lukewarlow)). - Fixed: `selector-type-no-unknown` false positives for idents in functional pseudo-classes ([#8191](stylelint/stylelint#8191)) ([@elskhn](https://github.com/elskhn)). - Fixed: `value-keyword-case` false negatives ([#8158](stylelint/stylelint#8158)) ([@Mouvedia](https://github.com/Mouvedia)). - Fixed: `value-keyword-case` false positives for vendor-prefixed system colors ([#8146](stylelint/stylelint#8146)) ([@Mouvedia](https://github.com/Mouvedia)).
| datasource | package | from | to | | ---------- | --------- | ------- | ------- | | npm | stylelint | 16.11.0 | 16.12.0 | ## [v16.12.0](https://github.com/stylelint/stylelint/blob/HEAD/CHANGELOG.md#16120) - Added: `selector-pseudo-class-allowed-list` now checks `@page` pseudo-classes ([#8176](stylelint/stylelint#8176)) ([@Mouvedia](https://github.com/Mouvedia)). - Added: `selector-pseudo-class-disallowed-list` now checks `@page` pseudo-classes ([#8171](stylelint/stylelint#8171)) ([@Mouvedia](https://github.com/Mouvedia)). - Fixed: `at-rule-property-required-list` message to use "descriptor" for accuracy ([#8186](stylelint/stylelint#8186)) ([@ybiquitous](https://github.com/ybiquitous)). - Fixed: `custom-property-no-missing-var-function` false positives for `container-name` ([#8157](stylelint/stylelint#8157)) ([@Mouvedia](https://github.com/Mouvedia)). - Fixed: `custom-property-no-missing-var-function` false positives for custom properties passed to `running()` ([#8172](stylelint/stylelint#8172)) ([@Mouvedia](https://github.com/Mouvedia)). - Fixed: `function-no-unknown` false positives for `running()` ([#8172](stylelint/stylelint#8172)) ([@Mouvedia](https://github.com/Mouvedia)). - Fixed: `selector-pseudo-class-no-unknown` false positives for `:open` ([#8184](stylelint/stylelint#8184)) ([@lukewarlow](https://github.com/lukewarlow)). - Fixed: `selector-pseudo-class-no-unknown` false positives for `:recto`, `:verso` and `:nth()` ([#8170](stylelint/stylelint#8170)) ([@Mouvedia](https://github.com/Mouvedia)). - Fixed: `selector-pseudo-class-no-unknown` false positives for some `moz-*` vendor-prefixed pseudo-classes ([#8188](stylelint/stylelint#8188)) ([@Mouvedia](https://github.com/Mouvedia)). - Fixed: `selector-pseudo-element-no-unknown` false positives for `::details-content` ([#8174](stylelint/stylelint#8174)) ([@lukewarlow](https://github.com/lukewarlow)). - Fixed: `selector-type-no-unknown` false positives for idents in functional pseudo-classes ([#8191](stylelint/stylelint#8191)) ([@elskhn](https://github.com/elskhn)). - Fixed: `value-keyword-case` false negatives ([#8158](stylelint/stylelint#8158)) ([@Mouvedia](https://github.com/Mouvedia)). - Fixed: `value-keyword-case` false positives for vendor-prefixed system colors ([#8146](stylelint/stylelint#8146)) ([@Mouvedia](https://github.com/Mouvedia)).
| datasource | package | from | to | | ---------- | --------- | ------- | ------- | | npm | stylelint | 16.11.0 | 16.12.0 | ## [v16.12.0](https://github.com/stylelint/stylelint/blob/HEAD/CHANGELOG.md#16120) - Added: `selector-pseudo-class-allowed-list` now checks `@page` pseudo-classes ([#8176](stylelint/stylelint#8176)) ([@Mouvedia](https://github.com/Mouvedia)). - Added: `selector-pseudo-class-disallowed-list` now checks `@page` pseudo-classes ([#8171](stylelint/stylelint#8171)) ([@Mouvedia](https://github.com/Mouvedia)). - Fixed: `at-rule-property-required-list` message to use "descriptor" for accuracy ([#8186](stylelint/stylelint#8186)) ([@ybiquitous](https://github.com/ybiquitous)). - Fixed: `custom-property-no-missing-var-function` false positives for `container-name` ([#8157](stylelint/stylelint#8157)) ([@Mouvedia](https://github.com/Mouvedia)). - Fixed: `custom-property-no-missing-var-function` false positives for custom properties passed to `running()` ([#8172](stylelint/stylelint#8172)) ([@Mouvedia](https://github.com/Mouvedia)). - Fixed: `function-no-unknown` false positives for `running()` ([#8172](stylelint/stylelint#8172)) ([@Mouvedia](https://github.com/Mouvedia)). - Fixed: `selector-pseudo-class-no-unknown` false positives for `:open` ([#8184](stylelint/stylelint#8184)) ([@lukewarlow](https://github.com/lukewarlow)). - Fixed: `selector-pseudo-class-no-unknown` false positives for `:recto`, `:verso` and `:nth()` ([#8170](stylelint/stylelint#8170)) ([@Mouvedia](https://github.com/Mouvedia)). - Fixed: `selector-pseudo-class-no-unknown` false positives for some `moz-*` vendor-prefixed pseudo-classes ([#8188](stylelint/stylelint#8188)) ([@Mouvedia](https://github.com/Mouvedia)). - Fixed: `selector-pseudo-element-no-unknown` false positives for `::details-content` ([#8174](stylelint/stylelint#8174)) ([@lukewarlow](https://github.com/lukewarlow)). - Fixed: `selector-type-no-unknown` false positives for idents in functional pseudo-classes ([#8191](stylelint/stylelint#8191)) ([@elskhn](https://github.com/elskhn)). - Fixed: `value-keyword-case` false negatives ([#8158](stylelint/stylelint#8158)) ([@Mouvedia](https://github.com/Mouvedia)). - Fixed: `value-keyword-case` false positives for vendor-prefixed system colors ([#8146](stylelint/stylelint#8146)) ([@Mouvedia](https://github.com/Mouvedia)).
| datasource | package | from | to | | ---------- | --------- | ------- | ------- | | npm | stylelint | 16.11.0 | 16.12.0 | ## [v16.12.0](https://github.com/stylelint/stylelint/blob/HEAD/CHANGELOG.md#16120) - Added: `selector-pseudo-class-allowed-list` now checks `@page` pseudo-classes ([#8176](stylelint/stylelint#8176)) ([@Mouvedia](https://github.com/Mouvedia)). - Added: `selector-pseudo-class-disallowed-list` now checks `@page` pseudo-classes ([#8171](stylelint/stylelint#8171)) ([@Mouvedia](https://github.com/Mouvedia)). - Fixed: `at-rule-property-required-list` message to use "descriptor" for accuracy ([#8186](stylelint/stylelint#8186)) ([@ybiquitous](https://github.com/ybiquitous)). - Fixed: `custom-property-no-missing-var-function` false positives for `container-name` ([#8157](stylelint/stylelint#8157)) ([@Mouvedia](https://github.com/Mouvedia)). - Fixed: `custom-property-no-missing-var-function` false positives for custom properties passed to `running()` ([#8172](stylelint/stylelint#8172)) ([@Mouvedia](https://github.com/Mouvedia)). - Fixed: `function-no-unknown` false positives for `running()` ([#8172](stylelint/stylelint#8172)) ([@Mouvedia](https://github.com/Mouvedia)). - Fixed: `selector-pseudo-class-no-unknown` false positives for `:open` ([#8184](stylelint/stylelint#8184)) ([@lukewarlow](https://github.com/lukewarlow)). - Fixed: `selector-pseudo-class-no-unknown` false positives for `:recto`, `:verso` and `:nth()` ([#8170](stylelint/stylelint#8170)) ([@Mouvedia](https://github.com/Mouvedia)). - Fixed: `selector-pseudo-class-no-unknown` false positives for some `moz-*` vendor-prefixed pseudo-classes ([#8188](stylelint/stylelint#8188)) ([@Mouvedia](https://github.com/Mouvedia)). - Fixed: `selector-pseudo-element-no-unknown` false positives for `::details-content` ([#8174](stylelint/stylelint#8174)) ([@lukewarlow](https://github.com/lukewarlow)). - Fixed: `selector-type-no-unknown` false positives for idents in functional pseudo-classes ([#8191](stylelint/stylelint#8191)) ([@elskhn](https://github.com/elskhn)). - Fixed: `value-keyword-case` false negatives ([#8158](stylelint/stylelint#8158)) ([@Mouvedia](https://github.com/Mouvedia)). - Fixed: `value-keyword-case` false positives for vendor-prefixed system colors ([#8146](stylelint/stylelint#8146)) ([@Mouvedia](https://github.com/Mouvedia)).
| datasource | package | from | to | | ---------- | --------- | ------- | ------- | | npm | stylelint | 16.11.0 | 16.12.0 | ## [v16.12.0](https://github.com/stylelint/stylelint/blob/HEAD/CHANGELOG.md#16120) - Added: `selector-pseudo-class-allowed-list` now checks `@page` pseudo-classes ([#8176](stylelint/stylelint#8176)) ([@Mouvedia](https://github.com/Mouvedia)). - Added: `selector-pseudo-class-disallowed-list` now checks `@page` pseudo-classes ([#8171](stylelint/stylelint#8171)) ([@Mouvedia](https://github.com/Mouvedia)). - Fixed: `at-rule-property-required-list` message to use "descriptor" for accuracy ([#8186](stylelint/stylelint#8186)) ([@ybiquitous](https://github.com/ybiquitous)). - Fixed: `custom-property-no-missing-var-function` false positives for `container-name` ([#8157](stylelint/stylelint#8157)) ([@Mouvedia](https://github.com/Mouvedia)). - Fixed: `custom-property-no-missing-var-function` false positives for custom properties passed to `running()` ([#8172](stylelint/stylelint#8172)) ([@Mouvedia](https://github.com/Mouvedia)). - Fixed: `function-no-unknown` false positives for `running()` ([#8172](stylelint/stylelint#8172)) ([@Mouvedia](https://github.com/Mouvedia)). - Fixed: `selector-pseudo-class-no-unknown` false positives for `:open` ([#8184](stylelint/stylelint#8184)) ([@lukewarlow](https://github.com/lukewarlow)). - Fixed: `selector-pseudo-class-no-unknown` false positives for `:recto`, `:verso` and `:nth()` ([#8170](stylelint/stylelint#8170)) ([@Mouvedia](https://github.com/Mouvedia)). - Fixed: `selector-pseudo-class-no-unknown` false positives for some `moz-*` vendor-prefixed pseudo-classes ([#8188](stylelint/stylelint#8188)) ([@Mouvedia](https://github.com/Mouvedia)). - Fixed: `selector-pseudo-element-no-unknown` false positives for `::details-content` ([#8174](stylelint/stylelint#8174)) ([@lukewarlow](https://github.com/lukewarlow)). - Fixed: `selector-type-no-unknown` false positives for idents in functional pseudo-classes ([#8191](stylelint/stylelint#8191)) ([@elskhn](https://github.com/elskhn)). - Fixed: `value-keyword-case` false negatives ([#8158](stylelint/stylelint#8158)) ([@Mouvedia](https://github.com/Mouvedia)). - Fixed: `value-keyword-case` false positives for vendor-prefixed system colors ([#8146](stylelint/stylelint#8146)) ([@Mouvedia](https://github.com/Mouvedia)).
Closes #1871
I am having a hard time getting consistent results out of the benchmark-rule script.
i.e. walkRules/WalkAtRules vs walk/switch