scss-lint
scss-lint copied to clipboard
Stop monkey-patching `Sass::Tree::Node#children`
While it is documented that SCSS-Lint monkey patches the Sass parse tree and that developers should not require it with their regular application code, it continues to be a source of confusion and frustration.
I think we can get around this by changing the Linter class to not inherit from Sass::Tree::Visitors::Base and instead define our own methods for traversal, saving us from having to monkey-patch the children method of the Sass::Tree::Node class and its descendants. It's low-level enough that it shouldn't require us to touch any linter tests, and they'll quickly give us a heads up if we've horribly broken something.