mediawiki/extensions/ChessBrowser: REL1_44 (log #2374568)

sourcepatches

This run took 38 seconds.

From 58caa9e585f460cd4912dd0579ef756ed5efe519 Mon Sep 17 00:00:00 2001
From: libraryupgrader <tools.libraryupgrader@tools.wmflabs.org>
Date: Thu, 5 Mar 2026 04:31:46 +0000
Subject: [PATCH] build: Updating svgo to 3.3.3

Change-Id: I3301a567667055f0e6382ebd6ca2ba87afa14bdd
---
 package-lock.json | 52 +++++++++++++++++++++++------------------------
 package.json      |  2 +-
 2 files changed, 27 insertions(+), 27 deletions(-)

diff --git a/package-lock.json b/package-lock.json
index 3743ac3..23b2569 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -9,7 +9,7 @@
 				"eslint-config-wikimedia": "0.29.1",
 				"grunt-banana-checker": "0.13.0",
 				"stylelint-config-wikimedia": "0.18.0",
-				"svgo": "3.2.0"
+				"svgo": "3.3.3"
 			}
 		},
 		"node_modules/@aashutoshrathi/word-wrap": {
@@ -400,15 +400,6 @@
 				"node": ">=4"
 			}
 		},
-		"node_modules/@trysound/sax": {
-			"version": "0.2.0",
-			"resolved": "https://registry.npmjs.org/@trysound/sax/-/sax-0.2.0.tgz",
-			"integrity": "sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==",
-			"dev": true,
-			"engines": {
-				"node": ">=10.13.0"
-			}
-		},
 		"node_modules/@types/eslint": {
 			"version": "8.56.10",
 			"resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.56.10.tgz",
@@ -3444,6 +3435,15 @@
 				"regexp-tree": "~0.1.1"
 			}
 		},
+		"node_modules/sax": {
+			"version": "1.5.0",
+			"resolved": "https://registry.npmjs.org/sax/-/sax-1.5.0.tgz",
+			"integrity": "sha512-21IYA3Q5cQf089Z6tgaUTr7lDAyzoTPx5HRtbhsME8Udispad8dC/+sziTNugOEx54ilvatQ9YCzl4KQLPcRHA==",
+			"dev": true,
+			"engines": {
+				"node": ">=11.0.0"
+			}
+		},
 		"node_modules/semver": {
 			"version": "7.6.2",
 			"resolved": "https://registry.npmjs.org/semver/-/semver-7.6.2.tgz",
@@ -3961,18 +3961,18 @@
 			"dev": true
 		},
 		"node_modules/svgo": {
-			"version": "3.2.0",
-			"resolved": "https://registry.npmjs.org/svgo/-/svgo-3.2.0.tgz",
-			"integrity": "sha512-4PP6CMW/V7l/GmKRKzsLR8xxjdHTV4IMvhTnpuHwwBazSIlw5W/5SmPjN8Dwyt7lKbSJrRDgp4t9ph0HgChFBQ==",
+			"version": "3.3.3",
+			"resolved": "https://registry.npmjs.org/svgo/-/svgo-3.3.3.tgz",
+			"integrity": "sha512-+wn7I4p7YgJhHs38k2TNjy1vCfPIfLIJWR5MnCStsN8WuuTcBnRKcMHQLMM2ijxGZmDoZwNv8ipl5aTTen62ng==",
 			"dev": true,
 			"dependencies": {
-				"@trysound/sax": "0.2.0",
 				"commander": "^7.2.0",
 				"css-select": "^5.1.0",
 				"css-tree": "^2.3.1",
 				"css-what": "^6.1.0",
 				"csso": "^5.0.5",
-				"picocolors": "^1.0.0"
+				"picocolors": "^1.0.0",
+				"sax": "^1.5.0"
 			},
 			"bin": {
 				"svgo": "bin/svgo"
@@ -4597,12 +4597,6 @@
 				}
 			}
 		},
-		"@trysound/sax": {
-			"version": "0.2.0",
-			"resolved": "https://registry.npmjs.org/@trysound/sax/-/sax-0.2.0.tgz",
-			"integrity": "sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==",
-			"dev": true
-		},
 		"@types/eslint": {
 			"version": "8.56.10",
 			"resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.56.10.tgz",
@@ -6751,6 +6745,12 @@
 				"regexp-tree": "~0.1.1"
 			}
 		},
+		"sax": {
+			"version": "1.5.0",
+			"resolved": "https://registry.npmjs.org/sax/-/sax-1.5.0.tgz",
+			"integrity": "sha512-21IYA3Q5cQf089Z6tgaUTr7lDAyzoTPx5HRtbhsME8Udispad8dC/+sziTNugOEx54ilvatQ9YCzl4KQLPcRHA==",
+			"dev": true
+		},
 		"semver": {
 			"version": "7.6.2",
 			"resolved": "https://registry.npmjs.org/semver/-/semver-7.6.2.tgz",
@@ -7101,18 +7101,18 @@
 			"dev": true
 		},
 		"svgo": {
-			"version": "3.2.0",
-			"resolved": "https://registry.npmjs.org/svgo/-/svgo-3.2.0.tgz",
-			"integrity": "sha512-4PP6CMW/V7l/GmKRKzsLR8xxjdHTV4IMvhTnpuHwwBazSIlw5W/5SmPjN8Dwyt7lKbSJrRDgp4t9ph0HgChFBQ==",
+			"version": "3.3.3",
+			"resolved": "https://registry.npmjs.org/svgo/-/svgo-3.3.3.tgz",
+			"integrity": "sha512-+wn7I4p7YgJhHs38k2TNjy1vCfPIfLIJWR5MnCStsN8WuuTcBnRKcMHQLMM2ijxGZmDoZwNv8ipl5aTTen62ng==",
 			"dev": true,
 			"requires": {
-				"@trysound/sax": "0.2.0",
 				"commander": "^7.2.0",
 				"css-select": "^5.1.0",
 				"css-tree": "^2.3.1",
 				"css-what": "^6.1.0",
 				"csso": "^5.0.5",
-				"picocolors": "^1.0.0"
+				"picocolors": "^1.0.0",
+				"sax": "^1.5.0"
 			}
 		},
 		"table": {
diff --git a/package.json b/package.json
index 21416c8..8dbec22 100644
--- a/package.json
+++ b/package.json
@@ -15,7 +15,7 @@
 		"eslint-config-wikimedia": "0.29.1",
 		"grunt-banana-checker": "0.13.0",
 		"stylelint-config-wikimedia": "0.18.0",
-		"svgo": "3.2.0"
+		"svgo": "3.3.3"
 	},
 	"eslintIgnore": [
 		"vendor/**",
-- 
2.47.3

$ date
--- stdout ---
Thu Mar  5 04:31:21 UTC 2026

--- end ---
$ git clone file:///srv/git/mediawiki-extensions-ChessBrowser.git /src/repo --depth=1 -b REL1_44
--- stderr ---
Cloning into '/src/repo'...
--- stdout ---

--- end ---
$ git config user.name libraryupgrader
--- stdout ---

--- end ---
$ git config user.email tools.libraryupgrader@tools.wmflabs.org
--- stdout ---

--- end ---
$ git submodule update --init
--- stdout ---

--- end ---
$ grr init
--- stdout ---
Installed commit-msg hook.

--- end ---
$ git show-ref refs/heads/REL1_44
--- stdout ---
027ee26e939e93c3417c503b1f0984302ca9e996 refs/heads/REL1_44

--- end ---
$ /usr/bin/npm audit --json
--- stdout ---
{
  "auditReportVersion": 2,
  "vulnerabilities": {
    "svgo": {
      "name": "svgo",
      "severity": "high",
      "isDirect": true,
      "via": [
        {
          "source": 1113986,
          "name": "svgo",
          "dependency": "svgo",
          "title": "SVGO DoS through entity expansion in DOCTYPE (Billion Laughs)",
          "url": "https://github.com/advisories/GHSA-xpqw-6gx7-v673",
          "severity": "high",
          "cwe": [
            "CWE-776"
          ],
          "cvss": {
            "score": 7.5,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"
          },
          "range": ">=3.0.0 <3.3.3"
        }
      ],
      "effects": [],
      "range": "3.0.0 - 3.3.2",
      "nodes": [
        "node_modules/svgo"
      ],
      "fixAvailable": {
        "name": "svgo",
        "version": "3.3.3",
        "isSemVerMajor": false
      }
    }
  },
  "metadata": {
    "vulnerabilities": {
      "info": 0,
      "low": 0,
      "moderate": 0,
      "high": 1,
      "critical": 0,
      "total": 1
    },
    "dependencies": {
      "prod": 1,
      "dev": 353,
      "optional": 0,
      "peer": 1,
      "peerOptional": 0,
      "total": 353
    }
  }
}

--- end ---
$ /usr/bin/composer install
--- stderr ---
No composer.lock file present. Updating dependencies to latest instead of installing from lock file. See https://getcomposer.org/install for more information.
Loading composer repositories with package information
Updating dependencies
Lock file operations: 38 installs, 0 updates, 0 removals
  - Locking composer/pcre (3.3.2)
  - Locking composer/semver (3.4.3)
  - Locking composer/spdx-licenses (1.5.9)
  - Locking composer/xdebug-handler (3.0.5)
  - Locking dealerdirect/phpcodesniffer-composer-installer (v1.2.0)
  - Locking doctrine/deprecations (1.1.6)
  - Locking felixfbecker/advanced-json-rpc (v3.2.1)
  - Locking mediawiki/mediawiki-codesniffer (v47.0.0)
  - Locking mediawiki/mediawiki-phan-config (0.15.1)
  - Locking mediawiki/minus-x (1.1.3)
  - Locking mediawiki/phan-taint-check-plugin (6.1.0)
  - Locking microsoft/tolerant-php-parser (v0.1.2)
  - Locking netresearch/jsonmapper (v4.5.0)
  - Locking phan/phan (5.4.5)
  - Locking php-parallel-lint/php-console-color (v1.0.1)
  - Locking php-parallel-lint/php-console-highlighter (v1.0.0)
  - Locking php-parallel-lint/php-parallel-lint (v1.4.0)
  - Locking phpcsstandards/phpcsextra (1.2.1)
  - Locking phpcsstandards/phpcsutils (1.0.12)
  - Locking phpdocumentor/reflection-common (2.2.0)
  - Locking phpdocumentor/reflection-docblock (5.6.6)
  - Locking phpdocumentor/type-resolver (1.12.0)
  - Locking phpstan/phpdoc-parser (2.3.2)
  - Locking psr/container (2.0.2)
  - Locking psr/log (3.0.2)
  - Locking sabre/event (5.1.7)
  - Locking squizlabs/php_codesniffer (3.12.2)
  - Locking symfony/console (v7.4.6)
  - Locking symfony/deprecation-contracts (v3.6.0)
  - Locking symfony/polyfill-ctype (v1.33.0)
  - Locking symfony/polyfill-intl-grapheme (v1.33.0)
  - Locking symfony/polyfill-intl-normalizer (v1.33.0)
  - Locking symfony/polyfill-mbstring (v1.33.0)
  - Locking symfony/polyfill-php80 (v1.33.0)
  - Locking symfony/service-contracts (v3.6.1)
  - Locking symfony/string (v8.0.6)
  - Locking tysonandre/var_representation_polyfill (0.1.3)
  - Locking webmozart/assert (2.1.6)
Writing lock file
Installing dependencies from lock file (including require-dev)
Package operations: 38 installs, 0 updates, 0 removals
    0 [>---------------------------]    0 [->--------------------------]
  - Installing squizlabs/php_codesniffer (3.12.2): Extracting archive
  - Installing dealerdirect/phpcodesniffer-composer-installer (v1.2.0): Extracting archive
  - Installing composer/pcre (3.3.2): Extracting archive
  - Installing symfony/polyfill-php80 (v1.33.0): Extracting archive
  - Installing phpcsstandards/phpcsutils (1.0.12): Extracting archive
  - Installing phpcsstandards/phpcsextra (1.2.1): Extracting archive
  - Installing symfony/polyfill-mbstring (v1.33.0): Extracting archive
  - Installing composer/spdx-licenses (1.5.9): Extracting archive
  - Installing composer/semver (3.4.3): Extracting archive
  - Installing mediawiki/mediawiki-codesniffer (v47.0.0): Extracting archive
  - Installing tysonandre/var_representation_polyfill (0.1.3): Extracting archive
  - Installing symfony/polyfill-intl-normalizer (v1.33.0): Extracting archive
  - Installing symfony/polyfill-intl-grapheme (v1.33.0): Extracting archive
  - Installing symfony/polyfill-ctype (v1.33.0): Extracting archive
  - Installing symfony/string (v8.0.6): Extracting archive
  - Installing symfony/deprecation-contracts (v3.6.0): Extracting archive
  - Installing psr/container (2.0.2): Extracting archive
  - Installing symfony/service-contracts (v3.6.1): Extracting archive
  - Installing symfony/console (v7.4.6): Extracting archive
  - Installing sabre/event (5.1.7): Extracting archive
  - Installing netresearch/jsonmapper (v4.5.0): Extracting archive
  - Installing microsoft/tolerant-php-parser (v0.1.2): Extracting archive
  - Installing webmozart/assert (2.1.6): Extracting archive
  - Installing phpstan/phpdoc-parser (2.3.2): Extracting archive
  - Installing phpdocumentor/reflection-common (2.2.0): Extracting archive
  - Installing doctrine/deprecations (1.1.6): Extracting archive
  - Installing phpdocumentor/type-resolver (1.12.0): Extracting archive
  - Installing phpdocumentor/reflection-docblock (5.6.6): Extracting archive
  - Installing felixfbecker/advanced-json-rpc (v3.2.1): Extracting archive
  - Installing psr/log (3.0.2): Extracting archive
  - Installing composer/xdebug-handler (3.0.5): Extracting archive
  - Installing phan/phan (5.4.5): Extracting archive
  - Installing mediawiki/phan-taint-check-plugin (6.1.0): Extracting archive
  - Installing mediawiki/mediawiki-phan-config (0.15.1): Extracting archive
  - Installing mediawiki/minus-x (1.1.3): Extracting archive
  - Installing php-parallel-lint/php-console-color (v1.0.1): Extracting archive
  - Installing php-parallel-lint/php-console-highlighter (v1.0.0): Extracting archive
  - Installing php-parallel-lint/php-parallel-lint (v1.4.0): Extracting archive
  0/36 [>---------------------------]   0%
 28/36 [=====================>------]  77%
 36/36 [============================] 100%
1 package suggestions were added by new dependencies, use `composer suggest` to see details.
Generating autoload files
17 packages you are using are looking for funding.
Use the `composer fund` command to find out more!
--- stdout ---
PHP CodeSniffer Config installed_paths set to ../../mediawiki/mediawiki-codesniffer,../../phpcsstandards/phpcsextra,../../phpcsstandards/phpcsutils

--- end ---
$ /usr/bin/npm audit --json
--- stdout ---
{
  "auditReportVersion": 2,
  "vulnerabilities": {
    "svgo": {
      "name": "svgo",
      "severity": "high",
      "isDirect": true,
      "via": [
        {
          "source": 1113986,
          "name": "svgo",
          "dependency": "svgo",
          "title": "SVGO DoS through entity expansion in DOCTYPE (Billion Laughs)",
          "url": "https://github.com/advisories/GHSA-xpqw-6gx7-v673",
          "severity": "high",
          "cwe": [
            "CWE-776"
          ],
          "cvss": {
            "score": 7.5,
            "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"
          },
          "range": ">=3.0.0 <3.3.3"
        }
      ],
      "effects": [],
      "range": "3.0.0 - 3.3.2",
      "nodes": [
        "node_modules/svgo"
      ],
      "fixAvailable": {
        "name": "svgo",
        "version": "3.3.3",
        "isSemVerMajor": false
      }
    }
  },
  "metadata": {
    "vulnerabilities": {
      "info": 0,
      "low": 0,
      "moderate": 0,
      "high": 1,
      "critical": 0,
      "total": 1
    },
    "dependencies": {
      "prod": 1,
      "dev": 353,
      "optional": 0,
      "peer": 1,
      "peerOptional": 0,
      "total": 353
    }
  }
}

--- end ---
Attempting to npm audit fix
$ /usr/bin/npm audit fix --dry-run --only=dev --json
--- stderr ---
npm WARN invalid config only="dev" set in command line options
npm WARN invalid config Must be one of: null, prod, production
--- stdout ---
{
  "added": 353,
  "removed": 0,
  "changed": 0,
  "audited": 354,
  "funding": 93,
  "audit": {
    "auditReportVersion": 2,
    "vulnerabilities": {
      "svgo": {
        "name": "svgo",
        "severity": "high",
        "isDirect": true,
        "via": [
          {
            "source": 1113986,
            "name": "svgo",
            "dependency": "svgo",
            "title": "SVGO DoS through entity expansion in DOCTYPE (Billion Laughs)",
            "url": "https://github.com/advisories/GHSA-xpqw-6gx7-v673",
            "severity": "high",
            "cwe": [
              "CWE-776"
            ],
            "cvss": {
              "score": 7.5,
              "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"
            },
            "range": ">=3.0.0 <3.3.3"
          }
        ],
        "effects": [],
        "range": "3.0.0 - 3.3.2",
        "nodes": [
          "node_modules/svgo"
        ],
        "fixAvailable": {
          "name": "svgo",
          "version": "3.3.3",
          "isSemVerMajor": false
        }
      }
    },
    "metadata": {
      "vulnerabilities": {
        "info": 0,
        "low": 0,
        "moderate": 0,
        "high": 1,
        "critical": 0,
        "total": 1
      },
      "dependencies": {
        "prod": 1,
        "dev": 353,
        "optional": 0,
        "peer": 1,
        "peerOptional": 0,
        "total": 353
      }
    }
  }
}

--- end ---
{"added": 353, "removed": 0, "changed": 0, "audited": 354, "funding": 93, "audit": {"auditReportVersion": 2, "vulnerabilities": {"svgo": {"name": "svgo", "severity": "high", "isDirect": true, "via": [{"source": 1113986, "name": "svgo", "dependency": "svgo", "title": "SVGO DoS through entity expansion in DOCTYPE (Billion Laughs)", "url": "https://github.com/advisories/GHSA-xpqw-6gx7-v673", "severity": "high", "cwe": ["CWE-776"], "cvss": {"score": 7.5, "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H"}, "range": ">=3.0.0 <3.3.3"}], "effects": [], "range": "3.0.0 - 3.3.2", "nodes": ["node_modules/svgo"], "fixAvailable": {"name": "svgo", "version": "3.3.3", "isSemVerMajor": false}}}, "metadata": {"vulnerabilities": {"info": 0, "low": 0, "moderate": 0, "high": 1, "critical": 0, "total": 1}, "dependencies": {"prod": 1, "dev": 353, "optional": 0, "peer": 1, "peerOptional": 0, "total": 353}}}}
{}
Upgrading n:svgo from 3.2.0 -> 3.3.3
$ /usr/bin/npm audit fix --only=dev
--- stderr ---
npm WARN invalid config only="dev" set in command line options
npm WARN invalid config Must be one of: null, prod, production
--- stdout ---

added 353 packages, and audited 354 packages in 4s

93 packages are looking for funding
  run `npm fund` for details

found 0 vulnerabilities

--- end ---
Verifying that tests still pass
$ /usr/bin/npm ci
--- stdout ---

added 353 packages, and audited 354 packages in 5s

93 packages are looking for funding
  run `npm fund` for details

found 0 vulnerabilities

--- end ---
$ /usr/bin/npm test
--- stdout ---

> test
> npm -s run lint


/src/repo/modules/ext.chessViewer.core.js
   76:8  warning  'files' is never reassigned. Use 'const' instead           prefer-const
   88:4  warning  '$grid' is never reassigned. Use 'const' instead           prefer-const
  128:8  warning  'fenArray' is never reassigned. Use 'const' instead        prefer-const
  136:5  warning  'board' is never reassigned. Use 'const' instead           prefer-const
  278:5  warning  'board' is never reassigned. Use 'const' instead           prefer-const
  279:5  warning  'piecesToAppear' is never reassigned. Use 'const' instead  prefer-const
  282:5  warning  'toHide' is never reassigned. Use 'const' instead          prefer-const
  367:4  warning  '$notation' is never reassigned. Use 'const' instead       prefer-const
  425:8  warning  '$parent' is never reassigned. Use 'const' instead         prefer-const
  426:5  warning  'parentsHeight' is never reassigned. Use 'const' instead   prefer-const
  427:5  warning  'notationHeight' is never reassigned. Use 'const' instead  prefer-const
  428:5  warning  'notationTop' is never reassigned. Use 'const' instead     prefer-const
  621:8  warning  'move' is never reassigned. Use 'const' instead            prefer-const
  622:5  warning  'colorMsg' is never reassigned. Use 'const' instead        prefer-const
  647:4  warning  'matches' is never reassigned. Use 'const' instead         prefer-const

✖ 15 problems (0 errors, 15 warnings)

Checked 1 message directory.

--- end ---
$ package-lock-lint /src/repo/package-lock.json
--- stdout ---
Checking /src/repo/package-lock.json

--- end ---
build: Updating svgo to 3.3.3

$ git add .
--- stdout ---

--- end ---
$ git commit -F /tmp/tmpr44it4be
--- stdout ---
[REL1_44 58caa9e] build: Updating svgo to 3.3.3
 2 files changed, 27 insertions(+), 27 deletions(-)

--- end ---
$ git format-patch HEAD~1 --stdout
--- stdout ---
From 58caa9e585f460cd4912dd0579ef756ed5efe519 Mon Sep 17 00:00:00 2001
From: libraryupgrader <tools.libraryupgrader@tools.wmflabs.org>
Date: Thu, 5 Mar 2026 04:31:46 +0000
Subject: [PATCH] build: Updating svgo to 3.3.3

Change-Id: I3301a567667055f0e6382ebd6ca2ba87afa14bdd
---
 package-lock.json | 52 +++++++++++++++++++++++------------------------
 package.json      |  2 +-
 2 files changed, 27 insertions(+), 27 deletions(-)

diff --git a/package-lock.json b/package-lock.json
index 3743ac3..23b2569 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -9,7 +9,7 @@
 				"eslint-config-wikimedia": "0.29.1",
 				"grunt-banana-checker": "0.13.0",
 				"stylelint-config-wikimedia": "0.18.0",
-				"svgo": "3.2.0"
+				"svgo": "3.3.3"
 			}
 		},
 		"node_modules/@aashutoshrathi/word-wrap": {
@@ -400,15 +400,6 @@
 				"node": ">=4"
 			}
 		},
-		"node_modules/@trysound/sax": {
-			"version": "0.2.0",
-			"resolved": "https://registry.npmjs.org/@trysound/sax/-/sax-0.2.0.tgz",
-			"integrity": "sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==",
-			"dev": true,
-			"engines": {
-				"node": ">=10.13.0"
-			}
-		},
 		"node_modules/@types/eslint": {
 			"version": "8.56.10",
 			"resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.56.10.tgz",
@@ -3444,6 +3435,15 @@
 				"regexp-tree": "~0.1.1"
 			}
 		},
+		"node_modules/sax": {
+			"version": "1.5.0",
+			"resolved": "https://registry.npmjs.org/sax/-/sax-1.5.0.tgz",
+			"integrity": "sha512-21IYA3Q5cQf089Z6tgaUTr7lDAyzoTPx5HRtbhsME8Udispad8dC/+sziTNugOEx54ilvatQ9YCzl4KQLPcRHA==",
+			"dev": true,
+			"engines": {
+				"node": ">=11.0.0"
+			}
+		},
 		"node_modules/semver": {
 			"version": "7.6.2",
 			"resolved": "https://registry.npmjs.org/semver/-/semver-7.6.2.tgz",
@@ -3961,18 +3961,18 @@
 			"dev": true
 		},
 		"node_modules/svgo": {
-			"version": "3.2.0",
-			"resolved": "https://registry.npmjs.org/svgo/-/svgo-3.2.0.tgz",
-			"integrity": "sha512-4PP6CMW/V7l/GmKRKzsLR8xxjdHTV4IMvhTnpuHwwBazSIlw5W/5SmPjN8Dwyt7lKbSJrRDgp4t9ph0HgChFBQ==",
+			"version": "3.3.3",
+			"resolved": "https://registry.npmjs.org/svgo/-/svgo-3.3.3.tgz",
+			"integrity": "sha512-+wn7I4p7YgJhHs38k2TNjy1vCfPIfLIJWR5MnCStsN8WuuTcBnRKcMHQLMM2ijxGZmDoZwNv8ipl5aTTen62ng==",
 			"dev": true,
 			"dependencies": {
-				"@trysound/sax": "0.2.0",
 				"commander": "^7.2.0",
 				"css-select": "^5.1.0",
 				"css-tree": "^2.3.1",
 				"css-what": "^6.1.0",
 				"csso": "^5.0.5",
-				"picocolors": "^1.0.0"
+				"picocolors": "^1.0.0",
+				"sax": "^1.5.0"
 			},
 			"bin": {
 				"svgo": "bin/svgo"
@@ -4597,12 +4597,6 @@
 				}
 			}
 		},
-		"@trysound/sax": {
-			"version": "0.2.0",
-			"resolved": "https://registry.npmjs.org/@trysound/sax/-/sax-0.2.0.tgz",
-			"integrity": "sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==",
-			"dev": true
-		},
 		"@types/eslint": {
 			"version": "8.56.10",
 			"resolved": "https://registry.npmjs.org/@types/eslint/-/eslint-8.56.10.tgz",
@@ -6751,6 +6745,12 @@
 				"regexp-tree": "~0.1.1"
 			}
 		},
+		"sax": {
+			"version": "1.5.0",
+			"resolved": "https://registry.npmjs.org/sax/-/sax-1.5.0.tgz",
+			"integrity": "sha512-21IYA3Q5cQf089Z6tgaUTr7lDAyzoTPx5HRtbhsME8Udispad8dC/+sziTNugOEx54ilvatQ9YCzl4KQLPcRHA==",
+			"dev": true
+		},
 		"semver": {
 			"version": "7.6.2",
 			"resolved": "https://registry.npmjs.org/semver/-/semver-7.6.2.tgz",
@@ -7101,18 +7101,18 @@
 			"dev": true
 		},
 		"svgo": {
-			"version": "3.2.0",
-			"resolved": "https://registry.npmjs.org/svgo/-/svgo-3.2.0.tgz",
-			"integrity": "sha512-4PP6CMW/V7l/GmKRKzsLR8xxjdHTV4IMvhTnpuHwwBazSIlw5W/5SmPjN8Dwyt7lKbSJrRDgp4t9ph0HgChFBQ==",
+			"version": "3.3.3",
+			"resolved": "https://registry.npmjs.org/svgo/-/svgo-3.3.3.tgz",
+			"integrity": "sha512-+wn7I4p7YgJhHs38k2TNjy1vCfPIfLIJWR5MnCStsN8WuuTcBnRKcMHQLMM2ijxGZmDoZwNv8ipl5aTTen62ng==",
 			"dev": true,
 			"requires": {
-				"@trysound/sax": "0.2.0",
 				"commander": "^7.2.0",
 				"css-select": "^5.1.0",
 				"css-tree": "^2.3.1",
 				"css-what": "^6.1.0",
 				"csso": "^5.0.5",
-				"picocolors": "^1.0.0"
+				"picocolors": "^1.0.0",
+				"sax": "^1.5.0"
 			}
 		},
 		"table": {
diff --git a/package.json b/package.json
index 21416c8..8dbec22 100644
--- a/package.json
+++ b/package.json
@@ -15,7 +15,7 @@
 		"eslint-config-wikimedia": "0.29.1",
 		"grunt-banana-checker": "0.13.0",
 		"stylelint-config-wikimedia": "0.18.0",
-		"svgo": "3.2.0"
+		"svgo": "3.3.3"
 	},
 	"eslintIgnore": [
 		"vendor/**",
-- 
2.47.3


--- end ---
Source code is licensed under the AGPL.