Changelog

Version 1.1.0

  • Improved regular-expression compilation by using dense compiler storage, reusing known capacities, and moving generated program segments instead of repeatedly copying them.

  • Improved matching performance with cached category masks for ASCII characters, reduced counter comparisons, and a more efficient priority-preserving work stack.

  • Reduced pattern parsing overhead by validating UTF input and enforcing the configured character limit during decoding instead of performing a separate pre-scan.

  • Reduced hot-path overhead for internal checks and bytecode reads while retaining safety validation and debug diagnostics.

  • Added focused regression coverage for parser boundaries, category lookup, counter metadata, execution-state comparison, work priority and atomic pruning, program appending, and compiler traversal.

  • Preserved the public API, regular-expression syntax, capture behavior, generated bytecode semantics, and existing resource limits.

Version 1.0.1

  • Fixed capture-group manager construction to use the correct number of groups.

  • Improved build tooling and portability across supported compilers.

  • Updated the source code to the latest Erbsland C++ style.

Version 1.0.0

  • Initial public release.