XMLStarlet Changelog

What's new in XMLStarlet 1.6.1

Aug 11, 2014
  • handle unicode arguments under Windows

New in XMLStarlet 1.6.0 (Jun 13, 2014)

  • get rid of "helpful" message about namespaces
  • update user guide
  • Enhancements:
  • add --stop option to val
  • add global option --no-doc-namespace
  • Build: let the make install target succeed even if docs aren't built.

New in XMLStarlet 1.5.0 (Jul 26, 2013)

  • Bugs:
  • avoid segfault on pyx non-existent file
  • fix unescaping of entities straddling 4K byte boundary (Bug #102)
  • Enhancements:
  • unescape hex entities (&#xXX;)
  • give a helpful message if doc has default namespace and nothing matched
  • add "_" and "DEFAULT" as names for document's top-level default namespace
  • Adding a global quiet option
  • ed: Allow omitting value argument to create empty element.
  • use default attribute values in sel subcommand
  • Build:
  • fix test variables to work with newer automake (1.11 -> 1.13)
  • fix usage2c.awk for mawk
  • scripts for building on mingw

New in XMLStarlet 1.4.2 (Jul 26, 2013)

  • pyx: avoid segfault on documents with multiple attributes

New in XMLStarlet 1.4.1 (Jul 26, 2013)

  • avoid segfault when attempting to edit the document node (Bug #3575722)
  • Packaging:
  • include doc/xmlstar-fodoc-style.xsl in the dist so that the
  • --enable-build-docs option works from the tarball (Bug #3580667)
  • AC_SUBST PACKAGE_TARNAME for automake so that documentation is installed to the right place (Bug #3561958)
  • Test Suite:
  • avoid test failures due to XML formatting and whitespace changes (also fixes Bug #3572789)
  • use automake's parallel test suite
  • make bigxml tests much faster by using whitespace instead of nodes
  • don't test str:replace() with ed: it doesn't work outside of xslt in new libxslt
  • ignore extra errors from libxml 2.9.0 bug
  • let tests run using busybox
  • add runAllTests.sh to run tests without make

New in XMLStarlet 1.4.0 (Jul 26, 2013)

  • Documentation:
  • executable name used in documentation now matches
  • transform-program-name (Bug #3283713)
  • added Makefile rules for generating documentation (./configure --enable-build-docs)
  • ed subcommand:
  • relative XPaths are now handled correctly (Bug #3527850)
  • the last nodeset inserted by an edit operation can be accessed as the XPath variable $prev (or $xstar:prev)
  • add --var option to define XPath variables
  • allowed -u -x to insert nodesets instead of converting to string
  • remove hard limit for number of edit operations (Bug #3488240)
  • pyx now handles namespaces correctly

New in XMLStarlet 1.3.0 (Oct 3, 2011)

  • avoid ASCII CRs in UTF-16/32 text (reported by Ming Chen)
  • --value-of outputs concat values of all nodes (Req #2563866)
  • encode special chars for ed -u -x
  • allow use of exslt functions in ed -u -x
  • add --var to select (allow --var = as well as --var --break)
  • work around libxml bug that passes bogus data to error handler (Bug #3362217)

New in XMLStarlet 1.2.1 (Jul 8, 2011)

  • check for NULL nodeset result (Bugs #3323189, #3323196)
  • "-" was being confused with --elif
  • generated XSLT should also have automatic namespaces
  • allow -N after other option (Bug #3325166)
  • namespace values were being registered as prefixes
  • avoid segfault when asked to move namespace nodes
  • missing newline in ed --help message
  • test scripts portability:
  • no bashisms allowed in NetBSD sh
  • make BRE portable: '+' is not allowed
  • deal with msys path conversion properly (Bug #3178657)
  • don't use XML_SAVE_WSNONSIG #if libxml < 2.7.8 (Bug #3310475)

New in XMLStarlet 1.2.0 (Jun 2, 2011)

  • implement ed --update --expr
  • use top-level namespace definitions from first input file, this
  • should remove the need to define namespaces on the command line
  • with -N in most cases.
  • select exits with 0 only if result is non-empty (Req #3155702)
  • add -Q to select, like grep's -q
  • add column number to error messages
  • restore input context (lost in version 1.0.3) to error messages (Bug #3305659)
  • print extra string information in error messages
  • use entity definitions from dtd (Bug #3305659)
  • add --net option to c14n, ed, fo, and val (Req #1071398)
  • remove --catalog from tr --help message since it isn't actually supported
  • add --elif and --else to sel --help message

New in XMLStarlet 1.1.0 (Apr 4, 2011)

  • bug fix for BSD/OSX: check that O_BINARY is declared before
  • including io.h
  • select improvements:
  • add --elif and --else options
  • sorting on multiple fields
  • correct (for English) lexical sorting instead of ASCIIbetical
  • only outputs namespaces that are actually used
  • only outputs xsl:param inputFile if it's used
  • don't make separate templates if there is only 1
  • link to shared libxml and libxslt libraries by default
  • add library version info to --version output
  • add directory argument for ls; exit status indicates failure/success instead of file count
  • stop using old SAX1 interface, xmlstarlet will now link with a libxml configured --without-sax1 and --without-legacy

New in XMLStarlet 1.0.6 (Apr 4, 2011)

  • Bug fixes:
  • c14n: set stdout to binary mode on Windows to avoid carriage returns (Bug 840665)
  • fix broken --help options
  • put actual behaviour of -P, -S options in --help output
  • remove unneeded escape of quote in ./configure --help
  • don't distribute xmlstarlet.spec: it's generated by ./configure
  • add src/xml.o depends on version.h to Makefile.am so compile
  • will succeed without dependency info (eg after make distclean)
  • add test for subcommands' --help option
  • Portability fixes:
  • yes isn't portable, use an awk program instead
  • neither read -r nor xargs -0 are portable, escape the command lines to xargs instead
  • don't use nonportable echo -n option

New in XMLStarlet 1.0.5 (Apr 4, 2011)

  • Bug fixes:
  • use XSLT_PARSE_OPTIONS, else CDATA nodes can cause corruption (Bug 3158482)
  • fix typo in help message
  • get rid of warnings in -ansi -pedantic mode
  • required libxml2 version is 2.6.23
  • usage strings use argv[0] as program name
  • help prints to stdout and exits with success
  • double /'s under msys to avoid path conversion
  • Portability fixes:
  • don't use xargs (-d isn't portable)
  • use -Wall only for gcc
  • Build system:
  • use -ansi in configure, and check for strdup declaration
  • seperate list of sources and tests into subdirs
  • check git version during make, not just autoconf
  • tarball releases of configure.ac have actual version number instead of querying git

New in XMLStarlet 1.0.4 (Apr 4, 2011)

  • Bug fixes:
  • 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 outpu

New in XMLStarlet 1.0.3 (Apr 4, 2011)

  • Bug 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)