Sourced from regex's changelog.
1.10.0 (2023-10-09)
This is a new minor release of
regex
that adds support for start and end word boundary assertions. That is,\<
and\>
. The minimum supported Rust version has also been raised to 1.65, which was released about one year ago.The new word boundary assertions are:
\<
or\b{start}
: a Unicode start-of-word boundary (\W|\A
on the left,\w
on the right).\>
or\b{end}
: a Unicode end-of-word boundary (\w
on the left,\W|\z
on the right)).\b{start-half}
: half of a Unicode start-of-word boundary (\W|\A
on the left).\b{end-half}
: half of a Unicode end-of-word boundary (\W|\z
on the right).The
\<
and\>
are GNU extensions to POSIX regexes. They have been added to theregex
crate because they enjoy somewhat broad support in other regex engines as well (for example, vim). The\b{start}
and\b{end}
assertions are aliases for\<
and\>
, respectively.The
\b{start-half}
and\b{end-half}
assertions are not found in any other regex engine (although regex engines with general look-around support can certainly express them). They were added principally to support the implementation of word matching in grep programs, where one generally wants to be a bit more flexible in what is considered a word boundary.New features:
- [FEATURE #469](rust-lang/regex#469): Add support for
\<
and\>
word boundary assertions.- [FEATURE(regex-automata) #1031](rust-lang/regex#1031): DFAs now have a
start_state
method that doesn't use anInput
.Performance improvements:
- [PERF #1051](rust-lang/regex#1051): Unicode character class operations have been optimized in
regex-syntax
.- [PERF #1090](rust-lang/regex#1090): Make patterns containing lots of literal characters use less memory.
Bug fixes:
- [BUG #1046](rust-lang/regex#1046): Fix a bug that could result in incorrect match spans when using a Unicode word boundary and searching non-ASCII strings.
- [BUG(regex-syntax) #1047](rust-lang/regex#1047): Fix panics that can occur in
Ast->Hir
translation (not reachable fromregex
crate).
... (truncated)
2cbd342
1.10.026d8e3a
deps: bump regex-automata to 0.4.0dc0d79e
regex-automata-0.4.068b7018
deps: bump regex-syntax to 0.8.0ea8f6c0
regex-syntax-0.8.0aabbfe0
regex-lite-0.1.12c44e2a
fuzz: add regression test for AST roundtripping3feff9e
automata: improve sparse DFA validation914198f
regex: reject large patterns when fuzzingfc9a11a
lite: reduce size limit to avoid timeouts