I have just put a release candidate for 10.23 here:
ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/Testing/pcre2-10.23-RC1.tar.gz
ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/Testing/pcre2-10.23-RC1.tar.bz2
ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/Testing/pcre2-10.23-RC1.zip
There are the usual bug fixes and two minor extensions (see NEWS). The
main change, however, is a seriously large refactoring of the
pcre2_compile() function. This was overdue after nearly 20 years of
hacking development because the code had got very messy and hard to
understand in places. The output from pcre2_compile() should be
identical to what it was before, but the internals are cleaner and some
unnecessary duplication has been got rid of. It seems to run slightly
faster too, which is a bonus. Since the code was first committed to the
repository it has been tested a lot by fuzzers (and bugs have been
fixed), so I believe it is in good shape. Nevertheless, as there has
been so much change, I'd be grateful if as many people as possible could
run tests in the next few weeks.
ADVANCE HEADS-UP: Once 10.23 is out and settled, I'll be integrating
work I'm doing on pcre2_match() - a similar large tidying up and
refactoring. The new code no longer uses the system stack for
remembering backtracking points by recursive function calls (this has
been the cause of many issues over the years). Using a private "stack"
will make it possible to be more Perl-compatible in several ways,
including backtracking into recursions in the pattern. All this is
planned for a subsequent release in about 6 months time. I'll probably
call it 10.30 because there will be some noticeable changes.
Philip
--
Philip Hazel