stylelint
Advanced tools
Changelog
16.11.0
--report-unscoped-disables
CLI flag and reportUnscopedDisables
option to Node.js API and configuration object (#8024) (@Mouvedia).ignoreFunctions: []
to media-query-no-invalid
(#8060) (@ryo-manba).name
configuration property under overrides
(#8095) (@ryo-manba).benchmark-rule
script to resolve TypeError
(#8090) (@ybiquitous).github
formatter deprecation warning link to https://stylelint.io/awesome-stylelint#formatters
(#8115) (@ryo-manba).function-calc-no-unspaced-operator
false negatives for calc-size
(#8026) (@azat-io).max-nesting-depth
false positives when the &
selector is being ignored (#8048) (@ryo-manba).media-feature-name-value-no-unknown
false positives for display-mode: picture-in-picture
(#8136) (@Mouvedia).no-irregular-whitespace
reported ranges (#8066) (@romainmenke).selector-attribute-name-disallowed-list
reported ranges (#8037) (@ryo-manba).selector-attribute-operator-allowed-list
reported ranges (#8038) (@ryo-manba).selector-attribute-operator-disallowed-list
reported ranges (#8039) (@ryo-manba).selector-class-pattern
reported ranges (#8042) (@ryo-manba).selector-combinator-allowed-list
reported ranges (#8046) (@ryo-manba).selector-combinator-disallowed-list
reported ranges (#8047) (@ryo-manba).selector-disallowed-list
reported ranges (#8067) (@ryo-manba).selector-id-pattern
reported ranges (#8045) (@ryo-manba).selector-max-attribute
reported ranges (#8052) (@ryo-manba).selector-max-class
reported ranges (#8053) (@ryo-manba).selector-max-combinators
reported-ranges (#8055) (@ryo-manba).selector-max-compound-selectors
reported ranges (#8056) (@ryo-manba).selector-max-id
reported ranges (#8054) (@ryo-manba).selector-max-pseudo-class
reported ranges (#8057) (@ryo-manba).selector-max-specificity
reported ranges (#8058) (@ryo-manba).selector-max-universal
reported ranges (#8059) (@ryo-manba).selector-nested-pattern
reported ranges (#8072) (@ryo-manba).selector-no-vendor-prefix
reported ranges (#8073) (@ryo-manba).selector-not-notation
reported ranges (#8074) (@ryo-manba).selector-pseudo-class-allowed-list
reported ranges (#8061) (@ryo-manba).selector-pseudo-class-disallowed-list
reported ranges (#8062) (@ryo-manba).selector-pseudo-class-no-unknown
reported ranges (#8063) (@ryo-manba).selector-pseudo-element-allowed-list
reported ranges (#8068) (@ryo-manba).selector-pseudo-element-colon-notation
reported ranges (#8069) (@ryo-manba).selector-pseudo-element-disallowed-list
reported ranges (#8070) (@ryo-manba).selector-pseudo-element-no-unknown
false positives for ::scroll-marker
and ::scroll-marker-group
(#8110) (@Mouvedia).selector-pseudo-element-no-unknown
reported ranges (#8071) (@ryo-manba).selector-type-no-unknown
reported ranges (#8076) (@ryo-manba).Changelog
16.10.0
shorthand-property-no-redundant-values
reported ranges (#8008) (@Mouvedia).formatter
configuration property (#7826) (@emmacharp).validate
option to Node.js API and --validate
CLI flag (#8009) (@Mouvedia).verbose
formatter (#7985) (@Mouvedia).string | RegExp
to ignoreValues
option of value-no-vendor-prefix
(#7969) (@Mouvedia).string
to ignoreLonghands
option of declaration-block-no-redundant-longhand-properties
(#7971) (@Mouvedia).at-rule-no-unknown
false positives for @position-try
(#7968) (@yelizsevinc).declaration-block-no-redundant-longhand-properties
autofix for grid-column
/grid-row
(#8023) (@ryo-manba).declaration-property-value-no-unknown
false negatives/positives via css-tree@3.0.0
(#7993) (@Mouvedia).declaration-property-value-no-unknown
reported ranges and message (#8003) (@romainmenke).keyframe-selector-notation
reported ranges (#7992) (@romainmenke).length-zero-no-unit
false positives for Sass variables (#8035) (@ryo-manba).no-descending-specificity
reported ranges (#7996) (@romainmenke).selector-anb-no-unmatchable
reported ranges and message (#8001) (@romainmenke).string
formatter handling of log symbols for non-Unicode terminals (#7981) (@Mouvedia)..cjs
files to address Rollup vulnerability (#8010) (@ybiquitous).config
option for Node.js API with extends
and overrides
(#8030) (@ybiquitous).declaration-property-max-values
, declaration-property-value-no-unknown
and number-max-precision
(#7975) (@Mouvedia).Changelog
16.9.0
secondaryOptions
argument type of the Rule
function (#7950) (@Mouvedia).color-function-notation
reporting functions with less than 3 arguments (#7948) (@Mouvedia).declaration-property-value-no-unknown
false positives/negatives (#7944 & #7957 & #7956) (@Mouvedia & @sidverma32).
overflow
, word-break
, width
anchor-name
, field-sizing
, text-box-edge
, text-box-trim
, text-spacing-trim
, text-wrap
, text-wrap-mode
, text-wrap-style
, view-timeline
, view-timeline-axis
, view-timeline-inset
, view-timeline-name
, view-transition-name
keyframe-block-no-duplicate-selectors
/keyframe-declaration-no-important
/keyframe-selector-notation
/no-unknown-animations
false negatives for @-o-keyframes
and @-ms-keyframes
(#7953) (@Mouvedia).no-duplicate-selectors
reported ranges (#7938) (@romainmenke).property-no-vendor-prefix
report for -webkit-background-size
(#7940) (@Mouvedia).selector-class-pattern
reported ranges (#7959) (@Mouvedia).selector-no-qualifying-type
reported ranges (#7937) (@romainmenke).--no-deprecation
flag for rule deprecation warnings (#7943) (@Mouvedia).Changelog
16.8.2
context.fix
usage in favour of recommending to pass a fix
callback to report()
(#7895) (@Mouvedia).github
formatter (#7909) (@Mouvedia).custom-property-no-missing-var-function
false positives for view-transition-name
(#7914) (@Mouvedia).keyframe-block-no-duplicate-selectors
reported ranges (#7932) (@romainmenke).no-invalid-double-slash-comments
reported ranges (#7907 & #7905) (@Mouvedia & @romainmenke).selector-max-type
reported ranges (#7916) (@romainmenke).selector-type-no-unknown
false positives for ::highlight()
and ::view-transition-*()
(#7913) (@Mouvedia).Changelog
16.8.1
no-duplicate-selectors
false positives with Less syntax (#7888) (@romainmenke).Changelog
16.8.0
github
formatter (#7865) (@marcalexiei).function-url-quotes
false positives for SCSS variables and #
/?
characters (#7874) (@vimalloc).keyframe-selector-notation
false positives for entry-crossing
and exit-crossing
(#7859) (@romainmenke).no-descending-specificity
false positives for nested rules without declarations (#7850) (@romainmenke).no-duplicate-selectors
end positions (#7867) (@romainmenke).no-duplicate-selectors
false negatives for three or more duplicates (#7867) (@romainmenke).selector-max-compound-selectors
error for @nest
(#7875) (@romainmenke).selector-pseudo-class-no-unknown
false positives for :active-view-transition
and :active-view-transition-type()
(#7868) (@Mouvedia).selector-type-*
, selector-max-type
and selector-class-pattern
false positives for <timeline-range-name>
in keyframe selectors (#7856) (@romainmenke).stylelint.utils.checkAgainstRule()
regression when reportNeedlessDisables
and quiet
are both enabled (#7879) (@ybiquitous).Changelog
16.7.0
tap
formatter to support TAP14 (#7759) (@Mouvedia).url
secondary option (#7743) (@emmacharp).at-rule-no-unknown
false positives for @historical-forms
and @font-palette-values
(#7774) (@Mouvedia).at-rule-no-unknown
false positives for @view-transition
(#7753) (@sebdanielsson).at-rule-no-vendor-prefix
false negatives for @-moz-document
and @-webkit-viewport
(#7772) (@Mouvedia).comment-whitespace-inside
end positions (#7744) (@Mouvedia).declaration-block-no-duplicate-properties
reported ranges (#7758) (@Mouvedia).declaration-block-no-redundant-longhand-properties
/declaration-block-no-shorthand-property-overrides
false negatives for font-variant
(#7734) (@Bilie).font-family-name-quotes
false negatives for -moz-*
/-webkit-*
keywords (#7777) (@Mouvedia).font-family-no-missing-generic-family-keyword
false negatives for font families which names match a CSS3 font-variant
keyword (#7823) (@Mouvedia).function-name-case
end positions (#7747) (@Mouvedia).function-no-unknown
performance by reducing file read count (#7801) (@ybiquitous).media-feature-name-no-vendor-prefix
autofix (#7770) (@Mouvedia).no-invalid-double-slash-comments
reported ranges (#7768) (@Mouvedia).property-no-unknown
false positives for navigation
and miscellaneous legacy properties (#7764) (@Mouvedia).quietDeprecationWarnings
to suppress stylelint:003
warning (#7837) (@ybiquitous).selector-no-vendor-prefix
autofix (#7763) (@Mouvedia).selector-not-notation
end positions when new lines are part of the selector (#7755) (@Mouvedia).selector-type-case
end positions (#7752) (@Mouvedia).shorthand-property-no-redundant-values
false negatives for logical properties, overflow
, overscroll-behavior
, scroll-margin
and scroll-padding
(#7808) (@Mouvedia).string-no-newline
false positives for escaped multi-line (#7818) (@romainmenke).value-keyword-case
end positions (#7760) (@Mouvedia).stylelint.utils.checkAgainstRule()
for Promise-based rules (#7821) (@aaronccasanova).stylelint.utils.checkAgainstRule()
to use result.stylelint
if present (#7833) (@ybiquitous).tap
formatter (#7759) (@Mouvedia).Changelog
16.6.1
no-descending-specificity
false positives for nested selectors (#7724) (@romainmenke).selector-type-no-unknown
false positive for model
(#7718) (@Mouvedia).Changelog
16.6.0
function-calc-no-unspaced-operator
false negatives (#7655 & #7670 & #7676) (@ybiquitous & @romainmenke).selector-not-notation
autofix of the "simple"
option (#7703) (@Mouvedia).selector-max-specificity
end positions (#7685) (@romainmenke).no-descending-specificity
end positions (#7701) (@romainmenke).npm fund
(#7707) (@ybiquitous).Changelog
16.5.0
ignoreValues
for value-no-vendor-prefix
(#7650) (@Mouvedia).shorthand-property-no-redundant-values
false negatives for functions (#7657) (@ybiquitous).value-no-vendor-prefix
false negatives/positives (#7654 & #7658) (@Mouvedia).CosmiconfigResult
type error (#7661) (@ybiquitous).