Update dependency postcss to v8.3.0
This MR contains the following updates:
Package | Type | Update | Change |
---|---|---|---|
postcss (source) | devDependencies | minor | 8.2.6 -> 8.3.0 |
Release Notes
postcss/postcss
v8.3.0
PostCSS 8.3 improved source map parsing performance, added Node#assign()
shortcut, and experimental Document
node to AST.
Thanks to Sponsors
This release was possible thanks to our community.
If your company wants to support the sustainability of front-end infrastructure or wants to give some love to PostCSS, you can join our supporters by:
- Tidelift with a Spotify-like subscription model supporting all projects from your lock file.
- Direct donations in PostCSS & Autoprefixer Open Collective.
Source Map Performance
Because PostCSS needs synchronous API, we can’t move from the old `source-map 0.6 to 0.7 (many other open-source projects too).
@7rulnik forked source-map
0.6 to source-map-js
and back-ported performance improvements from 0.7. In 8.3 we switched from source-map
to this source-map-js
fork.
You map see 4x performance improvements in parsing map from processing step before PostCSS (for instance, Sass).
Document
Nodes
Thanks to @gucong3000, PostCSS already parse CSS from HTML and JS files (CSS-in-JS templates and objects).
But his plugin need big updates. @hudochenkov from stylelint team decided to create new parsers for styles inside CSS-in-JS, HTML, and Markdown.
He suggested adding new Document
node type to PostCSS AST to keep multiple Root
nodes inside and JS/HTML/Markdown code blocks between these style blocks.
const document = htmlParser(
'<html><style>a{color:black}</style><style>b{z-index:2}</style>'
)
document.type //=> 'document'
document.nodes.length //=> 2
document.nodes[0].type //=> 'root'
This is an experimental feature. Some aspects of this node could change within minor or patch version releases.
Node#assign()
Shortcut
The creator of famous postcss-preset-env
and many other PostCSS tools, @jonathantneal suggested a nice shortcut to change multiple properties in the node:
decl.assign({ prop: 'word-wrap', value: 'break-word' })
v8.2.15
- Fixed
list
type definitions (by @n19htz).
v8.2.14
- Removed
source-map
from client-side bundle (by Barak Igal).
v8.2.13
- Fixed ReDoS vulnerabilities in source map parsing (by Yeting Li).
v8.2.12
- Fixed
package.json
exports.
v8.2.11
- Fixed
DEP0148
warning in Node.js 16. - Fixed docs (by @semiromid).
v8.2.10
- Fixed ReDoS vulnerabilities in source map parsing.
- Fixed webpack 5 support (by Barak Igal).
- Fixed docs (by Roeland Moors).
v8.2.9
- Exported
NodeErrorOptions
type (by Rouven Weßling).
v8.2.8
- Fixed browser builds in webpack 4 (by Matt Jones).
v8.2.7
- Fixed browser builds in webpack 5 (by Matt Jones).
Configuration
-
If you want to rebase/retry this MR, check this box.
This MR has been generated by Renovate Bot. The local configuration can be found in the local Renovate Bot repository.