/[pcre]/code/trunk/ChangeLog
ViewVC logotype

Diff of /code/trunk/ChangeLog

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 27 by nigel, Sat Feb 24 21:38:49 2007 UTC revision 35 by nigel, Sat Feb 24 21:39:05 2007 UTC
# Line 2  ChangeLog for PCRE Line 2  ChangeLog for PCRE
2  ------------------  ------------------
3    
4    
5    Version 2.06 09-Jun-99
6    ----------------------
7    
8    1. Change pcretest's output for amount of store used to show just the code
9    space, because the remainder (the data block) varies in size between 32-bit and
10    64-bit systems.
11    
12    2. Added an extra argument to pcre_exec() to supply an offset in the subject to
13    start matching at. This allows lookbehinds to work when searching for multiple
14    occurrences in a string.
15    
16    3. Added additional options to pcretest for testing multiple occurrences:
17    
18       /+   outputs the rest of the string that follows a match
19       /g   loops for multiple occurrences, using the new startoffset argument
20       /G   loops for multiple occurrences by passing an incremented pointer
21    
22    4. PCRE wasn't doing the "first character" optimization for patterns starting
23    with \b or \B, though it was doing it for other lookbehind assertions. That is,
24    it wasn't noticing that a match for a pattern such as /\bxyz/ has to start with
25    the letter 'x'. On long subject strings, this gives a significant speed-up.
26    
27    
28    Version 2.05 21-Apr-99
29    ----------------------
30    
31    1. Changed the type of magic_number from int to long int so that it works
32    properly on 16-bit systems.
33    
34    2. Fixed a bug which caused patterns starting with .* not to work correctly
35    when the subject string contained newline characters. PCRE was assuming
36    anchoring for such patterns in all cases, which is not correct because .* will
37    not pass a newline unless PCRE_DOTALL is set. It now assumes anchoring only if
38    DOTALL is set at top level; otherwise it knows that patterns starting with .*
39    must be retried after every newline in the subject.
40    
41    
42    Version 2.04 18-Feb-99
43    ----------------------
44    
45    1. For parenthesized subpatterns with repeats whose minimum was zero, the
46    computation of the store needed to hold the pattern was incorrect (too large).
47    If such patterns were nested a few deep, this could multiply and become a real
48    problem.
49    
50    2. Added /M option to pcretest to show the memory requirement of a specific
51    pattern. Made -m a synonym of -s (which does this globally) for compatibility.
52    
53    3. Subpatterns of the form (regex){n,m} (i.e. limited maximum) were being
54    compiled in such a way that the backtracking after subsequent failure was
55    pessimal. Something like (a){0,3} was compiled as (a)?(a)?(a)? instead of
56    ((a)((a)(a)?)?)? with disastrous performance if the maximum was of any size.
57    
58    
59    Version 2.03 02-Feb-99
60    ----------------------
61    
62    1. Fixed typo and small mistake in man page.
63    
64    2. Added 4th condition (GPL supersedes if conflict) and created separate
65    LICENCE file containing the conditions.
66    
67    3. Updated pcretest so that patterns such as /abc\/def/ work like they do in
68    Perl, that is the internal \ allows the delimiter to be included in the
69    pattern. Locked out the use of \ as a delimiter. If \ immediately follows
70    the final delimiter, add \ to the end of the pattern (to test the error).
71    
72    4. Added the convenience functions for extracting substrings after a successful
73    match. Updated pcretest to make it able to test these functions.
74    
75    
76  Version 2.02 14-Jan-99  Version 2.02 14-Jan-99
77  ----------------------  ----------------------
78    

Legend:
Removed from v.27  
changed lines
  Added in v.35

  ViewVC Help
Powered by ViewVC 1.1.5