version 0.011; 2017-07-25
*
port to Perl 5.23.6, where applying a regexp to codepoints in the
upper half of the native unsigned integer range by default causes
a deprecation warning
*
update tests for Perl 5.27.1, where codepoints in the upper half of
the native unsigned integer range are illegal
*
extend tests to examine codepoints above the 32-bit range on 64-bit
Perl builds
*
in test suite, avoid codepoint deprecation warnings from Perl 5.23.6
and above
*
in documentation, use four-column indentation for all verbatim
material
*
limit the local muffling of "utf8"-category warnings to those Perl
versions that generate the unwanted warnings
version 0.010; 2017-07-19
*
port to Perl 5.19.4, where the C type of array indices has changed
*
update test suite to not rely on . in @INC, which is no longer
necessarily there from Perl 5.25.7
*
test that all modules have matching version numbers
*
no longer include a Makefile.PL in the distribution
*
in META.{yml,json}, point to public bug tracker
*
correct some typos in documentation
version 0.009; 2011-10-27
*
change usage of Params::Classify functions to take advantage of
custom ops in Params::Classify 0.012
*
fix a latent bug where SvCUR() was used without first checking SvPOK()
(but SvPOK was guaranteed by other circumstances)
*
correct dynamic_config setting to 0
*
include META.json in distribution
*
convert .cvsignore to .gitignore
*
add MYMETA.json to .gitignore
version 0.008; 2010-10-24
*
in XS, declare "PROTOTYPES: DISABLE" to prevent automatic generation
of unintended prototypes
*
jump through hoops to avoid compiler warnings
*
in t/setup_pp.pl, avoid a warning and consequent false test failure
that occurs if XSLoader::load() is given no arguments, which is now
a valid usage
version 0.007; 2010-10-15
*
bugfix: avoid memory leak in construction of content objects
*
in XS, use newSVpvs(), sv_catpvs_nomg(), and gv_stashpvs() wherever
appropriate
*
in XS, use PERL_NO_GET_CONTEXT for efficiency
*
use full stricture in test suite
*
also test POD coverage of pure Perl implementation
*
in test suite, make all numeric comparisons against $] stringify it
first, to avoid architecture-dependent problems with floating point
rounding giving it an unexpected numeric value
*
in Build.PL, explicitly set needs_compiler to avoid bogus
auto-dependency on ExtUtils::CBuilder
*
list XML::Easy::SimpleSchemaUtil and
XML::Easy::Transform::RationalizeNamespacePrefixes in documentation's
lists of other distributions
*
in Build.PL, complete declaration of configure-time requirements
*
move declaration of $VERSION in XML::Easy::Syntax to match all
other modules
*
slightly reformat some C code to avoid exceeding 80 columns
version 0.006; 2010-05-20
*
bugfix: in XS, check SvOBJECT before looking at SvSTASH, because
the latter isn't guaranteed to be meaningful otherwise
*
port to Perl 5.11, supporting new first-class regexp objects in
type checking
*
check for required Perl version at runtime
*
in XS, avoid using "class" as a variable name, for compatibility
with C++ compilers
*
in Build.PL, explicitly declare configure-time requirements
*
remove bogus "exit 0" from Build.PL
*
in XML::Easy::NodeBasics documentation, reference
XML::Easy::ProceduralWriter
*
add MYMETA.yml to .cvsignore
version 0.005; 2009-08-16
*
bugfix: in xml_content_object(), xml_content(), and xml_element(),
avoid clobbering function arguments (this occurred when passing a
content array as an argument)
*
in XML::Easy::NodeBasics, add node equality comparison functions
*
introduce the term "twine" for content
arrays, and corresponding methods and functions
(XML::Easy::Content->twine, XML::Easy::Element->content_twine,
XML::Easy::Classify::is_xml_content_twine,
XML::Easy::Text::xml10_read_{content,extparsedent}_twine,
XML::Easy::NodeBasics::xml{,_c,_e}_content_twine)
*
in XML::Easy::Classify, add "check_" functions for argument checking
*
in XML::Easy::NodeBasics, add short names for all functions
*
tweak introductory documentation to improve comprehension
*
in documentation, note that returned twine arrays and attribute
hashes must not be modified
*
list Test::XML::Easy in documentation's list of other distributions
version 0.004; 2009-05-20
*
bugfix: correct character classification code that was incorrectly
rejecting characters U+ac00 to U+d7a3 (precomposed Hangul syllables)
in XML names
*
XS implementation of low-level constructors and accessors for element
and content nodes
*
document the XML::Easy::Transform:: namespace
*
in XS code, fix the char_unicode() function to return the documented
sentinel value (it was returning a different value than intended,
but one which still operated correctly)
version 0.003; 2009-05-13
*
in XS code, use the correct "PREINIT:" instead of "INIT:" to introduce
variable declarations
*
in XS code, use the cheaper SvOBJECT() in place of truth-value uses
of SvSTASH()
*
use simpler "parent" pragma in place of "base"
version 0.002; 2009-03-07
*
in t/syntax_main.t, shortcut test for regexp iteration limit bug on
pre-5.10 perls, because the test is liable to overflow the stack
*
work around Module::Build bug that was causing broken
ExtUtils::CBuilder objects that failed to compile anything
*
to check whether C compilation is available, use Module::Build's
more robust ->have_c_compiler method, rather than just checking for
the availability of a C builder object
*
avoid return with expression in void function (not valid in C90)
*
add casts for pointer target signedness, and other small changes to
the C code, to avoid compiler warnings
*
in XML::Easy::Syntax documentation, note the possibility of pre-5.10
perls overflowing the stack when executing regexps
version 0.001; 2009-03-03
*
introduce class XML::Easy::Content to encapsulate XML content
*
add friendlier node manipulation functions in XML::Easy::NodeBasics
*
bugfix: work around perl bug that was causing spurious errors in
the pure-Perl parser and serialiser for inputs with long (>= 32 Ki)
sequences of characters (the XS parser and serialiser were unaffected)
*
document that the long-input perl bug affects the XML::Easy::Syntax
regular expressions in a way that can't be effectively worked around
*
bugfix: make pure Perl parser always generate its own exception,
not a Perl exception, when processing a character reference for
an illegal Unicode character such as U+d800, and not emit a Perl
warning when processing a character reference for a dubious Unicode
character such as U+1ffff (the XS parser is unaffected)
*
bugfix: make element construction and pure Perl serialiser always
generate its own exception, not a Perl exception, when given data
containing an illegal Unicode character such as U+d800 (the XS
serialiser is unaffected)
*
new module XML::Easy::Classify, with data classification functions
*
move parser and serialiser into new module XML::Easy::Text, leaving
XML::Easy itself to be just documentation of the suite
*
revise documentation and some code for consistency of terminology
*
detect and complain about use of non-string input to parser functions
*
detect and complain about use of invalid attribute name in
$element->attribute()
*
bugfix: properly detect and complain about use of glob as encoding
name argument to XS serialiser functions (they were being treated
as undef on perl 5.8)
*
where a content array or attribute hash has multiple errors,
consistently complain about the first one rather than any other
*
detect and complain about globs used in place of string arguments,
in XS version (the pure-Perl version already detected them)
*
add #line directive to XML::Easy::Text to give useful line numbers
in error messages regarding the code in the __DATA__ section
*
more test cases
*
don't use literal CR in t/read.data, because it was causing signature
checking problems
*
avoid declaration-after-statement in C code (not valid in C90)
*
use full stricture in Build.PL
version 0.000; 2008-04-08
*
initial released version