While here list, as comments, all dependencies needed to run the
self tests
Changes since last packaged version (3.16):
Changes in 3.17
documentation changes, mostly to point better to
the resources at http://www.xmltwig.com
fix a few tests that would fail under perl 5.6.*
and Solaris (t/test_safe_encode.t and t/test_bug_3.15.t),
see RT bug # 11844, thanks to Sven Neuhaus
made the licensing terms in the README match the
ones in the main module (same as Perl), see RT
bug #11725
added a test on XML::SAX::Writer version number to
avoid failing tests with old versions (<0.39)
improved xml_split
Changes in 3.16
added the xml_split/xml_merge tools
fixed PI handler behaviour when used in twig_roots
mode
fix a bug that prevented the DTD to be output
when update_DTD mode is on, no DTD is present but
entities have been created
added level(<n>) trigger for handlers
fixed bug that prevented the output_filter to be
called when printing an element. Spotted thanks to
Louis Strous.
fixed bug in the nsgmls pretty printer that output
invalid XML (an extra \n was added in the end tag)
found by Lee Goddard
fixed test 284 in test_additional to make it pass
in RedHat's version of perl 5.8.0, thanks to
rdhayes for debugging and fixing that test.
first shot at getting Pis and comments back in the
proper place, even in 'keep' mode. At the moment
using set_pcdata (or set_cdata) removes all
embedded comments/pis
fixed a bug with pi's in keep mode (pi's would not
be copied if they were within an element) found by
Pascal Sternis
added a fix to get rid of spurious warnings, sent
by Anthony Persaud
added the remove_cdata option to the XML::Twig new
method, that will output CDATA sections as regular
(escaped) PCDATA
added the index option to the XML::Twig new method,
and the associated XML::Twig index method, which
generates a list of element matching a condition
during parsing
added the XML::Twig::Elt first_descendant method
fixed a bug with the keep_encoding option where
attributes were not parsed when the element name was
followed by more than one space (spotted by Gerald
Sedrati-Dinet),
see https://rt.cpan.org/Ticket/Display.html?id=8137
fixed a bug where whitespace at the begining of an
element could be dropped (if followed by an element
before any other character). Now whitespace is
dropped only if it includes a \n
added feature: when load_DTD is used, default
attributes are now filled
fixed bug on xmlns in path expression trigger
(would not replace prefixes in path expressions),
spotted by amonroy on perlmonks, see
http://perlmonks.org/index.pl?node_id=386764
optimized XML::Twig text, thanks to Nick Lassonde
for the patch
fixed bug that generated an empty line before some
comments (pointed out by Tanya Huang)
fixed tests to check XML::Filter::BufferText version
(1.00 has a bug in the CDATA handling that makes XML::Twig
tests fail).
Added new options --nowrap and --exclude (-v) to xml_grep
fixed warning in tests under 5.8.0 (spotted by Ed Avis)
skipped HTML::Entities tests in 5.8.0 (make test for this
module seem to fail on my system, it might be the same
elsewhere)
Fixed bug RT #6067 (problems with non-standard versions of
Scalar::Utils which do not include weaken)
Fixed bug RT #6092 (error when using safe output filter)
Fixed bug when using map_xmlns, tags in default namespace
were not output
Changes in 3.15
Fixes that allow the tests to pass on more systems (thanks to Ed
Avis for his testing)
Added normalize_space option for simplify (suggestion of Lambert Lum)
Removed usage of $&
Expanded the doc for paste, as it was a bit short (suggestion of
Richard Jolly)
Changes in 3.14
Namespace processing has been enhanced and should work fine now,
as long as twig_roots is not used.
Potentially uncompatible change: the behaviour of simplify has
been changed to mimic as exactly as possible XML::Simple's XMLin
Completed the pod to cover the entire API
Tests now pass with perl 5.005_04-RC1 (fail with 5.005 reported
by David Claughton), added more tests and a config summary at the
end of the tests
Added methods on the class attribute, convenient for dealing with
XHTML or preparing display with CSS:
class set_class add_to_class att_to_class add_att_to_class
move_att_to_class tag_to_class add_tag_to_class set_tag_class in_class
navigation functions can use '.<class>' expressions
fixed (yet another!) bug in the way DTDs were output
fixed bug for pi => 'drop' option
changed the names of lots on internal (undocumented) methods, prefixed
them with _
module directory has changed (eg. "darwin-2level" vs.
"darwin-thread-multi-2level").
binary packages of perl modules need to be distinguishable between
being built against threaded perl and unthreaded perl, so bump the
PKGREVISION of all perl module packages and introduce
BUILDLINK_RECOMMENDED for perl as perl>=5.8.5nb5 so the correct
dependencies are registered and the binary packages are distinct.
addresses PR pkg/28619 from H. Todd Fujinaka.
Changes in 3.13:
Maintenance release to get the tests to pass on various platforms
updated the README
fixed a problem with encoding conversions (using safe_encode and
safe_encode_hex) under perl 5.8.0, see RT ticket #5111
fixed tests to pass when trying to use an unsupported iconv filter
Changes in 3.12:
New features and greatly increased test coverage
added lots of tests (>900), thanks to David Rigaudiere, Forrest
Cahoon, Sebastien Aperghis-Tramoni, Henrik Tougaard and Sam Tregar
for testing this release on various OSs, Perl, XML::Parser and
expat versions.
added XML::Twig::XPath that uses XML::XPath as the XPath engine
for findnodes, findnodes_as_string, findvalue, exists, find and
matches. Just use XML::Twig::XPath instead of use XML::Twig;
(see the tests in t/xmlxpath_*).
Added special case to output some HTML tags ('script' to start with)
as not empty.
XML::Twig::Elt->new now properly flags empty elements (spotted by
Dave Roe)
added XML::Twig::Elt contains_a_single method
added #ENT twig_handlers (not necessarily complete, so not yet
documented, needs more tests)
added doc for XML::Twig and XML::Twig::Elt subs_text methods
tags starting with # are now "invisible" (they are not output),
useful for example for pretty_printing
added new options --wrap '' and --date to xml_grep
improved XPath support (added [nb] support)
added xpath method, which generates a unique XPath for an element
added has_child and has_children as synonyms of first_child
added XML::Twig::set_id_seed to control how generated id's are
created
when using ignore on an element, end_tag_handlers are now tested
at the end of the element (so you can for exemple get the byte
offset in the document), suggestion of Philippe Verdret
added XML::Twig::Elt change_att_name
XML::Twig::Elt new now properly works when called as an object
(and not a class) method
fixed namespace processing somewhat
fixed SAX output methods
fixed bug when keep_atts_order on and using set_att on an element
with no existing attribute (spotted by scharloi)
WARNING - potentially incompatible changes -
when using finish_print, the document used to be flushed. This is no
longer the case, you will have to do it before calling finish_print.
This way you have the choice of doing it or not.
Removed XML::Twig::Elt::unescape function (was no longer used)
Changes in 3.11
added --text_only option to xml_grep (outputs the text of the
result, without tags)
fixed bug where "Comments [was] always dropped after a twig
object set 'comments' to 'drop'" (RT#3711), bug report and first
patch by Simon Flack
by popular demand, added option "keep_atts_order" that keeps the
original attribute order in the output. This option needs the
Tie::IxHash module to work.