Changelog

This document records all notable changes to Xul.

2.4.1 (2022-02-14)

  • Fixed Changelog URL.

2.4.0 (2022-02-14)

  • Beter handling of encodings other than UTF-8 (e.g. ISO-8859, UTF-16, UCS-2, UCS-4).
  • Added --file FILE option to transform: save result to file.
  • transform: now only transforms a single file.
  • Added --xsl-output option to transform: honor xsl:output.
  • Removed xul.dom module (legacy).

2.3.0 (2021-01-28)

  • Added --invalidated-files option to validate: only print names of invalidated files.
  • Added --validated-files option to validate: only print names of validated XML files.
  • xp: --files-with-hits and --files-without-hits options are mutually exclusive.
  • Consistent broken pipes errno.EPIPE exit status (Python 2).

2.2.1 (2021-01-14)

  • xp --pretty-element fix: output multiple results to a pipe (Python 2).

2.2.0 (2020-10-07)

  • xp: handle NaN [1] result as a false result (--files-with|without-hits).
  • Renamed xp --files-without-results option to --files-without-hits: only print names of files with a false or NaN [1] result, or without any results.
  • Renamed xp --files-with-results option to --files-with-hits: only print names of files with a non-false and non-NaN [1] result.
  • Added --relaxng option to validate: validate an XML source with RELAX NG.
  • Refactored validate script.
  • README: documentation is on Read The Docs.

2.1.0 (2020-09-09)

  • Added --quiet option to xp: don’t print the XML namespace list.
  • Added --files-without-results option to xp: only print names of files with a false result or without any results.
  • Added --files-with-results option to xp: only print names of files with XPath matches.

2.0.3 (2020-06-10)

  • Fix output encoding when piping output to a pager like less (Python 2).

2.0.2 (2020-05-31)

  • Fix: removed encoding from Pygments formatter so highlight returns Unicode strings.

2.0.1 (2020-03-08)

  • Added install extra “syntax” (Pygments): pip install Xul[syntax]

2.0.0 (2020-03-07)

Open sourced Xul.

Footnotes

[1](1, 2, 3) NaN stands for “Not a Number”.