Skip to content

Commit 674a952

Browse files
committed
changelog: start filling out the 1.10 release
1 parent f6559fe commit 674a952

File tree

1 file changed

+50
-2
lines changed

1 file changed

+50
-2
lines changed

CHANGELOG.md

Lines changed: 50 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,30 @@
1-
TBD
2-
===
1+
1.10.0 (2023-10-09)
2+
===================
3+
This is a new minor release of `regex` that adds support for start and end
4+
word boundary assertions. That is, `\<` and `\>`. The minimum supported Rust
5+
version has also been raised to 1.65, which was released about one year ago.
6+
7+
The new word boundary assertions are:
8+
9+
* `\<` or `\b{start}`: a Unicode start-of-word boundary (`\W|\A` on the left,
10+
`\w` on the right).
11+
* `\>` or `\b{end}`: a Unicode end-of-word boundary (`\w` on the left, `\W|\z`
12+
on the right)).
13+
* `\b{start-half}`: half of a Unicode start-of-word boundary (`\W|\A` on the
14+
left).
15+
* `\b{end-half}`: half of a Unicode end-of-word boundary (`\W|\z` on the
16+
right).
17+
18+
The `\<` and `\>` are GNU extensions to POSIX regexes. They have been added
19+
to the `regex` crate because they enjoy somewhat broad support in other regex
20+
engines as well (for example, vim). The `\b{start}` and `\b{end}` assertions
21+
are aliases for `\<` and `\>`, respectively.
22+
23+
The `\b{start-half}` and `\b{end-half}` assertions are not found in any
24+
other regex engine (although regex engines with general look-around support
25+
can certainly express them). They were added principally to support the
26+
implementation of word matching in grep programs, where one generally wants to
27+
be a bit more flexible in what is considered a word boundary.
328

429
New features:
530

@@ -27,6 +52,29 @@ crate).
2752
Remove guarantees in the API that connect the `u` flag with a specific HIR
2853
representation.
2954

55+
`regex-automata` breaking change release:
56+
57+
This release includes a `regex-automata 0.4.0` breaking change release, which
58+
was necessary in order to support the new word boundary assertions. For
59+
example, the `Look` enum has new variants and the `LookSet` type now uses `u32`
60+
instead of `u16` to represent a bitset of look-around assertions. These are
61+
overall very minor changes, and most users of `regex-automata` should be able
62+
to move to `0.4` from `0.3` without any changes at all.
63+
64+
`regex-syntax` breaking change release:
65+
66+
This release also includes a `regex-syntax 0.8.0` breaking change release,
67+
which, like `regex-automata`, was necessary in order to support the new word
68+
boundary assertions. This release also includes some changes to the `Ast`
69+
type to reduce heap usage in some cases. If you are using the `Ast` type
70+
directly, your code may require some minor modifications. Otherwise, users of
71+
`regex-syntax 0.7` should be able to migrate to `0.8` without any code changes.
72+
73+
`regex-lite` release:
74+
75+
The `regex-lite 0.1.1` release contains support for the new word boundary
76+
assertions. There are no breaking changes.
77+
3078

3179
1.9.6 (2023-09-30)
3280
==================

0 commit comments

Comments
 (0)