Repository navigation
Commit d4d1cf6
committed
textproc/ripgrep: update to 15.0.0
15.0.0 (2025-10-15)
===================
ripgrep 15 is a new major version release of ripgrep that mostly has bug fixes,
some minor performance improvements and minor new features. Here are some
highlights:
* Several bugs around gitignore matching have been fixed. This includes
a commonly reported bug related to applying gitignore rules from parent
directories.
* A memory usage regression when handling very large gitignore files has been
fixed.
* `rg -vf file`, where `file` is empty, now matches everything.
* The `-r/--replace` flag now works with `--json`.
* A subset of Jujutsu (`jj`) repositories are now treated as if they were git
repositories. That is, ripgrep will respect `jj`'s gitignores.
* Globs can now use nested curly braces.
Platform support:
* `aarch64` for Windows now has release artifacts.
* `powerpc64` no longer has release artifacts generated for it. The CI
release workflow stopped working, and I didn't deem it worth my time to
debug it. If someone wants this and can test it, I'd be happy to add it
back.
* ripgrep binaries are now compiled with full LTO enabled. You may notice
small performance improvements from this and a modest decrease in binary
size.
Performance improvements:
* [PERF #2111](BurntSushi/ripgrep#2111):
Don't resolve helper binaries on Windows when `-z/--search-zip` isn't used.
* [PERF #2865](BurntSushi/ripgrep#2865):
Avoid using path canonicalization on Windows when emitting hyperlinks.
* [PERF #3184](BurntSushi/ripgrep#3184):
Improve performance of large values with `-A/--after-context`.
Bug fixes:
* [BUG #829](BurntSushi/ripgrep#829),
[BUG #2731](BurntSushi/ripgrep#2731),
[BUG #2747](BurntSushi/ripgrep#2747),
[BUG #2770](BurntSushi/ripgrep#2770),
[BUG #2778](BurntSushi/ripgrep#2778),
[BUG #2836](BurntSushi/ripgrep#2836),
[BUG #2933](BurntSushi/ripgrep#2933),
[BUG #3067](BurntSushi/ripgrep#3067):
Fix bug related to gitignores from parent directories.
* [BUG #1332](BurntSushi/ripgrep#1332),
[BUG #3001](BurntSushi/ripgrep#3001):
Make `rg -vf file` where `file` is empty match everything.
* [BUG #2177](BurntSushi/ripgrep#2177):
Ignore a UTF-8 BOM marker at the start of `.gitignore` (and similar files).
* [BUG #2750](BurntSushi/ripgrep#2750):
Fix memory usage regression for some truly large gitignore files.
* [BUG #2944](BurntSushi/ripgrep#2944):
Fix a bug where the "bytes searched" in `--stats` output could be incorrect.
* [BUG #2990](BurntSushi/ripgrep#2990):
Fix a bug where ripgrep would mishandle globs that ended with a `.`.
* [BUG #2094](BurntSushi/ripgrep#2094),
[BUG #3076](BurntSushi/ripgrep#3076):
Fix bug with `-m/--max-count` and `-U/--multiline` showing too many matches.
* [BUG #3100](BurntSushi/ripgrep#3100):
Preserve line terminators when using `-r/--replace` flag.
* [BUG #3108](BurntSushi/ripgrep#3108):
Fix a bug where `-q --files-without-match` inverted the exit code.
* [BUG #3131](BurntSushi/ripgrep#3131):
Document inconsistency between `-c/--count` and `--files-with-matches`.
* [BUG #3135](BurntSushi/ripgrep#3135):
Fix rare panic for some classes of large regexes on large haystacks.
* [BUG #3140](BurntSushi/ripgrep#3140):
Ensure hyphens in flag names are escaped in the roff text for the man page.
* [BUG #3155](BurntSushi/ripgrep#3155):
Statically compile PCRE2 into macOS release artifacts on `aarch64`.
* [BUG #3173](BurntSushi/ripgrep#3173):
Fix ancestor ignore filter bug when searching whitelisted hidden files.
* [BUG #3178](BurntSushi/ripgrep#3178):
Fix bug causing incorrect summary statistics with `--json` flag.
* [BUG #3179](BurntSushi/ripgrep#3179):
Fix gitignore bug when searching absolute paths with global gitignores.
* [BUG #3180](BurntSushi/ripgrep#3180):
Fix a panicking bug when using `-U/--multiline` and `-r/--replace`.
Feature enhancements:
* Many enhancements to the default set of file types available for filtering.
* [FEATURE #1872](BurntSushi/ripgrep#1872):
Make `-r/--replace` work with `--json`.
* [FEATURE #2708](BurntSushi/ripgrep#2708):
Completions for the fish shell take ripgrep's config file into account.
* [FEATURE #2841](BurntSushi/ripgrep#2841):
Add `italic` to the list of available style attributes in `--color`.
* [FEATURE #2842](BurntSushi/ripgrep#2842):
Directories containing `.jj` are now treated as git repositories.
* [FEATURE #2849](BurntSushi/ripgrep#2849):
When using multithreading, schedule files to search in order given on CLI.
* [FEATURE #2943](BurntSushi/ripgrep#2943):
Add `aarch64` release artifacts for Windows.
* [FEATURE #3024](BurntSushi/ripgrep#3024):
Add `highlight` color type, for styling non-matching text in a matching line.
* [FEATURE #3048](BurntSushi/ripgrep#3048):
Globs in ripgrep (and the `globset` crate) now support nested alternates.
* [FEATURE #3096](BurntSushi/ripgrep#3096):
Improve completions for `--hyperlink-format` in bash and fish.
* [FEATURE #3102](BurntSushi/ripgrep#3102):
Improve completions for `--hyperlink-format` in zsh.1 parent 2b4e281 commit d4d1cf6
3 files changed
Lines changed: 184 additions & 184 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
| 1 | + | |
2 | 2 | | |
3 | | - | |
4 | | - | |
| 3 | + | |
5 | 4 | | |
6 | 5 | | |
7 | 6 | | |
| |||
12 | 11 | | |
13 | 12 | | |
14 | 13 | | |
| 14 | + | |
15 | 15 | | |
16 | 16 | | |
17 | 17 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
1 | | - | |
| 1 | + | |
2 | 2 | | |
3 | 3 | | |
4 | | - | |
5 | | - | |
6 | | - | |
7 | | - | |
8 | | - | |
9 | | - | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
10 | 11 | | |
11 | | - | |
12 | | - | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
13 | 15 | | |
14 | | - | |
15 | | - | |
16 | | - | |
17 | | - | |
18 | | - | |
19 | | - | |
20 | | - | |
21 | | - | |
22 | | - | |
23 | | - | |
24 | | - | |
25 | | - | |
26 | | - | |
27 | | - | |
28 | | - | |
29 | | - | |
30 | | - | |
31 | | - | |
32 | | - | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
33 | 36 | | |
34 | | - | |
35 | | - | |
36 | | - | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
37 | 41 | | |
38 | | - | |
| 42 | + | |
39 | 43 | | |
40 | | - | |
41 | | - | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
42 | 48 | | |
43 | | - | |
44 | | - | |
45 | | - | |
46 | | - | |
47 | | - | |
48 | | - | |
49 | | - | |
50 | | - | |
51 | | - | |
52 | | - | |
53 | | - | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
0 commit comments