Update dependency @xmldom/xmldom to v0.9.12 - #284
Open
renovate[bot] wants to merge 1 commit into
Open
Conversation
renovate
Bot
force-pushed
the
renovate/xmldom-xmldom-0.x
branch
from
August 27, 2026 21:24
819ef20 to
d4c426d
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This PR contains the following updates:
0.9.10→0.9.12Release Notes
xmldom/xmldom (@xmldom/xmldom)
v0.9.12Compare Source
Fixed
DOMParser.parseFromStringwith default options. Serialized output is byte-identical.GHSA-965w-775f-mr7gNamedNodeMapparse-time dedup path uses a null-prototype membership index, so a well-formed document with a hostile number of duplicate attributes can no longer wedge the parse. Attribute order and duplicate resolution (last value wins, first position kept) are byte-identical, preserving the XML no-duplicate-attributes well-formedness constraint.GHSA-8344-3jmq-59r6GHSA-6mj3-qw4j-hgrw<, andNode.prototype.normalize()merges adjacent text nodes in O(K) instead of O(K²) (also reachable programmatically), pernormalize()in the WHATWG DOM spec. DOM output is unchanged; only the reported error text differs.GHSA-93r5-fhx6-vmg9XMLSerializer.serializeToString()under{ requireWellFormed: true }now rejects a DocTypenamethat is not a valid XMLName, throwingInvalidStateError— matching the siblingpublicId/systemId/internalSubsetchecks and preventing XML injection viaDocumentType.name.GHSA-27p8-2357-5qqvXMLSerializer.serializeToString()under{ requireWellFormed: true }now validates a processing-instruction target as an XMLNCNameand rejects a case-insensitivexml, throwingInvalidStateError— preventing PI-target injection via>,?, or whitespace.GHSA-c7q8-3ch8-vqpvDocument.createEntityReference()now rejects an invalid XMLNameat creation, andXMLSerializer.serializeToString()under{ requireWellFormed: true }validates anEntityReferencenodeNameas an XMLName, throwingInvalidStateError— preventing XML injection via an entity-reference name.GHSA-6gmq-8vp8-gcm6requireWellFormedserializer's element- and attribute-name validators no longer treat an interior line terminator as satisfying the name anchors, so a name containing a line terminator is rejected withInvalidStateError— closing a bypass of the XMLQNamecheck.GHSA-jxjr-3g7g-3944requireWellFormedserializer's DocTypepublicId/systemIdvalidators no longer treat an interior line terminator as satisfying the anchor, so an identifier containing an ECMAScript line terminator is rejected withInvalidStateError— closing a bypass of the XMLPubidLiteral/SystemLiteralcheck.GHSA-vr34-hp96-76ppcreateElementNS(),createAttributeNS(),createDocumentType(), andcreateAttribute()now reject a name containing a line terminator withInvalidCharacterError, because name validation applies to the whole string — closing a creation-time bypass of the XMLName/QNameproduction on the default serialization path.GHSA-3px3-54cx-rmw9errorin XML, awarningin HTML) instead of accepting it silently, per the XMLETagproduction; parsing recovers to the byte-identical DOM. Consumers that want strict rejection can escalate the reportederrorto fatal via the parser'sonErrorhandler.GHSA-6h8r-xr42-gp59DOMExceptions raised during parsing are now reported as afatalError, and the originating error is preserved as thecauseon the resultingParseError.Chore
Thank you,
@ericchiang,
@KarimTantawey,
@bhaswanthc,
@arpitjain099,
@Paranoidgrinch,
for your contributions
v0.9.11Compare Source
Fixed
XMLSerializer.serializeToString()now also rejects invalid element and attribute names when{ requireWellFormed: true }is passed, throwingInvalidStateErrorfor a name that is not a valid XMLQName(this covers the namespace prefix, which surfaces in the element qualified name or in a synthesizedxmlns:declaration). This prevents XML injection viacreateElement()/setAttribute(), extending the existingrequireWellFormedchecks to the serialized name set.GHSA-w2rr-34g9-rvrjGHSA-4w3w-2rp5-g8jm<?…with no closing?>), preventing a denial-of-service (ReDoS) reachable fromDOMParser.parseFromStringwith default options.GHSA-g53g-w8rj-fmg7CharacterDatanodeValueanddataare now kept in sync#990Chore
Thank you,
@bhaswanthc,
@jmestwa-coder,
@stevenobiajulu,
for your contributions
Configuration
📅 Schedule: (UTC)
🚦 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.
This PR was generated by Mend Renovate. View the repository job log.