w3c-xmlserializer is an XML serializer that follows the W3C specification. It is useful in Node.js for converting a DOM node (for example, from jsdom) into an XML string, with an option to require well-formedness and throw errors for non-well-formed constructs.
Project status
- Upstream maintenance appears limited, with the last recorded upstream push on 2023-11-12 and the most recent update being v5.0.0 on that same date, suggesting no evidence of ongoing high-frequency updates since then.
- The apparent update cadence is roughly yearly to biennial, with updates at v3.0.0 (2021-09), v4.0.0 (2022-11), and v5.0.0 (2023-11).
AI summary generated Today
Recent updates
v5.0.0
11/12/2023Release v5.0.0 primarily raises the Node.js engine requirement to >=18. The code diff also shows a tooling and dependency modernization (npm-based installs, test runner migration, and major dependency bumps) that is not mentioned in the release notes.
Breakingv4.0.0
11/20/2022Release v4.0.0 raises the minimum supported Node.js version to v14 and improves handling of well-formedness requirements so that emoji characters can be serialized when `requireWellFormed` is enabled. The code changes also expand the XML character validation regex to include supplementary Unicode code points, and the project/tooling dependencies are bumped.
BreakingFeaturesv3.0.0
9/18/2021Release 3.0.0 of the XML serializer raises the minimum supported Node.js version to v12 and claims that XML name validation is now correctly enforced when `requireWellFormed` is enabled. The code diff also shows multiple internal serialization/validation implementation changes and several major dependency upgrades that are not called out in the release notes.
Breakingv2.0.0
1/2/2020Release 2.0.0 is a major API overhaul of the package, switching from an XMLSerializer class-based interface to a simpler default-exported serialization function. It introduces an options object form for well-formedness checking and changes the thrown error types to plain Error/TypeError instead of DOMException.
BreakingFeaturesv1.1.2
3/25/2019v1.1.2 addresses a packaging/entry-point regression that caused `require()` of the package to fail. The code changes add a new entry module under `lib/` and update `package.json` so consumers load it correctly.
v1.1.1
3/25/2019Release v1.1.1 makes a small documentation-only fix. The release notes state an incorrect README sample code issue, and the diff shows only README adjustments plus a package.json version bump.
v1.1.0
3/25/2019v1.1.0 adds support for serializing CDATA section nodes and improves XML serialization correctness around namespaces and tab characters. Release notes also mention better handling of tabs in require-wellformedness mode and a fix for namespace prefix memoization.
Featuresv1.0.1
12/11/2018Release v1.0.1 updates the XML serializer to correctly handle unknown namespace prefixes during serialization. Specifically, it prevents an internal exception when an unexpected prefix/namespace mapping is encountered, and adds a regression test to confirm correct output.
v1.0.0
12/11/2018This is the first release (v1.0.0). The release notes do not mention any features, fixes, security changes, or migration steps beyond stating it is an initial release.