Source code spell checker
Find a file
renovate[bot] 0d0233b9e0
chore(deps): Update compatible (#1021)
[![Mend
Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com)

This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [ahash](https://togithub.com/tkaitchuck/ahash) | dependencies | patch
| `0.8.7` -> `0.8.11` |
| [anstream](https://togithub.com/rust-cli/anstyle) | dependencies |
patch | `0.6.13` -> `0.6.14` |
| [anstyle](https://togithub.com/rust-cli/anstyle) | dependencies |
patch | `1.0.6` -> `1.0.7` |
| [anyhow](https://togithub.com/dtolnay/anyhow) | dependencies | patch |
`1.0.75` -> `1.0.86` |
| [assert_fs](https://togithub.com/assert-rs/assert_fs) |
dev-dependencies | patch | `1.1.0` -> `1.1.1` |
| [bstr](https://togithub.com/BurntSushi/bstr) | dependencies | patch |
`1.9.0` -> `1.9.1` |
| [colorchoice-clap](https://togithub.com/rust-cli/anstyle) |
dependencies | patch | `1.0.3` -> `1.0.4` |
| [enumflags2](https://togithub.com/meithecatte/enumflags2) |
dependencies | patch | `0.7.8` -> `0.7.9` |
| [env_logger](https://togithub.com/rust-cli/env_logger) | dependencies
| patch | `0.11.1` -> `0.11.3` |
|
[ignore](https://togithub.com/BurntSushi/ripgrep/tree/master/crates/ignore)
([source](https://togithub.com/BurntSushi/ripgrep/tree/HEAD/crates/ignore))
| dependencies | patch | `0.4.20` -> `0.4.22` |
| [log](https://togithub.com/rust-lang/log) | dependencies | patch |
`0.4.20` -> `0.4.21` |
| [serde](https://serde.rs)
([source](https://togithub.com/serde-rs/serde)) | dependencies | patch |
`1.0.189` -> `1.0.203` |
| [serde_json](https://togithub.com/serde-rs/json) | dependencies |
patch | `1.0.107` -> `1.0.117` |
|
[snapbox](https://togithub.com/assert-rs/trycmd/tree/main/crates/snapbox)
([source](https://togithub.com/assert-rs/trycmd)) | dev-dependencies |
patch | `0.6.5` -> `0.6.7` |
| [thiserror](https://togithub.com/dtolnay/thiserror) | dependencies |
patch | `1.0.49` -> `1.0.61` |
| [toml](https://togithub.com/toml-rs/toml) | dependencies | patch |
`0.8.12` -> `0.8.13` |
| [winnow](https://togithub.com/winnow-rs/winnow) | dependencies | patch
| `0.6.7` -> `0.6.9` |

---

### Release Notes

<details>
<summary>tkaitchuck/ahash (ahash)</summary>

###
[`v0.8.11`](https://togithub.com/tkaitchuck/aHash/releases/tag/v0.8.11)

[Compare
Source](https://togithub.com/tkaitchuck/ahash/compare/v0.8.10...v0.8.11)

Patch release to further strengthen u64 fastpath based on
[#&#8203;210](https://togithub.com/tkaitchuck/ahash/issues/210)

**Full Changelog**:
https://github.com/tkaitchuck/aHash/compare/v0.8.10...v0.8.11

###
[`v0.8.10`](https://togithub.com/tkaitchuck/aHash/releases/tag/v0.8.10)

[Compare
Source](https://togithub.com/tkaitchuck/ahash/compare/v0.8.9...v0.8.10)

Patch to fix
[#&#8203;210](https://togithub.com/tkaitchuck/ahash/issues/210) which
caused poor distribution when hashing a single u64 on nightly.

**Full Changelog**:
https://github.com/tkaitchuck/aHash/compare/v0.8.9...v0.8.10

###
[`v0.8.9`](https://togithub.com/tkaitchuck/aHash/releases/tag/v0.8.9)

[Compare
Source](https://togithub.com/tkaitchuck/ahash/compare/v0.8.8...v0.8.9)

Minor patch to fix
[#&#8203;207](https://togithub.com/tkaitchuck/ahash/issues/207)

**Full Changelog**:
https://github.com/tkaitchuck/aHash/compare/v0.8.8...v0.8.9

###
[`v0.8.8`](https://togithub.com/tkaitchuck/aHash/releases/tag/v0.8.8)

[Compare
Source](https://togithub.com/tkaitchuck/ahash/compare/0.8.7...v0.8.8)

#### What's Changed

- Fix some typos by [@&#8203;striezel](https://togithub.com/striezel) in
[https://github.com/tkaitchuck/aHash/pull/192](https://togithub.com/tkaitchuck/aHash/pull/192)
- Update GitHub Actions CI by
[@&#8203;striezel](https://togithub.com/striezel) in
[https://github.com/tkaitchuck/aHash/pull/193](https://togithub.com/tkaitchuck/aHash/pull/193)
- Bump rust-version to 1.72.0 by
[@&#8203;Jefffrey](https://togithub.com/Jefffrey) in
[https://github.com/tkaitchuck/aHash/pull/196](https://togithub.com/tkaitchuck/aHash/pull/196)
- Increase the MSRV presubmit checks to include multiple architectures
by [@&#8203;tkaitchuck](https://togithub.com/tkaitchuck) in
[https://github.com/tkaitchuck/aHash/pull/197](https://togithub.com/tkaitchuck/aHash/pull/197)

#### New Contributors

- [@&#8203;striezel](https://togithub.com/striezel) made their first
contribution in
[https://github.com/tkaitchuck/aHash/pull/192](https://togithub.com/tkaitchuck/aHash/pull/192)
- [@&#8203;Jefffrey](https://togithub.com/Jefffrey) made their first
contribution in
[https://github.com/tkaitchuck/aHash/pull/196](https://togithub.com/tkaitchuck/aHash/pull/196)

**Full Changelog**:
https://github.com/tkaitchuck/aHash/compare/0.8.7...v0.8.8

</details>

<details>
<summary>rust-cli/anstyle (anstream)</summary>

###
[`v0.6.14`](https://togithub.com/rust-cli/anstyle/compare/anstream-v0.6.13...anstream-v0.6.14)

[Compare
Source](https://togithub.com/rust-cli/anstyle/compare/anstream-v0.6.13...anstream-v0.6.14)

</details>

<details>
<summary>dtolnay/anyhow (anyhow)</summary>

### [`v1.0.86`](https://togithub.com/dtolnay/anyhow/releases/tag/1.0.86)

[Compare
Source](https://togithub.com/dtolnay/anyhow/compare/1.0.85...1.0.86)

- Fix parse error in `ensure!` with non-literal after minus sign
([#&#8203;373](https://togithub.com/dtolnay/anyhow/issues/373))

### [`v1.0.85`](https://togithub.com/dtolnay/anyhow/releases/tag/1.0.85)

[Compare
Source](https://togithub.com/dtolnay/anyhow/compare/1.0.84...1.0.85)

- Improve `ensure!` macro's rules to unblock some rustc pretty-printer
improvements
([#&#8203;368](https://togithub.com/dtolnay/anyhow/issues/368),
[#&#8203;371](https://togithub.com/dtolnay/anyhow/issues/371))

### [`v1.0.84`](https://togithub.com/dtolnay/anyhow/releases/tag/1.0.84)

[Compare
Source](https://togithub.com/dtolnay/anyhow/compare/1.0.83...1.0.84)

- Disallow calling `ensure!` through a `Not` impl for a type that is not
`bool` ([#&#8203;367](https://togithub.com/dtolnay/anyhow/issues/367))

### [`v1.0.83`](https://togithub.com/dtolnay/anyhow/releases/tag/1.0.83)

[Compare
Source](https://togithub.com/dtolnay/anyhow/compare/1.0.82...1.0.83)

- Integrate compile-time checking of cfgs
([#&#8203;363](https://togithub.com/dtolnay/anyhow/issues/363))

### [`v1.0.82`](https://togithub.com/dtolnay/anyhow/releases/tag/1.0.82)

[Compare
Source](https://togithub.com/dtolnay/anyhow/compare/1.0.81...1.0.82)

-   Documentation improvements

### [`v1.0.81`](https://togithub.com/dtolnay/anyhow/releases/tag/1.0.81)

[Compare
Source](https://togithub.com/dtolnay/anyhow/compare/1.0.80...1.0.81)

- Make backtrace support available when using -Dwarnings
([#&#8203;354](https://togithub.com/dtolnay/anyhow/issues/354))

### [`v1.0.80`](https://togithub.com/dtolnay/anyhow/releases/tag/1.0.80)

[Compare
Source](https://togithub.com/dtolnay/anyhow/compare/1.0.79...1.0.80)

-   Fix unused_imports warnings when compiled by rustc 1.78

### [`v1.0.79`](https://togithub.com/dtolnay/anyhow/releases/tag/1.0.79)

[Compare
Source](https://togithub.com/dtolnay/anyhow/compare/1.0.78...1.0.79)

- Work around improperly cached build script result by sccache
([#&#8203;340](https://togithub.com/dtolnay/anyhow/issues/340))

### [`v1.0.78`](https://togithub.com/dtolnay/anyhow/releases/tag/1.0.78)

[Compare
Source](https://togithub.com/dtolnay/anyhow/compare/1.0.77...1.0.78)

- Reduce spurious rebuilds under RustRover IDE when using a nightly
toolchain
([#&#8203;337](https://togithub.com/dtolnay/anyhow/issues/337))

### [`v1.0.77`](https://togithub.com/dtolnay/anyhow/releases/tag/1.0.77)

[Compare
Source](https://togithub.com/dtolnay/anyhow/compare/1.0.76...1.0.77)

- Make `anyhow::Error::backtrace` available on stable Rust compilers
1.65+ ([#&#8203;293](https://togithub.com/dtolnay/anyhow/issues/293),
thanks [@&#8203;LukasKalbertodt](https://togithub.com/LukasKalbertodt))

### [`v1.0.76`](https://togithub.com/dtolnay/anyhow/releases/tag/1.0.76)

[Compare
Source](https://togithub.com/dtolnay/anyhow/compare/1.0.75...1.0.76)

- Opt in to `unsafe_op_in_unsafe_fn` lint
([#&#8203;329](https://togithub.com/dtolnay/anyhow/issues/329))

</details>

<details>
<summary>assert-rs/assert_fs (assert_fs)</summary>

###
[`v1.1.1`](https://togithub.com/assert-rs/assert_fs/blob/HEAD/CHANGELOG.md#111---2024-01-12)

[Compare
Source](https://togithub.com/assert-rs/assert_fs/compare/v1.1.0...v1.1.1)

##### Internal

-   Dependency update

</details>

<details>
<summary>BurntSushi/bstr (bstr)</summary>

###
[`v1.9.1`](https://togithub.com/BurntSushi/bstr/compare/1.9.0...1.9.1)

[Compare
Source](https://togithub.com/BurntSushi/bstr/compare/1.9.0...1.9.1)

</details>

<details>
<summary>meithecatte/enumflags2 (enumflags2)</summary>

###
[`v0.7.9`](https://togithub.com/meithecatte/enumflags2/releases/tag/v0.7.9):
Release 0.7.9

[Compare
Source](https://togithub.com/meithecatte/enumflags2/compare/v0.7.8...v0.7.9)

- The `BitFlag` trait now includes convenience re-exports for the
constructors of `BitFlags`. This lets you do `MyFlag::from_bits` instead
`BitFlags::<MyFlag>::from_bits` where the type of the flag cannot be
inferred from context (thanks
[@&#8203;ronnodas](https://togithub.com/ronnodas)).
- The documentation now calls out the fact that the implementation of
`PartialOrd` may not be what you expect (reported by
[@&#8203;ronnodas](https://togithub.com/ronnodas)).

</details>

<details>
<summary>rust-cli/env_logger (env_logger)</summary>

###
[`v0.11.3`](https://togithub.com/rust-cli/env_logger/blob/HEAD/CHANGELOG.md#0113---2024-03-05)

[Compare
Source](https://togithub.com/rust-cli/env_logger/compare/v0.11.2...v0.11.3)

##### Features

-   Experimental support for key-value logging behind `unstable-kv`

###
[`v0.11.2`](https://togithub.com/rust-cli/env_logger/blob/HEAD/CHANGELOG.md#0112---2024-02-13)

[Compare
Source](https://togithub.com/rust-cli/env_logger/compare/v0.11.1...v0.11.2)

</details>

<details>
<summary>BurntSushi/ripgrep (ignore)</summary>

###
[`v0.4.22`](https://togithub.com/BurntSushi/ripgrep/compare/ignore-0.4.21...ignore-0.4.22)

[Compare
Source](https://togithub.com/BurntSushi/ripgrep/compare/ignore-0.4.21...ignore-0.4.22)

###
[`v0.4.21`](https://togithub.com/BurntSushi/ripgrep/compare/ignore-0.4.20...ignore-0.4.21)

[Compare
Source](https://togithub.com/BurntSushi/ripgrep/compare/ignore-0.4.20...ignore-0.4.21)

</details>

<details>
<summary>rust-lang/log (log)</summary>

###
[`v0.4.21`](https://togithub.com/rust-lang/log/blob/HEAD/CHANGELOG.md#0421---2024-02-27)

[Compare
Source](https://togithub.com/rust-lang/log/compare/0.4.20...0.4.21)

</details>

<details>
<summary>serde-rs/serde (serde)</summary>

###
[`v1.0.203`](https://togithub.com/serde-rs/serde/releases/tag/v1.0.203)

[Compare
Source](https://togithub.com/serde-rs/serde/compare/v1.0.202...v1.0.203)

- Documentation improvements
([#&#8203;2747](https://togithub.com/serde-rs/serde/issues/2747))

###
[`v1.0.202`](https://togithub.com/serde-rs/serde/releases/tag/v1.0.202)

[Compare
Source](https://togithub.com/serde-rs/serde/compare/v1.0.201...v1.0.202)

- Provide public access to RenameAllRules in serde_derive_internals
([#&#8203;2743](https://togithub.com/serde-rs/serde/issues/2743))

###
[`v1.0.201`](https://togithub.com/serde-rs/serde/releases/tag/v1.0.201)

[Compare
Source](https://togithub.com/serde-rs/serde/compare/v1.0.200...v1.0.201)

- Resolve unexpected_cfgs warning
([#&#8203;2737](https://togithub.com/serde-rs/serde/issues/2737))

###
[`v1.0.200`](https://togithub.com/serde-rs/serde/releases/tag/v1.0.200)

[Compare
Source](https://togithub.com/serde-rs/serde/compare/v1.0.199...v1.0.200)

- Fix formatting of "invalid type" and "invalid value" deserialization
error messages containing NaN or infinite floats
([#&#8203;2733](https://togithub.com/serde-rs/serde/issues/2733), thanks
[@&#8203;jamessan](https://togithub.com/jamessan))

###
[`v1.0.199`](https://togithub.com/serde-rs/serde/releases/tag/v1.0.199)

[Compare
Source](https://togithub.com/serde-rs/serde/compare/v1.0.198...v1.0.199)

- Fix ambiguous associated item when `forward_to_deserialize_any!` is
used on an enum with `Error` variant
([#&#8203;2732](https://togithub.com/serde-rs/serde/issues/2732), thanks
[@&#8203;aatifsyed](https://togithub.com/aatifsyed))

###
[`v1.0.198`](https://togithub.com/serde-rs/serde/releases/tag/v1.0.198)

[Compare
Source](https://togithub.com/serde-rs/serde/compare/v1.0.197...v1.0.198)

- Support serializing and deserializing `Saturating<T>`
([#&#8203;2709](https://togithub.com/serde-rs/serde/issues/2709), thanks
[@&#8203;jbethune](https://togithub.com/jbethune))

###
[`v1.0.197`](https://togithub.com/serde-rs/serde/releases/tag/v1.0.197)

[Compare
Source](https://togithub.com/serde-rs/serde/compare/v1.0.196...v1.0.197)

-   Fix unused_imports warnings when compiled by rustc 1.78
- Optimize code size of some Display impls
([#&#8203;2697](https://togithub.com/serde-rs/serde/issues/2697), thanks
[@&#8203;nyurik](https://togithub.com/nyurik))

###
[`v1.0.196`](https://togithub.com/serde-rs/serde/releases/tag/v1.0.196)

[Compare
Source](https://togithub.com/serde-rs/serde/compare/v1.0.195...v1.0.196)

- Improve formatting of "invalid type" error messages involving floats
([#&#8203;2682](https://togithub.com/serde-rs/serde/issues/2682))

###
[`v1.0.195`](https://togithub.com/serde-rs/serde/releases/tag/v1.0.195)

[Compare
Source](https://togithub.com/serde-rs/serde/compare/v1.0.194...v1.0.195)

- Prevent remote definitions of tuple struct or tuple variant from
triggering dead_code warning
([#&#8203;2671](https://togithub.com/serde-rs/serde/issues/2671))

###
[`v1.0.194`](https://togithub.com/serde-rs/serde/releases/tag/v1.0.194)

[Compare
Source](https://togithub.com/serde-rs/serde/compare/v1.0.193...v1.0.194)

- Update proc-macro2 to fix caching issue when using a rustc-wrapper
such as sccache

###
[`v1.0.193`](https://togithub.com/serde-rs/serde/releases/tag/v1.0.193)

[Compare
Source](https://togithub.com/serde-rs/serde/compare/v1.0.192...v1.0.193)

- Fix field names used for the deserialization of `RangeFrom` and
`RangeTo`
([#&#8203;2653](https://togithub.com/serde-rs/serde/issues/2653),
[#&#8203;2654](https://togithub.com/serde-rs/serde/issues/2654),
[#&#8203;2655](https://togithub.com/serde-rs/serde/issues/2655), thanks
[@&#8203;emilbonnek](https://togithub.com/emilbonnek))

###
[`v1.0.192`](https://togithub.com/serde-rs/serde/releases/tag/v1.0.192)

[Compare
Source](https://togithub.com/serde-rs/serde/compare/v1.0.191...v1.0.192)

- Allow internal tag field in untagged variant
([#&#8203;2646](https://togithub.com/serde-rs/serde/issues/2646), thanks
[@&#8203;robsdedude](https://togithub.com/robsdedude))

###
[`v1.0.191`](https://togithub.com/serde-rs/serde/releases/tag/v1.0.191)

[Compare
Source](https://togithub.com/serde-rs/serde/compare/v1.0.190...v1.0.191)

-   Documentation improvements

###
[`v1.0.190`](https://togithub.com/serde-rs/serde/releases/tag/v1.0.190)

[Compare
Source](https://togithub.com/serde-rs/serde/compare/v1.0.189...v1.0.190)

- Preserve NaN sign when deserializing f32 from f64 or vice versa
([#&#8203;2637](https://togithub.com/serde-rs/serde/issues/2637))

</details>

<details>
<summary>serde-rs/json (serde_json)</summary>

###
[`v1.0.117`](https://togithub.com/serde-rs/json/releases/tag/v1.0.117)

[Compare
Source](https://togithub.com/serde-rs/json/compare/v1.0.116...v1.0.117)

- Resolve unexpected_cfgs warning
([#&#8203;1130](https://togithub.com/serde-rs/json/issues/1130))

###
[`v1.0.116`](https://togithub.com/serde-rs/json/releases/tag/v1.0.116)

[Compare
Source](https://togithub.com/serde-rs/json/compare/v1.0.115...v1.0.116)

- Make module structure comprehensible to static analysis
([#&#8203;1124](https://togithub.com/serde-rs/json/issues/1124), thanks
[@&#8203;mleonhard](https://togithub.com/mleonhard))

###
[`v1.0.115`](https://togithub.com/serde-rs/json/releases/tag/v1.0.115)

[Compare
Source](https://togithub.com/serde-rs/json/compare/v1.0.114...v1.0.115)

-   Documentation improvements

###
[`v1.0.114`](https://togithub.com/serde-rs/json/releases/tag/v1.0.114)

[Compare
Source](https://togithub.com/serde-rs/json/compare/v1.0.113...v1.0.114)

-   Fix unused_imports warnings when compiled by rustc 1.78

###
[`v1.0.113`](https://togithub.com/serde-rs/json/releases/tag/v1.0.113)

[Compare
Source](https://togithub.com/serde-rs/json/compare/v1.0.112...v1.0.113)

- Add `swap_remove` and `shift_remove` methods on Map
([#&#8203;1109](https://togithub.com/serde-rs/json/issues/1109))

###
[`v1.0.112`](https://togithub.com/serde-rs/json/releases/tag/v1.0.112)

[Compare
Source](https://togithub.com/serde-rs/json/compare/v1.0.111...v1.0.112)

- Improve formatting of "invalid type" error messages involving floats
([#&#8203;1107](https://togithub.com/serde-rs/json/issues/1107))

###
[`v1.0.111`](https://togithub.com/serde-rs/json/releases/tag/v1.0.111)

[Compare
Source](https://togithub.com/serde-rs/json/compare/v1.0.110...v1.0.111)

- Improve floating point parsing performance on loongarch64
([#&#8203;1100](https://togithub.com/serde-rs/json/issues/1100), thanks
[@&#8203;heiher](https://togithub.com/heiher))

###
[`v1.0.110`](https://togithub.com/serde-rs/json/releases/tag/v1.0.110)

[Compare
Source](https://togithub.com/serde-rs/json/compare/v1.0.109...v1.0.110)

- Update proc-macro2 to fix caching issue when using a rustc-wrapper
such as sccache

###
[`v1.0.109`](https://togithub.com/serde-rs/json/releases/tag/v1.0.109)

[Compare
Source](https://togithub.com/serde-rs/json/compare/v1.0.108...v1.0.109)

-   Documentation improvements

###
[`v1.0.108`](https://togithub.com/serde-rs/json/releases/tag/v1.0.108)

[Compare
Source](https://togithub.com/serde-rs/json/compare/v1.0.107...v1.0.108)

- Documentation improvements
([#&#8203;1075](https://togithub.com/serde-rs/json/issues/1075),
[#&#8203;1081](https://togithub.com/serde-rs/json/issues/1081),
[#&#8203;1082](https://togithub.com/serde-rs/json/issues/1082), thanks
[@&#8203;dimo414](https://togithub.com/dimo414) and
[@&#8203;fritzrehde](https://togithub.com/fritzrehde))

</details>

<details>
<summary>assert-rs/trycmd (snapbox)</summary>

###
[`v0.6.7`](https://togithub.com/assert-rs/trycmd/compare/snapbox-v0.6.6...snapbox-v0.6.7)

[Compare
Source](https://togithub.com/assert-rs/trycmd/compare/snapbox-v0.6.6...snapbox-v0.6.7)

###
[`v0.6.6`](https://togithub.com/assert-rs/trycmd/compare/snapbox-v0.6.5...snapbox-v0.6.6)

[Compare
Source](https://togithub.com/assert-rs/trycmd/compare/snapbox-v0.6.5...snapbox-v0.6.6)

</details>

<details>
<summary>dtolnay/thiserror (thiserror)</summary>

###
[`v1.0.61`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.61)

[Compare
Source](https://togithub.com/dtolnay/thiserror/compare/1.0.60...1.0.61)

- Use `core::fmt` and `core::panic` to facilitate `error_in_core`
support
([#&#8203;299](https://togithub.com/dtolnay/thiserror/issues/299),
thanks [@&#8203;jordens](https://togithub.com/jordens))

###
[`v1.0.60`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.60)

[Compare
Source](https://togithub.com/dtolnay/thiserror/compare/1.0.59...1.0.60)

- Resolve unexpected_cfgs warning
([#&#8203;298](https://togithub.com/dtolnay/thiserror/issues/298))

###
[`v1.0.59`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.59)

[Compare
Source](https://togithub.com/dtolnay/thiserror/compare/1.0.58...1.0.59)

- Unblock testing of rustc `debug-fmt-detail` option
([#&#8203;297](https://togithub.com/dtolnay/thiserror/issues/297))

###
[`v1.0.58`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.58)

[Compare
Source](https://togithub.com/dtolnay/thiserror/compare/1.0.57...1.0.58)

- Make backtrace support available when using -Dwarnings
([#&#8203;292](https://togithub.com/dtolnay/thiserror/issues/292))

###
[`v1.0.57`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.57)

[Compare
Source](https://togithub.com/dtolnay/thiserror/compare/1.0.56...1.0.57)

- Generate more efficient `Display` impl for error message which do not
contain any interpolated value
([#&#8203;286](https://togithub.com/dtolnay/thiserror/issues/286),
thanks [@&#8203;nyurik](https://togithub.com/nyurik))

###
[`v1.0.56`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.56)

[Compare
Source](https://togithub.com/dtolnay/thiserror/compare/1.0.55...1.0.56)

- Update proc-macro2 to fix caching issue when using a rustc-wrapper
such as sccache

###
[`v1.0.55`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.55)

[Compare
Source](https://togithub.com/dtolnay/thiserror/compare/1.0.54...1.0.55)

- Work around improperly cached build script result by sccache – second
attempt
([#&#8203;280](https://togithub.com/dtolnay/thiserror/issues/280))

###
[`v1.0.54`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.54)

[Compare
Source](https://togithub.com/dtolnay/thiserror/compare/1.0.53...1.0.54)

- Work around improperly cached build script result by sccache – first
attempt
([#&#8203;279](https://togithub.com/dtolnay/thiserror/issues/279))

###
[`v1.0.53`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.53)

[Compare
Source](https://togithub.com/dtolnay/thiserror/compare/1.0.52...1.0.53)

- Reduce spurious rebuilds under RustRover IDE when using a nightly
toolchain
([#&#8203;270](https://togithub.com/dtolnay/thiserror/issues/270))

###
[`v1.0.52`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.52)

[Compare
Source](https://togithub.com/dtolnay/thiserror/compare/1.0.51...1.0.52)

- Fix interaction with RUSTC_BOOTSTRAP
([#&#8203;269](https://togithub.com/dtolnay/thiserror/issues/269))

###
[`v1.0.51`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.51)

[Compare
Source](https://togithub.com/dtolnay/thiserror/compare/1.0.50...1.0.51)

- Improve diagnostics when an invalid attribute previously caused
thiserror to generate no `Error` impl
([#&#8203;266](https://togithub.com/dtolnay/thiserror/issues/266))

###
[`v1.0.50`](https://togithub.com/dtolnay/thiserror/releases/tag/1.0.50)

[Compare
Source](https://togithub.com/dtolnay/thiserror/compare/1.0.49...1.0.50)

- Improve diagnostic when a #\[source], #\[from], or #\[transparant]
attribute refers to a type that has no std::error::Error impl
([#&#8203;258](https://togithub.com/dtolnay/thiserror/issues/258),
thanks [@&#8203;de-vri-es](https://togithub.com/de-vri-es))

</details>

<details>
<summary>toml-rs/toml (toml)</summary>

###
[`v0.8.13`](https://togithub.com/toml-rs/toml/compare/toml-v0.8.12...toml-v0.8.13)

[Compare
Source](https://togithub.com/toml-rs/toml/compare/toml-v0.8.12...toml-v0.8.13)

</details>

<details>
<summary>winnow-rs/winnow (winnow)</summary>

###
[`v0.6.9`](https://togithub.com/winnow-rs/winnow/blob/HEAD/CHANGELOG.md#069---2024-05-28)

[Compare
Source](https://togithub.com/winnow-rs/winnow/compare/v0.6.8...v0.6.9)

##### Compatibility

-   Bump MSRV to 1.65

##### Features

-   Add `Debug` impls for `stream::Stateful` and `stream::Recoverable`

###
[`v0.6.8`](https://togithub.com/winnow-rs/winnow/blob/HEAD/CHANGELOG.md#068---2024-05-06)

[Compare
Source](https://togithub.com/winnow-rs/winnow/compare/v0.6.7...v0.6.8)

##### Features

-   Support `&mut [impl Parser]` within `alt`

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "before 5am on the first day of the
month" (UTC), Automerge - At any time (no schedule defined).

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the
rebase/retry checkbox.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get
[config help](https://togithub.com/renovatebot/renovate/discussions) if
that's undesired.

---

- [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check
this box

---

This PR has been generated by [Mend
Renovate](https://www.mend.io/free-developer-tools/renovate/). View
repository job log
[here](https://developer.mend.io/github/crate-ci/typos).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzNy4zNzcuOCIsInVwZGF0ZWRJblZlciI6IjM3LjM3Ny44IiwidGFyZ2V0QnJhbmNoIjoibWFzdGVyIiwibGFiZWxzIjpbXX0=-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-06-01 02:58:27 +00:00
.cargo chore: Don't set rustflags by default 2023-03-29 14:46:23 -05:00
.github chore(deps): Update Rust Stable to v1.78 (#1011) 2024-05-02 17:09:21 +00:00
action chore: Release 2024-04-30 14:39:22 -05:00
benchsuite test: Fix typo 2021-10-25 10:29:37 -05:00
crates chore: Upgrade to snapbox 0.6 2024-05-27 22:11:47 -05:00
docs chore: Release 2024-04-30 14:39:22 -05:00
.clippy.toml chore(ci): Allow prelude wildcard imports 2024-04-26 11:36:19 -05:00
.dockerignore New dockerfile for #427. Builds on demand 2022-02-10 21:05:57 -08:00
.gitignore chore: First step 2023-03-29 14:33:22 -05:00
.ignore feat: Support english dialects 2020-08-20 19:37:37 -05:00
.pre-commit-config.yaml chore: Update from '_rust/main' 2023-12-04 11:08:40 -06:00
.pre-commit-hooks.yaml Add "--force-exclude" option 2023-10-09 19:39:11 +00:00
action.yml fix(action): Don't require sudo 2023-05-22 13:30:04 -05:00
Cargo.lock chore(deps): Update compatible (#1021) 2024-06-01 02:58:27 +00:00
Cargo.toml chore: Update from _rust/main template 2024-04-30 11:28:23 -05:00
CHANGELOG.md chore: Release 2024-04-30 14:39:22 -05:00
committed.toml chore: First step 2023-03-29 14:33:22 -05:00
CONTRIBUTING.md docs(contrib): Note the pinned dict issue 2023-03-13 15:05:30 -05:00
deny.toml chore: Approve ISC 2023-09-07 09:33:44 -05:00
Dockerfile Merge pull request #639 from scop/feat/docker-entrypoint 2022-12-19 08:06:08 -06:00
LICENSE-APACHE chore: First step 2023-03-29 14:33:22 -05:00
LICENSE-MIT chore: First step 2023-03-29 14:33:22 -05:00
README.md Fix Typo in README: "identifer" to "identifier" 2024-03-06 08:33:15 +09:00
release.toml chore: Update release process 2023-03-29 14:51:13 -05:00
setup.py chore: Release 2024-04-30 14:39:22 -05:00

typos

Source code spell checker

Finds and corrects spelling mistakes among source code:

  • Fast enough to run on monorepos
  • Low false positives so you can run on PRs

Screenshot

codecov Documentation License Crates Status

Dual-licensed under MIT or Apache 2.0

Documentation

Install

Download a pre-built binary (installable via gh-install).

Or use rust to install:

cargo install typos-cli

Or use Homebrew to install:

brew install typos-cli

Or use Conda to install:

conda install typos

Or use Pacman to install:

sudo pacman -S typos

Getting Started

Most commonly, you'll either want to see what typos are available with

typos

Or have them fixed

typos --write-changes
typos -w

If there is any ambiguity (multiple possible corrections), typos will just report it to the user and move on.

False-positives

Sometimes, what looks like a typo is intentional, like with people's names, acronyms, or localized content.

To mark a word or an identifier (grouping of words) as valid, add it your _typos.toml by declaring itself as the valid spelling:

[default]
extend-ignore-identifiers-re = [
    # *sigh* this just isn't worth the cost of fixing
    "AttributeID.*Supress.*",
]

[default.extend-identifiers]
# *sigh* this just isn't worth the cost of fixing
AttributeIDSupressMenu = "AttributeIDSupressMenu"

[default.extend-words]
# Don't correct the surname "Teh"
teh = "teh"

For cases like localized content, you can disable spell checking of file contents while still checking the file name:

[type.po]
extend-glob = ["*.po"]
check-file = false

(run typos --type-list to see configured file types)

If you need some more flexibility, you can completely exclude some files from consideration:

[files]
extend-exclude = ["localized/*.po"]

Integrations

Custom

typos provides several building blocks for custom native integrations

  • - reads from stdin, --write-changes will be written to stdout
  • --diff to provide a diff
  • --format json to get jsonlines with exit code 0 on no errors, code 2 on typos, anything else is an error.

Examples:

# Read file from stdin, write corrected version to stdout
typos - --write-changes
# Creates a diff of what would change
typos dir/file --diff
# Fully programmatic control
typos dir/file --format json

Debugging

You can see what the effective config looks like by running

typos --dump-config -

You can then see how typos is processing your project with

typos --files
typos --identifiers
typos --words

If you need to dig in more, you can enable debug logging with -v

FAQ

Why was ... not corrected?

Does the file show up in typos --files? If not, check your config with typos --dump-config -. The [files] table controls how we walk files. If you are using files.extend-exclude, are you running into #593? If you are using files.ignore-vcs = true, is the file in your .gitignore but git tracks it anyways? Prefer allowing the file explicitly (see #909).

Does the identifier show up in typos --identifiers or the word show up in typos --words? If not, it might be subject to one of typos' heuristics for detecting non-words (like hashes) or unambiguous words (like words after a \ escape).

If it is showing up, likely typos doesn't know about it yet.

typos maintains a list of known typo corrections to keep the false positive count low so it can safely run unassisted.

This is in contrast to most spell checking UIs people use where there is a known list of valid words. In this case, the spell checker tries to guess your intent by finding the closest-looking word. It then has a gauge for when a word isn't close enough and assumes you know best. The user has the opportunity to verify these corrections and explicitly allow or reject them.

For more on the trade offs of these approaches, see Design.