Closed onigoetz closed 3 years ago
I added a test for postcss-nested
and revert changes in "should process partial inited nodes" test with a fix of it.
Looks like PR solves the issue #19.
@onigoetz Thank you very much for the fix and clarifications 🙏
Hi,
With the recent update of postcss-nested to use RuleExit (https://github.com/postcss/postcss-nested/blob/main/index.js#L135) it seems that Once that postcss-csso is fired too early.
Making postcss-csso run before other postcss plugins finish converting the CSS file and thus can't parse the currently generated CSS.
Using OnceExit instead of Once moves this processing when everything else is finished.
I changed a test as there was a test failure
1) edge cases should process partial inited nodes: TypeError: Cannot read property 'toLowerCase' of undefined at getEvents (node_modules/postcss/lib/lazy-result.js:29:21) at toStack (node_modules/postcss/lib/lazy-result.js:56:14)
The line of the error is : https://github.com/postcss/postcss/blob/main/lib/lazy-result.js#L52
Which means that there is no way for postcss-csso to handle a partially inited declaration node because postcss can't.
This is why I changed the test to only test for an unfinished @ rule since that actually works.