Changelog for libpcre2-16-0-10.32-37.1.x86_64.rpm :
Wed Jan 23 13:00:00 2019 Bernhard Wiedemann
- Do not run profiling in parallel for reproducible builds (boo#1040589)

Mon Jan 14 13:00:00 2019
- Mark all license files as %license

Tue Dec 11 13:00:00 2018 Cristian Rodríguez
- Build with --enable-jit-sealloc option, otherwise when
selinux is enabled or systemd memory protections are on,
programs will fail to work with execmem violations.

Thu Oct 25 14:00:00 2018
- pcre2 10.32:

* pcre2grep now supports the inclusion of binary zeros in
patterns that are read from files via the -f option.

* In pcre2_dfa_match(), internal recursive calls no longer use
the stack for local workspace and local ovectors

* Updated to Unicode version 11.0.0.

* (
*FAIL:ARG), and (
*COMMIT:ARG) are now supported.

* Add support for \\N{U+dddd}, but only in Unicode mode.

* Addesupport for (?^) to unset all imnsx options

Fri Jul 20 14:00:00 2018
- Drop conditions for old distributions
- Do profile guided build

Sun Feb 18 13:00:00 2018
- Update to new upstream release 10.31

* New pcre2_config() options: PCRE2_CONFIG_NEVER_BACKSLASH_C and

* New pcre2_pattern_info() option PCRE2_INFO_EXTRAOPTIONS to
retrieve the extra compile time options.

* Public names for all pcre2_compile() error numbers.

bits to a new field callout_flags in callout blocks.
- use https for main site
- cleanup with spec-cleaner

Mon Sep 11 14:00:00 2017
- Update to new upstream release 10.30

* The main interpreter, pcre2_match(), has been refactored into
a new version that does not use recursive function calls for
remembering backtracking positions. The new implementation
allows backtracking into recursive group calls in patterns,
making it more compatible with Perl. For patterns that have a
lot of backtracking, the heap is now used, and there is
explicit limit on the amount, settable by
pcre2_set_heap_limit(). The \"recursion limit\" is retained,
but is renamed as \"depth limit\".

* The new option PCRE2_ENDANCHORED insists that a pattern match
must end at the end of the subject.

* The new option PCRE2_EXTENDED_MORE implements Perl\'s /xx
feature, and pcre2test is upgraded to support it. Setting
within the pattern by (?xx) is Also supported.

* (?n) can be used to set PCRE2_NO_AUTO_CAPTURE, because Perl
now has this.

* Additional pattern compile options in the compile context are

* The newline type PCRE2_NEWLINE_NUL is now available.

* The match limit value now also applies to pcre2_dfa_match()
as there are patterns that can use up a lot of resources
without necessarily recursing very deeply.

* Various minor security fixes found by fuzzers:
+ bsc#1037165: crash for forward reference in lookbehind with
+ CVE-2017-8786: heap-based buffer overflow write in pcre2test
+ CVE-2017-7186: DoS by triggering an invalid Unicode property
lookup (bsc#1030066)
- Switch source URLs to use HTTP.

Sat Aug 5 14:00:00 2017
- fix SLE 11 build

Tue May 2 14:00:00 2017
- pcre2grep can now read .gz and .bz2 files directly
- pcre2test is now built to support line editing

Thu Feb 16 13:00:00 2017
- pcre2 10.23:

* major re-factoring of the pcre2_compile.c file

* Back references are now permitted in lookbehind assertions when
there are no duplicated group numbers (that is, (?| has not
been used), and, if the reference is by name, there is only one
group of that name. The referenced group must, of course be of
fixed length.

* \\g{+} (e.g. \\g{+2} ) is now supported. It is a \"forward
back reference\" and can be useful in repetitions
(compare \\g{-} ). Perl does not recognize this syntax.

* pcre2grep now automatically expands its buffer up to a maximum
set by --max-buffer-size.

* The -t option (grand total) has been added to pcre2grep.

* A new function called pcre2_code_copy_with_tables() exists to
copy a compiled pattern along with a private copy of the
character tables that is uses.

Tue Feb 7 13:00:00 2017
- Explicitly package %{_docdir}/%{name} to fix build with RPM 4.13.

Mon Aug 1 14:00:00 2016
- pcre2 10.22:

* The POSIX wrapper function regcomp() did not used to
support back references and subroutine calls if called with the
REG_NOSUB option. It now does.

* A new function, pcre2_code_copy(), is added, to make a copy of a
compiled pattern.

* Support for string callouts is added to pcre2grep.

* Added the PCRE2_NO_JIT option to pcre2_match().

* The pcre2_get_error_message() function now returns with a
negative error code if the error number it is given is unknown.

* Several updates have been made to pcre2test and test scripts

* Fix CVE-2016-3191: workspace overflow for (
*ACCEPT) with deeply
nested parentheses (boo#971741)

Sun Jan 17 13:00:00 2016
- Update to new upstream release 10.21

* Improve JIT matching speed of patterns starting with + or

* Use memchr() to find the first character in an unanchored match
in 8-bit mode in the interpreter. This gives a significant speed

* 10.20 broke the handling of [[:>:]] and [[:<:]] in that
processing them could involve a buffer overflow if the
following character was an opening parenthesis.

* 10.20 also introduced a bug in processing this pattern:
*:0))#(?\'/, which was fixed.

* A callout with a string argument containing an opening square
bracket, for example /(?C$[$)(?<]/, was incorrectly processed and
could provoke a buffer overflow.

* A possessively repeated conditional group that could match an empty
string, for example, /(?(R))
*+/, was incorrectly compiled.

* The Unicode tables have been updated to Unicode 8.0.0.

* An empty comment (?#) in a pattern was incorrectly processed and
could provoke a buffer overflow.

* Fix infinite recursion in the JIT compiler when certain patterns
/such as (?:|a|){100}x/ are analysed.

* Some patterns with character classes involving [: and \\\\ were
incorrectly compiled and could cause reading from uninitialized
memory or an incorrect error diagnosis. Examples are:
/[[:\\\\](?<[::]/ and /[[:\\\\](?\'abc\')[a:].

* A missing closing parenthesis for a callout with a string argument
was not being diagnosed, possibly leading to a buffer overflow.

* If (?R was followed by - or + incorrect behaviour happened instead
of a diagnostic.

* Fixed an issue when \\p{Any} inside an xclass did not read the current

* About 80 more fixes, which you can read about in the ChangeLog
shipped with the libpcre2-8-0 package.

Tue Jul 14 14:00:00 2015
- PCRE2 10.20:

* Callouts with string arguments and the
pcre2_callout_enumerate() function have been implemented.

* The PCRE2_NEVER_BACKSLASH_C option, which locks out the use of
\\C, is added.

* The PCRE2_ALT_CIRCUMFLEX option lets ^ match after a newline at
the end of a subject in multiline mode.

* The way named subpatterns are handled has been refactored. The
previous approach had several bugs.

* The handling of \\c in EBCDIC environments has been changed to
conform to the perlebcdic document. (Incompatible change)

* Bugs have been mended, many of them discovered by fuzzers.

Thu Jun 18 14:00:00 2015
- PCRE2, a re-working of the original PCRE library to provide an
entirely new API, version 10.10. Not source compatible.
- copy of the pcre package, with the following adjustments:

* required name changes

* adjust pcre-8.21-multilib.patch to pcre2-10.10-multilib.patch

* drop upstreamed pcre-8.32-visibility.patch

* --enable-{utf8,unicode-properties} became --enable-unicode

* drop cpp subpackage

* make test -> check

* enable 32 bit character support

Thu Apr 30 14:00:00 2015
- pcre 8.37:

* CVE-2015-2325: Patterns with certain groups specifying a zero
minimum quantifier caused incorrect code to be compiled,
leading to an incorrect memory read. [boo#924960]

* CVE-2015-2326: Specific patterns containing a forward reference
with subroutine calls caused incorrect code to be compiled

* CVE-2014-8964: If an assertion condition was quantified with a
minimum of zero, SIGSEGV or other misbehaviour could occur.

* further bug fixes as listed in ChangeLog

Mon Mar 9 13:00:00 2015
- Update to version 3.16

* This is primarily a bug-fix release.

* The Unicode data tables have been updated to Unicode 7.0.0.
- Remove pcre-commit1472.patch; fixed on upstream release
- Remove obsolete \"Obsoletes\" tag

Tue Sep 2 14:00:00 2014
- Improve on RPM group classification
- Remove defunct %gpg_verify (replaced by source validators),
defunct freecode link

Thu Aug 28 14:00:00 2014
- Harden build with full RELRO as this libraries end linked
to at least one setuid root executable.

Mon Jun 16 14:00:00 2014
- Enable JIT on ppc64le as well

Sat May 3 14:00:00 2014
- update to 0.35:
There have been performance improvements for classes containing non-ASCII
characters and the \"auto-possessification\" feature has been extended. Other
minor improvements have been implemented and bugs fixed. There is a new callout
feature to enable applications to do detailed stack checks at compile time, to
avoid running out of stack for deeply nested parentheses. The JIT compiler has
been extended with experimental support for ARM-64, MIPS-64, and PPC-LE.
- add pcre-commit1472.patch from SVN to work with gcc49, see

Sun Mar 23 13:00:00 2014
- Add automake and autoconf as explicit deps as we run autoreconf

Sun Mar 23 13:00:00 2014
- Add patch pcre-8.21-multilib.patch to fix RPATH issues.

* The patch is taken from RedHat.

Sun Mar 23 13:00:00 2014
- Clean up with the spec cleaner. Use -j1 in tests as it is not
really thread safe

Sun Mar 23 13:00:00 2014
- Version bump to 8.34:

* warning fixes

* perl fixes

* unocode6.3.0 support

* gconv support

Wed Nov 13 13:00:00 2013
- enable tests for all archs
- --enable-jit for sparc

Thu Jun 13 14:00:00 2013
- Update to new upstream release 8.33

* The Just-In-Time compiler (JIT) now supports all pattern
features, including callouts and the backtracking verbs. In
addition, some bugs are fixed and there are minor performance
- More robust make install call. Provide signature verification
files (avoid depending on gpg-offline due to bootstrap cycle).

Sat Jun 8 14:00:00 2013
- Ensure the PCRE library and tools are built with large file
support in 32 bit archs.

Sun Jan 6 13:00:00 2013
- Update to 8.32 version:

* There is now support for 32-bit character strings and UTF-32. Like the
16-bit support, this is done by compiling a separate 32-bit library.

* \\X now matches a Unicode extended grapheme cluster.

* Case-independent matching of Unicode characters that have more than one
\"other case\" now makes all three (or more) characters equivalent. This
applies, for example, to Greek Sigma, which has two lowercase versions.

* Unicode character properties are updated to Unicode 6.2.0.

* The EBCDIC support, which had decayed, has had a spring clean.

* A number of JIT optimizations have been added, which give faster JIT
execution speed. In addition, a new direct interface to JIT execution is
available. This bypasses some of the sanity checks of pcre_exec() to give a
noticeable speed-up.

* A number of issues in pcregrep have been fixed, making it more compatible
with GNU grep. In particular, --exclude and --include (and variants) apply
to all files now, not just those obtained from scanning a directory
recursively. In Windows environments, the default action for directories is
now \"skip\" instead of \"read\" (which provokes an error).

* If the --only-matching (-o) option in pcregrep is specified multiple
times, each one causes appropriate output. For example, -o1 -o2 outputs the
substrings matched by the 1st and 2nd capturing parentheses. A separating
string can be specified by --om-separator (default empty).

* When PCRE is built via Autotools using a version of gcc that has the
\"visibility\" feature, it is used to hide internal library functions that are
not part of the public API.
- updated and versionned pcre-visibility.patch to svn trunk

* Modifications on and makefile have been merged on upstream release

Fri Nov 23 13:00:00 2012
- Update package descriptions about the differences between the
PCRE library subpackages.

Wed Nov 7 13:00:00 2012
- Use the --enable-pcre16 configure flag.
This switch enables 16 bit character support that will be required by Qt5

Fri Aug 17 14:00:00 2012
- Upate to version 8.31:
+ The JIT compiler now supports partial matching and the (
and (
*COMMIT) verbs
+ PCRE_INFO_MAXLOOKBEHIND can be used to find the longest
lookbehing in a pattern.
+ There should be a performance improvement when using the heap
instead of the stack for recursion
+ pcregrep can now be linked with libedit as an alternative to
+ pcregrep now has a --file-list option where the list of files
to scan is given as a file
+ pcregrep now recognizes binary files and there are related
+ The Unicode tables have been updated to 6.1.0
- Rebase pcre-visibility.patch.

Thu Jul 19 14:00:00 2012
- Only use --enable-jit on supported architectures; the build will
otherwise fail (e.g. on sparc).

Thu May 10 14:00:00 2012
- Add devel-static package

Tue Feb 7 13:00:00 2012
- fix baselibs

Tue Feb 7 13:00:00 2012
- Update to PCRE 8.30, upstream SONAME bump, libpcre1
- Drop no longer needed ppc patch.
- move library back to %{_libdir}

Wed Feb 1 13:00:00 2012
- Fix cache-flush on PPC

Wed Nov 16 13:00:00 2011
- add libtool as buildrequire to avoid implicit dependency

Tue Nov 1 13:00:00 2011
- Update to version 8.20

* too many fixes to list here, see included ChangeLog

* replace pcre-visibility patch with the one I submitted to
upstream for inclusion.

Tue Oct 11 14:00:00 2011
- udpate to 8.13:

* too many fixes to list here, see included ChangeLog

* the Unicode data tables have been updated to Unicode 6.0.0.

Mon Sep 19 14:00:00 2011
- remove fragile _service

Wed Mar 9 13:00:00 2011
- Update to version 8.12

* This release fixes some bugs in pcregrep, one of which caused the tests to fail
on 64-bit big-endian systems. There are no changes to the code of the library.
- Update to version 8.11

* A number of bugs in the library and in pcregrep have been fixed. As always, see
ChangeLog for details. The following are the non-bug-fix changes:
Added --match-limit and --recursion-limit to pcregrep.
Added an optional parentheses number to the -o and --only-matching options
of pcregrep.
Changed the way PCRE_PARTIAL_HARD affects the matching of $, \\z, \\Z, \\b, and
Added PCRE_ERROR_SHORTUTF8 to make it possible to distinguish between a
bad UTF-8 sequence and one that is incomplete when using PCRE_PARTIAL_HARD.
Recognize (
*NO_START_OPT) at the start of a pattern to set the PCRE_NO_
START_OPTIMIZE option, which is now allowed at compile time

Sat Oct 30 14:00:00 2010
- Support GCC visibility, symbol clashes no more.

Sun Sep 19 14:00:00 2010
- Update to version 8.10:
+ Major additions:
- support for (
*MARK) and friends
- PCRE_UCP option, which changes the behaviour of \\b, \\d, \\s,
and \\w (and their opposites) so that they make use of Unicode
+ Other additions:
- support for \\N, which always matches any character other than
- added --line-buffered to pcregrep
+ Several small new features and bugfixes
- Changes from version 8.02:
+ Update Unicode data tables to Unicode 5.2.0
+ Update the licensing terms in the pcregexp.pas file
+ Several bug fixes
- Changes from version 8.01:
+ Several bug fixes and build system improvements
- Changes from version 8.00:
+ Enhancements:
- remove restrictions on patterns used for partial matching
- give extra information for partial matches
- improve the partial matching process
- add option to make a partial match override a full match
- enhance \"study\" process by finding a lower bound matching
- groups with duplicate numbers may now have duplicated names
without the use of PCRE_DUPNAMES, but they may not have
different names
- add REG_UNGREEDY to the pcreposix interface, which maps to
+ Several bug fixes
- Drop pcre-7.9.patch: fixed upstream.
- Rearrange spec file to have all the %files sections together, as
well as all the scriptlets together.
- Kill the main package that only included doc files like AUTHORS,
NEWS, and license, and put those files in libpcre0: this really
makes more sense. Therefore, make libpcre0 Provides/Obsoletes
- We can also remove the other dependencies on the main package,
since everything already depends on libpcre0.
- Remove AutoReqProv: it\'s default now.
- Remove references to perl 5.005 in descriptons: it\'s not
mentioned anywhere anymore upstream.

Mon Jun 28 14:00:00 2010
- use %_smp_mflags

Sat Apr 24 14:00:00 2010
- buildrequire pkg-config to fix provides

Thu Feb 25 13:00:00 2010
- build noarch docs only for >= 11.2

Wed Feb 10 13:00:00 2010
- fixed license statement according to the conversation
and permissions granted in (bnc #578724)

Sat Dec 12 13:00:00 2009
- add baselibs.conf as a source
- package documentation as noarch

Wed Oct 7 14:00:00 2009
- add obsolete/provides for pcre-32bit (bnc#539543)

Wed Jun 10 14:00:00 2009
- split package into tools, docs and libraries

Fri Jun 5 14:00:00 2009
- disable static libraries, shouldn\'t be used now

Sat May 30 14:00:00 2009
- fix symlinks to libpcre and libpcreposix to fix the build

Wed May 27 14:00:00 2009
- moved libpcre and libpcreposix to %{_lib} (bnc #507449)

Tue May 5 14:00:00 2009
- Release 7.9 11-Apr-09 (bnc #500734)
Mostly bugfixes and tidies with just a couple of minor
functional additions.