Skip to content

v1.3.0

Latest

Choose a tag to compare

@yoeunesyoeunes released this 12 Jan 20:51
· 25 commits to main since this release
770d114

Added

  • Transpiler API (Regex::transpile) with JavaScript and Python targets plus CLI/Symfony commands.
  • CLI graph command to export NFA diagrams (DOT/Mermaid).
  • Unicode-aware automata mode for /u patterns with code point literals, dot, and character class handling.
  • Effective alphabet optimization in DFA construction plus a new benchmark script for Unicode-heavy ranges.
  • RegexLanguageSolver facade factory plus DFA cache interfaces for reuse across automata comparisons.
  • Work-budget limits for automata processing via SolverOptions maxTransitionsProcessed.
  • Facade precompile hook for warm DFA caching in high-volume analyzers.

Changed

  • Automata-based analyzers now generate Unicode-aware examples when working with /u patterns.
  • CLI compare and Symfony route/security analyzers now use the facade and shared DFA caching.
  • Optimizer can optionally verify language equivalence with automata via verifyWithAutomata.

Fixed

  • Sort Symfony routes by specificity before conflict analysis to reduce false-positive overlaps.
  • Symfony access_control analysis now uses search semantics to match preg_match behavior and catch prefix shadowing.
  • Redundant character class detection now accounts for escaped literals (e.g. octal sequences).
  • Runtime /r modifier probing now avoids static modifier validation failures on PHP 8.2/8.4.

Full Changelog: v1.2.0...v1.3.0