--- code/trunk/ChangeLog 2008/01/23 17:34:58 311 +++ code/trunk/ChangeLog 2008/04/10 19:55:57 333 @@ -1,7 +1,58 @@ ChangeLog for PCRE ------------------ -Version 7.6 21-Jan-08 +Version 7.7 05-Mar-08 +--------------------- + +1. Applied Craig's patch to sort out a long long problem: "If we can't convert + a string to a long long, pretend we don't even have a long long." This is + done by checking for the strtoq, strtoll, and _strtoi64 functions. + +2. Applied Craig's patch to pcrecpp.cc to restore ABI compatibility with + pre-7.6 versions, which defined a global no_arg variable instead of putting + it in the RE class. (See also #8 below.) + +3. Remove a line of dead code, identified by coverity and reported by Nuno + Lopes. + +4. Fixed two related pcregrep bugs involving -r with --include or --exclude: + + (1) The include/exclude patterns were being applied to the whole pathnames + of files, instead of just to the final components. + + (2) If there was more than one level of directory, the subdirectories were + skipped unless they satisfied the include/exclude conditions. This is + inconsistent with GNU grep (and could even be seen as contrary to the + pcregrep specification - which I improved to make it absolutely clear). + The action now is always to scan all levels of directory, and just + apply the include/exclude patterns to regular files. + +5. Added the --include_dir and --exclude_dir patterns to pcregrep, and used + --exclude_dir in the tests to avoid scanning .svn directories. + +6. Applied Craig's patch to the QuoteMeta function so that it escapes the + NUL character as backslash + 0 rather than backslash + NUL, because PCRE + doesn't support NULs in patterns. + +7. Added some missing "const"s to declarations of static tables in + pcre_compile.c and pcre_dfa_exec.c. + +8. Applied Craig's patch to pcrecpp.cc to fix a problem in OS X that was + caused by fix #2 above. (Subsequently also a second patch to fix the + first patch. And a third patch - this was a messy problem.) + +9. Applied Craig's patch to remove the use of push_back(). + +10. Applied Alan Lehotsky's patch to add REG_STARTEND support to the POSIX + matching function regexec(). + +11. Added support for the Oniguruma syntax \g, \g, \g'name', \g'n', + which, however, unlike Perl's \g{...}, are subroutine calls, not back + references. PCRE supports relative numbers with this syntax (I don't think + Oniguruma does). + + +Version 7.6 28-Jan-08 --------------------- 1. A character class containing a very large number of characters with @@ -16,24 +67,37 @@ - Fixed PH's badly added libz and libbz2 support. - Fixed a problem with static linking. - - Added pcredemo. + - Added pcredemo. [But later removed - see 7 below.] - Fixed dftables problem and added an option. - Added a number of HAVE_XXX tests, including HAVE_WINDOWS_H and HAVE_LONG_LONG. - Added readline support for pcretest. - Added an listing of the option settings after cmake has run. -4. A user submitted a patch to Makefile that makes it easy to created a dll - under mingw. I added stuff to Makefile.am that cause it to include this - special target, without affecting anything else. +4. A user submitted a patch to Makefile that makes it easy to create + "pcre.dll" under mingw when using Configure/Make. I added stuff to + Makefile.am that cause it to include this special target, without + affecting anything else. Note that the same mingw target plus all + the other distribution libraries and programs are now supported + when configuring with CMake (see 6 below) instead of with + Configure/Make. 5. Applied Craig's patch that moves no_arg into the RE class in the C++ code. This is an attempt to solve the reported problem "pcrecpp::no_arg is not exported in the Windows port". It has not yet been confirmed that the patch solves the problem, but it does no harm. - + 6. Applied Sheri's patch to CMakeLists.txt to add NON_STANDARD_LIB_PREFIX and - NON_STANDARD_LIB_SUFFIX and correct the comment about stack recursion. + NON_STANDARD_LIB_SUFFIX for dll names built with mingw when configured + with CMake, and also correct the comment about stack recursion. + +7. Remove the automatic building of pcredemo from the ./configure system and + from CMakeLists.txt. The whole idea of pcredemo.c is that it is an example + of a program that users should build themselves after PCRE is installed, so + building it automatically is not really right. What is more, it gave + trouble in some build environments. + +8. Further tidies to CMakeLists.txt from Sheri and Christian. Version 7.5 10-Jan-08