JakeQZ
JakeQZ
> The invalid selectors shouldn't be included in the parsed tree I think. Take a look at this fiddle comparing how the browser parses the invalid cases: https://jsfiddle.net/sm67z4nb/ You're right...
> Hey @oliverklee @JakeQZ I've caught this up with the latest main. Do you think this can be merged? Thanks. It's on the radar. Review will require a bit of...
I don't think this change is valid. See [CSS nesting on MDN](https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_nesting/Using_CSS_nesting).
> The errors are also reported on Linux: https://github.com/MyIntervals/emogrifier/actions/runs/6068667790/job/16461949927 No, these are the errors addressed by #1221. See the `.txt` file attached to the OP. There are loads more there...
> Which version are you using on Windows? 7.4. However, if I install Psalm via Composer (instead of PHIVE), I don't get the errors.
Even if Psalm is installed and invoked via PHIVE, the errors are only reported if there isn't also a copy of Psalm installed via Composer. But I'm guessing that may...
Closing, since we now use PHPStan instead of Psalm.
Though OTOH, we should trust the reliability of the 3rd party libraries (to parse the CSS and convert the selectors to XPaths) and thus adding our own tests is duplicating...
I guess the situation we currently have has arisen because originally there was just one class. As we have refactored functionality into other classes or 3rd-party libraries we have often...
Reviewing the tests in `CssInlinerTest` might suggest some poignant refactoring. For one thing, I think we can move selector precedence calculation to a separate class and test that independently.