Revision: 1177
http://www.exim.org/viewvc/pcre2?view=rev&revision=1177
Author: ph10
Date: 2019-10-15 16:23:31 +0100 (Tue, 15 Oct 2019)
Log Message:
-----------
Fix minor test issues and tidies/updates for 10.34-RC1 testing release.
Modified Paths:
--------------
code/trunk/ChangeLog
code/trunk/NEWS
code/trunk/README
code/trunk/RunGrepTest
code/trunk/configure.ac
code/trunk/doc/html/README.txt
code/trunk/doc/html/pcre2api.html
code/trunk/doc/pcre2.txt
code/trunk/maint/ManyConfigTests
Modified: code/trunk/ChangeLog
===================================================================
--- code/trunk/ChangeLog 2019-10-15 10:46:36 UTC (rev 1176)
+++ code/trunk/ChangeLog 2019-10-15 15:23:31 UTC (rev 1177)
@@ -2,8 +2,8 @@
--------------------
-Version 10.34 22-April-2019
----------------------------
+Version 10.34-RC1 15-October-2019
+---------------------------------
1. The maximum number of capturing subpatterns is 65535 (documented), but no
check on this was ever implemented. This omission has been rectified; it fixes
Modified: code/trunk/NEWS
===================================================================
--- code/trunk/NEWS 2019-10-15 10:46:36 UTC (rev 1176)
+++ code/trunk/NEWS 2019-10-15 15:23:31 UTC (rev 1177)
@@ -2,9 +2,26 @@
-------------------------
-Version 10.33-RC1 16-April-2019
--------------------------------
+Version 10.34 15-October-2019
+-----------------------------
+Another release with a few enhancements as well as bugfixes and tidies. The
+main new features are:
+
+1. There is now some support for matching in invalid UTF strings.
+
+2. Non-atomic positive lookarounds are implemented in the pcre2_match()
+interpreter, but not in JIT.
+
+3. Added two new functions: pcre2_get_match_data_size() and
+pcre2_maketables_free().
+
+4. Upgraded to Unicode 12.1.0.
+
+
+Version 10.33 16-April-2019
+---------------------------
+
Yet more bugfixes, tidies, and a few enhancements, summarized here (see
ChangeLog for the full list):
Modified: code/trunk/README
===================================================================
--- code/trunk/README 2019-10-15 10:46:36 UTC (rev 1176)
+++ code/trunk/README 2019-10-15 15:23:31 UTC (rev 1177)
@@ -5,11 +5,11 @@
API. Since its initial release in 2015, there has been further development of
the code and it now differs from PCRE1 in more than just the API. There are new
features and the internals have been improved. The latest release of PCRE2 is
-always available in three alternative formats from:
+available in three alternative formats from:
-
ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre2-xxx.tar.gz
-
ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre2-xxx.tar.bz2
-
ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre2-xxx.zip
+
https://ftp.pcre.org/pub/pcre/pcre2-10.xx.tar.gz
+
https://ftp.pcre.org/pub/pcre/pcre2-10.xx.tar.bz2
+
https://ftp.pcre.org/pub/pcre/pcre2-10.xx.tar.zip
There is a mailing list for discussion about the development of PCRE (both the
original and new APIs) at pcre-dev@???. You can access the archives and
Modified: code/trunk/RunGrepTest
===================================================================
--- code/trunk/RunGrepTest 2019-10-15 10:46:36 UTC (rev 1176)
+++ code/trunk/RunGrepTest 2019-10-15 15:23:31 UTC (rev 1177)
@@ -686,12 +686,12 @@
echo "---------------------------- Test U4 ------------------------------" >>testtrygrep
printf 'A\341\200\200\200CD\342\200\200Z\n' >testtemp1grep
- (cd $srcdir; $valgrind $vjs $pcre2grep -u -o '....' testtemp1grep) >>testtrygrep 2>&1
+ (cd $srcdir; $valgrind $vjs $pcre2grep -u -o '....' $builddir/testtemp1grep) >>testtrygrep 2>&1
echo "RC=$?" >>testtrygrep
echo "---------------------------- Test U5 ------------------------------" >>testtrygrep
printf 'A\341\200\200\200CD\342\200\200Z\n' >testtemp1grep
- (cd $srcdir; $valgrind $vjs $pcre2grep -U -o '....' testtemp1grep) >>testtrygrep
+ (cd $srcdir; $valgrind $vjs $pcre2grep -U -o '....' $builddir/testtemp1grep) >>testtrygrep
echo "RC=$?" >>testtrygrep
$cf $srcdir/testdata/grepoutput8 testtrygrep
Modified: code/trunk/configure.ac
===================================================================
--- code/trunk/configure.ac 2019-10-15 10:46:36 UTC (rev 1176)
+++ code/trunk/configure.ac 2019-10-15 15:23:31 UTC (rev 1177)
@@ -11,16 +11,16 @@
m4_define(pcre2_major, [10])
m4_define(pcre2_minor, [34])
m4_define(pcre2_prerelease, [-RC1])
-m4_define(pcre2_date, [2019-04-22])
+m4_define(pcre2_date, [2019-10-15])
# NOTE: The CMakeLists.txt file searches for the above variables in the first
# 50 lines of this file. Please update that if the variables above are moved.
# Libtool shared library interface versions (current:revision:age)
-m4_define(libpcre2_8_version, [8:0:8])
-m4_define(libpcre2_16_version, [8:0:8])
-m4_define(libpcre2_32_version, [8:0:8])
-m4_define(libpcre2_posix_version, [2:2:0])
+m4_define(libpcre2_8_version, [9:0:9])
+m4_define(libpcre2_16_version, [9:0:9])
+m4_define(libpcre2_32_version, [9:0:9])
+m4_define(libpcre2_posix_version, [2:3:0])
AC_PREREQ(2.57)
AC_INIT(PCRE2, pcre2_major.pcre2_minor[]pcre2_prerelease, , pcre2)
Modified: code/trunk/doc/html/README.txt
===================================================================
--- code/trunk/doc/html/README.txt 2019-10-15 10:46:36 UTC (rev 1176)
+++ code/trunk/doc/html/README.txt 2019-10-15 15:23:31 UTC (rev 1177)
@@ -5,11 +5,11 @@
API. Since its initial release in 2015, there has been further development of
the code and it now differs from PCRE1 in more than just the API. There are new
features and the internals have been improved. The latest release of PCRE2 is
-always available in three alternative formats from:
+available in three alternative formats from:
-
ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre2-xxx.tar.gz
-
ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre2-xxx.tar.bz2
-
ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre2-xxx.zip
+
https://ftp.pcre.org/pub/pcre/pcre2-10.xx.tar.gz
+
https://ftp.pcre.org/pub/pcre/pcre2-10.xx.tar.bz2
+
https://ftp.pcre.org/pub/pcre/pcre2-10.xx.tar.zip
There is a mailing list for discussion about the development of PCRE (both the
original and new APIs) at pcre-dev@???. You can access the archives and
@@ -164,9 +164,11 @@
will be a compile time error. If in doubt, use --enable-jit=auto, which
enables JIT only if the current hardware is supported.
-. If you are enabling JIT under SELinux you may also want to add
- --enable-jit-sealloc, which enables the use of an execmem allocator in JIT
- that is compatible with SELinux. This has no effect if JIT is not enabled.
+. If you are enabling JIT under SELinux environment you may also want to add
+ --enable-jit-sealloc, which enables the use of an executable memory allocator
+ that is compatible with SELinux. Warning: this allocator is experimental!
+ It does not support fork() operation and may crash when no disk space is
+ available. This option has no effect if JIT is disabled.
. If you do not want to make use of the default support for UTF-8 Unicode
character strings in the 8-bit library, UTF-16 Unicode character strings in
Modified: code/trunk/doc/html/pcre2api.html
===================================================================
--- code/trunk/doc/html/pcre2api.html 2019-10-15 10:46:36 UTC (rev 1176)
+++ code/trunk/doc/html/pcre2api.html 2019-10-15 15:23:31 UTC (rev 1177)
@@ -3461,7 +3461,7 @@
Note that case forcing sequences such as \U...\E do not nest. For example,
the result of processing "\Uaa\LBB\Ecc\E" is "AAbbcc"; the final \E has no
effect. Note also that the PCRE2_ALT_BSUX and PCRE2_EXTRA_ALT_BSUX options do
-not apply to not apply to replacement strings.
+not apply to replacement strings.
</P>
<P>
The second effect of setting PCRE2_SUBSTITUTE_EXTENDED is to add more
Modified: code/trunk/doc/pcre2.txt
===================================================================
--- code/trunk/doc/pcre2.txt 2019-10-15 10:46:36 UTC (rev 1176)
+++ code/trunk/doc/pcre2.txt 2019-10-15 15:23:31 UTC (rev 1177)
@@ -3345,7 +3345,7 @@
Note that case forcing sequences such as \U...\E do not nest. For exam-
ple, the result of processing "\Uaa\LBB\Ecc\E" is "AAbbcc"; the final
\E has no effect. Note also that the PCRE2_ALT_BSUX and PCRE2_EX-
- TRA_ALT_BSUX options do not apply to not apply to replacement strings.
+ TRA_ALT_BSUX options do not apply to replacement strings.
The second effect of setting PCRE2_SUBSTITUTE_EXTENDED is to add more
flexibility to capture group substitution. The syntax is similar to
Modified: code/trunk/maint/ManyConfigTests
===================================================================
--- code/trunk/maint/ManyConfigTests 2019-10-15 10:46:36 UTC (rev 1176)
+++ code/trunk/maint/ManyConfigTests 2019-10-15 15:23:31 UTC (rev 1177)
@@ -28,6 +28,8 @@
# The -v option causes a call to 'pcre2test -C' to happen for each
# configuration.
+# Currently -fsanitize=undefined is not working (locks machine).
+
useasan=1
useusan=1
usedebug=1
@@ -293,9 +295,10 @@
opts="--disable-shared $enable_jit --enable-pcre2-16 --enable-pcre2-32"
runtest
fi
+# This also seems to be the case for sanitize undefined.
if [ $useusan -ne 0 ]; then
echo "------- Maximally configured test with -fsanitize=undefined -fno-sanitize=shift -fno-sanitize=alignment -std=gnu99 -------"
- CFLAGS="$OFLAGS $SAVECFLAGS -fsanitize=undefined -fno-sanitize=shift -fno-sanitize=alignment -std=gnu99"
+ CFLAGS="$OFLAGS $SAVECFLAGS -no-pie -fno-PIE -fsanitize=undefined -fno-sanitize=shift -fno-sanitize=alignment -std=gnu99"
echo "CFLAGS=$CFLAGS"
opts="--disable-shared $enable_jit --enable-pcre2-16 --enable-pcre2-32"
runtest