Repository navigation
chore(deps): update rust crate fancy-regex to 0.20.0 - #15715
renovate[bot] wants to merge 1 commit into
Conversation
Merging this PR will degrade performance by 3.39%1 warning, 1 note
Warning Please fix the performance issues or acknowledge them on CodSpeed. Performance Changes
Tip Investigate this regression by commenting Comparing Footnotes
|
|
Duplicate of #15846. |
Renovate Ignore NotificationBecause you closed this PR without merging, Renovate will ignore this update ( If you accidentally closed this PR, or if you changed your mind: rename this PR to get a fresh replacement PR. |
This PR contains the following updates:
0.19.2→0.20.0Release Notes
fancy-regex/fancy-regex (fancy-regex)
v0.20.0Compare Source
Added
RegexOptionsBuilder::build_delegate_prefilterto disable building the prefilter (#282)RegexOptionsBuilder::start_bytesthat returns the first bytes that can match a pattern so you can build your own prefilter (#282)RegexOptionsBuilder::required_bytesthat returns the required bytes for a pattern to match (#287)RegexOptionsBuilder::max_prog_size/RegexBuilder::max_prog_sizeto cap the number of VM instructions emitted while compiling. Subroutine calls are inlined at compile time, so a self- or mutually-recursive pattern can expand without bound even while the recursion-depth cap is respected; this bounds the emitted instruction vector instead. Exceeding the cap returnsCompileError::PatternTooComplex. Disabled by default. (#298)delegate_size_limitanddelegate_dfa_size_limit. (#286, #309)RegexOptionsBuilder::delegate_dfa_skip_cache_capacity_check/RegexBuilder::delegate_dfa_skip_cache_capacity_check, enabled by default. Setting it tofalsemakes the reverse DFA of a variable-length lookbehind strictly honourdelegate_dfa_size_limit, so a too-small limit becomes a compile error. (#309)ByteSet::is_subsetto test whether one byte set is a subset of another. (#289)Changed
\b,\B,\<,\>) are no longer marked hard outside a lookbehind. regex-automata supports them, so a pattern like\b(?:foo|bar|baz)\bnow compiles to a single delegated engine instead of one branch per alternative — previously it grew linearly with the number of alternatives. They remain hard inside a lookbehind, since regex-automata's reverse DFA can't run a variable-length lookbehind on unicode haystacks. The half-boundary variants (\<half,\>half) and\Zare still always hard.Regex::capture_namesreports the name for each of them, and named backrefs resolve to the last group with that name (#177)Fixed
delegate_dfa_size_limit(or the default of 2 MiB); for example(?<=\p{L}{99,100})xfailed to compile with default settings. The capacity is now rounded up to the minimum required. Ordinary delegates were not affected because the meta engine falls back to another engine when the lazy DFA cannot be built. (#309)delegate_dfa_size_limitnow sets the lazy DFA cache capacity (hybrid_cache_capacity) as documented, instead of the fully compiled DFA size limit. It had been forwarded to the wrong regex-automata option since the switch from theregexcrate. (#307)\xHHescapes above0x7Fnow match the Unicode codepoint (as UTF-8 bytes) instead of the raw byte, so e.g.\xFFmatchesÿrather than the byte0xFF. In bytes modes the raw byte is matched as before. (#292)(?i)[à-ÿ]), which previously could miss candidate start positions. (#296)^/$and their multi-line variants matching at the start/end of arbitrary-byte haystacks inAsciiandUnicodeBytesbytes modes, where the match position was not a UTF-8 codepoint boundary. (#300)(a)?b(?(1)c)no longer fails to matchb. (#304)(?<=(\w+)\1)xonééx). (#310)Configuration
📅 Schedule: (UTC)
🚦 Automerge: Disabled by config. Please merge this manually once you are satisfied.
♻ Rebasing: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox.
🔕 Ignore: Close this PR and you won't be reminded about this update again.
This PR was generated by Mend Renovate. View the repository job log.