1 News about PCRE2 releases 2 ------------------------- 3 4 Version 10.22 29-July-2016 5 -------------------------- 6 7 1. ChangeLog has the details of a number of bug fixes. 8 9 2. The POSIX wrapper function regcomp() did not used to support back references 10 and subroutine calls if called with the REG_NOSUB option. It now does. 11 12 3. A new function, pcre2_code_copy(), is added, to make a copy of a compiled 13 pattern. 14 15 4. Support for string callouts is added to pcre2grep. 16 17 5. Added the PCRE2_NO_JIT option to pcre2_match(). 18 19 6. The pcre2_get_error_message() function now returns with a negative error 20 code if the error number it is given is unknown. 21 22 7. Several updates have been made to pcre2test and test scripts (see 23 ChangeLog). 24 25 26 Version 10.21 12-January-2016 27 ----------------------------- 28 29 1. Many bugs have been fixed. A large number of them were provoked only by very 30 strange pattern input, and were discovered by fuzzers. Some others were 31 discovered by code auditing. See ChangeLog for details. 32 33 2. The Unicode tables have been updated to Unicode version 8.0.0. 34 35 3. For Perl compatibility in EBCDIC environments, ranges such as a-z in a 36 class, where both values are literal letters in the same case, omit the 37 non-letter EBCDIC code points within the range. 38 39 4. There have been a number of enhancements to the pcre2_substitute() function, 40 giving more flexibility to replacement facilities. It is now also possible to 41 cause the function to return the needed buffer size if the one given is too 42 small. 43 44 5. The PCRE2_ALT_VERBNAMES option causes the "name" parts of special verbs such 45 as (*THEN:name) to be processed for backslashes and to take note of 46 PCRE2_EXTENDED. 47 48 6. PCRE2_INFO_HASBACKSLASHC makes it possible for a client to find out if a 49 pattern uses \C, and --never-backslash-C makes it possible to compile a version 50 PCRE2 in which the use of \C is always forbidden. 51 52 7. A limit to the length of pattern that can be handled can now be set by 53 calling pcre2_set_max_pattern_length(). 54 55 8. When matching an unanchored pattern, a match can be required to begin within 56 a given number of code units after the start of the subject by calling 57 pcre2_set_offset_limit(). 58 59 9. The pcre2test program has been extended to test new facilities, and it can 60 now run the tests when LF on its own is not a valid newline sequence. 61 62 10. The RunTest script has also been updated to enable more tests to be run. 63 64 11. There have been some minor performance enhancements. 65 66 67 Version 10.20 30-June-2015 68 -------------------------- 69 70 1. Callouts with string arguments and the pcre2_callout_enumerate() function 71 have been implemented. 72 73 2. The PCRE2_NEVER_BACKSLASH_C option, which locks out the use of \C, is added. 74 75 3. The PCRE2_ALT_CIRCUMFLEX option lets ^ match after a newline at the end of a 76 subject in multiline mode. 77 78 4. The way named subpatterns are handled has been refactored. The previous 79 approach had several bugs. 80 81 5. The handling of \c in EBCDIC environments has been changed to conform to the 82 perlebcdic document. This is an incompatible change. 83 84 6. Bugs have been mended, many of them discovered by fuzzers. 85 86 87 Version 10.10 06-March-2015 88 --------------------------- 89 90 1. Serialization and de-serialization functions have been added to the API, 91 making it possible to save and restore sets of compiled patterns, though 92 restoration must be done in the same environment that was used for compilation. 93 94 2. The (*NO_JIT) feature has been added; this makes it possible for a pattern 95 creator to specify that JIT is not to be used. 96 97 3. A number of bugs have been fixed. In particular, bugs that caused building 98 on Windows using CMake to fail have been mended. 99 100 101 Version 10.00 05-January-2015 102 ----------------------------- 103 104 Version 10.00 is the first release of PCRE2, a revised API for the PCRE 105 library. Changes prior to 10.00 are logged in the ChangeLog file for the old 106 API, up to item 20 for release 8.36. New programs are recommended to use the 107 new library. Programs that use the original (PCRE1) API will need changing 108 before linking with the new library. 109 110 **** 111