chore(deps): update dependency postcss to v8.4.0 #1075

Merged
konrad merged 2 commits from renovate/postcss-8.x into main 2021-11-24 19:50:33 +00:00
Member

This PR contains the following updates:

Package Type Update Change
postcss (source) devDependencies minor 8.3.11 -> 8.4.0

Release Notes

postcss/postcss

v8.4.0

Compare Source

President Camio seal

PostCSS 8.4 brought ranges for warnings and errors, smaller node_modules size, lazy parsing to avoid PostCSS does nothing warning, and TypeScript fixes.

Thanks to Sponsors

This release was possible thanks to our community.

Sponsored by Tailwind CSS Sponsored by ThemeIsle

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:

Rages for Errors and Warnings

@​adalinesimonian, the author of amazing Stylelint extension for VS Code, added ranges to errors and warnings.

result.warn(msg, { index })           // One character warning at index
result.warn(msg, { endIndex })        // Starts at node start, ends at endIndex
result.warn(msg, { index, endIndex }) // Starts at index, ends at endIndex
result.warn(msg, { start })           // Starts at start, ends at node end
result.warn(msg, { end })             // Starts at node start, ends at end
result.warn(msg, { start, end })      // Starts at start, ends at end
result.warn(msg, { word })            // Starts at word location, ends at word index + length

It will improve DX in the IDE extension.

Lazy Parsing

Previously, we found that many tools run PostCSS even if the developer didn’t pass any PostCSS plugins. Parsing is the most expensive step in CSS processing. It led to a waste of resources without any reason.

We tried to resolve the problem by adding a PostCSS does nothing warning. But it didn’t force tool authors to be more careful with user’s resources.

If PostCSS sees that tool call it without passing plugins (or changing parser/stringifier), PostCSS will not parse CSS (until toll will call Result#root). In 8.4, @​bogdan0083 (with the help of @​WilhelmYakunin) tries to solve the problem in another way. It allows us to save resources and remove the PostCSS does nothing warning.

// No plugins, we do not parse CSS
let result = await postcss().process(css, { from  })
result.css  // Is the same string passed to process()
result.map  // Special 1-to-1 source map
result.root // CSS will parsed only here

Install Size Reduction

With ≈60M weekly downloads, PostCSS has responsibility for the world’s resource spending.

Together with @​7rulnik we reduced source-map-js size. It is transitive dependency of PostCSS.

In 8.4, we moved to a fixed version of source-map-js, which reduced the postcss size in your node_modules from ≈1 MB to 0.3 MB. With the huge popularity of PostCSS, it will free a lot of resources on our CIs.

PostCSS install size reduction #### Migration from Jest to `uvu`

@​kimoofey refactored all tests from the popular Jest framework to small and fast uvu.

It will not affect end-users. However, it reduced our node_modules size by 33 MB and made tests twice faster (yarn install & yarn unit: 4 → 13 seconds).

TypeScript Fixes

  • Added Processor types.
  • Added Stringifier types (by @​43081j).
  • Fixed types Root and Document in result values (by @​43081j).
  • Fixed Node#walkRules() types (by @​hudochenkov).

Other Changes


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.


  • If you want to rebase/retry this PR, check this box.

This PR has been generated by Renovate Bot.

This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [postcss](https://postcss.org/) ([source](https://github.com/postcss/postcss)) | devDependencies | minor | [`8.3.11` -> `8.4.0`](https://renovatebot.com/diffs/npm/postcss/8.3.11/8.4.0) | --- ### Release Notes <details> <summary>postcss/postcss</summary> ### [`v8.4.0`](https://github.com/postcss/postcss/releases/8.4.0) [Compare Source](https://github.com/postcss/postcss/compare/8.3.11...8.4.0) <img src="https://user-images.githubusercontent.com/19343/143240813-e6fb2eff-0188-4426-8534-d9076df9fa96.jpg" align="right" width="200" height="200" alt="President Camio seal"> PostCSS 8.4 brought ranges for warnings and errors, smaller `node_modules` size, lazy parsing to avoid `PostCSS does nothing` warning, and TypeScript fixes. #### Thanks to Sponsors This release was possible thanks to our community. <a href="https://tailwindcss.com/"> <img src="https://refactoringui.nyc3.cdn.digitaloceanspaces.com/tailwind-logo.svg" alt="Sponsored by Tailwind CSS" width="213" height="50"> </a> <a href="https://themeisle.com/"> <img src="https://mllj2j8xvfl0.i.optimole.com/d0cOXWA.3970~373ad/w:auto/h:auto/q:90/https://s30246.pcdn.co/wp-content/uploads/2019/03/logo.png" alt="Sponsored by ThemeIsle" width="171" height="56"> </a> 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**](https://tidelift.com/) with a Spotify-like subscription model supporting all projects from your lock file. - Direct donations in [**PostCSS & Autoprefixer Open Collective**](https://opencollective.com/postcss#section-contributors). #### Rages for Errors and Warnings [@&#8203;adalinesimonian](https://github.com/adalinesimonian), the author of amazing [Stylelint extension](https://github.com/stylelint/vscode-stylelint) for VS Code, added ranges to errors and warnings. ```js result.warn(msg, { index }) // One character warning at index result.warn(msg, { endIndex }) // Starts at node start, ends at endIndex result.warn(msg, { index, endIndex }) // Starts at index, ends at endIndex result.warn(msg, { start }) // Starts at start, ends at node end result.warn(msg, { end }) // Starts at node start, ends at end result.warn(msg, { start, end }) // Starts at start, ends at end result.warn(msg, { word }) // Starts at word location, ends at word index + length ``` It will improve DX in the IDE extension. #### Lazy Parsing Previously, we found that many tools run PostCSS even if the developer didn’t pass any PostCSS plugins. Parsing is the most expensive step in CSS processing. It led to a waste of resources without any reason. We tried to resolve the problem by adding a `PostCSS does nothing` warning. But it didn’t force tool authors to be more careful with user’s resources. If PostCSS sees that tool call it without passing plugins (or changing parser/stringifier), PostCSS will not parse CSS (until toll will call `Result#root`). In 8.4, [@&#8203;bogdan0083](https://github.com/bogdan0083) (with the help of [@&#8203;WilhelmYakunin](https://github.com/WilhelmYakunin)) tries to solve the problem in another way. It allows us to save resources and remove the `PostCSS does nothing` warning. ```js // No plugins, we do not parse CSS let result = await postcss().process(css, { from }) result.css // Is the same string passed to process() result.map // Special 1-to-1 source map result.root // CSS will parsed only here ``` #### Install Size Reduction With [≈60M weekly](https://npm-stat.com/charts.html?package=postcss) downloads, PostCSS has responsibility for the world’s resource spending. Together with [@&#8203;7rulnik](https://github.com/7rulnik) we [reduced](https://github.com/7rulnik/source-map-js/pull/7) [`source-map-js`](https://github.com/7rulnik/source-map-js) size. It is transitive dependency of PostCSS. In 8.4, we moved to a fixed version of `source-map-js`, which reduced the `postcss` size in your `node_modules` from [≈1 MB to 0.3 MB](https://packagephobia.com/result?p=postcss). With the huge popularity of PostCSS, it will free a lot of resources on our CIs. <img src="https://user-images.githubusercontent.com/19343/143244369-9ec362c5-4dbd-4aff-ba9e-7b4a50a97484.png" width="550" height="392" alt="PostCSS install size reduction"> #### Migration from Jest to `uvu` [@&#8203;kimoofey](https://github.com/kimoofey) refactored all tests from the popular Jest framework to small and fast [`uvu`](https://github.com/lukeed/uvu). It will not affect end-users. However, it reduced our `node_modules` size by 33 MB and made tests twice faster (`yarn install & yarn unit`: 4 → 13 seconds). #### TypeScript Fixes - Added `Processor` types. - Added `Stringifier` types (by [@&#8203;43081j](https://github.com/43081j)). - Fixed types `Root` and `Document` in result values (by [@&#8203;43081j](https://github.com/43081j)). - Fixed `Node#walkRules()` types (by [@&#8203;hudochenkov](https://github.com/hudochenkov)). #### Other Changes - Fixed docs (by [@&#8203;paulshryock](https://github.com/paulshryock)). </details> --- ### 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. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box. --- This PR has been generated by [Renovate Bot](https://github.com/renovatebot/renovate).
renovate added the
dependencies
label 2021-11-24 14:02:43 +00:00
renovate force-pushed renovate/postcss-8.x from 50ed4aeece to d80bfbd268 2021-11-24 17:03:05 +00:00 Compare
konrad added 1 commit 2021-11-24 19:33:34 +00:00
continuous-integration/drone/pr Build is passing Details
a95304f8b7
chore(deps): install autoprefixer
Member

Hi renovate!

Thank you for creating a PR!

I've deployed the changes of this PR on a preview environment under this URL: https://1075-renovatepostcss-8.x--vikunja-frontend-preview.netlify.app

You can use this url to view the changes live and test them out.
You will need to manually connect this to an api running somehwere. The easiest to use is https://try.vikunja.io/.

Have a nice day!

Beep boop, I'm a bot.

Hi renovate! Thank you for creating a PR! I've deployed the changes of this PR on a preview environment under this URL: https://1075-renovatepostcss-8.x--vikunja-frontend-preview.netlify.app You can use this url to view the changes live and test them out. You will need to manually connect this to an api running somehwere. The easiest to use is https://try.vikunja.io/. Have a nice day! > Beep boop, I'm a bot.
konrad merged commit e8eb94d71b into main 2021-11-24 19:50:33 +00:00
konrad deleted branch renovate/postcss-8.x 2021-11-24 19:50:34 +00:00
Member

@konrad:
Just found this interesting.:
Have you seen the changelog here and the engagement of postcss for a smaller install size?

Especially uvu instead of jest sounds nice. I have recently seen a view libs switch to it. I guess something like this would be super low on our priority. I just found the thought interesting. I always try to reduce bundle size but reducing install size never occured to me before =)

@konrad: Just found this interesting.: Have you seen the changelog here and the engagement of postcss for a smaller install size? Especially uvu instead of jest sounds nice. I have recently seen a view libs switch to it. I guess something like this would be super low on our priority. I just found the thought interesting. I always try to reduce bundle size but reducing install size never occured to me before =)
Owner

Yeah I did see that! Really interesting.

Yeah I did see that! Really interesting.
This repo is archived. You cannot comment on pull requests.
No description provided.