📦 Minecraft: Java Edition resource and data pack optimizer which aims to achieve the best possible compression, performance and protection, improving pack distribution, storage and in-game load times.
rust-lang/regex (regex)
### [`v1.10.0`](https://togithub.com/rust-lang/regex/blob/HEAD/CHANGELOG.md#1100-2023-10-09)
[Compare Source](https://togithub.com/rust-lang/regex/compare/1.9.6...1.10.0)
\===================
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 the `regex` 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](https://togithub.com/rust-lang/regex/issues/469):
Add support for `\<` and `\>` word boundary assertions.
- [FEATURE(regex-automata) #1031](https://togithub.com/rust-lang/regex/pull/1031):
DFAs now have a `start_state` method that doesn't use an `Input`.
Performance improvements:
- [PERF #1051](https://togithub.com/rust-lang/regex/pull/1051):
Unicode character class operations have been optimized in `regex-syntax`.
- [PERF #1090](https://togithub.com/rust-lang/regex/issues/1090):
Make patterns containing lots of literal characters use less memory.
Bug fixes:
- [BUG #1046](https://togithub.com/rust-lang/regex/issues/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](https://togithub.com/rust-lang/regex/issues/1047):
Fix panics that can occur in `Ast->Hir` translation (not reachable from `regex`
crate).
- [BUG(regex-syntax) #1088](https://togithub.com/rust-lang/regex/issues/1088):
Remove guarantees in the API that connect the `u` flag with a specific HIR
representation.
`regex-automata` breaking change release:
This release includes a `regex-automata 0.4.0` breaking change release, which
was necessary in order to support the new word boundary assertions. For
example, the `Look` enum has new variants and the `LookSet` type now uses `u32`
instead of `u16` to represent a bitset of look-around assertions. These are
overall very minor changes, and most users of `regex-automata` should be able
to move to `0.4` from `0.3` without any changes at all.
`regex-syntax` breaking change release:
This release also includes a `regex-syntax 0.8.0` breaking change release,
which, like `regex-automata`, was necessary in order to support the new word
boundary assertions. This release also includes some changes to the `Ast`
type to reduce heap usage in some cases. If you are using the `Ast` type
directly, your code may require some minor modifications. Otherwise, users of
`regex-syntax 0.7` should be able to migrate to `0.8` without any code changes.
`regex-lite` release:
The `regex-lite 0.1.1` release contains support for the new word boundary
assertions. There are no breaking changes.
Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Enabled.
♻ 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.
[ ] If you want to rebase/retry this PR, check this box
This PR has been generated by Mend Renovate. View repository job log here.
This PR contains the following updates:
1.9.6
->1.10.0
Release Notes
rust-lang/regex (regex)
### [`v1.10.0`](https://togithub.com/rust-lang/regex/blob/HEAD/CHANGELOG.md#1100-2023-10-09) [Compare Source](https://togithub.com/rust-lang/regex/compare/1.9.6...1.10.0) \=================== 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 the `regex` 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](https://togithub.com/rust-lang/regex/issues/469): Add support for `\<` and `\>` word boundary assertions. - [FEATURE(regex-automata) #1031](https://togithub.com/rust-lang/regex/pull/1031): DFAs now have a `start_state` method that doesn't use an `Input`. Performance improvements: - [PERF #1051](https://togithub.com/rust-lang/regex/pull/1051): Unicode character class operations have been optimized in `regex-syntax`. - [PERF #1090](https://togithub.com/rust-lang/regex/issues/1090): Make patterns containing lots of literal characters use less memory. Bug fixes: - [BUG #1046](https://togithub.com/rust-lang/regex/issues/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](https://togithub.com/rust-lang/regex/issues/1047): Fix panics that can occur in `Ast->Hir` translation (not reachable from `regex` crate). - [BUG(regex-syntax) #1088](https://togithub.com/rust-lang/regex/issues/1088): Remove guarantees in the API that connect the `u` flag with a specific HIR representation. `regex-automata` breaking change release: This release includes a `regex-automata 0.4.0` breaking change release, which was necessary in order to support the new word boundary assertions. For example, the `Look` enum has new variants and the `LookSet` type now uses `u32` instead of `u16` to represent a bitset of look-around assertions. These are overall very minor changes, and most users of `regex-automata` should be able to move to `0.4` from `0.3` without any changes at all. `regex-syntax` breaking change release: This release also includes a `regex-syntax 0.8.0` breaking change release, which, like `regex-automata`, was necessary in order to support the new word boundary assertions. This release also includes some changes to the `Ast` type to reduce heap usage in some cases. If you are using the `Ast` type directly, your code may require some minor modifications. Otherwise, users of `regex-syntax 0.7` should be able to migrate to `0.8` without any code changes. `regex-lite` release: The `regex-lite 0.1.1` release contains support for the new word boundary assertions. There are no breaking changes.Configuration
📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).
🚦 Automerge: Enabled.
♻ 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 has been generated by Mend Renovate. View repository job log here.