Skip to content
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

refactor: improve performance of stringifyPathData #1900

Merged
merged 1 commit into from
Dec 24, 2023

Conversation

SethFalco
Copy link
Member

@SethFalco SethFalco commented Dec 24, 2023

Refactors #stringifyPathData and the functions it calls, which now runs notably faster.
The scenarios I measured in microbenchmarks ran in half the time.

  • When stringifying, return both the numeric and string representation so we can perform checks with math instead of string parsing.
  • When stringifying path data, use a single loop instead of creating an intermediate array and looping through that after.

Metrics

Time to run the full SVGO Test Suite proposed in SethFalco#1.

Environment Time
GitHub Actions (2 scores) 20.5 minutes
My personal laptop (4 cores, 8 threads) 15.0 minutes

lib/path.js Show resolved Hide resolved
@SethFalco SethFalco merged commit 6996fca into svg:main Dec 24, 2023
10 checks passed
@SethFalco SethFalco deleted the refactor-stringify branch December 24, 2023 23:05
gfellerph referenced this pull request in swisspost/design-system Jan 4, 2024
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@babel/core](https://babel.dev/docs/en/next/babel-core)
([source](https://togithub.com/babel/babel/tree/HEAD/packages/babel-core))
| [`7.23.6` ->
`7.23.7`](https://renovatebot.com/diffs/npm/@babel%2fcore/7.23.6/7.23.7)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@babel%2fcore/7.23.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@babel%2fcore/7.23.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@babel%2fcore/7.23.6/7.23.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@babel%2fcore/7.23.6/7.23.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[@changesets/parse](https://togithub.com/changesets/changesets/tree/main#readme)
([source](https://togithub.com/changesets/changesets)) | [`0.1.0` ->
`0.4.0`](https://renovatebot.com/diffs/npm/@changesets%2fparse/0.1.0/0.4.0)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@changesets%2fparse/0.4.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@changesets%2fparse/0.4.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@changesets%2fparse/0.1.0/0.4.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@changesets%2fparse/0.1.0/0.4.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [@percy/cli](https://togithub.com/percy/cli)
([source](https://togithub.com/percy/cli/tree/HEAD/packages/cli)) |
[`1.27.4` ->
`1.27.6`](https://renovatebot.com/diffs/npm/@percy%2fcli/1.27.4/1.27.6)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@percy%2fcli/1.27.6?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@percy%2fcli/1.27.6?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@percy%2fcli/1.27.4/1.27.6?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@percy%2fcli/1.27.4/1.27.6?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[@storybook/addon-essentials](https://togithub.com/storybookjs/storybook/tree/next/code/addons/essentials)
([source](https://togithub.com/storybookjs/storybook/tree/HEAD/code/addons/essentials))
| [`7.6.6` ->
`7.6.7`](https://renovatebot.com/diffs/npm/@storybook%2faddon-essentials/7.6.6/7.6.7)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@storybook%2faddon-essentials/7.6.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@storybook%2faddon-essentials/7.6.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@storybook%2faddon-essentials/7.6.6/7.6.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@storybook%2faddon-essentials/7.6.6/7.6.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[@storybook/addon-links](https://togithub.com/storybookjs/storybook/tree/next/code/addons/links)
([source](https://togithub.com/storybookjs/storybook/tree/HEAD/code/addons/links))
| [`7.6.6` ->
`7.6.7`](https://renovatebot.com/diffs/npm/@storybook%2faddon-links/7.6.6/7.6.7)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@storybook%2faddon-links/7.6.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@storybook%2faddon-links/7.6.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@storybook%2faddon-links/7.6.6/7.6.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@storybook%2faddon-links/7.6.6/7.6.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[@storybook/addons](https://togithub.com/storybookjs/storybook/tree/next/code/deprecated/addons)
([source](https://togithub.com/storybookjs/storybook/tree/HEAD/code/deprecated/addons))
| [`7.6.6` ->
`7.6.7`](https://renovatebot.com/diffs/npm/@storybook%2faddons/7.6.6/7.6.7)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@storybook%2faddons/7.6.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@storybook%2faddons/7.6.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@storybook%2faddons/7.6.6/7.6.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@storybook%2faddons/7.6.6/7.6.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[@storybook/blocks](https://togithub.com/storybookjs/storybook/tree/next/code/ui/blocks)
([source](https://togithub.com/storybookjs/storybook/tree/HEAD/code/ui/blocks))
| [`7.6.6` ->
`7.6.7`](https://renovatebot.com/diffs/npm/@storybook%2fblocks/7.6.6/7.6.7)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@storybook%2fblocks/7.6.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@storybook%2fblocks/7.6.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@storybook%2fblocks/7.6.6/7.6.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@storybook%2fblocks/7.6.6/7.6.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[@storybook/components](https://togithub.com/storybookjs/storybook/tree/next/code/ui/components)
([source](https://togithub.com/storybookjs/storybook/tree/HEAD/code/ui/components))
| [`7.6.6` ->
`7.6.7`](https://renovatebot.com/diffs/npm/@storybook%2fcomponents/7.6.6/7.6.7)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@storybook%2fcomponents/7.6.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@storybook%2fcomponents/7.6.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@storybook%2fcomponents/7.6.6/7.6.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@storybook%2fcomponents/7.6.6/7.6.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[@storybook/core-events](https://togithub.com/storybookjs/storybook/tree/next/code/lib/core-events)
([source](https://togithub.com/storybookjs/storybook/tree/HEAD/code/lib/core-events))
| [`7.6.6` ->
`7.6.7`](https://renovatebot.com/diffs/npm/@storybook%2fcore-events/7.6.6/7.6.7)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@storybook%2fcore-events/7.6.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@storybook%2fcore-events/7.6.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@storybook%2fcore-events/7.6.6/7.6.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@storybook%2fcore-events/7.6.6/7.6.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[@storybook/manager-api](https://togithub.com/storybookjs/storybook/tree/next/code/lib/manager-api)
([source](https://togithub.com/storybookjs/storybook/tree/HEAD/code/lib/manager-api))
| [`7.6.6` ->
`7.6.7`](https://renovatebot.com/diffs/npm/@storybook%2fmanager-api/7.6.6/7.6.7)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@storybook%2fmanager-api/7.6.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@storybook%2fmanager-api/7.6.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@storybook%2fmanager-api/7.6.6/7.6.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@storybook%2fmanager-api/7.6.6/7.6.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[@storybook/preview-api](https://togithub.com/storybookjs/storybook/tree/next/code/lib/preview-api)
([source](https://togithub.com/storybookjs/storybook/tree/HEAD/code/lib/preview-api))
| [`7.6.6` ->
`7.6.7`](https://renovatebot.com/diffs/npm/@storybook%2fpreview-api/7.6.6/7.6.7)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@storybook%2fpreview-api/7.6.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@storybook%2fpreview-api/7.6.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@storybook%2fpreview-api/7.6.6/7.6.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@storybook%2fpreview-api/7.6.6/7.6.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[@storybook/theming](https://togithub.com/storybookjs/storybook/tree/next/code/lib/theming)
([source](https://togithub.com/storybookjs/storybook/tree/HEAD/code/lib/theming))
| [`7.6.6` ->
`7.6.7`](https://renovatebot.com/diffs/npm/@storybook%2ftheming/7.6.6/7.6.7)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@storybook%2ftheming/7.6.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@storybook%2ftheming/7.6.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@storybook%2ftheming/7.6.6/7.6.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@storybook%2ftheming/7.6.6/7.6.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[@storybook/web-components](https://togithub.com/storybookjs/storybook/tree/next/code/renderers/web-components)
([source](https://togithub.com/storybookjs/storybook/tree/HEAD/code/renderers/web-components))
| [`7.6.6` ->
`7.6.7`](https://renovatebot.com/diffs/npm/@storybook%2fweb-components/7.6.6/7.6.7)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@storybook%2fweb-components/7.6.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@storybook%2fweb-components/7.6.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@storybook%2fweb-components/7.6.6/7.6.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@storybook%2fweb-components/7.6.6/7.6.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[@storybook/web-components-vite](https://togithub.com/storybookjs/storybook/tree/next/code/frameworks/web-components-vite)
([source](https://togithub.com/storybookjs/storybook/tree/HEAD/code/frameworks/web-components-vite))
| [`7.6.6` ->
`7.6.7`](https://renovatebot.com/diffs/npm/@storybook%2fweb-components-vite/7.6.6/7.6.7)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@storybook%2fweb-components-vite/7.6.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@storybook%2fweb-components-vite/7.6.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@storybook%2fweb-components-vite/7.6.6/7.6.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@storybook%2fweb-components-vite/7.6.6/7.6.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[@types/node](https://togithub.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node)
([source](https://togithub.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node))
| [`18.19.3` ->
`18.19.4`](https://renovatebot.com/diffs/npm/@types%2fnode/18.19.3/18.19.4)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2fnode/18.19.4?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@types%2fnode/18.19.4?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@types%2fnode/18.19.3/18.19.4?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2fnode/18.19.3/18.19.4?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[@types/node](https://togithub.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node)
([source](https://togithub.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node))
| [`16.18.68` ->
`16.18.69`](https://renovatebot.com/diffs/npm/@types%2fnode/16.18.68/16.18.69)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2fnode/16.18.69?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@types%2fnode/16.18.69?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@types%2fnode/16.18.68/16.18.69?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2fnode/16.18.68/16.18.69?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[@types/node-fetch](https://togithub.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node-fetch)
([source](https://togithub.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node-fetch))
| [`2.6.9` ->
`2.6.10`](https://renovatebot.com/diffs/npm/@types%2fnode-fetch/2.6.9/2.6.10)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2fnode-fetch/2.6.10?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@types%2fnode-fetch/2.6.10?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@types%2fnode-fetch/2.6.9/2.6.10?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2fnode-fetch/2.6.9/2.6.10?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[@types/react](https://togithub.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/react)
([source](https://togithub.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react))
| [`18.2.45` ->
`18.2.46`](https://renovatebot.com/diffs/npm/@types%2freact/18.2.45/18.2.46)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2freact/18.2.46?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@types%2freact/18.2.46?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@types%2freact/18.2.45/18.2.46?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2freact/18.2.45/18.2.46?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[@typescript-eslint/eslint-plugin](https://togithub.com/typescript-eslint/typescript-eslint)
([source](https://togithub.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin))
| [`6.15.0` ->
`6.17.0`](https://renovatebot.com/diffs/npm/@typescript-eslint%2feslint-plugin/6.15.0/6.17.0)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@typescript-eslint%2feslint-plugin/6.17.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@typescript-eslint%2feslint-plugin/6.17.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@typescript-eslint%2feslint-plugin/6.15.0/6.17.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@typescript-eslint%2feslint-plugin/6.15.0/6.17.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[@typescript-eslint/parser](https://togithub.com/typescript-eslint/typescript-eslint)
([source](https://togithub.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser))
| [`6.15.0` ->
`6.17.0`](https://renovatebot.com/diffs/npm/@typescript-eslint%2fparser/6.15.0/6.17.0)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/@typescript-eslint%2fparser/6.17.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@typescript-eslint%2fparser/6.17.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@typescript-eslint%2fparser/6.15.0/6.17.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@typescript-eslint%2fparser/6.15.0/6.17.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [core-js](https://togithub.com/zloirock/core-js)
([source](https://togithub.com/zloirock/core-js/tree/HEAD/packages/core-js))
| [`3.34.0` ->
`3.35.0`](https://renovatebot.com/diffs/npm/core-js/3.34.0/3.35.0) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/core-js/3.35.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/core-js/3.35.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/core-js/3.34.0/3.35.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/core-js/3.34.0/3.35.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [cypress](https://cypress.io)
([source](https://togithub.com/cypress-io/cypress)) | [`13.6.1` ->
`13.6.2`](https://renovatebot.com/diffs/npm/cypress/13.6.1/13.6.2) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/cypress/13.6.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/cypress/13.6.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/cypress/13.6.1/13.6.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/cypress/13.6.1/13.6.2?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[eslint-plugin-n](https://togithub.com/eslint-community/eslint-plugin-n)
| [`16.5.0` ->
`16.6.1`](https://renovatebot.com/diffs/npm/eslint-plugin-n/16.5.0/16.6.1)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/eslint-plugin-n/16.6.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/eslint-plugin-n/16.6.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/eslint-plugin-n/16.5.0/16.6.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/eslint-plugin-n/16.5.0/16.6.1?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[rollup-plugin-visualizer](https://togithub.com/btd/rollup-plugin-visualizer)
| [`5.11.0` ->
`5.12.0`](https://renovatebot.com/diffs/npm/rollup-plugin-visualizer/5.11.0/5.12.0)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/rollup-plugin-visualizer/5.12.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/rollup-plugin-visualizer/5.12.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/rollup-plugin-visualizer/5.11.0/5.12.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/rollup-plugin-visualizer/5.11.0/5.12.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [sass](https://togithub.com/sass/dart-sass) | [`1.69.5` ->
`1.69.7`](https://renovatebot.com/diffs/npm/sass/1.69.5/1.69.7) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/sass/1.69.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/sass/1.69.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/sass/1.69.5/1.69.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/sass/1.69.5/1.69.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
|
[storybook](https://togithub.com/storybookjs/storybook/tree/next/code/lib/cli)
([source](https://togithub.com/storybookjs/storybook/tree/HEAD/code/lib/cli))
| [`7.6.6` ->
`7.6.7`](https://renovatebot.com/diffs/npm/storybook/7.6.6/7.6.7) |
[![age](https://developer.mend.io/api/mc/badges/age/npm/storybook/7.6.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/storybook/7.6.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/storybook/7.6.6/7.6.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/storybook/7.6.6/7.6.7?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
| [svgo](https://svgo.dev) ([source](https://togithub.com/svg/svgo)) |
[`3.1.0` -> `3.2.0`](https://renovatebot.com/diffs/npm/svgo/3.1.0/3.2.0)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/svgo/3.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/svgo/3.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/svgo/3.1.0/3.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/svgo/3.1.0/3.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>babel/babel (@&#8203;babel/core)</summary>

###
[`v7.23.7`](https://togithub.com/babel/babel/blob/HEAD/CHANGELOG.md#v7237-2023-12-29)

[Compare
Source](https://togithub.com/babel/babel/compare/v7.23.6...v7.23.7)

##### :bug: Bug Fix

-   `babel-traverse`
- [#&#8203;16191](https://togithub.com/babel/babel/pull/16191) fix:
Crash when removing without `Program`
([@&#8203;liuxingbaoyu](https://togithub.com/liuxingbaoyu))
-   `babel-helpers`, `babel-plugin-proposal-decorators`
- [#&#8203;16180](https://togithub.com/babel/babel/pull/16180) fix:
Class decorator `ctx.kind` is wrong
([@&#8203;liuxingbaoyu](https://togithub.com/liuxingbaoyu))
-   `babel-plugin-proposal-decorators`
- [#&#8203;16170](https://togithub.com/babel/babel/pull/16170) Fix
decorator initProto usage in derived classes
([@&#8203;JLHwung](https://togithub.com/JLHwung))
-   `babel-core`
- [#&#8203;16167](https://togithub.com/babel/babel/pull/16167) Avoid
unpreventable `unhandledRejection` events
([@&#8203;nicolo-ribaudo](https://togithub.com/nicolo-ribaudo))

##### :house: Internal

-   `babel-helper-create-class-features-plugin`
- [#&#8203;16186](https://togithub.com/babel/babel/pull/16186) chore:
Update deps ([@&#8203;liuxingbaoyu](https://togithub.com/liuxingbaoyu))
- `babel-helper-create-class-features-plugin`,
`babel-plugin-proposal-decorators`
- [#&#8203;16177](https://togithub.com/babel/babel/pull/16177) Merge
decorators into class features
([@&#8203;JLHwung](https://togithub.com/JLHwung))

</details>

<details>
<summary>changesets/changesets (@&#8203;changesets/parse)</summary>

###
[`v0.4.0`](https://togithub.com/changesets/changesets/releases/tag/%40changesets/changelog-github%400.4.0)

[Compare
Source](https://togithub.com/changesets/changesets/compare/@changesets/parse@0.3.16...@changesets/parse@0.4.0)

##### Minor Changes

- [#&#8203;564](https://togithub.com/atlassian/changesets/pull/564)
[`707002d`](https://togithub.com/atlassian/changesets/commit/707002dec9332a2c1322522a23861e747a6bff6f)
Thanks [@&#8203;Andarist](https://togithub.com/Andarist)! - It's now
possible to specify multiple authors of a change by using multiple
`author: @&#8203;someuser` lines.

##### Patch Changes

- Updated dependencies
\[[`de2b4a5`](https://togithub.com/atlassian/changesets/commit/de2b4a5a7b244a37d94625bcb70ecde9dde5b612)]:
-
[@&#8203;changesets/types](https://togithub.com/changesets/types)[@&#8203;4](https://togithub.com/4).0.0

###
[`v0.3.16`](https://togithub.com/changesets/changesets/releases/tag/%40changesets/parse%400.3.16)

[Compare
Source](https://togithub.com/changesets/changesets/compare/@changesets/parse@0.3.15...@changesets/parse@0.3.16)

##### Patch Changes

- Updated dependencies
\[[`521205d`](https://togithub.com/changesets/changesets/commit/521205dc8c70fe71b181bd3c4bb7c9c6d2e721d2)]:
-
[@&#8203;changesets/types](https://togithub.com/changesets/types)[@&#8203;5](https://togithub.com/5).2.1

###
[`v0.3.15`](https://togithub.com/changesets/changesets/releases/tag/%40changesets/parse%400.3.15)

[Compare
Source](https://togithub.com/changesets/changesets/compare/@changesets/parse@0.3.14...@changesets/parse@0.3.15)

##### Patch Changes

- Updated dependencies
\[[`8c08469`](https://togithub.com/changesets/changesets/commit/8c0846977597ddaf51aaeb35f1f0f9428bf8ba14)]:
-
[@&#8203;changesets/types](https://togithub.com/changesets/types)[@&#8203;5](https://togithub.com/5).2.0

###
[`v0.3.14`](https://togithub.com/changesets/changesets/releases/tag/%40changesets/parse%400.3.14)

[Compare
Source](https://togithub.com/changesets/changesets/compare/@changesets/parse@0.3.13...@changesets/parse@0.3.14)

##### Patch Changes

- Updated dependencies
\[[`dd9b76f`](https://togithub.com/changesets/changesets/commit/dd9b76f162a546ae8b412e0cb10277f971f3585e)]:
-
[@&#8203;changesets/types](https://togithub.com/changesets/types)[@&#8203;5](https://togithub.com/5).1.0

###
[`v0.3.13`](https://togithub.com/changesets/changesets/releases/tag/%40changesets/parse%400.3.13)

[Compare
Source](https://togithub.com/changesets/changesets/compare/@changesets/parse@0.3.12...@changesets/parse@0.3.13)

##### Patch Changes

- Updated dependencies
\[[`c87eba6`](https://togithub.com/changesets/changesets/commit/c87eba6f80a34563b7382f87472c29f6dafb546c)]:
-
[@&#8203;changesets/types](https://togithub.com/changesets/types)[@&#8203;5](https://togithub.com/5).0.0

###
[`v0.3.12`](https://togithub.com/changesets/changesets/releases/tag/%40changesets/parse%400.3.12)

[Compare
Source](https://togithub.com/changesets/changesets/compare/@changesets/parse@0.3.11...@changesets/parse@0.3.12)

##### Patch Changes

- Updated dependencies
\[[`27a5a82`](https://togithub.com/changesets/changesets/commit/27a5a82188914570d192162f9d045dfd082a3c15)]:
-
[@&#8203;changesets/types](https://togithub.com/changesets/types)[@&#8203;4](https://togithub.com/4).1.0

###
[`v0.3.11`](https://togithub.com/changesets/changesets/releases/tag/%40changesets/parse%400.3.11)

[Compare
Source](https://togithub.com/changesets/changesets/compare/@changesets/parse@0.3.10...@changesets/parse@0.3.11)

##### Patch Changes

- [#&#8203;740](https://togithub.com/changesets/changesets/pull/740)
[`957e39c`](https://togithub.com/changesets/changesets/commit/957e39c21549dd91e03faa5cd30e44e4c3d7331f)
Thanks [@&#8203;akphi](https://togithub.com/akphi)! - Fixed an issue
with failing to parse changesets containing a completely empty summary.

###
[`v0.3.10`](https://togithub.com/changesets/changesets/releases/tag/%40changesets/parse%400.3.10)

[Compare
Source](https://togithub.com/changesets/changesets/compare/@changesets/parse@0.3.9...@changesets/parse@0.3.10)

##### Patch Changes

- Updated dependencies
\[[`9a993ba`](https://togithub.com/atlassian/changesets/commit/9a993ba09629c1620d749432520470cec49d3a96)]:
-
[@&#8203;changesets/types](https://togithub.com/changesets/types)[@&#8203;4](https://togithub.com/4).0.2

###
[`v0.3.9`](https://togithub.com/changesets/changesets/releases/tag/%40changesets/parse%400.3.9)

[Compare
Source](https://togithub.com/changesets/changesets/compare/@changesets/parse@0.3.8...@changesets/parse@0.3.9)

##### Patch Changes

- Updated dependencies
\[[`e89e28a`](https://togithub.com/atlassian/changesets/commit/e89e28a05f5fa43307db73812a6bcd269b62ddee)]:
-
[@&#8203;changesets/types](https://togithub.com/changesets/types)[@&#8203;4](https://togithub.com/4).0.1

###
[`v0.3.8`](https://togithub.com/changesets/changesets/releases/tag/%40changesets/parse%400.3.8)

[Compare
Source](https://togithub.com/changesets/changesets/compare/@changesets/parse@0.3.7...@changesets/parse@0.3.8)

##### Patch Changes

- Updated dependencies
\[[`de2b4a5`](https://togithub.com/atlassian/changesets/commit/de2b4a5a7b244a37d94625bcb70ecde9dde5b612)]:
-
[@&#8203;changesets/types](https://togithub.com/changesets/types)[@&#8203;4](https://togithub.com/4).0.0

###
[`v0.3.7`](https://togithub.com/changesets/changesets/releases/tag/%40changesets/parse%400.3.7)

[Compare
Source](https://togithub.com/changesets/changesets/compare/@changesets/parse@0.3.6...@changesets/parse@0.3.7)

##### Patch Changes

-
[`5b6005e`](https://togithub.com/atlassian/changesets/commit/5b6005e0349a105b3d138fccdb22d13de8949862)
[#&#8203;462](https://togithub.com/atlassian/changesets/pull/462) Thanks
[@&#8203;Andarist](https://togithub.com/Andarist)! - Fixed an issue with
failing to parse changesets containing Windows newlines.

###
[`v0.3.6`](https://togithub.com/changesets/changesets/releases/tag/%40changesets/parse%400.3.6)

[Compare
Source](https://togithub.com/changesets/changesets/compare/@changesets/parse@0.3.5...@changesets/parse@0.3.6)

##### Patch Changes

- Updated dependencies
\[[`2b49d66`](https://togithub.com/atlassian/changesets/commit/2b49d668ecaa1333bc5c7c5be4648dda1b11528d)]:
-
[@&#8203;changesets/types](https://togithub.com/changesets/types)[@&#8203;3](https://togithub.com/3).0.0

###
[`v0.3.5`](https://togithub.com/changesets/changesets/releases/tag/%40changesets/parse%400.3.5)

[Compare
Source](https://togithub.com/changesets/changesets/compare/@changesets/parse@0.3.4...@changesets/parse@0.3.5)

##### Patch Changes

-
[`1706fb7`](https://togithub.com/atlassian/changesets/commit/1706fb751ecc2f5a792c42f467b2063078d58716)
[#&#8203;321](https://togithub.com/atlassian/changesets/pull/321) Thanks
[@&#8203;mitchellhamilton](https://togithub.com/mitchellhamilton)! - Fix
TypeScript declarations

- Updated dependencies
\[[`1706fb7`](https://togithub.com/atlassian/changesets/commit/1706fb751ecc2f5a792c42f467b2063078d58716)]:
-
[@&#8203;changesets/types](https://togithub.com/changesets/types)[@&#8203;2](https://togithub.com/2).0.1

###
[`v0.3.4`](https://togithub.com/changesets/changesets/releases/tag/%40changesets/parse%400.3.4)

[Compare
Source](https://togithub.com/changesets/changesets/compare/@changesets/parse@0.3.3...@changesets/parse@0.3.4)

##### Patch Changes

- Updated dependencies
\[[`011d57f`](https://togithub.com/atlassian/changesets/commit/011d57f1edf9e37f75a8bef4f918e72166af096e)]:
-
[@&#8203;changesets/types](https://togithub.com/changesets/types)[@&#8203;2](https://togithub.com/2).0.0

###
[`v0.3.3`](https://togithub.com/changesets/changesets/releases/tag/%40changesets/parse%400.3.3)

[Compare
Source](https://togithub.com/changesets/changesets/compare/@changesets/parse@0.3.2...@changesets/parse@0.3.3)

##### Patch Changes

-
[`04ddfd7`](https://togithub.com/atlassian/changesets/commit/04ddfd7c3acbfb84ef9c92873fe7f9dea1f5145c)
[#&#8203;305](https://togithub.com/atlassian/changesets/pull/305) Thanks
[@&#8203;Noviny](https://togithub.com/Noviny)! - Add link to changelog
in readme

- Updated dependencies
\[[`04ddfd7`](https://togithub.com/atlassian/changesets/commit/04ddfd7c3acbfb84ef9c92873fe7f9dea1f5145c),
[`e56928b`](https://togithub.com/atlassian/changesets/commit/e56928bbd6f9096def06ac37487bdbf28efec9d1)]:
-
[@&#8203;changesets/types](https://togithub.com/changesets/types)[@&#8203;1](https://togithub.com/1).0.1

###
[`v0.3.2`](https://togithub.com/changesets/changesets/releases/tag/%40changesets/parse%400.3.2)

##### Patch Changes

-
[`41e2e3d`](https://togithub.com/atlassian/changesets/commit/41e2e3dd1053ff2f35a1a07e60793c9099f26997)
[#&#8203;292](https://togithub.com/atlassian/changesets/pull/292) Thanks
[@&#8203;acheronfail](https://togithub.com/acheronfail)! - Fix
`repository` field in package.json

- Updated dependencies
\[[`41e2e3d`](https://togithub.com/atlassian/changesets/commit/41e2e3dd1053ff2f35a1a07e60793c9099f26997),
[`cc8c921`](https://togithub.com/atlassian/changesets/commit/cc8c92143d4c4b7cca8b9917dfc830a40b5cda20),
[`cc8c921`](https://togithub.com/atlassian/changesets/commit/cc8c92143d4c4b7cca8b9917dfc830a40b5cda20),
[`2363366`](https://togithub.com/atlassian/changesets/commit/2363366756d1b15bddf6d803911baccfca03cbdf)]:
-
[@&#8203;changesets/types](https://togithub.com/changesets/types)[@&#8203;1](https://togithub.com/1).0.0

###
[`v0.3.0`](https://togithub.com/changesets/changesets/releases/tag/%40changesets/write%400.3.0)

[Compare
Source](https://togithub.com/changesets/changesets/compare/@changesets/parse@0.2.1...@changesets/parse@0.3.0)

##### Minor Changes

- [#&#8203;1185](https://togithub.com/changesets/changesets/pull/1185)
[`a971652`](https://togithub.com/changesets/changesets/commit/a971652ec1403aab3fb89eb2f1640bd5012b895a)
Thanks [@&#8203;Andarist](https://togithub.com/Andarist)! -
`package.json#exports` have been added to limit what (and how) code
might be imported from the package.

##### Patch Changes

- Updated dependencies
\[[`a971652`](https://togithub.com/changesets/changesets/commit/a971652ec1403aab3fb89eb2f1640bd5012b895a)]:
-
[@&#8203;changesets/types](https://togithub.com/changesets/types)[@&#8203;6](https://togithub.com/6).0.0

###
[`v0.2.1`](https://togithub.com/changesets/changesets/compare/@changesets/parse@0.2.0...@changesets/parse@0.2.1)

[Compare
Source](https://togithub.com/changesets/changesets/compare/@changesets/parse@0.2.0...@changesets/parse@0.2.1)

###
[`v0.2.0`](https://togithub.com/changesets/changesets/compare/@changesets/parse@0.1.2...@changesets/parse@0.2.0)

[Compare
Source](https://togithub.com/changesets/changesets/compare/@changesets/parse@0.1.2...@changesets/parse@0.2.0)

###
[`v0.1.2`](https://togithub.com/changesets/changesets/compare/@changesets/parse@0.1.0...@changesets/parse@0.1.2)

[Compare
Source](https://togithub.com/changesets/changesets/compare/@changesets/parse@0.1.0...@changesets/parse@0.1.2)

</details>

<details>
<summary>percy/cli (@&#8203;percy/cli)</summary>

### [`v1.27.6`](https://togithub.com/percy/cli/releases/tag/v1.27.6)

[Compare
Source](https://togithub.com/percy/cli/compare/v1.27.5...v1.27.6)

<!-- Release notes generated using configuration in .github/release.yml
at master -->

#### What's Changed

##### ✨ Enhancements

- Add support for Scrollable single element screenshot by
[@&#8203;chinmay-browserstack](https://togithub.com/chinmay-browserstack)
in
[https://github.com/percy/cli/pull/1458](https://togithub.com/percy/cli/pull/1458)
- Percy on Automate: Adding FullPage Support by
[@&#8203;Amit3200](https://togithub.com/Amit3200)
[@&#8203;rishigupta1599](https://togithub.com/rishigupta1599) in
[https://github.com/percy/cli/pull/1431](https://togithub.com/percy/cli/pull/1431)
- Percy on Automate: Add FullPage in global config by
[@&#8203;Amit3200](https://togithub.com/Amit3200) in
[https://github.com/percy/cli/pull/1477](https://togithub.com/percy/cli/pull/1477)

##### 🐛 Bug Fixes

- 🐛 Fix connection refused for `ipv6` by
[@&#8203;itsjwala](https://togithub.com/itsjwala) in
[https://github.com/percy/cli/pull/1463](https://togithub.com/percy/cli/pull/1463)

##### 🏗 Maintenance

- 🏗️ test fix: dom package test failing in chrome 120+ by
[@&#8203;itsjwala](https://togithub.com/itsjwala) in
[https://github.com/percy/cli/pull/1476](https://togithub.com/percy/cli/pull/1476)

**Full Changelog**:
https://github.com/percy/cli/compare/v1.27.5...v1.27.6

### [`v1.27.5`](https://togithub.com/percy/cli/releases/tag/v1.27.5)

[Compare
Source](https://togithub.com/percy/cli/compare/v1.27.4...v1.27.5)

<!-- Release notes generated using configuration in .github/release.yml
at master -->

Note: We have received some reports where percy cli randomly stops
working after this release, so we are currently tagging 1.27.4 as latest
version on npm to fix for users using `latest` tag. 1.27.5 will still be
available if used explicitly. We are investigating the issue.

#### What's Changed

##### ✨ Enhancements

- ✨ Implement Warning + Disable Percy for unsupported combinations by
[@&#8203;this-is-shivamsingh](https://togithub.com/this-is-shivamsingh)
in
[https://github.com/percy/cli/pull/1411](https://togithub.com/percy/cli/pull/1411)
- ✨ Added support to set network interface to bind by
[@&#8203;ninadbstack](https://togithub.com/ninadbstack) in
[https://github.com/percy/cli/pull/1447](https://togithub.com/percy/cli/pull/1447)

##### 🐛 Bug Fixes

- Fixing FindRegion + Refactor by
[@&#8203;Amit3200](https://togithub.com/Amit3200) in
[https://github.com/percy/cli/pull/1408](https://togithub.com/percy/cli/pull/1408)
- Resolving race condition in snapshots flush by
[@&#8203;rishigupta1599](https://togithub.com/rishigupta1599) in
[https://github.com/percy/cli/pull/1440](https://togithub.com/percy/cli/pull/1440)

##### 🏗 Maintenance

- ♻️ Refactor: added defaultmap + locking mechanism for intercepts queue
by [@&#8203;nilshah98](https://togithub.com/nilshah98) in
[https://github.com/percy/cli/pull/1441](https://togithub.com/percy/cli/pull/1441)

#### New Contributors

-
[@&#8203;this-is-shivamsingh](https://togithub.com/this-is-shivamsingh)
made their first contribution in
[https://github.com/percy/cli/pull/1411](https://togithub.com/percy/cli/pull/1411)

**Full Changelog**:
https://github.com/percy/cli/compare/v1.27.4...v1.27.5

</details>

<details>
<summary>storybookjs/storybook
(@&#8203;storybook/addon-essentials)</summary>

###
[`v7.6.7`](https://togithub.com/storybookjs/storybook/blob/HEAD/CHANGELOG.md#767)

[Compare
Source](https://togithub.com/storybookjs/storybook/compare/v7.6.6...v7.6.7)

- Core: Skip no-framework error when ignorePreview=true -
[#&#8203;25286](https://togithub.com/storybookjs/storybook/pull/25286),
thanks [@&#8203;ndelangen](https://togithub.com/ndelangen)!
- Dependencies: Semver dependency fixes -
[#&#8203;25283](https://togithub.com/storybookjs/storybook/pull/25283),
thanks [@&#8203;ndelangen](https://togithub.com/ndelangen)!
- Vite: Fix pre-transform error in Vite 5 -
[#&#8203;25329](https://togithub.com/storybookjs/storybook/pull/25329),
thanks [@&#8203;yannbf](https://togithub.com/yannbf)!
- Vue3: Fix pnp by making compiler-core a dependency -
[#&#8203;25311](https://togithub.com/storybookjs/storybook/pull/25311),
thanks [@&#8203;shilman](https://togithub.com/shilman)!

</details>

<details>
<summary>storybookjs/storybook (@&#8203;storybook/addon-links)</summary>

###
[`v7.6.7`](https://togithub.com/storybookjs/storybook/compare/v7.6.6...22ec27e2c6dbc6b3b7183c3c77693e4853f198a0)

[Compare
Source](https://togithub.com/storybookjs/storybook/compare/v7.6.6...v7.6.7)

</details>

<details>
<summary>typescript-eslint/typescript-eslint
(@&#8203;typescript-eslint/eslint-plugin)</summary>

###
[`v6.17.0`](https://togithub.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/eslint-plugin/CHANGELOG.md#6170-2024-01-01)

[Compare
Source](https://togithub.com/typescript-eslint/typescript-eslint/compare/v6.16.0...v6.17.0)

##### Bug Fixes

- **eslint-plugin:** \[no-restricted-imports] prevent crash when
`patterns` or `paths` in options are empty
([#&#8203;8108](https://togithub.com/typescript-eslint/typescript-eslint/issues/8108))
([675e987](https://togithub.com/typescript-eslint/typescript-eslint/commit/675e987ca1d13244c03d7e09d4e42c6539689d9a))

##### Features

- **eslint-plugin:** \[no-floating-promises] flag result of .map(async)
([#&#8203;7897](https://togithub.com/typescript-eslint/typescript-eslint/issues/7897))
([5857356](https://togithub.com/typescript-eslint/typescript-eslint/commit/5857356962060b19aa792bee778f9167ee54154b))
- **eslint-plugin:** \[switch-exhaustiveness-check] add an option to
warn against a `default` case on an already exhaustive `switch`
([#&#8203;7539](https://togithub.com/typescript-eslint/typescript-eslint/issues/7539))
([6a219bd](https://togithub.com/typescript-eslint/typescript-eslint/commit/6a219bdfe6fcf86aae28158e0d855f87a8bac719))

You can read about our [versioning
strategy](https://main--typescript-eslint.netlify.app/users/versioning)
and
[releases](https://main--typescript-eslint.netlify.app/users/releases)
on our website.

###
[`v6.16.0`](https://togithub.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/eslint-plugin/CHANGELOG.md#6160-2023-12-25)

[Compare
Source](https://togithub.com/typescript-eslint/typescript-eslint/compare/v6.15.0...v6.16.0)

##### Bug Fixes

- **eslint-plugin:** \[unbound-method] exempt all non-Promise built-in
statics
([#&#8203;8096](https://togithub.com/typescript-eslint/typescript-eslint/issues/8096))
([3182959](https://togithub.com/typescript-eslint/typescript-eslint/commit/31829591e2c5cf6bdbdd5da23b12c5782f710fa5))

##### Features

- **eslint-plugin:** deprecate formatting (meta.type: layout) rules
([#&#8203;8073](https://togithub.com/typescript-eslint/typescript-eslint/issues/8073))
([04dea84](https://togithub.com/typescript-eslint/typescript-eslint/commit/04dea84e8e934a415ec1381a90de3cde670d0dc3))
- **eslint-plugin:** deprecate no-extra-semi in favor of ESLint
Stylistic equivalent
([#&#8203;8123](https://togithub.com/typescript-eslint/typescript-eslint/issues/8123))
([9368bf3](https://togithub.com/typescript-eslint/typescript-eslint/commit/9368bf390afc58a19123782f8dff2bb5cdd3cccc))

You can read about our [versioning
strategy](https://main--typescript-eslint.netlify.app/users/versioning)
and
[releases](https://main--typescript-eslint.netlify.app/users/releases)
on our website.

</details>

<details>
<summary>typescript-eslint/typescript-eslint
(@&#8203;typescript-eslint/parser)</summary>

###
[`v6.17.0`](https://togithub.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/parser/CHANGELOG.md#6170-2024-01-01)

[Compare
Source](https://togithub.com/typescript-eslint/typescript-eslint/compare/v6.16.0...v6.17.0)

**Note:** Version bump only for package
[@&#8203;typescript-eslint/parser](https://togithub.com/typescript-eslint/parser)

You can read about our [versioning
strategy](https://main--typescript-eslint.netlify.app/users/versioning)
and
[releases](https://main--typescript-eslint.netlify.app/users/releases)
on our website.

###
[`v6.16.0`](https://togithub.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/parser/CHANGELOG.md#6160-2023-12-25)

[Compare
Source](https://togithub.com/typescript-eslint/typescript-eslint/compare/v6.15.0...v6.16.0)

**Note:** Version bump only for package
[@&#8203;typescript-eslint/parser](https://togithub.com/typescript-eslint/parser)

You can read about our [versioning
strategy](https://main--typescript-eslint.netlify.app/users/versioning)
and
[releases](https://main--typescript-eslint.netlify.app/users/releases)
on our website.

</details>

<details>
<summary>zloirock/core-js (core-js)</summary>

###
[`v3.35.0`](https://togithub.com/zloirock/core-js/blob/HEAD/CHANGELOG.md#3350---20231229)

[Compare
Source](https://togithub.com/zloirock/core-js/compare/v3.34.0...v3.35.0)

- [`{ Map, Set, WeakMap, WeakSet }.{ from, of
}`](https://togithub.com/tc39/proposal-setmap-offrom) became
non-generic, following
[this](https://togithub.com/tc39/proposal-setmap-offrom/issues/16#issuecomment-1843346541)
and some other notes. Now they can be invoked without `this`, but no
longer return subclass instances
- Fixed handling some cases of non-enumerable symbol keys from `Symbol`
polyfill
- Removed unneeded NodeJS domains-related logic from `queueMicrotask`
polyfill
-   Fixed subclassing of wrapped `ArrayBuffer`
-   Refactoring, many different minor optimizations
-   Compat data improvements:
-
[`Array.fromAsync`](https://togithub.com/tc39/proposal-array-from-async)
marked as [supported from V8 ~ Chrome
121](https://bugs.chromium.org/p/v8/issues/detail?id=13321#c13)
- It seems that the ancient [`Array.prototype.push`
bug](https://bugs.chromium.org/p/v8/issues/detail?id=12681) is fixed in
V8 ~ Chrome 122 (Hallelujah!)
- [`ArrayBuffer.prototype.transfer` and friends
proposal](https://togithub.com/tc39/proposal-arraybuffer-transfer)
features marked as [supported from FF
122](https://bugzilla.mozilla.org/show_bug.cgi?id=1865103#c8) and Bun
1.0.19
- [`Object.groupBy` and
`Map.groupBy`](https://togithub.com/tc39/proposal-array-grouping) marked
as supported from Bun 1.0.19
- Since [`Iterator` helpers
proposal](https://togithub.com/tc39/proposal-iterator-helpers) methods
are still not disabled in Deno, the web compatibility issue why it was
disabled in Chromium makes no sense for Deno and fixed in the spec, they
marked as supported from Deno 1.37
- Added Opera Android 80 and updated [Opera Android
79](https://forums.opera.com/topic/68490/opera-for-android-79) compat
data mapping
    -   Added Samsung Internet 24 compat data mapping

</details>

<details>
<summary>cypress-io/cypress (cypress)</summary>

###
[`v13.6.2`](https://togithub.com/cypress-io/cypress/releases/tag/v13.6.2)

[Compare
Source](https://togithub.com/cypress-io/cypress/compare/v13.6.1...v13.6.2)

Changelog: https://docs.cypress.io/guides/references/changelog#13-6-2

</details>

<details>
<summary>eslint-community/eslint-plugin-n (eslint-plugin-n)</summary>

###
[`v16.6.1`](https://togithub.com/eslint-community/eslint-plugin-n/releases/tag/16.6.1)

[Compare
Source](https://togithub.com/eslint-community/eslint-plugin-n/compare/16.6.0...16.6.1)

- fix: eslint 7.0 support
([#&#8203;156](https://togithub.com/eslint-community/eslint-plugin-n/issues/156))
([`2419888`](https://togithub.com/eslint-community/eslint-plugin-n/commit/2419888))

###
[`v16.6.0`](https://togithub.com/eslint-community/eslint-plugin-n/releases/tag/16.6.0)

[Compare
Source](https://togithub.com/eslint-community/eslint-plugin-n/compare/16.5.0...16.6.0)

- feat: supported new globals added in the new node.js versions
([#&#8203;154](https://togithub.com/eslint-community/eslint-plugin-n/issues/154))
([`7628925`](https://togithub.com/eslint-community/eslint-plugin-n/commit/7628925))

</details>

<details>
<summary>btd/rollup-plugin-visualizer
(rollup-plugin-visualizer)</summary>

###
[`v5.12.0`](https://togithub.com/btd/rollup-plugin-visualizer/blob/HEAD/CHANGELOG.md#5120)

[Compare
Source](https://togithub.com/btd/rollup-plugin-visualizer/compare/v5.11.0...v5.12.0)

-   Make unique id in generated data to be hash of data
-   Remove strict from CLI

</details>

<details>
<summary>sass/dart-sass (sass)</summary>

###
[`v1.69.7`](https://togithub.com/sass/dart-sass/blob/HEAD/CHANGELOG.md#1697)

[Compare
Source](https://togithub.com/sass/dart-sass/compare/1.69.6...1.69.7)

##### Embedded Sass

- In the JS Embedded Host, properly install the x64 Dart Sass executable
on
    ARM64 Windows.

###
[`v1.69.6`](https://togithub.com/sass/dart-sass/blob/HEAD/CHANGELOG.md#1696)

[Compare
Source](https://togithub.com/sass/dart-sass/compare/1.69.5...1.69.6)

- Produce better output for numbers with complex units in
`meta.inspect()` and
    debugging messages.

-   Escape U+007F DELETE when serializing strings.

- When generating CSS error messages to display in-browser, escape all
code
points that aren't in the US-ASCII region. Previously only code points
U+0100
    LATIN CAPITAL LETTER A WITH MACRON were escaped.

-   Provide official releases for musl LibC and for Android.

-   Don't crash when running `meta.apply()` in asynchronous mode.

##### JS API

- Fix a bug where certain exceptions could produce `SourceSpan`s that
didn't
    follow the documented `SourceSpan` API.

</details>

<details>
<summary>svg/svgo (svgo)</summary>

### [`v3.2.0`](https://togithub.com/svg/svgo/releases/tag/v3.2.0)

[Compare Source](https://togithub.com/svg/svgo/compare/v3.1.0...v3.2.0)

#### What's Changed

##### Bug Fixes

- [**Convert Path
Commands**](https://svgo.dev/docs/plugins/convert-path-data/), fix
instances were `q` was incorrectly converted to `t`. By
[@&#8203;KTibow](https://togithub.com/KTibow) in
[https://github.com/svg/svgo/pull/1889](https://togithub.com/svg/svgo/pull/1889)
- [**Convert
Transform**](https://svgo.dev/docs/plugins/convert-transform/), fix for
some transforms that weren't being converted correctly. By
[@&#8203;SethFalco](https://togithub.com/SethFalco) in
[https://github.com/svg/svgo/pull/1916](https://togithub.com/svg/svgo/pull/1916)

##### SVG Optimization

- [**Convert Path
Commands**](https://svgo.dev/docs/plugins/convert-path-data/), improves
closing paths and how we determine if to use absolute or relative
commands. By [@&#8203;KTibow](https://togithub.com/KTibow) in
[https://github.com/svg/svgo/pull/1867](https://togithub.com/svg/svgo/pull/1867)
- [**Convert Path
Commands**](https://svgo.dev/docs/plugins/convert-path-data/), round arc
or convert to lines based on the sagitta, can be disabled by setting
`smartArcRounding` to `false`. By
[@&#8203;KTibow](https://togithub.com/KTibow) in
[https://github.com/svg/svgo/pull/1873](https://togithub.com/svg/svgo/pull/1873)
- [**Convert Path
Commands**](https://svgo.dev/docs/plugins/convert-path-data/), convert
cubic Bézier curves to quadratic Bézier curves where possible, can be
disabled by setting `convertToQ` to `false`. By
[@&#8203;KTibow](https://togithub.com/KTibow) in
[https://github.com/svg/svgo/pull/1889](https://togithub.com/svg/svgo/pull/1889)

##### Performance

- [**Merge Paths**](https://svgo.dev/docs/plugins/merge-paths/),
refactor for performance with large files. By
[@&#8203;mozzie](https://togithub.com/mozzie) in
[https://github.com/svg/svgo/pull/1764](https://togithub.com/svg/svgo/pull/1764)
and
[https://github.com/svg/svgo/pull/1904](https://togithub.com/svg/svgo/pull/1904)
- [**Convert Path
Commands**](https://svgo.dev/docs/plugins/convert-path-data/), refactor
`#stringifyPathData` for performance. By
[@&#8203;SethFalco](https://togithub.com/SethFalco) in
[https://github.com/svg/svgo/pull/1900](https://togithub.com/svg/svgo/pull/1900)
- Use
[`Set`](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Set)
instead of
[`Array`](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array)
for faster lookups. By
[@&#8203;SethFalco](https://togithub.com/SethFalco) in
[https://github.com/svg/svgo/pull/1899](https://togithub.com/svg/svgo/pull/1899)

#### Metrics

Before and after using vectors from various sources, with the default
preset of each respective version:

| SVG | Original | v3.1.0 | v3.2.0 | Delta |
|---|---|---|---|---|
| [Arch Linux Logo](https://archlinux.org/art/) | 9.529 KiB | 4.162 KiB
| 4.115 KiB | ⬇️ 0.047 KiB |
|
[Blobs](https://gitlab.gnome.org/GNOME/gnome-backgrounds/-/blob/main/backgrounds/blobs-d.svg)
| 50.45 KiB | 42.949 KiB | 42.623 KiB | ⬇️ 0.326 KiB |
| [Isometric
Madness](https://inkscape.org/~Denis_Kuznetsky/%E2%98%85isometric-madness)
| 869.034 KiB | 550.153 KiB | 540.582 KiB | ⬇️ 9.571 KiB |
| [tldr-pages
Banner](https://togithub.com/tldr-pages/tldr/blob/main/images/banner.svg)
| 2.071 KiB | 1.07 KiB | 1.07 KiB | |
| [Wikipedia
Logo](https://en.wikipedia.org/wiki/File:Wikipedia-logo-v2.svg) |
161.551 KiB | 116 KiB | 111.668 KiB | ⬇️ 4.332 KiB |

Before and after of the browser bundle of each respective version:

| | v3.1.0 | v3.2.0 | Delta |
|---|---|---|---|
| svgo.browser.js | 660.9 kB | 910.9 kB | ⬆️ 250 kB |

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "every weekend" in timezone
Europe/Zurich, Automerge - 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.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get
[config help](https://togithub.com/renovatebot/renovate/discussions) if
that's undesired.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/swisspost/design-system).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4xMDMuMSIsInVwZGF0ZWRJblZlciI6IjM3LjEwMy4xIiwidGFyZ2V0QnJhbmNoIjoibWFpbiJ9-->

---------

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: Philipp Gfeller <philipp.gfeller@post.ch>
nono referenced this pull request in cozy/cozy-stack Jan 8, 2024
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [svgo](https://svgo.dev) ([source](https://togithub.com/svg/svgo)) |
[`3.1.0` -> `3.2.0`](https://renovatebot.com/diffs/npm/svgo/3.1.0/3.2.0)
|
[![age](https://developer.mend.io/api/mc/badges/age/npm/svgo/3.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/svgo/3.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/svgo/3.1.0/3.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|
[![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/svgo/3.1.0/3.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/)
|

---

### Release Notes

<details>
<summary>svg/svgo (svgo)</summary>

### [`v3.2.0`](https://togithub.com/svg/svgo/releases/tag/v3.2.0)

[Compare Source](https://togithub.com/svg/svgo/compare/v3.1.0...v3.2.0)

#### What's Changed

##### Bug Fixes

- [**Convert Path
Commands**](https://svgo.dev/docs/plugins/convert-path-data/), fix
instances were `q` was incorrectly converted to `t`. By
[@&#8203;KTibow](https://togithub.com/KTibow) in
[https://github.com/svg/svgo/pull/1889](https://togithub.com/svg/svgo/pull/1889)
- [**Convert
Transform**](https://svgo.dev/docs/plugins/convert-transform/), fix for
some transforms that weren't being converted correctly. By
[@&#8203;SethFalco](https://togithub.com/SethFalco) in
[https://github.com/svg/svgo/pull/1916](https://togithub.com/svg/svgo/pull/1916)

##### SVG Optimization

- [**Convert Path
Commands**](https://svgo.dev/docs/plugins/convert-path-data/), improves
closing paths and how we determine if to use absolute or relative
commands. By [@&#8203;KTibow](https://togithub.com/KTibow) in
[https://github.com/svg/svgo/pull/1867](https://togithub.com/svg/svgo/pull/1867)
- [**Convert Path
Commands**](https://svgo.dev/docs/plugins/convert-path-data/), round arc
or convert to lines based on the sagitta, can be disabled by setting
`smartArcRounding` to `false`. By
[@&#8203;KTibow](https://togithub.com/KTibow) in
[https://github.com/svg/svgo/pull/1873](https://togithub.com/svg/svgo/pull/1873)
- [**Convert Path
Commands**](https://svgo.dev/docs/plugins/convert-path-data/), convert
cubic Bézier curves to quadratic Bézier curves where possible, can be
disabled by setting `convertToQ` to `false`. By
[@&#8203;KTibow](https://togithub.com/KTibow) in
[https://github.com/svg/svgo/pull/1889](https://togithub.com/svg/svgo/pull/1889)

##### Performance

- [**Merge Paths**](https://svgo.dev/docs/plugins/merge-paths/),
refactor for performance with large files. By
[@&#8203;mozzie](https://togithub.com/mozzie) in
[https://github.com/svg/svgo/pull/1764](https://togithub.com/svg/svgo/pull/1764)
and
[https://github.com/svg/svgo/pull/1904](https://togithub.com/svg/svgo/pull/1904)
- [**Convert Path
Commands**](https://svgo.dev/docs/plugins/convert-path-data/), refactor
`#stringifyPathData` for performance. By
[@&#8203;SethFalco](https://togithub.com/SethFalco) in
[https://github.com/svg/svgo/pull/1900](https://togithub.com/svg/svgo/pull/1900)
- Use
[`Set`](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Set)
instead of
[`Array`](https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Array)
for faster lookups. By
[@&#8203;SethFalco](https://togithub.com/SethFalco) in
[https://github.com/svg/svgo/pull/1899](https://togithub.com/svg/svgo/pull/1899)

#### Metrics

Before and after using vectors from various sources, with the default
preset of each respective version:

| SVG | Original | v3.1.0 | v3.2.0 | Delta |
|---|---|---|---|---|
| [Arch Linux Logo](https://archlinux.org/art/) | 9.529 KiB | 4.162 KiB
| 4.115 KiB | ⬇️ 0.047 KiB |
|
[Blobs](https://gitlab.gnome.org/GNOME/gnome-backgrounds/-/blob/main/backgrounds/blobs-d.svg)
| 50.45 KiB | 42.949 KiB | 42.623 KiB | ⬇️ 0.326 KiB |
| [Isometric
Madness](https://inkscape.org/~Denis_Kuznetsky/%E2%98%85isometric-madness)
| 869.034 KiB | 550.153 KiB | 540.582 KiB | ⬇️ 9.571 KiB |
| [tldr-pages
Banner](https://togithub.com/tldr-pages/tldr/blob/main/images/banner.svg)
| 2.071 KiB | 1.07 KiB | 1.07 KiB | |
| [Wikipedia
Logo](https://en.wikipedia.org/wiki/File:Wikipedia-logo-v2.svg) |
161.551 KiB | 116 KiB | 111.668 KiB | ⬇️ 4.332 KiB |

Before and after of the browser bundle of each respective version:

| | v3.1.0 | v3.2.0 | Delta |
|---|---|---|---|
| svgo.browser.js | 660.9 kB | 910.9 kB | ⬆️ 250 kB |

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "before 6am on Monday" in timezone
Europe/Paris, Automerge - 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 [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/cozy/cozy-stack).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4xMjEuMCIsInVwZGF0ZWRJblZlciI6IjM3LjEyMS4wIiwidGFyZ2V0QnJhbmNoIjoibWFzdGVyIn0=-->
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants