-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Update postcss to the latest version 🚀 #22
base: master
Are you sure you want to change the base?
Conversation
Version 6.0.1 just got published.Update to this version instead 🚀 Release Notes6.0.1
|
Version 6.0.3 just got published.Update to this version instead 🚀 Release Notes6.0.3
|
Version 6.0.4 just got published.Update to this version instead 🚀 Release Notes6.0.4
|
Version 6.0.5 just got published.Update to this version instead 🚀 Release Notes6.0.5
|
Version 6.0.6 just got published.Update to this version instead 🚀 Release Notes6.0.6
|
Version 6.0.7 just got published. |
Version 6.0.8 just got published.Update to this version instead 🚀 Release Notes6.0.8
|
Version 6.0.9 just got published.Update to this version instead 🚀 Release Notes6.0.9
|
Version 6.0.10 just got published. |
Version 6.0.11 just got published.Update to this version instead 🚀 Release Notes6.0.11
|
Version 6.0.12 just got published.Update to this version instead 🚀 Release Notes6.0.12
|
Version 6.0.13 just got published.Update to this version instead 🚀 Release Notes6.0.13
|
Version 6.0.14 just got published.Update to this version instead 🚀 Release Notes6.0.14
|
Version 6.0.15 just got published. |
|
|
|
|
|
|
|
|
|
|
|
|
🚨 Reminder! Less than one month left to migrate your repositories over to Snyk before Greenkeeper says goodbye on June 3rd! 💜 🚚💨 💚 Find out how to migrate to Snyk at greenkeeper.io
|
🚨 Reminder! Less than one month left to migrate your repositories over to Snyk before Greenkeeper says goodbye on June 3rd! 💜 🚚💨 💚 Find out how to migrate to Snyk at greenkeeper.io
|
🚨 Reminder! Less than one month left to migrate your repositories over to Snyk before Greenkeeper says goodbye on June 3rd! 💜 🚚💨 💚 Find out how to migrate to Snyk at greenkeeper.io
|
Version 6.0.0 of postcss just got published.
The version 6.0.0 is not covered by your current version range.
Without accepting this pull request your project will work just like it did before. There might be a bunch of new features, fixes and perf improvements that the maintainers worked on for you though.
I recommend you look into these changes and try to get onto the latest version of postcss.
Given that you have a decent test suite, a passing build is a strong indicator that you can take advantage of these changes by merging the proposed change into your project. Otherwise this branch is a great starting point for you to work on the update.
Release Notes
6.0 “Marquis Orias”PostCSS 6.0 dropped Node.js 0.12 support, cleaned
raws
API, added@apply
support and uses less memory.Breaking Changes
Node.js stopped 0.12 support in January 01. So PostCSS dropped Node.js 0.12 from all tests. Please update your Node.js to 4.0 or 7.0 versions.
In 6.0 we fixed our mistakes in API design. First, if node already had a parent, insert methods (
append
,insertAfter
, etc) will not clone it anymore. In 6.0 inserts methods will remove inserted node from previous parent:So, right now there are no needs to
moveTo
,moveAfter
andmoveBefore
methods. Regular insert methods have move behavior. In this case, we deprecated move methods.Also
Node#clone
now return the exactly copy of the node. In 6.0 it stops to cleanraws
.Every PostCSS plugin has
plugin.process
shortcut. In 6.0 we split process and plugin options in this shortcut:In the new major release, we finally remove all deprecated methods from PostCSS 4.0. It should not be a big problem because we show deprecated warnings for them for 2 years. Most of the plugins updated their API.
New Methods and Properties
Since we removed deprecated methods from PostCSS 4.0, in 6.0 we were free to add
before()
andafter()
shortcuts, similar to DOM API methods.Chrome 51 started to support “native CSS mixins” from @tabatkins spec under the flag:
PostCSS 5.0 could parse it pretty well, but in some cases, it lost semicolon after mixin definition. In PostCSS 6.0 parser we covered this case, and node rules have
Rule#raws.ownSemicolon
for own semicolon.Stream Parser
In PostCSS 5.0 tokenizing and parsing were separated steps. As a result, we put all tokens to memory between steps. It works well in most of the cases. But memory usage was pretty big when you try to parse really big CSS files (more than 25 MB).
In 6.0 @hzlmn rewrote parser, and now parser and tokenizer work together (stream parser). As a result, we put only a few latest tokens in memory. So 6.0 will use less memory.
Package Size
We care about
node_modules
size problem. So in 6.0 @lahmatiy and @h0tc0d3 removedjs-base64
dependency to use native Node.js and Browsers ways to base64 encoding.Also, PostCSS was moved to
babel-preset-env
. Instead of regularbabel
, it will compile only necessary parts of ES6. So build in npm packages will be cleaner. Current browserslist config forbabel-preset-env
islast 1 version
andnode 4
.Other Changes
:
in CSS.Not sure how things should work exactly?
There is a collection of frequently asked questions and of course you may always ask my humans.
Your Greenkeeper Bot 🌴