• Generic xml2 error are now forwarded as R errors. Previously these errors were output to stderr, so could not be suppressed (#209).

xml2 1.2.0

Breaking changes

  • as_list() on xml_document objects did not properly include the root node in the returned list. Previous behavior can be obtained by using as_list()[[1L]] in place of as_list().

New Features


  • xml_find_first() no longer de-duplicates results, so the results are always the same length as the inputs (as documented) (#194).

  • xml2 can now build using libxml2 2.7.0

  • Use Rcpp symbol registration and visibility to prevent symbol conflicts on Linux

  • xml_add_child() now requires less resources to insert a node when called with .where = 0L (@heckendorfc, #175).

  • Fixed failing examples due to a change in an external resource.

xml2 1.1.1

  • This is a small point release addressing installation issues found with older libxml2 versions shipped with RedHat Linux 6 / CentOS 6 (#163, #164).

xml2 1.1.0

New Features


  • xml_new_document() now explicitly sets the encoding (default UTF-8) (#142)

  • Document formatting options for write_xml() (#132)

  • Add missing methods for xml_missing objects. (#134)

  • Bugfix for xml_length.xml_nodeset that caused it to fail unconditionally. (#140)

  • is.na() now returns TRUE for xml_missing objects. (#139)

  • Trim non-breaking spaces in xml_text(trim = TRUE) (#151).

  • Allow setting non-character attributes (values are coerced to characters). (@sjp, #117, #122).

  • Fixed return value in call to vapply in xml_integer.xml_nodeset. (@ddiez, #146, #147).

  • Allow docs missing a root element to be created and printed. (@sjp, #126, #121).

  • xml_add_* methods now return invisibly. (@sjp, #124)

  • as_list() now preserves element names when attributes exist, and escapes XML attributes that conflict with special R attributes (@peterfoley, #115).

xml2 1.0.0

xml2 0.1.2

  • Improved configure script - now works again on R-devel on windows.

  • Compiles with older versions of libxml2.,

xml2 0.1.1

  • Make configure script more cross platform.

  • Add xml_length() to count the number of children (#32).