chore(deps): update dependency svgo to v4.1.0 #11

Merged
luca merged 1 commit from renovate/svgo-4-x-lockfile into main 2026-09-09 22:28:31 +02:00
Collaborator

This PR contains the following updates:

Package Type Update Change
svgo (source) devDependencies minor 4.0.1 → 4.1.0

Release Notes

svg/svgo (svgo)

v4.1.0

Compare Source

This minor release upgrades the SAX parser and introduces stricter XML validation. It also includes important security hardening for removeScripts, dependency updates, and improvements to the test and regression infrastructure.

Support SVGO

If SVGO is valuable to you or your organization, please consider supporting the project on OpenCollective. Your sponsorship helps fund ongoing maintenance and security work.

Stricter XML validation

SVGO now uses sax 1.6.1, upgraded from 1.5.0 (#​2257).

The new parser version validates numeric character references against the ranges permitted by XML. Invalid references are now rejected in both text and attributes, including:

  • disallowed control characters such as &#​1;, , and ;
  • UTF-16 surrogate code points such as �;
  • invalid XML code points such as .

Valid boundary values—including U+0020, U+D7FF, U+E000, U+FFFD, and characters through U+10FFFF—remain supported.

Parser failures are consistently exposed as SvgoParserError errors with an Invalid character entity reason.

This is an intentional behavior change: malformed SVGs that were previously accepted may now produce a parser error, while valid XML documents are unaffected.

Security

The removeScripts plugin has been hardened against several script-execution bypasses:

  • Filters executable data: URLs containing HTML, XHTML, or SVG documents while preserving inert data such as PNG images, and filters legacy vbscript: URLs (#​2263).
  • Sanitizes content inside SVG <foreignObject> elements by removing HTML event-handler attributes, srcdoc, and executable URLs from action, data, formaction, href, and src, while preserving non-executable HTML and visual content (#​2264).
  • Recognizes namespace-prefixed SVG <a> elements and removes ASCII tabs and newlines before checking URL schemes, preventing values such as java&#&#8203;9;script: from bypassing detection while preserving elements in unrelated custom namespaces (#​2268).

These changes address:

Dependencies
  • Upgraded css-select to v6 and css-what to v7, and updated SVGO's custom selector adapter for css-select v6 (#​2244).
Project maintenance

@​TrySound is back as an active SVGO maintainer.

Many thanks to @​KTibow, @​SethFalco, and @​XhmikosR for maintaining and improving SVGO over the past several years.

Full Changelog: https://github.com/svg/svgo/compare/v4.0.2...v4.1.0

v4.0.2

Compare Source

What's Changed

Security
Bug Fixes
Performance
Other Changes

Configuration

📅 Schedule: (UTC)

  • Branch creation
    • At any time (no schedule defined)
  • 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.


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

This PR has been generated by Mend Renovate.

This PR contains the following updates: | Package | Type | Update | Change | |---|---|---|---| | [svgo](https://svgo.dev) ([source](https://github.com/svg/svgo)) | devDependencies | minor | [`4.0.1` → `4.1.0`](https://renovatebot.com/diffs/npm/svgo/4.0.1/4.1.0) | --- ### Release Notes <details> <summary>svg/svgo (svgo)</summary> ### [`v4.1.0`](https://github.com/svg/svgo/releases/tag/v4.1.0) [Compare Source](https://github.com/svg/svgo/compare/v4.0.2...v4.1.0) This minor release upgrades the SAX parser and introduces stricter XML validation. It also includes important security hardening for `removeScripts`, dependency updates, and improvements to the test and regression infrastructure. ##### Support SVGO If SVGO is valuable to you or your organization, please consider [supporting the project on OpenCollective](https://opencollective.com/svgo). Your sponsorship helps fund ongoing maintenance and security work. ##### Stricter XML validation SVGO now uses [`sax` 1.6.1](https://www.npmjs.com/package/sax), upgraded from 1.5.0 ([#&#8203;2257](https://github.com/svg/svgo/pull/2257)). The new parser version validates numeric character references against the ranges permitted by XML. Invalid references are now rejected in both text and attributes, including: - disallowed control characters such as `&#&#8203;1;`, `&#xB;`, and `&#x1F;`; - UTF-16 surrogate code points such as `&#xD800;`; - invalid XML code points such as `&#xFFFF;`. Valid boundary values—including `U+0020`, `U+D7FF`, `U+E000`, `U+FFFD`, and characters through `U+10FFFF`—remain supported. Parser failures are consistently exposed as `SvgoParserError` errors with an `Invalid character entity` reason. This is an intentional behavior change: malformed SVGs that were previously accepted may now produce a parser error, while valid XML documents are unaffected. ##### Security The [`removeScripts`](https://svgo.dev/docs/plugins/removeScripts/) plugin has been hardened against several script-execution bypasses: - Filters executable `data:` URLs containing HTML, XHTML, or SVG documents while preserving inert data such as PNG images, and filters legacy `vbscript:` URLs ([#&#8203;2263](https://github.com/svg/svgo/pull/2263)). - Sanitizes content inside SVG `<foreignObject>` elements by removing HTML event-handler attributes, `srcdoc`, and executable URLs from `action`, `data`, `formaction`, `href`, and `src`, while preserving non-executable HTML and visual content ([#&#8203;2264](https://github.com/svg/svgo/pull/2264)). - Recognizes namespace-prefixed SVG `<a>` elements and removes ASCII tabs and newlines before checking URL schemes, preventing values such as `java&#&#8203;9;script:` from bypassing detection while preserving elements in unrelated custom namespaces ([#&#8203;2268](https://github.com/svg/svgo/pull/2268)). These changes address: - [GHSA-4vpr-x523-8j87](https://github.com/svg/svgo/security/advisories/GHSA-4vpr-x523-8j87) - [GHSA-w27v-7q3p-w38r](https://github.com/svg/svgo/security/advisories/GHSA-w27v-7q3p-w38r) ##### Dependencies - Upgraded `css-select` to v6 and `css-what` to v7, and updated SVGO's custom selector adapter for `css-select` v6 ([#&#8203;2244](https://github.com/svg/svgo/pull/2244)). ##### Project maintenance [@&#8203;TrySound](https://github.com/TrySound) is back as an active SVGO maintainer. Many thanks to [@&#8203;KTibow](https://github.com/KTibow), [@&#8203;SethFalco](https://github.com/SethFalco), and [@&#8203;XhmikosR](https://github.com/XhmikosR) for maintaining and improving SVGO over the past several years. **Full Changelog:** <https://github.com/svg/svgo/compare/v4.0.2...v4.1.0> ### [`v4.0.2`](https://github.com/svg/svgo/releases/tag/v4.0.2) [Compare Source](https://github.com/svg/svgo/compare/v4.0.1...v4.0.2) #### What's Changed ##### Security - [removeScripts](https://svgo.dev/docs/plugins/removeScripts/), remove JavaScript URIs case-insensitively and make `<script>` handling namespace aware. By [@&#8203;SethFalco](https://github.com/SethFalco) ##### Bug Fixes - [convertColors](https://svgo.dev/docs/plugins/convertColors/), skip case-normalization for CSS custom properties. By [@&#8203;SethFalco](https://github.com/SethFalco) in [#&#8203;2213](https://github.com/svg/svgo/pull/2213) - [convertPathData](https://svgo.dev/docs/plugins/convertPathData/), improve handling of consecutive `t` commands. By [@&#8203;KTibow](https://github.com/KTibow) in [#&#8203;2156](https://github.com/svg/svgo/pull/2156) - [convertPathData](https://svgo.dev/docs/plugins/convertPathData/), safer handling of paths. By [@&#8203;KTibow](https://github.com/KTibow) in [#&#8203;2158](https://github.com/svg/svgo/issues/2158) - Improve parsing of negative (or +) arc radii. By [@&#8203;KTibow](https://github.com/KTibow) in [#&#8203;2205](https://github.com/svg/svgo/pull/2205) - When converting to a data URI, only encode it as a data URI once. By [@&#8203;johnkenny54](https://github.com/johnkenny54) in [#&#8203;2053](https://github.com/svg/svgo/pull/2053) ##### Performance - [mergePaths](https://svgo.dev/docs/plugins/mergePaths/), speed up child node removal. By [@&#8203;mozzie](https://github.com/mozzie) in [#&#8203;2216](https://github.com/svg/svgo/pull/2216) ##### Other Changes - [removeAttributesBySelector](https://svgo.dev/docs/plugins/removeAttributesBySelector/), log warning and noop if missing parameters. By [@&#8203;KTibow](https://github.com/KTibow) in [#&#8203;2215](https://github.com/svg/svgo/pull/2215) </details> --- ### Configuration 📅 **Schedule**: (UTC) - Branch creation - At any time (no schedule defined) - 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://github.com/renovatebot/renovate). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0My4xNjAuNCIsInVwZGF0ZWRJblZlciI6IjQzLjE2MC40IiwidGFyZ2V0QnJhbmNoIjoibWFpbiIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiLCJyZW5vdmF0ZSJdfQ==-->
chore(deps): update dependency svgo to v4.0.2
All checks were successful
ci/woodpecker/pr/deploy Pipeline was successful
f3647229fa
renovate force-pushed renovate/svgo-4-x-lockfile from f3647229fa
All checks were successful
ci/woodpecker/pr/deploy Pipeline was successful
to f06c915625
All checks were successful
ci/woodpecker/pr/deploy Pipeline was successful
2026-07-24 21:00:18 +02:00
Compare
renovate changed title from chore(deps): update dependency svgo to v4.0.2 to chore(deps): update dependency svgo to v4.1.0 2026-08-24 15:00:21 +02:00
renovate force-pushed renovate/svgo-4-x-lockfile from f06c915625
All checks were successful
ci/woodpecker/pr/deploy Pipeline was successful
to a4a53ac3cd
All checks were successful
ci/woodpecker/pr/deploy Pipeline was successful
2026-08-24 15:00:22 +02:00
Compare
luca merged commit a1af5ed91d into main 2026-09-09 22:28:31 +02:00
luca deleted branch renovate/svgo-4-x-lockfile 2026-09-09 22:28:31 +02:00
Sign in to join this conversation.
No reviewers
No milestone
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set

Reference
kontakt/map.kntkt.de!11
No description provided.