Update dependency autoprefixer to v10 #158
Open
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
6.7.7->10.4.2Release Notes
postcss/autoprefixer
v10.4.2Compare Source
-webkit-prefix forwidth: stretch.v10.4.1Compare Source
::file-selector-buttondata (by Luke Warlow).v10.4.0Compare Source
In Autoprefixer 10.4 @lukewarlow added
:autofillsupport:v10.3.7Compare Source
nanocolorstopicocolors.v10.3.6Compare Source
nanocolors.v10.3.5Compare Source
colorettetonanocolors.v10.3.4Compare Source
stretchvalue in latest Firefox.v10.3.3Compare Source
-moz-prefix from::file-selector-button(by Usman Yunusov).v10.3.2Compare Source
::file-selector-buttonsupport (by Usman Yunusov).v10.3.1Compare Source
content(by Luke Warlow).v10.3.0Compare Source
In Autoprefixer 10.3 @lukewarlow added
::file-selector-buttonsupport.v10.2.6Compare Source
v10.2.5Compare Source
:support in@supports(by Dmitry Semigradsky).v10.2.4Compare Source
npx autoprefixer --info.v10.2.3Compare Source
v10.2.2Compare Source
v10.2.1Compare Source
transition-propertywarnings (by @Sheraff).v10.2.0Compare Source
Autoprefixer 10.2 now has built-in TypeScript definitions. You do not need
@types/autoprefixeranymore.Thanks to @Semigradsky and DefinitelyTyped’s contributors.
@Sheraff also improved docs.
v10.1.0Compare Source
Autoprefixer 10.1 improved
min-resolutionsupport.@infusion added
dpcmunit support andnum2fractionwith Fraction.js, which uses Farey Sequences as a rational approximation (more precise) and simplifies the fraction using continued fractions to ɛ <0.001 afterward.v10.0.4Compare Source
Cannot read property 'proxyOf' of undefinederror (by Igor Kamyshev).v10.0.3Compare Source
substracttosubtractvalue formask-composite(by Michelle Enos).v10.0.2Compare Source
-ms-user-select: allbecause IE and old Edge don’t support it.v10.0.1Compare Source
package.json.v10.0.0Compare Source
Autoprefixer 10 is based on top of PostCSS 8 (check Known Issues section before updating).
Node.js 6.x, 8.x, 11.x support was removed.
Now you need to install Autoprefixer by
npm install --save-dev autoprefixer postcss. We movedpostcssfromdependenciestopeerDependenciesaccording to new PostCSS plugin guidelines.v9.8.8Compare Source
nanocolorswithpicocolors.v9.8.7Compare Source
colorettewithnanocolors.v9.8.6Compare Source
envoption.v9.8.5Compare Source
align-selfandjustify-selfwithdisplay: flex(by Daniel Tonon).v9.8.4Compare Source
v9.8.3Compare Source
v9.8.2Compare Source
v9.8.1Compare Source
chalktokleur(by Luke Edwards).v9.8.0Compare Source
Autoprefixer 9.8 brings IE support for
:placeholder-shown.Placeholder Shown
@tkrotoff found that
input:placeholder-showncan be emulated withinput:-ms-input-placeholder.Note, that we already had support for
::placeholder. Selector::placeholderis for the text of the placeholder.:placeholder-shownis for the input, where placeholder text is shown. In::placeholderyou can’t change the border or size of the<input>.v9.7.6Compare Source
-webkit-stretchfix.v9.7.5Compare Source
-webkit-stretchsupport.v9.7.4Compare Source
v9.7.3Compare Source
v9.7.2Compare Source
-ms-user-select: elementsupport.npm fund.v9.7.1Compare Source
fit-contentfor Firefox.v9.7.0Compare Source
Autoprefixer 9.7 brings
AUTOPREFIXER_GRIDenvironment variable and huge performance improvments.Grid Environment Variable
Autoprefixer can add CSS Grid polyfills for IE. You need to manually enable it to prove that you understand the limits of polyfill.
In previous versions you can enable Grid polyfill by
grid: 'autoplace'option or by/* autoprefixer grid: autoplace */control comment. But in some cases, developers were not able to use both methods. For instance, during work with Material UI’ CSS-in-JS in Create React App.Now Autoprefixer supports environment variable to enable CSS Grid polyfill:
Performance Improvements
@Knagis found that Browserslist takes 70% of the Autoprefixer time.
We did a lot of improvements in Browserslist and now Autoprefixer should work much faster.
Other
Cannot read property 'grid' of undefinederrorv9.6.5Compare Source
v9.6.4Compare Source
'startsWith' of undefinederror.v9.6.3Compare Source
Cannot read property 'startsWith' of undefinederror.v9.6.2Compare Source
Replace fill to stretchwarning.v9.6.1Compare Source
-webkit-line-clamptruncating multi-line text support.v9.6.0Compare Source
Autoprefixer 9.6 marked
browsersoption as deprecated and addedtext-orientationand@media (min-resolution: 2x)support.We added the “Sponsor” button to your repository. You can support Autoprefixer and other open source projects important for your business by Tidelift.
Browsers
Autoprefixer adds prefixes only for target browsers, browsers which is support on your project.
Initially, Autoprefixer had the
browsersoption to set target browsers. But we found that many tools need target browsers too.postcss-preset-envandbabel-preset-envuse them to add only actual polyfills, postcss-normalize uses them to add only necessary CSS reset rules, plugins for ESLint and Stylelint will warn you if some of the target browsers doesn’t support your code.This is why we created Browserslist config file. It is a single config for all tools.
A lot of users still uses the
browsersoption. We understand them; it is hard to change old practice. Unfortunately, using thebrowsersoption creates many problems. For instance, you can miss that your build tool has own Autoprefixer inside. It will cut your prefixes because it will not know about your target browsers.This is why, in 9.6, we decided to deprecate the
browsersoption. Autoprefixer will show a warning on this option. In the next 10.0 release, we will drop this option. This is how you can migrate:Create
browserslistkey with an array inpackage.json.Copy queries from the
browsersoption. If you havebrowsers: [“last 1 version”, “not dead”], then you need:HiDPI Media Query
We all need to support HiDPI/retina screen now. Autoprefixer supports specific media query for HiDPI screens:
Bug we found that CSS Values 4 spec added
xalias fordppx.Autoprefixer 9.6 supports
@media (min-resolution: 2x)shortcut. Note, that Autoprefixer will not convert it to2dppx. Autoprefixer adds only prefixes. Usepostcss-preset-envto add polyfills.Other
text-orientationproperty support was added.CONTRIBUTING.mdv9.5.1Compare Source
backdrop-filterfor Edge (by Oleh Aloshkin).min-resolutionmedia query support in Firefox < 16.v9.5.0Compare Source
Autoprefixer 9.5 brings
mask-compositesupport.Thanks to @semeleven for implementation and @iamvdo for suggestion.
v9.4.10Compare Source
v9.4.9Compare Source
grid-templateand@mediacase (by Bogdan Dolin).v9.4.8Compare Source
calc()support in Grid gap.v9.4.7Compare Source
v9.4.6Compare Source
v9.4.5Compare Source
text-decoration-skip-inksupport.v9.4.4Compare Source
directionvalue for-ms-writing-mode(by Denys Kniazevych).v9.4.3Compare Source
flex-startinstead ofstart(by Antoine du Hamel).v9.4.2Compare Source
v9.4.1Compare Source
v9.4.0Compare Source
Autoprefixer 9.4.0 brings limited autoplacement support to the IE CSS Grid.
Grid Autoplacement
If the
gridoption is set to"autoplace", limited autoplacement support is now added to the Autoprefixer CSS Grid translations. You can also use the/* autoprefixer grid: autoplace */control comment to enable autoplacement directly in your CSS.In order to use the new autoplacement feature, you must define both rows and columns when declaring the grid template.
Autoplacement support in Autoprefixer is currently very limited in what it can do. Please read the Grid Autoplacement support in IE section before using this new feature.
Thanks to @bogdan0083 for implementing the new feature, @Dan503 for documenting it, and @evandiamond for coming up with the initial idea.
Other Changes
v9.3.1Compare Source
repeat()value (by Bogdan Dolin).v9.3.0Compare Source
Autoprefixer 9.3 brings
place-selfsupport for Grid Layoutplace-self@Dan503 and @bogdan0083 found a way to impement support for another Grid property
Other Changes
@Dan503 and @bogdan0083 also detected and fixed issue with Grid row/column span inheritance.
v9.2.1Compare Source
v9.2.0Compare Source
Autoprefixer 9.2 brings many new improvements for
-ms-prefixes for Grid Layout.New Ways to Enable/Disable Grid Layout
In previous versions, you had needed to pass
grid: trueto enable prefixes for Grid Layout. But not all users have access to Autoprefixer options. CodePen, Create Reat App or Angular CLI doesn’t allow you to do it.In Autoprefixer 9.2 @fanich37 added special control comments:
Autoprefixer doesn’t support Grid properties and values with
auto. In 9.2 it will ignore whole@supportscontent if it contains these Grid properties:Smarter
grid-areaAutoprefixer supports
grid-templateeven if it was not in IE Grid spec.But in 9.2 @bogdan0083 really improve it according to @Dan503 idea. Now Autoprefixer supports even overriding
grid-template.Other Changes
v9.1.5Compare Source
@babel/registerfrom dependencies.v9.1.4Compare Source
v9.1.3Compare Source
autoprefixer --infoalphabetically.v9.1.2Compare Source
autoprefixer --infoin new Node.js.v9.1.1Compare Source
grid-gapthrough@media(by Bogdan Dolin).grid-templateand@media(by Bogdan Dolin).span XGrid prefix (by Bogdan Dolin).v9.1.0Compare Source
Autoprefixer 9.1 brings
background-clip: textand fixspanin IE Grid.Background Clip
background-clip: textbecome to be the standard and got Edge support. So we added it to Autoprefixer:Note, that Edge expect
-webkit-prefix for this property.Grid Layout Fix
@bogdan0083 fixed an issue when media-query override some
grid-template.v9.0.2Compare Source
v9.0.1Compare Source
v9.0.0Compare Source
Autoprefixer 9.0 brings Browserslist 4.0 and drops Node.js 4 support.
Breaking Changes
We removed Node.js 4 and Node.js 9 support since it doesn’t have security updates anymore.
We removed IE and “dead” browsers (without security updates) from Babel’s targets. Don't worry, Autoprefixer still generate IE-compatible code. These changes affect websites which run Autoprefixer on client-side like CodePen.
Autoprefixer Rails 9.0 dropped the RubyRacer and Sprockets 3 support.
Browserslist 4.0
Autoprefixer 9.0 uses Browserslist 4.0 to get your target browsers.
Now you use Browserslist to specify Node.js versions. Babel 7 will use Browserslist config as well.
Also, Browserslist 4.0 will warn you if you didn’t update Can I Use DB for last than 6 month.
PostCSS 7.0
Autoprefixer 9.0 uses PostCSS 7.0
v8.6.5Compare Source
v8.6.4Compare Source
stretchprefix in Chrome >= 46.v8.6.3Compare Source
gridoption for grid properties inautoprefixer --info.v8.6.2Compare Source
@media(by Evgeny Petukhov).v8.6.1Compare Source
grid-templatewith media queries (by Evgeny Petukhov).v8.6.0Compare Source
Autoprefixer 8.6 brings
gapproperty support and two values support forgrid-gap/gap.Grid Gap
CSSWG renamed
grid-gapproperty togap.@yepninja added
gapsupport with 2 values support.Grid layout code bellow will work even in IE if you pass
grid: trueoption to Autoprefixer:Other Changes
ignoreUnknownVersionsoption for Browserslistv8.5.2Compare Source
grid-templatesupport wit auto row sizes (by Yury Timofeev).v8.5.1Compare Source
-webkit-fill-available.v8.5.0Compare Source
Autoprefixer 8.5 brings
grid-gapsupport and fixradial-gradient.Grid Gap
@yepninja continues his amazing work of adding CSS Grid Layout support to Autoprefixer.
Now he brought
grid-gap. It is amazing work since IE 11 has gaps support in-ms-grids.To add
grid-gapsupport for IE 11 Autoprefixer adds addition grid cells. Unfortunately, it will work only if you havegrid-templatein the same rule withgrid-gap. We had big discussion with a community about these limits.Set
postcss-gap-propertiesbefore Autoprefixer if you want to use newgapproperty.Radial Gradients
Old gradients with prefixes used a different direction syntax. Autoprefixer converts direction to old syntax (or warn you to rewrite direction from old to new syntax).
But it has an issue with extent keywords like
circle closest-corner. We fixed it after @BaliBalo report.v8.4.1Compare Source
v8.4.0Compare Source
Autoprefixer 8.4 brings new control comment to ignore next line.
@vostrik implemented the @levin-du’s idea of having control comment to disable only next property/rule:
v8.3.0Compare Source
Autoprefixer 8.3 adds
@mediasupport forgrid-templateand fixes gradient direction warning.Media and Grid Layout
@evgeny-petukhov continues his great work for Grid Layout support in Autoprefixer.
Now he improved
@mediasupport. Now this CSS will work in IE:Don’t forget that Autoprefixer inserts Grid Layout prefixes only if you set
grid: trueoption.Gradient Warning
@radium-v found that Autoprefixer show warning even if
coveris outside ofradial-gradient.@kotfire improve old direction detection and fix this issue.
v8.2.0Compare Source
Autoprefixer 8.2 brings
color-adjustsupport.@YozhikM, @soul-wish, and @yuriyalekseyev did a great work. They added new data to Can I Use and implemented a new feature to Autoprefixer.
v8.1.0Compare Source
Autoprefixer 8.1 brings
overscroll-behaviorand better Grid support.Overscroll Behavior
@Malvoz suggested the great idea to polyfill
overscroll-behaviorfor IE 11 and Edge by-ms-scroll-chaining.Note, that
overscroll-behavior-xandoverscroll-behavior-yare not supported since-ms-property doesn’t have this freedom.Better Grid Layout
@evgeny-petukhov continues his amazing work and now Autoprefixer polyfills Grid Layout for IE in more cases.
He added
grid-templateshortcut support and improve support ofgrid-column-endandgrid-row-end.Grid properties were fixed in
@supports. We recommend:@supports (display: grid).@supports (grid-gap: 0).Note, that you need
grid: trueoption to Autoprefixer to add-ms-prefixes for Grid Layout.v8.0.0Compare Source
Autoprefixer 8.0 uses Browserslist 3.0, has
autoprefixerCLI tool instead ofautoprefixer-info.Browserslist 3.0
The main feature of Autoprefixer 8.0 is Browserslist 3.0. In the new version, it brings new default browsers. It will affect you only if you don’t change browsers by
.browserslistrcorbrowserslistkey inpackage.json(we don’t recommend to usebrowsersoption).In one hand, Browserslist 3.0 usage statistics limit for default browsers was reduced from
>1%to>0.5%. In another hand, we remove dead browsers from default browsers. The dead browser is a browser with < than 1% in the global market and who don’t have security updates. Right now IE 10 and BlackBerry browser are dead browsers.Read other notable changes in Browserslist 3.0 changelog. We recommend subscribing for @Browserslist twitter account.
CLI Tool
CLI tool to show target browsers and used prefixes was renamed to
autoprefixer:With the new name,
npxwill install Autoprefixer automatically if it is missed in the current project.Page Breaks for Firefox
Previous Autoprefixer versions replace
break-*properties topage-break-*for Firefox.But this feature didn’t add any vendor prefix. Autoprefixer goal is to take care only about prefixes, not polyfills. For better consistency, we removed this feature from Autoprefixer.
Don’t afraid, the PostCSS ecosystem has many plugins for CSS polyfills. We recommend to take look at postcss-preset-env to write future CSS today.
v7.2.6Compare Source
-ms-prefix for grid cells with samegrid-area(by Evgeny Petukhov).v7.2.5Compare Source
v7.2.4Compare Source
v7.2.3Compare Source
grid-template-areasin@media(by Evgeny Petukhov).v7.2.2Compare Source
_autoprefixerDisabled is undefinedissue.v7.2.1Compare Source
v7.2.0Compare Source
Autoprefixer 7.2 brings better Grid support for IE
and
autoprefixer-infoCLI tool.Grid Layout
With
grid: trueoption Autoprefixer adds-ms-prefixes to Grid Layout properties. But this feature was very limited.In 7.0 we dramatically improved Grid support for IE. @Alex7Kom added
grid-areaand improvedgrid-rowandgrid-columnsupport. @evgeny-petukhov addedgrid-template-areasandgrid-templatesupport.Even this complex emoji example will work with new Autoprefixer (output):
Just don’t forget to set
grid: trueoption:Info CLI Tool
Autoprefixer 7.2 ships with new CLI tool to check which browsers are selected and which properties will be prefixed.
Just go to your project directory and run
npx autoprefixer-info:Also, @pdokas added default value (current working dir) for
fromoption inautoprefixer.info().Other Changes
radial-gradientproperties warning.reverseanimation direction.v7.1.6Compare Source
browserslistoption instead ofbrowsers.Invalid array lengtherror during indent changes.v7.1.5Compare Source
::placeholderprefix for Edge.inherit/initial/unsetvalues forflex-direction.v7.1.4Compare Source
radial-gradientdirection conversion.image-setincursor.v7.1.3Compare Source
radial-gradientdirection syntax.v7.1.2Compare Source
text-decorationshortcut support.v7.1.1Compare Source
-webkit-intrinsic prefixes in Grid Layout (by 一丝).v7.1.0Compare Source
Autoprefixer 7.1 brings
unicode-bidisupport,-webkit-appearanceto Edge and fix intrinsic widths prefixes in Grid Layout.unicode-bidiAutoprefixer 7.1 will add prefixes for
isolate,plaintextandisolate-overridevalues inunicode-bidi:Edge and
-webkit-appearancePrefixes sometime could be very strange. Edge started to support
appearanceproperty with a prefix. But because of many only-for-Safari websites it supports-webkit-appearanceinstead of-ms-appearance.Autoprefixer 7.1 knows it and will generate
-webkit-appearanceeven if you set only"last 1 Edge version"in browserslist config.Intrinsic Widths
min-content,stretchand other Intrinsic sizes was fixed ingrid-template-columnsand other Grid Layout properties.Browserslist in
info()By accident Browserslist 1 loaded config from current working dir if file path was missed. In Browserslist 2 we fixed it and now you must specify path to file in explicit way.
It is not a problem for Autoprefixer user, because Autoprefixer takes CSS file path from PostCSS.
But
autoprefixer.info()stopped to load conifg in 7.0. In 7.1 we addedfromoption toinfo().Set the path to your CSS file and
info()will show what prefixes and why it will added to this CSS file:v7.0.1Compare Source
v7.0.0Compare Source
Autoprefixer 7.0 uses PostCSS 6.0, Browserslist 2.0 and
caniuse-lite.Browserslist 2.0
Browserslist 2.0 and
caniuse-liteby @ben-eb are the main changes in Autoprefixer 7.0. We wrote an article about these changes:> Autoprefixer 7.0 and Browserslist 2.0
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 version to 4.0 or 7.0.
IE has very basic support of Grid Layout. So Autoprefixer added
-ms-prefixes and change property syntax. Unfortunately, IE supports a really small subset of Grid Layout. So prefixes were not really useful. This is why we disabled Grid Layout prefixes by default. But you still can enable it:Babel
Autoprefixer was one of the biggest CoffeeScript projects. We thought to rewrite it, but reasons were small, and work was big. But @Semigradsky used great decaffeinate tool for automatically CoffeeScript → ES6 converting, and now all Autoprefixer sources are written in JS.
PostCSS 6.0
New PostCSS uses stream parser and uses less memory. Also, it uses less space in
node_modules.Other Changes
^for Browserslist dependencies, instead of~.-ms-grid-column-align.Configuration
📅 Schedule: At any time (no schedule defined).
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR has been generated by WhiteSource Renovate. View repository job log here.