4062 Commits
Author SHA1 Message Date
Keith Hall a9aa73d215 Merge pull request #3895 from 1t1sCooL/fix-vcredist-link
docs: fix dead Visual C++ Redistributable link in README
2026-10-20 22:18:09 +03:00
Keith Hall f0a58595bd Merge branch 'master' into fix-vcredist-link 2026-10-20 22:07:28 +03:00
Keith Hall 2fd71ad588 Merge pull request #4091 from NavpreetSSidhu/fix-js-block-comment-hang
Fix hang on block comment after an expression in JavaScript
2026-10-20 22:03:22 +03:00
Navpreet Sidhu 49d9ac1d6e changelog: reference PR #4091 2026-10-20 21:40:03 +05:30
Navpreet Sidhu 54b1f9c6af Fix hang on block comment after an expression in JavaScript 2026-10-20 21:31:39 +05:30
Mikhail Alabugin b841eadf09 Merge upstream into PR branch, resolve conflicts 2026-10-20 13:59:30 +03:00
Keith Hall f748c1a467 Merge pull request #4069 from injust/patch-1
Add syntax mapping for Podman `.quadlets` files
2026-10-17 14:57:57 +03:00
Keith Hall d3afbaeb06 Merge branch 'master' into patch-1 2026-10-17 14:48:35 +03:00
Keith Hall dbe6ec265d Merge pull request #4076 from cindykrafft/fix/utf16be-first-line
Fix the first line of UTF-16BE input swallowing the second line
2026-10-17 14:41:31 +03:00
Keith Hall bc0a67e07c Merge branch 'master' into fix/utf16be-first-line 2026-10-17 14:28:44 +03:00
Keith Hall fca6c542d4 Merge pull request #4067 from ump45nose/docs-strip-ansi-mode
Document StripAnsiMode and its variants
2026-10-17 14:27:03 +03:00
Claude c2adbf6caa Fix the first line of UTF-16BE input swallowing the second line
In UTF-16BE a newline is 00 0A, so the initial read_until(b'\n') usually
already ends exactly at the end of line 1. The BE branch then always called
read_utf16_line, which read on to the next newline, merging lines 1 and 2.
Only keep reading when the first read did not end on a complete 00 0A.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01VVn4SeAXPsUajXT2rtHQfo
2026-10-16 19:50:14 +00:00
injust f48149b119 Add syntax mapping for Podman .quadlets files 2026-10-15 21:52:43 +00:00
ump45nose 8c63b37205 changelog: note StripAnsiMode rustdoc (#4067) 2026-10-15 15:13:56 +08:00
yuwk d50b53d0ef Document StripAnsiMode and its variants with doc comments 2026-10-15 09:37:35 +08:00
Keith Hall 62b439dae3 Merge pull request #4064 from ump45nose/doc-range-check-result-variants
Document RangeCheckResult variants with doc comments
2026-10-14 22:41:06 +03:00
Keith Hall e8d05da87a Merge branch 'master' into doc-range-check-result-variants 2026-10-14 22:22:14 +03:00
Keith Hall edd161aefb Merge pull request #4065 from ump45nose/doc-wrapping-mode-variant
Document WrappingMode::NoWrapping's bool payload with a doc comment
2026-10-14 22:22:03 +03:00
Keith Hall b95f8d37bf Merge branch 'master' into doc-range-check-result-variants 2026-10-14 22:20:52 +03:00
yuwk 0e3074cfe1 Document WrappingMode::NoWrapping's bool payload with a doc comment
The explanation of what the payload means used //, so rustdoc dropped it
from the public WrappingMode page. WrappingMode is re-exported from
lib.rs, so the variant is documented like the neighbouring enums.
2026-10-15 02:49:37 +08:00
Keith Hall 4d916905d1 Merge pull request #4063 from ump45nose/config-doc-comments
Document 4 public Config fields with doc comments
2026-10-14 20:59:49 +03:00
yuwk c47a163f4b Document RangeCheckResult variants with doc comments 2026-10-15 01:55:16 +08:00
yuwk a56bca503b Fix doc comments on four Config fields
The use_lessopen, set_terminal_title, strip_ansi and sanitize fields were
annotated with // instead of ///, so they were silently missing from the
rustdoc output for the public bat::config::Config struct. Every sibling
field already uses ///.
2026-10-15 00:23:49 +08:00
Keith Hall d9559c69f5 Merge pull request #4035 from Mathjk/fix/aux-epipe
Fix panic on closed stdout in auxiliary output paths
2026-10-07 22:49:03 +03:00
Mathjk 12cbb20de4 changelog: reference PR #4035 so the changelog check passes 2026-10-03 01:03:09 +08:00
Mathjk a9b112b6fe Exit quietly on broken pipe in auxiliary output paths
The main output path has exited with status 0 on EPIPE since #232, but
auxiliary outputs still used println!/print!/io::stdout().flush().unwrap()
and panicked (exit code 101) when the reader of a piped stdout went away
early, e.g. 'bat --completion bash | head -n0'.

Route them through the existing convention instead: write!/writeln! to
io::stdout() and '?' so that Error::Io(BrokenPipe) reaches
default_error_handler, which exits with status 0. This covers
--completion, --config-file, --diagnostic (bugreport's print() becomes
format() + writeln!), --generate-config-file, the 'cache' subcommand
progress messages, the OSC title sequence of --set-terminal-title, and
the 'built without feature' notices.

Closes #4034
2026-10-02 02:23:08 +08:00
auto-merge-dependabot-prs[bot] 4608fc959a Merge pull request #4027 from sharkdp/dependabot/github_actions/vedantmgoyal9/winget-releaser-a8fff44b123f115ce4c21543edf8b677376fc7e0
build(deps): bump vedantmgoyal9/winget-releaser from 19e706d4c9121098010096f9c495a70a7518b30f to a8fff44b123f115ce4c21543edf8b677376fc7e0
2026-10-01 02:13:09 +00:00
dependabot[bot] dcd725dc4e build(deps): bump vedantmgoyal9/winget-releaser
Bumps [vedantmgoyal9/winget-releaser](https://github.com/vedantmgoyal9/winget-releaser) from 19e706d4c9121098010096f9c495a70a7518b30f to a8fff44b123f115ce4c21543edf8b677376fc7e0.
- [Release notes](https://github.com/vedantmgoyal9/winget-releaser/releases)
- [Commits](https://github.com/vedantmgoyal9/winget-releaser/compare/19e706d4c9121098010096f9c495a70a7518b30f...a8fff44b123f115ce4c21543edf8b677376fc7e0)

---
updated-dependencies:
- dependency-name: vedantmgoyal9/winget-releaser
  dependency-version: a8fff44b123f115ce4c21543edf8b677376fc7e0
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-10-01 02:03:55 +00:00
Keith Hall 4987f76709 Merge pull request #4015 from mikehasa/fix/track-strikethrough-sgr9
Track strikethrough (SGR 9) so it is not dropped across highlighted tokens
2026-09-22 21:13:30 +03:00
mikehasaandClaude Opus 4.8 156ef1d2f4 Track strikethrough (SGR 9) so it is not dropped across highlighted tokens
The `Attributes` ANSI style tracker in `src/vscreen.rs` declares, initializes,
clears (in `sgr_reset`), and re-emits (in `Display`) a `strike` field
documented as `ON: ^[9m / OFF: ^[29m`, but `update_with_sgr()` had no match
arm for SGR 9 (set strikethrough) or 29 (clear strikethrough). As a result
`strike` was only ever cleared, never set.

Because bat re-applies the tracked input ANSI style before each highlighted
text run (nu_ansi_term appends a full reset after every token), attributes
that are tracked — bold, dim, italic, underline — survive across tokens,
while strikethrough was silently dropped after the first token. This path is
active by default (`--strip-ansi`/`--sanitize` default to `never`).

Add the missing `9` and `29` arms, mirroring the sibling underline (4/24) and
italic (3/23) arms, so strikethrough is tracked and re-emitted like every
other supported attribute.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-09-22 05:15:31 -07:00
Mikhail Alabugin eca6c5b688 Merge branch 'master' into fix-vcredist-link 2026-09-05 16:01:25 +03:00
Keith Hall 7323a7514f Merge pull request #3912 from logarithmone1128/repeatable-boolean-flags
Allow boolean flags to be repeated
2026-09-04 22:10:30 +03:00
LOG cf72a432ac Allow boolean flags to be repeated
bat prepends the arguments from its config file to the command line, so a
user who has `--show-all` in their config and also types `-A` passes the
flag twice, and clap rejects that with "the argument '--show-all' cannot be
used multiple times" and exit code 2. The file is never displayed.

`--plain`, `--number`, `--number-nonblank`, `--force-colorization` and
`--no-paging` already avoid this by overriding themselves. The same is now
done for the eight remaining flags that affect how a file is displayed:
--show-all, --diff, --chop-long-lines, --squeeze-blank, --unbuffered,
--quiet-empty, --no-custom-assets and --set-terminal-title.

Repeating a flag produces byte-identical output to giving it once, and
--show-all still conflicts with --language as before.
2026-09-04 18:01:33 +08:00
Keith Hall 16b5f99d16 Merge pull request #3908 from cuishuang/master
Use parsed CLI arguments to detect number flags
2026-09-04 06:46:32 +03:00
cuishuang b784eaf0ae Use parsed CLI arguments to detect number flags
Signed-off-by: cuishuang <imcusg@gmail.com>
2026-09-04 11:00:36 +08:00
Keith Hall 2ed8b010af Merge pull request #3877 from Matei02355/fix-binary-detection-across-lines-3554
Detect binary content beyond the first line
2026-09-03 22:07:15 +03:00
Keith Hall 5fee86b97b Merge branch 'master' into fix-binary-detection-across-lines-3554 2026-09-03 21:54:06 +03:00
Keith Hall 66ad54c27d Merge pull request #3897 from cuishuang/master
fix: use last occurrence in combined short flags
2026-09-03 21:52:16 +03:00
cuishuang 2ed7adc49f Merge upstream master to resolve PR conflicts 2026-09-03 20:07:25 +08:00
Mikhail Alabugin ea3909bbdf Add changelog entry 2026-09-02 11:10:47 +03:00
auto-merge-dependabot-prs[bot] 0acf9417cd Merge pull request #3903 from sharkdp/dependabot/cargo/console-0.16.4
build(deps): bump console from 0.16.3 to 0.16.4
2026-09-01 03:29:44 +00:00
dependabot[bot] b5c8e101f8 build(deps): bump console from 0.16.3 to 0.16.4
Bumps [console](https://github.com/console-rs/console) from 0.16.3 to 0.16.4.
- [Release notes](https://github.com/console-rs/console/releases)
- [Changelog](https://github.com/console-rs/console/blob/main/CHANGELOG.md)
- [Commits](https://github.com/console-rs/console/compare/0.16.3...0.16.4)

---
updated-dependencies:
- dependency-name: console
  dependency-version: 0.16.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-09-01 03:15:44 +00:00
auto-merge-dependabot-prs[bot] 383abc83c8 Merge pull request #3904 from sharkdp/dependabot/cargo/bytesize-2.7.0
build(deps): bump bytesize from 2.4.2 to 2.7.0
2026-09-01 03:10:37 +00:00
dependabot[bot] 7928b4be52 build(deps): bump bytesize from 2.4.2 to 2.7.0
Bumps [bytesize](https://github.com/bytesize-rs/bytesize) from 2.4.2 to 2.7.0.
- [Release notes](https://github.com/bytesize-rs/bytesize/releases)
- [Changelog](https://github.com/bytesize-rs/bytesize/blob/master/CHANGELOG.md)
- [Commits](https://github.com/bytesize-rs/bytesize/compare/bytesize-v2.4.2...bytesize-v2.7.0)

---
updated-dependencies:
- dependency-name: bytesize
  dependency-version: 2.7.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-09-01 02:54:28 +00:00
auto-merge-dependabot-prs[bot] 036a201df9 Merge pull request #3901 from sharkdp/dependabot/cargo/indexmap-2.14.1
build(deps): bump indexmap from 2.14.0 to 2.14.1
2026-09-01 02:50:18 +00:00
dependabot[bot] 2da852dc78 build(deps): bump indexmap from 2.14.0 to 2.14.1
Bumps [indexmap](https://github.com/indexmap-rs/indexmap) from 2.14.0 to 2.14.1.
- [Changelog](https://github.com/indexmap-rs/indexmap/blob/main/RELEASES.md)
- [Commits](https://github.com/indexmap-rs/indexmap/compare/2.14.0...2.14.1)

---
updated-dependencies:
- dependency-name: indexmap
  dependency-version: 2.14.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-09-01 02:29:34 +00:00
auto-merge-dependabot-prs[bot] 65c311e9fb Merge pull request #3900 from sharkdp/dependabot/cargo/globset-0.4.20
build(deps): bump globset from 0.4.18 to 0.4.20
2026-09-01 02:25:57 +00:00
dependabot[bot] b3c9516a9b build(deps): bump globset from 0.4.18 to 0.4.20
Bumps [globset](https://github.com/BurntSushi/ripgrep) from 0.4.18 to 0.4.20.
- [Release notes](https://github.com/BurntSushi/ripgrep/releases)
- [Changelog](https://github.com/BurntSushi/ripgrep/blob/master/CHANGELOG.md)
- [Commits](https://github.com/BurntSushi/ripgrep/compare/globset-0.4.18...globset-0.4.20)

---
updated-dependencies:
- dependency-name: globset
  dependency-version: 0.4.20
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-09-01 02:03:42 +00:00
Keith Hall 5f12c62b3e Merge pull request #3899 from rootsec1/fix/cargo-install-manifest-diagnostic
fix: avoid Cargo parsing syntax fixture as a manifest
2026-08-31 21:20:32 +03:00
Abhishek Murthy 7892a8754b chore: add pull request number to changelog 2026-08-31 18:06:25 +00:00