January 3rd, 2013
· This version fixes a crash in the pyx subcommand that occurred when it handled nodes with multiple attributes.
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.
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.
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.
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.
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.
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.
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
November 28th, 2010Bug fixes:
· escape --value in update mode (Bug 3052978)
· c14n now includes default attributes (Bug 1505579)
· Allow special characters in sel --output literal (Bug 1912978)
· remove warning from xml_trans.c (Bug 1521756)
· Use xmlReader interface so line numbers are 32-bit (Bug 1219072)
· test for error messages on lines past 2^16 (Bug 1219072)
· don't look for embedded dtd if not asked (Bug 1167215)