Stylelint: Broken deprecation links

Created on 11 Aug 2017  路  1Comment  路  Source: stylelint/stylelint

Describe the issue. Is it a bug or a feature request (new rule, new option, etc.)?

I'm going through some deprecation warnings, but the links (which would be very useful otherwise) are broken.

$ stylelint app/assets/stylesheets/*.scss

Deprecation Warning: 'declaration-block-no-ignored-properties' has been deprecated and in 8.0 will be removed. See: https://stylelint.io/user-guide/rules/declaration-block-no-ignored-properties/
Deprecation Warning: 'media-feature-no-missing-punctuation' has been deprecated and in 8.0 will be removed. See: https://stylelint.io/user-guide/rules/media-feature-no-missing-punctuation/
Deprecation Warning: 'rule-nested-empty-line-before' has been deprecated and in 8.0 will be removed. Instead use 'rule-empty-line-before'. See: https://stylelint.io/user-guide/rules/rule-nested-empty-line-before/
Deprecation Warning: 'rule-non-nested-empty-line-before' has been deprecated and in 8.0 will be removed. Instead use 'rule-empty-line-before'. See: https://stylelint.io/user-guide/rules/rule-non-nested-empty-line-before/
Deprecation Warning: 'selector-no-empty' has been deprecated and in 8.0 will be removed. See: https://stylelint.io/user-guide/rules/selector-no-empty/

I guess this is because the rules have already been removed in the current version.

Possible solutions:

  • Allow browsing the documentation per version, and when deprecating rules, point to the documentation to the last version where the rule was present, where I guess the deprecation is explained and the help with the migration lives.

  • Link to the source of the deprecation (to GitHub for example, if it lives here too), where you can properly link to the specific version of the code you want.

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

Not specific rules.

What CSS is needed to reproduce this issue?

Anything.

What stylelint configuration is needed to reproduce this issue?

{
  "rules": {
    "at-rule-empty-line-before": [ "always", {
      except: [
        "blockless-after-same-name-blockless",
        "first-nested",
      ],
      ignore: ["after-comment"],
    } ],
    "at-rule-name-case": "lower",
    "at-rule-semicolon-newline-after": "always",
    "block-closing-brace-empty-line-before": "never",
    "block-closing-brace-newline-after": "always",
    "block-closing-brace-newline-before": "always-multi-line",
    "block-closing-brace-space-before": "always-single-line",
    "block-no-empty": true,
    "block-opening-brace-newline-after": "always-multi-line",
    "block-opening-brace-space-after": "always-single-line",
    "block-opening-brace-space-before": "always",
    "color-hex-case": "lower",
    "color-hex-length": "short",
    "color-no-invalid-hex": true,
    "comment-empty-line-before": [ "always", {
      except: ["first-nested"],
      ignore: ["stylelint-commands"],
    } ],
    "comment-no-empty": true,
    "comment-whitespace-inside": "always",
    "custom-property-empty-line-before": [ "always", {
      except: [
        "after-custom-property",
        "first-nested",
      ],
      ignore: [
        "after-comment",
        "inside-single-line-block",
      ],
    } ],
    "declaration-bang-space-after": "never",
    "declaration-bang-space-before": "always",
    "declaration-block-no-duplicate-properties": [ true, {
      ignore: ["consecutive-duplicates-with-different-values"],
    } ],
    "declaration-block-no-ignored-properties": true,
    "declaration-block-no-redundant-longhand-properties": true,
    "declaration-block-no-shorthand-property-overrides": true,
    "declaration-block-semicolon-newline-after": "always-multi-line",
    "declaration-block-semicolon-space-after": "always-single-line",
    "declaration-block-semicolon-space-before": "never",
    "declaration-block-single-line-max-declarations": 1,
    "declaration-block-trailing-semicolon": "always",
    "declaration-colon-newline-after": "always-multi-line",
    "declaration-colon-space-after": "always-single-line",
    "declaration-colon-space-before": "never",
    "declaration-empty-line-before": [ "always", {
      except: [
        "after-declaration",
        "first-nested",
      ],
      ignore: [
        "after-comment",
        "inside-single-line-block",
      ],
    } ],
    "function-calc-no-unspaced-operator": true,
    "function-comma-newline-after": "always-multi-line",
    "function-comma-space-after": "always-single-line",
    "function-comma-space-before": "never",
    "function-linear-gradient-no-nonstandard-direction": true,
    "function-max-empty-lines": 0,
    "function-name-case": "lower",
    "function-parentheses-newline-inside": "always-multi-line",
    "function-parentheses-space-inside": "never-single-line",
    "function-whitespace-after": "always",
    "indentation": 2,
    "keyframe-declaration-no-important": true,
    "length-zero-no-unit": true,
    "max-empty-lines": 1,
    "media-feature-colon-space-after": "always",
    "media-feature-colon-space-before": "never",
    "media-feature-name-case": "lower",
    "media-feature-name-no-unknown": true,
    "media-feature-no-missing-punctuation": true,
    "media-feature-parentheses-space-inside": "never",
    "media-feature-range-operator-space-after": "always",
    "media-feature-range-operator-space-before": "always",
    "media-query-list-comma-newline-after": "always-multi-line",
    "media-query-list-comma-space-after": "always-single-line",
    "media-query-list-comma-space-before": "never",
    "no-empty-source": true,
    "no-eol-whitespace": true,
    "no-extra-semicolons": true,
    "no-invalid-double-slash-comments": true,
    "no-missing-end-of-source-newline": true,
    "number-leading-zero": "never",
    "number-no-trailing-zeros": true,
    "property-case": "lower",
    "property-no-unknown": true,
    "rule-nested-empty-line-before": [ "always-multi-line", {
      except: ["first-nested"],
      ignore: ["after-comment"],
    } ],
    "rule-non-nested-empty-line-before": [ "always-multi-line", {
      ignore: ["after-comment"],
    } ],
    "selector-attribute-brackets-space-inside": "never",
    "selector-attribute-operator-space-after": "never",
    "selector-attribute-operator-space-before": "never",
    "selector-combinator-space-after": "always",
    "selector-combinator-space-before": "always",
    "selector-descendant-combinator-no-non-space": true,
    "selector-list-comma-newline-after": "always",
    "selector-list-comma-space-before": "never",
    "selector-max-empty-lines": 0,
    "selector-no-empty": true,
    "selector-pseudo-class-case": "lower",
    "selector-pseudo-class-no-unknown": true,
    "selector-pseudo-class-parentheses-space-inside": "never",
    "selector-pseudo-element-case": "lower",
    "selector-pseudo-element-colon-notation": "double",
    "selector-pseudo-element-no-unknown": true,
    "selector-type-case": "lower",
    "selector-type-no-unknown": true,
    "shorthand-property-no-redundant-values": true,
    "string-no-newline": true,
    "unit-case": "lower",
    "unit-no-unknown": true,
    "value-list-comma-newline-after": "always-multi-line",
    "value-list-comma-space-after": "always-single-line",
    "value-list-comma-space-before": "never",
    "value-list-max-empty-lines": 0,
  }
}

Which version of stylelint are you using?

7.13.0.

How are you running stylelint: CLI, PostCSS plugin, Node API?

CLI.

Does your issue relate to non-standard syntax (e.g. SCSS, nesting, etc.)?

No.

What did you expect to happen?

Deprecation warnings should point to a valid (no 404) link.

What actually happened (e.g. what warnings or errors you are getting)?

Deprecation warning links are 404's.

wip documentation

Most helpful comment

@deivid-rodriguez Thanks for reporting this and for the thorough write-up.

I guess this is because the rules have already been removed in the current version.

That's correct. We made a mistake here and didn't anticipate this.

Possible solutions: Link to the source of the deprecation (to GitHub for example, if it lives here too), where you can properly link to the specific version of the code you want.

This sounds like the best approach going forward (thanks for the suggestion), as adding documentation for each version of stylelint to the website is significantly more work.

This does mean that the problem won't be remedied for users updating to 8.0.0. However, we can avoid making this mistake next time around.

>All comments

@deivid-rodriguez Thanks for reporting this and for the thorough write-up.

I guess this is because the rules have already been removed in the current version.

That's correct. We made a mistake here and didn't anticipate this.

Possible solutions: Link to the source of the deprecation (to GitHub for example, if it lives here too), where you can properly link to the specific version of the code you want.

This sounds like the best approach going forward (thanks for the suggestion), as adding documentation for each version of stylelint to the website is significantly more work.

This does mean that the problem won't be remedied for users updating to 8.0.0. However, we can avoid making this mistake next time around.

Was this page helpful?
0 / 5 - 0 ratings