Path to this page:
./
devel/pcre2,
Perl Compatible Regular Expressions library (major version 2)
Branch: CURRENT,
Version: 10.45,
Package name: pcre2-10.45,
Maintainer: pkgsrc-usersPCRE2 is a re-working of the original PCRE library to provide an entirely new
API.
PCRE2 is written in C, and it has its own API. There are three sets of
functions, one for the 8-bit library, which processes strings of bytes, one for
the 16-bit library, which processes strings of 16-bit values, and one for the
32-bit library, which processes strings of 32-bit values. There are no C++
wrappers.
Required to build:[
pkgtools/cwrappers]
Master sites:
Filesize: 2652.303 KB
Version history: (Expand)
- (2025-02-05) Updated to version: pcre2-10.45
- (2024-06-07) Updated to version: pcre2-10.44
- (2024-02-16) Updated to version: pcre2-10.43
- (2022-12-13) Updated to version: pcre2-10.42
- (2022-12-08) Updated to version: pcre2-10.41nb1
- (2022-12-07) Updated to version: pcre2-10.41
CVS history: (Expand)
2025-02-05 17:11:51 by Adam Ciarcinski | Files touched by this commit (4) |  |
Log message:
pcre2: updated to 10.45
Version 10.45 05-February-2025
------------------------------
This is a comparatively large release, incorporating new features, some
bugfixes, and a few changes with slight backwards compatibility implications.
Please see the ChangeLog and Git log for further details.
Only changes to behaviour, changes to the API, and major changes to the pattern
syntax are described here.
This release is the first to be available as a (signed) Git tag, or
alternatively as a (signed) tarball of the Git tag.
This is also the first release to be made by the new maintainers of PCRE2, and
we would like to thank Philip Hazel, creator and maintainer of PCRE and PCRE2.
* (Git change) The sljit project has been split out into a separate Git
repository. Git users must now run `git submodule init; git submodule update`
after a Git checkout.
* (Behaviour change) Update Unicode support to UCD 16.
* (Match behaviour change) Case-insensitive matching of Unicode properties
Ll, Lt, and Lu has been changed to match Perl. Previously, /\p{Ll}/i would
match only lower-case characters (even though case-insensitive matching was
specified). This also affects case-insensitive matching of POSIX classes such
as [:lower:].
* (Minor match behaviour change) Case-insensitive matching of backreferences now
respects the PCRE2_EXTRA_CASELESS_RESTRICT option.
* (Minor pattern syntax change) Parsing of the \x escape is stricter, and is
no longer parsed as an escape for the NUL character if not followed by '{' or
a hexadecimal digit. Use \x00 instead.
* (Major new feature) Add a new feature called scan substring. This is a new
type of assertion which matches the content of a capturing block to a
sub-pattern.
Example: to find a word that contains the rare (in English) sequence of
letters "rh" not at the start:
\b(\w++)(*scan_substring:(1).+rh)
The first group captures a word which is then scanned by the
(*scan_substring:(1) ... ) assertion, which tests whether the pattern \
".+rh"
matches the capture group "(1)".
* (Major new feature) Add support for UTS#18 compatible character classes,
using the new option PCRE2_ALT_EXTENDED_CLASS. This adds '[' as a
metacharacter within character classes and the operators '&&', '--' \
and '~~',
allowing subtractions and intersections of character classes to be easily
expressed.
Example: to match Thai or Greek letters (but not letters or other characters
in those scripts), use [\p{L}&&[\p{Thai}||\p{Greek}]].
* (Major new feature) Add support for Perl-style extended character classes,
using the syntax (?[...]). This also allows expressing subtractions and
intersections of character classes, but using a different syntax to UTS#18.
Example: to match Thai or Greek letters (but not letters or other characters
in those scripts), use (?[\p{L} & (\p{Thai} + \p{Greek})]).
* (Minor feature) Significant improvements to the character class match engine.
Compiled character classes are now more compact, and have faster matching
for large or complex character sets, using binary search through the set.
* JIT compilation now fails with the new error code PCRE2_ERROR_JIT_UNSUPPORTED
for patterns which use features not supported by the JIT compiler.
* (Minor feature) New options PCRE2_EXTRA_NO_BS0 (disallow \0 as an escape for
the NUL character); PCRE2_EXTRA_PYTHON_OCTAL (use Python disambiguation rules
for deciding whether \12 is a backreference or an octal escape);
PCRE2_EXTRA_NEVER_CALLOUT (disable callout syntax entirely);
PCRE2_EXTRA_TURKISH_CASING (use Turkish rules for case-insensitive matching).
* (Minor feature) Add new API function pcre2_set_optimize() for controlling
which optimizations are enabled.
* (Minor new features) A variety of extensions have been made to
pcre2_substitute() and its syntax for replacement strings. These now support:
\123 octal escapes; titlecasing \u\L; \1 backreferences; \g<1> and \
$<NAME>
backreferences; $& $` $' and $_; new function
pcre2_set_substitute_case_callout() to allow locale-aware case transformation.
|
2024-06-07 22:35:50 by Adam Ciarcinski | Files touched by this commit (3) |  |
Log message:
pcre2: updated to 10.44
PCRE2-10.44
This is mostly a bug-fix and tidy-up release. An explicit limit can now be set \
on the size of a compiled pattern.
|
2024-02-16 18:51:22 by Adam Ciarcinski | Files touched by this commit (3) |  |
Log message:
pcre2: updated to 10.43
PCRE2-10.43
There are a lot of changes in this release. Those that are not just bugfixes or \
source tidies are described in the NEWS file and there is more information in \
ChangeLog. Note that JIT support for Armv5 is withdrawn in this release. There \
have only been minor changes since 10.43-RC1.
|
2022-12-13 08:21:49 by Adam Ciarcinski | Files touched by this commit (3) |  |
Log message:
pcre2: updated to 10.42
Version 10.42 11-December-2022
------------------------------
1. Change 19 of 10.41 wasn't quite right; it put the definition of a default,
empty value for PCRE2_CALL_CONVENTION in src/pcre2posix.c instead of
src/pcre2posix.h, which meant that programs that included pcre2posix.h but not
pcre2.h failed to compile.
2. To catch similar issues to the above in future, a new small test program
that includes pcre2posix.h but not pcre2.h has been added to the test suite.
3. When the -S option of pcre2test was used to set a stack size greater than
the allowed maximum, the error message displayed the hard limit incorrectly.
This was pointed out on GitHub pull request 171, but the suggested patch
didn't cope with all cases. Some further modification was required.
4. Supplying an ovector count of more than 65535 to pcre2_match_data_create()
caused a crash because the field in the match data block is only 16 bits. A
maximum of 65535 is now silently applied.
5. Merged @carenas patch 175 which fixes 86 - segfault on aarch64 (ARM),
|
2022-12-08 11:30:48 by Adam Ciarcinski | Files touched by this commit (3) |
Log message:
pcre2: fix for https://github.com/PCRE2Project/pcre2/issues/173
|
2022-12-06 21:46:24 by Adam Ciarcinski | Files touched by this commit (4) |  |
Log message:
pcre2: updated to 2.10.41
PCRE2-10.41
Mainly bug fixes and tidies; pcre2grep has been made more like GNU grep for \
multiple patterns that match more than once on a line.
|
2022-09-14 11:35:01 by Thomas Klausner | Files touched by this commit (2) |
Log message:
pcre2: disable JIT by default on NetBSD
See
https://mail-index.netbsd.org/pkgsrc-users/2022/09/11/msg036184.html
for more details.
Bump PKGREVISION.
|
2022-04-20 22:14:48 by Thomas Klausner | Files touched by this commit (2) |  |
Log message:
pcre2: update to 10.40.
Version 10.40 15-April-2022
---------------------------
This is mostly a bug-fixing and code-tidying release. However, there are some
extensions to Unicode property handling:
* Added support for Bidi_Class and a number of binary Unicode properties,
including Bidi_Control.
* A number of changes to script matching for \p and \P:
(a) Script extensions for a character are now coded as a bitmap instead of
a list of script numbers, which should be faster and does not need a
loop.
(b) Added the syntax \p{script:xxx} and \p{script_extensions:xxx} (synonyms
sc and scx).
(c) Changed \p{scriptname} from being the same as \p{sc:scriptname} to being
the same as \p{scx:scriptname} because this change happened in Perl at
release 5.26.
(d) The standard Unicode 4-letter abbreviations for script names are now
recognized.
(e) In accordance with Unicode and Perl's "loose matching" rules, spaces,
hyphens, and underscores are ignored in property names, which are then
matched independent of case.
|