Skip to content

Bump mojo-regex from 0.10.0 to 0.11.0#255

Open
msaelices wants to merge 9 commits intomodular:mainfrom
msaelices:regex-0.11.0-bump
Open

Bump mojo-regex from 0.10.0 to 0.11.0#255
msaelices wants to merge 9 commits intomodular:mainfrom
msaelices:regex-0.11.0-bump

Conversation

@msaelices
Copy link
Copy Markdown
Contributor

@msaelices msaelices commented Apr 15, 2026

Bumps mojo-regex from 0.10.0 to 0.11.0.

Changes since 0.10.0

  • #140: OnePass NFA engine for $-anchored patterns. phone_validation ^\+?1?[\s.-]?\(?([2-9]\d{2})\)?[\s.-]?([2-9]\d{2})[\s.-]?(\d{4})$ (5x median): 1.76 us → 0.25 us (6.92x faster). Full bench geom 1.09x across 80 benchmarks.
  • #139: Single-byte required-literal memchr prefilter for findall. sparse_email_findall ~160x faster (199 us → 1.25 us, was 167x slower than Rust, now within 5%); simple_phone 4.4x; full bench geom 1.32x.
  • #138: Two-way unroll of count_consecutive_matches SIMD loops (range_lowercase 7.77x faster, range_alphanumeric 3.1x faster, range_digits 1.4x; via @always_inline helpers)
  • #137: --dev and --filter flags for bench_engine, plus CLAUDE.md / BENCHMARKING_GUIDE.md docs (fast dev iteration: full bench ~4 min -> ~8 s)
  • #136: Inline match_next dispatchers + pre-allocate MatchList in findall (sub() 8/0 wins 1.28x geom; top: deep_nested_groups 2.95x, complex_group_5_children 1.70x, simple_phone 1.60x)
  • #135: Precompute pattern properties, eliminate string ops from match paths (nanpa_search 17.9x faster)
  • #133: Use ref instead of copy for ASTNode in NFA match methods (findall 2.6-2.9x faster, free functions 1.6x faster)
  • #132: Fix lazy DFA $ anchor bug, apply cache pointer to all free functions
  • #127: Eliminate CompiledRegex copy in sub() via cache pointer lookup (33x faster per call)
  • #126: Multi-range SIMD scan for [a-zA-Z0-9]+ patterns (9x faster)
  • #124: Increase PikeVM MAX_STATES to 512, enabling lazy DFA for NANPA patterns
  • #122: Cache DFA dispatch + inline LazyDFA helpers
  • #121: Fix UInt8 overflow for patterns with >255 AST nodes
  • #119: Skip dead _create_range_matcher indirection
  • #118: Fix 3+ way alternation with character classes failing to match

Benchmark summary

Recipe changes:

  • version: 0.10.0 -> 0.11.0
  • rev: pinned to dc3e955

@msaelices msaelices changed the title Bump mojo-regex from 0.9.0 to 0.11.0 Bump mojo-regex from 0.10.0 to 0.11.0 Apr 15, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants