-
Notifications
You must be signed in to change notification settings - Fork 5
/
Changes
424 lines (245 loc) · 12.7 KB
/
Changes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
Revision history for Perl distribution Text-Balanced.
2.07 Development
- TODO
2.06 2022-06-05
- Released with no further code changes.
2.05_01 2022-05-29
- Fix direct use of _match_codeblock by e.g. Switch. [mohawk2, CPAN
RT#142923]
- Fix resetting of whether "/" or "?" allowed to open regex. [mohawk2, CPAN
RT#142922]
- Fix false negative on /.../ regex after "and". [mohawk2, GH#7]
2.05 2022-05-22
- Released with no further code changes.
2.04_02 2022-03-09
- Fix missed case of spotting expression ending ")" or "]". [mohawk2]
- Fix too-loosely allowing ?...? as RE (often actually conditional op).
[mohawk2]
2.04_01 2022-03-05
- Performance optimizations. [mohawk2, PR#5]
- Fix "<<=" being seen as heredoc, misparsing of "y=>". [mohawk2, PR#6]
- Update documentation to clarify extract_tagged() takes regexes. [Jay
Hannah, GH#3]
- Modernize tests. [mohawk2, GH#2]
- Fix extract_variable() not recognising ${var} end of string. [Ed J, CPAN
RT#70007]
- Fix string-comparing $@ causing exception. [Ed J, CPAN RT#74994)
- Update documentation to correct CSV example. [[email protected], CPAN
RT#140408]
- Fix extract_codeblock() being confused by //. [Ed J, CPAN RT#78313]
- Improve here-doc detection. [Ed J, CPAN RT#74714]
- Fix extract_multiple() to track whether to allow /.../ as quotelike.
[Ed J, CPAN RT#5722]
2.04 2020-12-11
- Fixed INSTALLDIRS to account for the @INC reordering change in Perl 5.12.
See Perl RT#116479 for details. (Text-Balanced entered the perl core in
Perl 5.7.1 so that's what the lower bound of the check should strictly be,
but since we only support Perl 5.8.1 and higher anyway we do not need to
check the lower bound. The upper bound is correctly Perl 5.11.0 since the
@INC reordering change in question (Perl core commit #b9ba2fadb1) first
appeared in Perl 5.11.0.)
- Removed superfluous loading of SelfLoader. [<[email protected]>, CPAN
RT#85572]
- Minor documentation patch. [<[email protected]>, CPAN RT#52623]
- Typo fixes. [<[email protected]>, CPAN RT#85373]
- Added optional Changes testing (skipped unless AUTHOR_TESTING).
- Reformatted Changes file as per CPAN::Changes::Spec.
- Added optional POD coverage testing (skipped unless AUTHOR_TESTING).
- Added optional Perl::Critic testing (skipped unless AUTHOR_TESTING).
- Made code Perl::Critic clean.
- Included GitHub repository URLs in metadata now that source code has been
uploaded to GitHub.
- Included META.json file in addition to META.yml.
- Set minimum required ExtUtils::MakeMaker version to 6.64 to ensure that
all parameters used are supported, to save jumping through hoops to
support earlier versions. (This should not be a problem since
ExtUtils::MakeMaker 6.64 is easily installed into Perl 5.8.1 and above,
that being the whole point of the new choice of minimum supported Perl
version.)
- Set minimum required Perl version to 5.8.1. This is in line with the
minimum requirement of the "Perl Toolchain".
2.03 2015-03-04
- Removed test boilerplate code to synchronize with bleadperl.
2.02 2009-07-29
- Fixed the mixed "Damian Conway <[email protected]>" AUTHOR setting. For the
record, I am NOT the author, I'm just the maintainer. Unfortunately,
Makefile.PL does not have a MAINTAINER setting and this way all the emails
about this module come to me.
2.01 2009-07-28
- Taken over by Adam Kennedy to move it to a long-term maintenance mode.
- Removing use warnings to restore 5.005 compatibility.
- Removing Module::Build for higher back-compatibility.
- Removing version.pm for higher back-compatibility.
- use Exporter -> use Exporter () to avoid some pathalogical cases.
- Upgraded the bundled author tests to be friendlier.
- Changes order now a more normal reverse chronological.
2.0.0 2006-12-20 10:50:24
- Added patches from bleadperl version (thanks Rafael!).
- Fixed bug in second bracketed delimiters (thanks David).
1.99.1 2006-11-16 09:29:14
- Included dependency on version.pm (thanks Andy).
1.99.0 2006-11-16 07:32:06
- Removed reliance on expensive $& variable (thanks John).
- Made Makefile.PL play nice with core versions (thanks Schwern!).
1.98 2006-05-05 14:58:49
- Reinstated full test suite (thanks Steve!).
1.97 2006-05-01 21:58:04
- Removed three-part version number and dependency on version.pm.
1.96.0 2006-05-01 21:52:37
- Fixed major bug in extract_multiple handling of unknowns.
- Fixed return value on failure (thanks Eric).
- Fixed bug differentiating heredocs and left-shift operators (thanks
Anthony).
1.95 2003-04-28 22:04
- Constrainted _match_quote to only match at word boundaries (so
"exemplum(hic)" doesn't match "m(hic)") (thanks Craig).
1.94 2003-04-13 02:18:41
- Rereleased in attempt to fix CPAN problems.
1.91 2003-03-28 23:19:17
- Fixed error count on t/extract_variable.t.
- Fixed bug in extract_codelike when non-standard delimiters used.
1.90 2003-03-25 11:14:38
- Fixed subtle bug in gen_extract_tagged (thanks Martin).
- Doc fix: removed suggestion that extract_tagged defaults to matching HTML
tags.
- Doc fix: clarified general matching behaviour.
- Fixed bug in parsing /.../ after a (.
- Doc fix: documented extract_variable.
- Fixed extract_variable handling of $h{qr}, $h{tr}, etc. (thanks, Briac).
- Fixed incorrect handling of $::var (thanks Tim).
1.89 2001-11-18 22:49:50
- Fixed extvar.t tests.
1.87 2001-11-15 21:25:35
- Made extract_multiple aware of skipped prefixes returned by subroutine
extractors (such as extract_quotelike, etc.).
- Made extract_variable aware of punctuation variables.
- Corified tests.
1.86 2001-09-03 06:57:08
- Revised licence for inclusion in core distribution.
- Consolidated POD in .pm file.
- Renamed tests to let DOS cope with them.
1.85 2001-06-03 07:47:18
- Fixed bug in extract_variable recognizing method calls that start with an
underscore (thanks Jeff).
1.84 2001-04-26 11:58:13
- Fixed bug in certain extractions not matching strings with embedded
newlines (thanks Robin).
1.83 2001-01-15 12:43:12
- Fixed numerous bugs in here doc extraction (many thanks Tim).
1.82 2001-01-14 14 16:56:04
- Fixed nit in extract_variable.t (tested more cases than it promised to).
- Fixed bug extracting prefix in extract_quotelike (Thanks Michael).
- Added handling of Perl 4 package qualifier: $Package'var, etc.
- Added handling of here docs (see documentation for limitations).
- Added reporting of failure position via $@->{pos} (see documentation).
1.81 2000-09-13 11:58:49
- Fixed test count in extract_codeblock.t.
- Fixed improbable bug with trailing ->'s in extract_variable.
- Fixed (HT|X)ML tag extraction in extract_tagged (thanks, Tim).
- Added explanatory note about prefix matching (thanks again, Tim).
- Added handling of globs and sub refs to extract_variable.
- Pod tweak (thanks Abigail).
- Allowed right tags to be run-time evaluated, so extract_tagged($text,
'/([a-z]+)', '/end$1') works as expected.
- Added optional blessing of matches via extract_multiple
- Fixed bug in autogeneration of closing tags in extract_tagged (Thanks,
Coke).
- Fixed bug in interaction between extract_multiple and gen_extract_tagged
(Thanks Anthony).
1.77 1999-11-22 06:08:23
- Fixed major bug in extract_codeblock (would not terminate if there was
trailing whitespace).
- Improved /.../ pattern parsing within codeblocks.
1.76 1999-11-19 06:51:54
- IMPORTANT: Now requires 5.005 or better.
- IMPORTANT: Made extract methods sensitive to the pos() value of the text
they are parsing. In other words, all extract subroutines now act like
patterns of the form /\G.../gc. See documentation for details.
- IMPORTANT: Changed semantics of extract_multiple, in line with the above
change, and to simplify the semantics to something vaguely predictable.
See documentation for details.
- Added ability to use qr/../'s and raw strings as extractors in
extract_multiple. See documentation.
- Added fourth argument to extract_codeblock to allow outermost brackets to
be separately specified. See documentation for details.
- Reimplemented internals of all extraction subroutines for significantx
speed-ups (between 100% and 2000% improvement).
- Fixed nasty bug in extract_variable and extract_codeblock (they were
returning prefix as well in scalar context).
- Allowed read-only strings to be used as arguments in scalar contexts.
- Renamed delimited_pat to gen-delimited pat (in line with
gen_extract_tagged). Old name still works, but is now deprecated.
- Tweaked all extraction subs so they correctly handle zero-length prefixx
matches after another zero-length match.
1.66 1999-07-02 13:29:22
- Added ability to use quotelike operators in extract_bracketed.
- Fixed bug under 5.003 ('foreach my $func' not understood).
- Added escape specification as fourth arg to &extract_delimited.
- Fixed handling of &delimited_pat and &extract_delimited when delimiter is
same as escape.
- Fixed handling of ->, =>, and >> in &extract_code when delimiters are
"<>".
1.52 1999-03-04 12:43:38
- Added CSV parsing example to documentation of extract_multiple.
- Fixed a bug with extract_codeblock in "RecDescent" mode (it would accept
"subrule(s?)" and "subrule(?)", but not "subrule(s)"). Thanks, Jan.
1.51 1999-02-13 10:31:55
- Fixed bugs in prefix matching in extract_variable:
* Incorrectly used default if '' specified.
* Now handles $#array correctly.
- Fixed bugs in extract_codeblock:
* Now handles !~ properly.
* Now handles embedded comments better.
* Now handles "raw" pattern matches better.
- Added support for single strings or qr's as 'reject' and 'ignore' args to
extract_tagged().
- Added gen_extract_tagged() to "precompile" a specific tag extractor for
repeated use (approximately 3 times faster!).
1.50 1998-08-27 09:20:19
- Improved the structure of the regex generated by delimited_pat (and used
in extract_delimited). It's considerably more complex, but also more
robust and much faster in the worst case.
- Altered extract_variable to accept whitespace in variables, e.g.
'$ a -> {'b'} -> [2]'.
1.41 1998-08-10 14:51:50
- Reinstated change to extract_codeblock from 1.36 which were mysteriously
lost in 1.40.
1.40 1998-08-04 13:54:52
- Added (optional) handling of embedded quoted text to extract_delimited
(see revised entry in Balanced.pod).
- Added extract_tagged which extracts text between arbitrary, optionally
nested start and end tags (see new entry in Balanced.pod).
- Added delimited_pat which builds a pattern which matches a string
delimited by any of the delimiters specified (see new entry in
Balanced.pod).
- Added test.pl.
1.36 1998-07-14 12:26:04
- Reinstated POD file missing from previous distribution.
- Added undocumented fourth parameter to extract_codeblock so as to
correctly handle (?) and (s?) modifiers in RecDescent grammars.
1.35 1998-06-24 09:53:31
- Fixed handling of :: quantifiers in extract_variable().
- Numerous trivial lexical changes to make xemacs happy.
1.24 1997-12-12
- Changed behaviour in scalar contexts. Scalar contexts now return the
extracted string _and_ remove it from the first argument (or $_).
- Changed return values on failure (all contexts return undef for invalid
return fields)
- Fixed some lurking bugs with trailing modifier handling.
- Added :ALL tag to simplify wholesale importing of functions.
- Fixed serious bug with embedded division operators ("/"). This now also
allows the ?...? form of pattern matching!
1.23 1997-10-17 10:26:38-05:00
- Changed behaviour in scalar and void contexts. Scalar contexts now return
only the extracted string. Void contexts now remove the extracted string
from the first argument (or $_).
1.21 1997-10-04 17:21:54-05:00
- Synchronised with Parse::RecDescent distribution (version number will now
reflect that package).
1.10 1997-09-30 17:23:23-05:00
- Reworked extract_quotelike to correct handling of some obscure cases.
1.01 1997-09-08 18:09:18-05:00
- Changed "quotemeta" to "quotemeta $_" to work around bug in Perl 5.002 and
5.003.
1.00 1997-08-11 12:42:56
- Original version.