Revision history for TPath 1.007 2014-08-05 12:22:57-04:00 America/New_York * added /.../ and :m/.../mods regex syntax * removed most of grammar section from documentation, referring instead to TPath::Grammar * fixed case-insensitivity code for v5.16 * silenced Regexp::Grammars warning that emerged in v5.16 1.006 2014-02-14 12:10:54-05:00 America/New_York * fixed enum deprecation warning 1.005 2013-10-27 14:11:20 America/New_York * fix index predicates *yet again*, now the index is relative to list of of elements selected for that step unless it is an inner predicate -- inside any parentheses -- and the anywhere separator // precedes the step 1.004 2013-09-29 21:46:55 America/New_York * escape sequences \v, \t, \n, \r, \f, \b now available. 1.003 2013-09-28 16:24:08 America/New_York * improved documentation * fixed bug whereby duplicate nodes were being returned * further optimization * added adjacent:: axis * added variables with @v, @var, and @clear_var 1.002 2013-09-17 06:25:16 America/New_York * optimized matching by addition of more caching and elimination of much array copying 1.001 2013-09-12 18:15:44 America/New_York * made it possible to construct case-insensitive expressions 1.000 2013-09-06 22:01:52 America/New_York * BUMPED MAJOR VERSION NUMBER -- significant change in semantics of core tpath features * improved effiency of axis selection in TPath::Selector::Test objects * changed index predicates to match behavior of xpath index predicates, modulo the difference in index base * created outer predicates: (//*)[0] in addition to //*[0] 0.020 2013-07-25 21:33:15 America/New_York * added the standard boolean attributes @all, @some, @one, @none and the corresponding @fcount and @tcount, which count the number of parameters evaluating as true 0.019 2013-07-07 21:43:15 America/New_York * added string concatenation * added caching of reflection results 0.018 2013-06-30 17:22:59 America/New_York * cleaned up prereqs a bit * cleaned up error message when logging under to TPath::StderrLog 0.017 2013-06-25 21:17:38 America/New_York * improved efficiency of |= and =| * fixed undefined string bug in matching operator application 0.016 2013-05-12 13:17:56 America/New_York * added check for overloaded == to single equals equality function * fixed stringification bug in TPath::Context for overloaded nodes * added autoloading of attributes 0.015 2013-05-11 18:28:56 America/New_York * added math in attribute tests * allowing bare expressions in attribute tests 0.014 2013-04-20 13:20:03 America/New_York * added :p selector * added previous:: axis 0.013 2013-04-14 17:32:57 America/New_York * multi-line paths and comments * refactored to work on TPath::Contexts rather than nodes * fix for regex stringification in v5.14+ 0.012 2013-04-11 08:39:27 America/New_York * added /a/"foo bar" and /a/@"foo bar" style name quoting * qname quoting now requires balancing of brackets -- :{foo bar} instead of :{foo bar{ * changed exists-one operator from ` to ; to improve readability * improved documentation * made expressions stringifiable * fixed bug in compilation of :root steps * added the string index attribute tests |=, =|=, and =| * refined definitions of equality used by attribute tests * added @card attribute * rename TPath::Test::XOr to TPath::Test::One and removed traces of ^ operator * created @at attribute, which returns an attribute value 0.011 2013-04-04 20:06:57 America/New_York * added :'quote' style quoting * improved error message in event of failure to parse 0.010 2013-03-30 22:22:12 America/New_York * added enumerated repetition -- a{2}, a{,2}, a{2,}, a{2,3} * added matching as attribute test * improved documentation 0.009 2013-03-25 18:31:11 America/New_York * some documentation fixes * replaced special status of first step with general firstness concept in preparation for adding optional and repeated steps * added :root selector * replaced id(.) selector with :id(.) * changed exists-one operator from ^ to ` * added sub-path grouping, alternation, and quantification * added step quantification 0.008 2013-03-17 13:08:25 EST5EDT * added complement selectors -- ^a, ^~a~, and ^@a 0.007 2013-03-12 19:05:01 EST5EDT * removed inner regexes from parsing to prevent segfaults on versions less than v5.14 0.006 2013-03-12 00:39:55 EST5EDT * removed unnecessary URI escaping of attributes 0.005 2013-03-11 19:35:08 EST5EDT * added required tag method * provided default implementations of has_tag and matches_tag methods * added wrap method to handle coercion 0.004 2013-03-10 20:42:16 EST5EDT * added . as a non-terminal character not requiring an escape * refactored grammar a little to reduce repetition * refactored methods to reverse order of TPath::Index and collections in parameters so as to reduce use of undef * removed some redundant steps 0.003 2013-03-09 06:15:32 EST5EDT 0.002 2013-03-08 05:43:32 EST5EDT * documentation improvements * removed TPath::Expression::first, using wantarray in select instead * added optimization step to parsing * fixed parent axis bug 0.001 2013-03-05 05:52:24 EST5EDT * first release