Bump sitemap from 8.0.0 to 9.0.1
Type: Pull Request
State: Open
Association: Unknown
Comments: 3
(3 months ago)
(3 months ago)
dependencies javascript
LadyBluenotes
Bumps sitemap from 8.0.0 to 9.0.1.
Release notes
Sourced from sitemap's releases.
9.0.1 — Security Patch
Security Fixes
- BB-01: Fix XML injection via unescaped
xslUrlin stylesheet processing instruction- BB-02: Enforce 50,000 URL hard limit in
XMLToSitemapItemStreamparser- BB-03: Cap parser error array at 100 entries to prevent memory DoS
- BB-04: Reject absolute
destinationDirpaths insimpleSitemapAndIndexto prevent arbitrary file writes- BB-05:
parseSitemapIndexnow destroys source and parser streams immediately whenmaxEntrieslimit is exceeded- Many thanks to
@maru1009For the report9.0.0
This major release modernizes the package with ESM-first architecture, drops support for Node.js < 20, and includes comprehensive security and robustness improvements.
[BREAKING CHANGES]
Dropped Node.js < 20 Support
- Node.js >=20.19.5 now required (previously >=14.0.0)
- npm >=10.8.2 now required (previously >=6.0.0)
- Dropped support for Node.js 14, 16, and 18
ESM Conversion with Dual Package Support
Package now uses
"type": "module"in package.jsonBuilt as dual ESM/CJS package with conditional exports
Import paths in ESM require
.jsextensions (TypeScript will add these automatically)Both ESM and CommonJS imports continue to work:
// ESM (new default) import { SitemapStream } from 'sitemap'// CommonJS (still supported) const { SitemapStream } = require('sitemap')
CLI remains ESM-only at
dist/esm/cli.jsBuild Output Changes
- ESM output:
dist/esm/(wasdist/)- CJS output:
dist/cjs/(new)- TypeScript definitions:
dist/esm/index.d.ts(wasdist/index.d.ts)Node.js Modernization
- All built-in Node.js modules now use
node:protocol imports (node:stream,node:fs, etc.)- Uses native promise-based
pipelinefromnode:stream/promises(instead ofpromisify(pipeline))- TypeScript target updated to ES2023 (from ES2022)
... (truncated)
Changelog
Sourced from sitemap's changelog.
9.0.1 — Security Patch
- BB-01: Fix XML injection via unescaped
xslUrlin stylesheet processing instruction — special characters (&,",<,>) in the XSL URL are now escaped before being interpolated into the<?xml-stylesheet?>processing instruction- BB-02: Enforce 50,000 URL hard limit in
XMLToSitemapItemStream— the parser now stops emitting items and emits an error when the limit is exceeded, rather than merely logging a warning- BB-03: Cap parser error array at 100 entries to prevent memory DoS —
XMLToSitemapItemStreamnow tracks a separateerrorCountand stops appending to theerrorsarray beyondLIMITS.MAX_PARSER_ERRORS- BB-04: Reject absolute
destinationDirpaths insimpleSitemapAndIndexto prevent arbitrary file writes — passing an absolute path (e.g./tmp/sitemaps) now throws immediately with a descriptive error- BB-05:
parseSitemapIndexnow destroys source and parser streams immediately when themaxEntrieslimit is exceeded, preventing unbounded memory consumption from large sitemap index files9.0.0 - 2025-11-01
This major release modernizes the package with ESM-first architecture, drops support for Node.js < 20, and includes comprehensive security and robustness improvements.
[BREAKING CHANGES]
Dropped Node.js < 20 Support
- Node.js >=20.19.5 now required (previously >=14.0.0)
- npm >=10.8.2 now required (previously >=6.0.0)
- Dropped support for Node.js 14, 16, and 18
ESM Conversion with Dual Package Support
Package now uses
"type": "module"in package.jsonBuilt as dual ESM/CJS package with conditional exports
Import paths in ESM require
.jsextensions (TypeScript will add these automatically)Both ESM and CommonJS imports continue to work:
// ESM (new default) import { SitemapStream } from 'sitemap'// CommonJS (still supported) const { SitemapStream } = require('sitemap')
CLI remains ESM-only at
dist/esm/cli.jsBuild Output Changes
- ESM output:
dist/esm/(wasdist/)- CJS output:
dist/cjs/(new)- TypeScript definitions:
dist/esm/index.d.ts(wasdist/index.d.ts)Node.js Modernization
- All built-in Node.js modules now use
node:protocol imports (node:stream,node:fs, etc.)- Uses native promise-based
pipelinefromnode:stream/promises(instead ofpromisify(pipeline))- TypeScript target updated to ES2023 (from ES2022)
New Exports
... (truncated)
Commits
244f256Merge pull request #477 from ekalinin/sec-fixes71718f3chore: bump version to 9.0.1 and add changelog entryd19d4c9fix: destroy streams immediately on maxEntries breach in parseSitemapIndex (B...7ed774efix: reject absolute destinationDir paths to prevent arbitrary write (BB-04)dde5c5efix: cap parser error collection to prevent memory DoS (BB-03)81df466fix: enforce 50k URL limit in XMLToSitemapItemStream parser (BB-02)8a8e0b8fix: prevent XML injection via unvalidated xslUrl in SitemapIndexStream723d8e7Merge pull request #472 from ekalinin/dependabot/npm_and_yarn/express-5.2.0b5138f1Merge pull request #470 from ekalinin/dependabot/npm_and_yarn/glob-10.5.052d9477build(deps-dev): bump express from 5.1.0 to 5.2.0- Additional commits viewable in compare view
Install script changes
This version adds prepare script that runs during installation. Review the package contents before updating.
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
@dependabot rebasewill rebase this PR@dependabot recreatewill recreate this PR, overwriting any edits that have been made to it@dependabot show <dependency name> ignore conditionswill show all of the ignore conditions of the specified dependency@dependabot ignore this major versionwill close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this minor versionwill close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)@dependabot ignore this dependencywill close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Package Dependencies
Technical Details
| ID: | 14504772 |
| UUID: | 4048298027 |
| Node ID: | PR_kwDOHHYr187JNk9_ |
| Host: | GitHub |
| Repository: | solidjs/solid-docs |