@svta/cml-xml changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
Unreleased
Changed
- The README now has a When to use section. The section names the tasks that the package covers and the entry point of each task.
1.2.2 - 2026-10-18
Changed
- Update
@svta/cml-utilsto 1.6.2 - Peer dependency ranges are now caret ranges, for example
^1.6.2instead of1.6.2. A later patch or minor release of a peer no longer requires a new release of this package.
1.2.1 - 2026-09-15
Changed
- Update
@svta/cml-utilsto 1.6.1
1.2.0 - 2026-09-03
Fixed
parseXmlno longer hangs on an attribute with no quoted value, such as<a b>,<a b=c/>, or input truncated mid-attribute. It now throws an error that names the attribute and reports the line and column, matching the XML 1.0Attribute ::= Name Eq AttValueproduction.parseXmlno longer hangs on input that ends inside the XML declaration, such as<?xml version="1.0". Parsing stops at the end of the input.parseXmlno longer hangs (or, inside nested elements, overflows the call stack) on input that ends inside a matching close tag, such as<MPD><Period></Period. The element keeps the children parsed so far.parseXmlthrowsUnexpected close tagwhen a close tag's name only starts with the open tag's name, such as<ab>text</abc>or</ab>closing<a>, and when a close tag appears at the document level with no open element, including an empty</>. Previously both were accepted. A close tag whose exact name is followed by whitespace, such as</a >, still closes the element (XML 1.0ETag ::= '</' Name S? '>').Unexpected close tagreports the line, column, andChar: end of inputwhen the mismatched close tag is cut off by the end of the input, such as<a>text</b. Previously it reportedLine: 0,Column: 1,Char: undefined.
Changed
parseXmlthrows on a quoted attribute value with no=(<a b "c"/>), which previously parsed leniently asb="c".parseXmlis rewritten as a flat, non-recursive scanner. Output is identical, parsing is 20 to 40 percent faster on denseSegmentTimelinemanifests (#424), and nesting depth is no longer limited by the call stack.- README: the usage example calls
parseXmlinstead of the removeddecodeXml, and prints its results instead of calling an undefinedassert.
1.1.6 - 2026-07-28
Changed
- Update
@svta/cml-utilsto 1.6.0
1.1.5 - 2026-07-21
Changed
- Update
@svta/cml-utilsto 1.5.1
1.1.4 - 2026-05-13
Changed
- Update
@svta/cml-utilsto 1.5.0
1.1.3 - 2026-02-11
Changed
- Update
@svta/cml-utilsto 1.4.0
1.1.2 - 2026-02-04
Changed
- Re-export
XmlNodetype from@svta/cml-utils - Update
@svta/cml-utilsto 1.3.0
1.1.1 - 2026-02-03
Changed
- Update
@svta/cml-utilsto 1.2.0
1.1.0 - 2026-01-20
Added
- Add
includeParentElementoption toparseXml()that addsparentElementproperty to each node following DOM spec
Changed
- Improve
parseXml()performance by moving constants to module scope, usingSetfor delimiter lookups, and optimizing bounds checks
1.0.2 - 2025-12-26
Changed
- Update
@svta/cml-utilsto 1.1.0 (#279)
1.0.1 - 2025-12-22
Fixed
- Use fixed version numbers for all CML peer dependencies (#277)