summaryrefslogtreecommitdiff
path: root/lib/Text/Balanced/Changes
blob: c8c79fb487d7b270c29237dfa338022030c4be25 (plain)
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
Revision history for Perl extension Text::Balanced.

1.00  Mon Aug 11 12:42:56 1997

	- original version


1.01  Mon Sep  8 18:09:18 EST 1997

	- changed "quotemeta" to "quotemeta $_" to work 
	  around bug in Perl 5.002 and 5.003


1.10  Tue Sep 30 17:23:23 EST 1997

	- reworked extract_quotelike to correct handling of some obscure cases


1.21  Sat Oct  4 17:21:54 EST 1997

	- synchronised with Parse::RecDescent distribution (version number
	  will now reflect that package)

1.23  Fri Oct 17 10:26:38 EST 1997

	- 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.24

	- 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.35	Wed Jun 24 09:53:31 1998

	- fixed handling of :: quantifiers in extract_variable()

	- numerous trivial lexical changes to make xemacs happy


1.36	Tue Jul 14 12:26:04 1998

	- 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.40	Tue Aug  4 13:54:52 1998

        - 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.41	Mon Aug 10 14:51:50 1998

	- Reinstated change to extract_codeblock from 1.36 which were
	  mysteriously lost in 1.40


1.50	Thu Aug 27 09:20:19 1998

	- 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.51	Sat Feb 13 10:31:55 1999

	- 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.52	Thu Mar  4 12:43:38 1999

	- 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.66	Fri Jul  2 13:29:22 1999

	- 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.76	Fri Nov 19 06:51:54 1999

	- 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 significant 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 prefix matches after another zero-length match.


1.77	Mon Nov 22 06:08:23 1999

	- Fixed major bug in extract_codeblock (would not 
	  terminate if there was trailing whitespace)

	- Improved /.../ pattern parsing within codeblocks


1.81	Wed Sep 13 11:58:49 2000

	- 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.82	Sun Jan 14 16:56:04 2001

	- 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.83	Mon Jan 15 12:43:12 2001

	- Fixed numerous bugs in here doc extraction (many thanks Tim)


1.84	Thu Apr 26 11:58:13 2001

	- Fixed bug in certain extractions not matching strings
	  with embedded newlines (thanks Robin)


1.85	Sun Jun  3 07:47:18 2001

	- Fixed bug in extract_variable recognizing method calls that
	  start with an underscore (thanks Jeff)


1.86	Mon Sep  3 06:57:08 2001

	- Revised licence for inclusion in core distribution

	- Consolidated POD in .pm file

	- renamed tests to let DOS cope with them


1.87	Thu Nov 15 21:25:35 2001

	- 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.89	Sun Nov 18 22:49:50 2001

	- Fixed extvar.t tests


1.90	Tue Mar 25 11:14:38 2003

	- 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.91	Fri Mar 28 23:19:17 2003

	- Fixed error count on t/extract_variable.t

	- Fixed bug in extract_codelike when non-standard delimiters used


1.94	Sun Apr 13 02:18:41 2003

	- rereleased in attempt to fix CPAN problems


1.95	Mon Apr 28 00:22:04 2003

	- Constrainted _match_quote to only match at word boundaries
	  (so "exemplum(hic)" doesn't match "m(hic)")
	  (thanks Craig)