npm / xmllint-wasm
xmllint-wasm
What changed in xmllint-wasm 4 to 5, from its official release notes, upgrade guides and advisories. Sources checked 2026-10-23.
6 breaking3 new APIs and options2 behavior and defaults3 fixes and other
See which of these apply to your code, ranked, in your agent:
npx @unstale/cli initxmllint-wasm 511 changes
Breaking changes 5
This option disables file-name validation to preserve the old behavior of accepting any kind of file name.
Some error messages change after the libxml2 upgrade.
XML and Schema file names starting with a dash or containing a space followed by a dash are rejected to prevent them being interpreted as command-line options.
The officially supported Node.js version is raised from 12 to 16.
Output now always includes a last line break, which may affect tests expecting exact output.
New APIs and options 1
This optional function lets you add or modify xmllint command-line arguments by returning a new array of string arguments.
Behavior and default changes 2
Input files can now reference files in other directories because parent directories are created automatically.
Buffer input is now explicitly supported for XML file contents, allowing non-UTF-8 encoded data to be passed as a Buffer.
Fixes and other changes 3
Worker events originating outside the library are ignored, addressing failures in Node.js v24+ watch mode.
WASM file loading errors now reject the promise.
Output handling fixes a crash that occurred on very large outputs.
xmllint-wasm 43 changes
Breaking changes 1
The default maximum memory cap increases from 16MiB to 32MiB; applications can set
maxMemoryPagesto opt into the old limit.
New APIs and options 2
Sets how much memory the WebAssembly module allocates by default.
Sets how much memory the WebAssembly module is allowed to allocate for validation.