XMLStarlet Changelog

New in version 1.5.0

July 13th, 2013
  • This version fixes a crash when trying to run pyx on nonexistent files and a boundary condition in the unescape command.
  • The ed and sel commands can now refer to a document's top level default namespace with "_" or "DEFAULT" and give a friendly message if the user doesn't realize they need to specify namespaces.

New in version 1.4.2 (January 3rd, 2013)

  • This version fixes a crash in the pyx subcommand that occurred when it handled nodes with multiple attributes.

New in version 1.4.1 (December 15th, 2012)

  • A crash with invalid editing operations has been fixed.
  • The documentation can now be built from the tarball and installs to the correct place.
  • The test suite has been made more forgiving of serialization differences between libxml2 versions.

New in version 1.2.1 (July 8th, 2011)

  • A crash when libxml2 returned NULL nodeset result was fixed.
  • "-" was being confused with --elif.
  • The generated XSLT now contains the namespaces extracted from the first input file.
  • -N is once again allowed after other options.
  • Namespace values were being registered as prefixes.
  • A segfault is avoided when asked to move namespace nodes.
  • There was a missing newline in the ed --help message.
  • The test scripts portability was improved.
  • XML_SAVE_WSNONSIG is only used if libxml is version 2.7.8 or later.

New in version 1.2.0 (June 2nd, 2011)

  • This version implements --update --expr for the ed command.
  • The ed and sel commands use top-level namespace definitions from first input file, which should remove the need to define namespaces on the command line with -N in most cases.
  • Select exits with 0 only if the result is non-empty.
  • The -Q option has been added to select, like grep's -q.
  • This release adds column number and restores input context (lost in version 1.0.3) to error messages.
  • It adds the --net option to c14n, ed, fo, and val.
  • It removes --catalog from the tr --help message since it isn't actually supported.
  • It adds --elif and --else to the sel --help message.

New in version 1.1.0 (April 6th, 2011)

  • A bug was fixed for BSD and Mac OS X by checking that O_BINARY is declared before #including io.h.
  • Several select command improvements were made: --elif and --else options, sorting on multiple fields, correct (for English) lexical sorting, and inclusion of only needed namespaces by the output stylesheet.
  • Shared libxml and libxslt libraries are linked by default.
  • Library version information was added to --version output.
  • A directory argument for ls was added; the exit status indicates failure or success instead of file count.
  • Xmlstarlet will now link with a libxml configured --without-sax1 and --without-legacy.

New in version 1.0.6 (March 14th, 2011)

  • The c14n command now outputs linefeeds only in Windows as well.
  • The --help text for ed now correctly describes the behavior of -P, -S, --pf, and --ps.
  • Some subcommands' --help options were outputting the printf format string literally.

New in version 1.0.5 (February 17th, 2011)

  • A bug in which stylesheets with CDATA nodes led to memory corruption was fixed.
  • The test scripts now double "/" characters under msys to avoid path conversion; most tests now succeed in the mingw build.
  • The --help option now prints to stdout and exits with success.
  • There were some further tweaks in the tests and build system.

New in version 1.0.4 (January 17th, 2011)

  • encode special XML characters in arguments (can now include quotes in xpath)
  • non-zero exit code when input file is not found (Bug 3158488)
  • ed with --pf/--ps options doesn't reformat output (Bug 3158490)
  • exit() instead of segfault when trying to delete namespace nodes (Bug 1120417)
  • added --disable-static-libs ./configure option to use shared libxml2 and libxslt
  • non-recursive make
  • use TESTS and XFAIL_TESTS for testing, nicer output