Stylelint Formatter: ruleMetadata Safe Navigation #113
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Why?
Solves issue #112
I had predicted that a rule may not exist in the rule metadata. However, I did not predict that the entire
ruleMetadata
object could be undefined when referencing the Stylelint custom formatter documentation.I believe this to actually be a bug from the Stylelint source, where it is not handling a potentially undefined result when accessing
lintResult._postcssResult.stylelint.ruleMetadata
:https://github.com/stylelint/stylelint/blob/15.11.0/lib/prepareReturnValue.js#L74
What
Added extra safe navigation to ensure that
ruleMetadata
is not undefined/null before attempting to access it.