1 Revision history for Perl extension Text::Balanced.
3 1.00 Mon Aug 11 12:42:56 1997
8 1.01 Mon Sep 8 18:09:18 EST 1997
10 - changed "quotemeta" to "quotemeta $_" to work
11 around bug in Perl 5.002 and 5.003
14 1.10 Tue Sep 30 17:23:23 EST 1997
16 - reworked extract_quotelike to correct handling of some obscure cases
19 1.21 Sat Oct 4 17:21:54 EST 1997
21 - synchronised with Parse::RecDescent distribution (version number
22 will now reflect that package)
24 1.23 Fri Oct 17 10:26:38 EST 1997
26 - changed behaviour in scalar and void contexts. Scalar contexts
27 now return only the extracted string. Void contexts now remove
28 the extracted string from the first argument (or $_).
32 - changed behaviour in scalar contexts. Scalar contexts
33 now return the extracted string _and_ remove it from the
34 first argument (or $_).
36 - changed return values on failure (all contexts return undef
37 for invalid return fields)
39 - fixed some lurking bugs with trailing modifier handling
41 - added :ALL tag to simplify wholesale importing of functions
43 - fixed serious bug with embedded division operators ("/")
44 This now also allows the ?...? form of pattern matching!
46 1.35 Wed Jun 24 09:53:31 1998
48 - fixed handling of :: quantifiers in extract_variable()
50 - numerous trivial lexical changes to make xemacs happy
53 1.36 Tue Jul 14 12:26:04 1998
55 - Reinstated POD file missing from previous distribution
57 - Added undocumented fourth parameter to extract_codeblock
58 so as to correctly handle (?) and (s?) modifiers in
62 1.40 Tue Aug 4 13:54:52 1998
64 - Added (optional) handling of embedded quoted text to
65 extract_delimited (see revised entry in Balanced.pod)
67 - Added extract_tagged which extracts text between arbitrary,
68 optionally nested start and end tags (see new entry in
71 - Added delimited_pat which builds a pattern which matches a
72 string delimited by any of the delimiters specified (see new
73 entry in Balanced.pod).
78 1.41 Mon Aug 10 14:51:50 1998
80 - Reinstated change to extract_codeblock from 1.36 which were
81 mysteriously lost in 1.40
84 1.50 Thu Aug 27 09:20:19 1998
86 - Improved the structure of the regex generated by
87 delimited_pat (and used in extract_delimited). It's
88 considerably more complex, but also more robust and
89 much faster in the worst case.
91 - Altered extract_variable to accept whitespace in variables,
92 e.g. '$ a -> {'b'} -> [2]'
96 1.51 Sat Feb 13 10:31:55 1999
98 - Fixed bugs in prefix matching in extract_variable:
99 * incorrectly used default if '' specified
100 * now handles $#array correctly
102 - Fixed bugs in extract_codeblock:
103 * Now handles !~ properly
104 * Now handles embedded comments better.
105 * Now handles "raw" pattern matches better.
107 - Added support for single strings or qr's as
108 'reject' and 'ignore' args to extract_tagged()
110 - Added gen_extract_tagged() to "precompile"
111 a specific tag extractor for repeated use
112 (approximately 3 times faster!)
115 1.52 Thu Mar 4 12:43:38 1999
117 - Added CSV parsing example to documentation of extract_multiple.
119 - Fixed a bug with extract_codeblock in "RecDescent" mode
120 (it would accept "subrule(s?)" and "subrule(?)", but
121 not "subrule(s)"). Thanks, Jan.
124 1.66 Fri Jul 2 13:29:22 1999
126 - Added ability to use quotelike operators in extract_bracketed
128 - Fixed bug under 5.003 ('foreach my $func' not understood)
130 - Added escape specification as fourth arg to &extract_delimited
132 - Fixed handling of &delimited_pat and &extract_delimited
133 when delimiter is same as escape
135 - Fixed handling of ->, =>, and >> in &extract_code
136 when delimiters are "<>"
139 1.76 Fri Nov 19 06:51:54 1999
141 - IMPORTANT: Now requires 5.005 or better.
143 - IMPORTANT: Made extract methods sensitive to the pos()
144 value of the text they are parsing. In other words,
145 all extract subroutines now act like patterns of the form
146 /\G.../gc. See documentation for details.
148 - IMPORTANT: Changed semantics of extract_multiple, in line
149 with the above change, and to simplify the semantics to
150 something vaguely predictable. See documentation for details.
152 - Added ability to use qr/../'s and raw strings as extractors
153 in extract_multiple. See documentation.
155 - Added fourth argument to extract_codeblock to allow
156 outermost brackets to be separately specified. See
157 documentation for details.
159 - Reimplemented internals of all extraction subroutines
160 for significant speed-ups (between 100% and 2000%
163 - Fixed nasty bug in extract_variable and extract_codeblock
164 (they were returning prefix as well in scalar context)
166 - Allowed read-only strings to be used as arguments in
169 - Renamed delimited_pat to gen-delimited pat (in line with
170 gen_extract_tagged). Old name still works, but is now deprecated.
172 - Tweaked all extraction subs so they correctly handle
173 zero-length prefix matches after another zero-length match.
176 1.77 Mon Nov 22 06:08:23 1999
178 - Fixed major bug in extract_codeblock (would not
179 terminate if there was trailing whitespace)
181 - Improved /.../ pattern parsing within codeblocks
184 1.81 Wed Sep 13 11:58:49 2000
186 - Fixed test count in extract_codeblock.t
188 - Fixed improbable bug with trailing ->'s in extract_variable
190 - Fixed (HT|X)ML tag extraction in extract_tagged (thanks, Tim)
192 - Added explanatory note about prefix matching (thanks again, Tim)
194 - Added handling of globs and sub refs to extract_variable
196 - Pod tweak (thanks Abigail)
198 - Allowed right tags to be run-time evaluated, so
199 extract_tagged($text, '/([a-z]+)', '/end$1') works
202 - Added optional blessing of matches via extract_multiple
204 - Fixed bug in autogeneration of closing tags in extract_tagged
207 - Fixed bug in interaction between extract_multiple and
208 gen_extract_tagged (Thanks Anthony)
211 1.82 Sun Jan 14 16:56:04 2001
213 - Fixed nit in extract_variable.t
214 (tested more cases than it promised to)
216 - Fixed bug extracting prefix in extract_quotelike (Thanks Michael)
218 - Added handling of Perl 4 package qualifier: $Package'var, etc.
220 - Added handling of here docs (see documentation for limitations)
222 - Added reporting of failure position via $@->{pos} (see documentation)
225 1.83 Mon Jan 15 12:43:12 2001
227 - Fixed numerous bugs in here doc extraction (many thanks Tim)
230 1.84 Thu Apr 26 11:58:13 2001
232 - Fixed bug in certain extractions not matching strings
233 with embedded newlines (thanks Robin)
236 1.85 Sun Jun 3 07:47:18 2001
238 - Fixed bug in extract_variable recognizing method calls that
239 start with an underscore (thanks Jeff)
242 1.86 Mon Sep 3 06:57:08 2001
244 - Revised licence for inclusion in core distribution
246 - Consolidated POD in .pm file
248 - renamed tests to let DOS cope with them
251 1.87 Thu Nov 15 21:25:35 2001
253 - Made extract_multiple aware of skipped prefixes returned
254 by subroutine extractors (such as extract_quotelike, etc.)
256 - Made extract_variable aware of punctuation variables
261 1.89 Sun Nov 18 22:49:50 2001
263 - Fixed extvar.t tests
266 1.90 Tue Mar 25 11:14:38 2003
268 - Fixed subtle bug in gen_extract_tagged (thanks Martin)
270 - Doc fix: removed suggestion that extract_tagged defaults
271 to matching HTML tags
273 - Doc fix: clarified general matching behaviour
275 - Fixed bug in parsing /.../ after a (
277 - Doc fix: documented extract_variable
279 - Fixed extract_variable handling of $h{qr}, $h{tr}, etc.
282 - Fixed incorrect handling of $::var (thanks Tim)
285 1.91 Fri Mar 28 23:19:17 2003
287 - Fixed error count on t/extract_variable.t
289 - Fixed bug in extract_codelike when non-standard delimiters used
292 1.94 Sun Apr 13 02:18:41 2003
294 - rereleased in attempt to fix CPAN problems
297 1.95 Mon Apr 28 00:22:04 2003
299 - Constrainted _match_quote to only match at word boundaries
300 (so "exemplum(hic)" doesn't match "m(hic)")
305 1.96.0 Mon May 1 21:52:37 2006
307 - Fixed major bug in extract_multiple handling of unknowns
309 - Fixed return value on failure (thanks Eric)
311 - Fixed bug differentiating heredocs and left-shift operators
314 1.97 Mon May 1 21:58:04 2006
316 - Removed three-part version number and dependency on version.pm
319 1.98 Fri May 5 14:58:49 2006
321 - Reinstated full test suite (thanks Steve!)
325 1.99.0 Thu Nov 16 07:32:06 2006
327 - Removed reliance on expensive $& variable (thanks John)
329 - Made Makefile.PL play nice with core versions (thanks Schwern!)
332 1.99.1 Thu Nov 16 09:29:14 2006
334 - Included dependency on version.pm (thanks Andy)
338 2.0.0 Wed Dec 20 10:50:24 2006
340 - Added patches from bleadperl version (thanks Rafael!)
342 - Fixed bug in second bracketed delimiters (thanks David)