Path to this page:
Subject: CVS commit: pkgsrc/devel/re2c
From: Thomas Klausner
Date: 2023-08-24 14:25:32
Message id: 20230824122532.2BB06FBDB@cvs.NetBSD.org
Log Message:
re2c: update to 3.1.
3.1 (2023-07-19)
~~~~~~~~~~~~~~~~
- Added capturing groups with leftmost greedy semantics:
+ Enabled with ``--leftmost-captures`` option or ``re2c:leftmost_captures``
configuration
- Added non-capturing groups:
+ Added new syntax ``(! ...)`` for non-capturing groups
+ Added the ability to flip defaults: make ``(...)`` capturing and ``(! ...)``
non-capturing with ``--invert-captures`` option or ``re2c:invert_captures``
configuration
- Regenerated Unicode include header to support a newer standard
- Published TDFA paper: https://arxiv.org/abs/2206.01398, co-authored with
Angelo Borsotti
- Removed experimental algorithms that are superseded by TDFA(1) and
generally less efficient:
+ Removed staDFA algorithm and deprecated ``--stadfa`` option
+ Removed TDFA(0) algorithm and deprecated ``--no-lookahead`` option
+ (libre2c) Removed backward-matching algorithm
+ (libre2c) Removed Kuklewicz POSIX disambiguation algorithm
+ (libre2c) Removed GTOP shortest path finding algorithm
- Bug fixes:
+ Fixed parsing of raw UTF-8 characters in Flex compatibility mode
+ Added header file to the dependencies generated with ``--depfile`` option
+ Fixed stack overflow on large regular expressions by rewriting recursive
functions in iterative form
and limited stack to 256K on GithubActions CI
- Build system:
+ Added minimal http://bazel.build integration
+ Added configure option ``--enable-parsers`` that regenerates bison parsers
+ Added CMake option ``RE2C_REBUILD_PARSERS``
+ With CMake, fixed documentation generation on Windows.
- Codebase improvements:
+ Moved the entire codebase to C++11.
+ Added uniform error handling (return codes are now properly checked and
returned to the caller).
+ Reorganized codegen subsystem in four well-defined phases (analyze,
generate, fixup, render) and separated codegen from parsing phase.
+ Improved memory allocation by using slab allocators instead of global free
lists.
+ Moved to pure API for bison parsers.
+ Unified code style.
- Testing:
+ Added ``--verbose`` flag to run_tests.py and suppressed verbose output by
default.
+ Multiple improvements of continuous testing with GithubActions.
Files: