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

Diff of /code/trunk/NEWS

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

revision 172 by ph10, Tue Jun 5 10:40:13 2007 UTC revision 975 by ph10, Sat Jun 2 11:03:06 2012 UTC
# Line 1  Line 1 
1  News about PCRE releases  News about PCRE releases
2  ------------------------  ------------------------
3    
4    Release 8.31 02-June-2012
5    -------------------------
6    
7  Release 7.2 30-Apr-07  This is mainly a bug-fixing release, with a small number of developments:
8    
9    . The JIT compiler now supports partial matching and the (*MARK) and
10      (*COMMIT) verbs.
11    
12    . PCRE_INFO_MAXLOOKBEHIND can be used to find the longest lookbehing in a
13      pattern.
14    
15    . There should be a performance improvement when using the heap instead of the
16      stack for recursion.
17    
18    . pcregrep can now be linked with libedit as an alternative to libreadline.
19    
20    . pcregrep now has a --file-list option where the list of files to scan is
21      given as a file.
22    
23    . pcregrep now recognizes binary files and there are related options.
24    
25    . The Unicode tables have been updated to 6.1.0.
26    
27    As always, the full list of changes is in the ChangeLog file.
28    
29    
30    Release 8.30 04-February-2012
31    -----------------------------
32    
33    Release 8.30 introduces a major new feature: support for 16-bit character
34    strings, compiled as a separate library. There are a few changes to the
35    8-bit library, in addition to some bug fixes.
36    
37    . The pcre_info() function, which has been obsolete for over 10 years, has
38      been removed.
39    
40    . When a compiled pattern was saved to a file and later reloaded on a host
41      with different endianness, PCRE used automatically to swap the bytes in some
42      of the data fields. With the advent of the 16-bit library, where more of this
43      swapping is needed, it is no longer done automatically. Instead, the bad
44      endianness is detected and a specific error is given. The user can then call
45      a new function called pcre_pattern_to_host_byte_order() (or an equivalent
46      16-bit function) to do the swap.
47    
48    . In UTF-8 mode, the values 0xd800 to 0xdfff are not legal Unicode
49      code points and are now faulted. (They are the so-called "surrogates"
50      that are reserved for coding high values in UTF-16.)
51    
52    
53    Release 8.21 12-Dec-2011
54    ------------------------
55    
56    This is almost entirely a bug-fix release. The only new feature is the ability
57    to obtain the size of the memory used by the JIT compiler.
58    
59    
60    Release 8.20 21-Oct-2011
61    ------------------------
62    
63    The main change in this release is the inclusion of Zoltan Herczeg's
64    just-in-time compiler support, which can be accessed by building PCRE with
65    --enable-jit. Large performance benefits can be had in many situations. 8.20
66    also fixes an unfortunate bug that was introduced in 8.13 as well as tidying up
67    a number of infelicities and differences from Perl.
68    
69    
70    Release 8.13 16-Aug-2011
71    ------------------------
72    
73    This is mainly a bug-fix release. There has been a lot of internal refactoring.
74    The Unicode tables have been updated. The only new feature in the library is
75    the passing of *MARK information to callouts. Some additions have been made to
76    pcretest to make testing easier and more comprehensive. There is a new option
77    for pcregrep to adjust its internal buffer size.
78    
79    
80    Release 8.12 15-Jan-2011
81    ------------------------
82    
83    This release fixes some bugs in pcregrep, one of which caused the tests to fail
84    on 64-bit big-endian systems. There are no changes to the code of the library.
85    
86    
87    Release 8.11 10-Dec-2010
88    ------------------------
89    
90    A number of bugs in the library and in pcregrep have been fixed. As always, see
91    ChangeLog for details. The following are the non-bug-fix changes:
92    
93    . Added --match-limit and --recursion-limit to pcregrep.
94    
95    . Added an optional parentheses number to the -o and --only-matching options
96      of pcregrep.
97    
98    . Changed the way PCRE_PARTIAL_HARD affects the matching of $, \z, \Z, \b, and
99      \B.
100    
101    . Added PCRE_ERROR_SHORTUTF8 to make it possible to distinguish between a
102      bad UTF-8 sequence and one that is incomplete when using PCRE_PARTIAL_HARD.
103    
104    . Recognize (*NO_START_OPT) at the start of a pattern to set the PCRE_NO_
105      START_OPTIMIZE option, which is now allowed at compile time
106    
107    
108    Release 8.10 25-Jun-2010
109    ------------------------
110    
111    There are two major additions: support for (*MARK) and friends, and the option
112    PCRE_UCP, which changes the behaviour of \b, \d, \s, and \w (and their
113    opposites) so that they make use of Unicode properties. There are also a number
114    of lesser new features, and several bugs have been fixed. A new option,
115    --line-buffered, has been added to pcregrep, for use when it is connected to
116    pipes.
117    
118    
119    Release 8.02 19-Mar-2010
120    ------------------------
121    
122    Another bug-fix release.
123    
124    
125    Release 8.01 19-Jan-2010
126    ------------------------
127    
128    This is a bug-fix release. Several bugs in the code itself and some bugs and
129    infelicities in the build system have been fixed.
130    
131    
132    Release 8.00 19-Oct-09
133    ----------------------
134    
135    Bugs have been fixed in the library and in pcregrep. There are also some
136    enhancements. Restrictions on patterns used for partial matching have been
137    removed, extra information is given for partial matches, the partial matching
138    process has been improved, and an option to make a partial match override a
139    full match is available. The "study" process has been enhanced by finding a
140    lower bound matching length. Groups with duplicate numbers may now have
141    duplicated names without the use of PCRE_DUPNAMES. However, they may not have
142    different names. The documentation has been revised to reflect these changes.
143    The version number has been expanded to 3 digits as it is clear that the rate
144    of change is not slowing down.
145    
146    
147    Release 7.9 11-Apr-09
148    ---------------------
149    
150    Mostly bugfixes and tidies with just a couple of minor functional additions.
151    
152    
153    Release 7.8 05-Sep-08
154    ---------------------
155    
156    More bug fixes, plus a performance improvement in Unicode character property
157    lookup.
158    
159    
160    Release 7.7 07-May-08
161    ---------------------
162    
163    This is once again mainly a bug-fix release, but there are a couple of new
164    features.
165    
166    
167    Release 7.6 28-Jan-08
168    ---------------------
169    
170    The main reason for having this release so soon after 7.5 is because it fixes a
171    potential buffer overflow problem in pcre_compile() when run in UTF-8 mode. In
172    addition, the CMake configuration files have been brought up to date.
173    
174    
175    Release 7.5 10-Jan-08
176    ---------------------
177    
178    This is mainly a bug-fix release. However the ability to link pcregrep with
179    libz or libbz2 and the ability to link pcretest with libreadline have been
180    added. Also the --line-offsets and --file-offsets options were added to
181    pcregrep.
182    
183    
184    Release 7.4 21-Sep-07
185    ---------------------
186    
187    The only change of specification is the addition of options to control whether
188    \R matches any Unicode line ending (the default) or just CR, LF, and CRLF.
189    Otherwise, the changes are bug fixes and a refactoring to reduce the number of
190    relocations needed in a shared library. There have also been some documentation
191    updates, in particular, some more information about using CMake to build PCRE
192    has been added to the NON-UNIX-USE file.
193    
194    
195    Release 7.3 28-Aug-07
196    ---------------------
197    
198    Most changes are bug fixes. Some that are not:
199    
200    1. There is some support for Perl 5.10's experimental "backtracking control
201       verbs" such as (*PRUNE).
202    
203    2. UTF-8 checking is now as per RFC 3629 instead of RFC 2279; this is more
204       restrictive in the strings it accepts.
205    
206    3. Checking for potential integer overflow has been made more dynamic, and as a
207       consequence there is no longer a hard limit on the size of a subpattern that
208       has a limited repeat count.
209    
210    4. When CRLF is a valid line-ending sequence, pcre_exec() and pcre_dfa_exec()
211       no longer advance by two characters instead of one when an unanchored match
212       fails at CRLF if there are explicit CR or LF matches within the pattern.
213       This gets rid of some anomalous effects that previously occurred.
214    
215    5. Some PCRE-specific settings for varying the newline options at the start of
216       a pattern have been added.
217    
218    
219    Release 7.2 19-Jun-07
220  ---------------------  ---------------------
221    
222  WARNING: saved patterns that were compiled by earlier versions of PCRE must be  WARNING: saved patterns that were compiled by earlier versions of PCRE must be
223  recompiled for use with 7.2 (necessitated by the addition of \K).  recompiled for use with 7.2 (necessitated by the addition of \K, \h, \H, \v,
224    and \V).
225    
226  Correction to the notes for 7.1: the note about shared libraries for Windows is  Correction to the notes for 7.1: the note about shared libraries for Windows is
227  wrong. Previously, three libraries were built, but each could function  wrong. Previously, three libraries were built, but each could function
# Line 20  Some more features from Perl 5.10 have b Line 235  Some more features from Perl 5.10 have b
235    
236    (?-n) and (?+n) relative references for recursion and subroutines.    (?-n) and (?+n) relative references for recursion and subroutines.
237    
   (Not sure if this one is actually in Perl 5.10)  
238    (?(-n) and (?(+n) relative references as conditions.    (?(-n) and (?(+n) relative references as conditions.
239    
240      \k{name} and \g{name} are synonyms for \k<name>.
241    
242    \K to reset the start of the matched string; for example, (foo)\Kbar    \K to reset the start of the matched string; for example, (foo)\Kbar
243    matches bar preceded by foo, but only sets bar as the matched string    matches bar preceded by foo, but only sets bar as the matched string.
244    
245      (?| introduces a group where the capturing parentheses in each alternative
246      start from the same number; for example, (?|(abc)|(xyz)) sets capturing
247      parentheses number 1 in both cases.
248    
249      \h, \H, \v, \V match horizontal and vertical whitespace, respectively.
250    
251    
252  Release 7.1 24-Apr-07  Release 7.1 24-Apr-07

Legend:
Removed from v.172  
changed lines
  Added in v.975

  ViewVC Help
Powered by ViewVC 1.1.5