Commit Graph
3019 Commits
Author SHA1 Message Date
Ed Page aa0f2e9db7 Merge pull request #1618 from epage/template
chore: Update from _rust template
2026-09-18 10:25:52 -05:00
Ed Page 131b374bc5 style: Make clippy happy 2026-09-18 10:11:57 -05:00
Ed Page e77dc9d094 chore: Update from _rust template 2026-09-18 10:11:50 -05:00
Ed Page 512fc24f32 chore: Release v1.50.2 2026-09-15 08:45:21 -05:00
Ed Page 982cd9f770 docs: Update changelog 2026-09-15 08:45:08 -05:00
Ed Page 6edd83eb2e Merge pull request #1617 from nightah/fix-1444-walk-canonicalize-panic
fix(cli): Don't panic when canonicalize fails mid-walk
2026-09-12 15:03:00 -05:00
Amir ZarrinkafshandAlexander Kireev 160d792805 fix(cli): Don't panic when canonicalize fails mid-walk
`walk_entry` canonicalizes each entry's path to look up its policy, and routes a failure through `report_result`, which reports the error and then substitutes `T::default()` -- for a `PathBuf` that is the empty path. `ConfigEngine` never saw that path during the walk, so the `policy()` call immediately after aborts the process: a debug build trips the `debug_assert!` on `path.is_absolute()`, a release build reaches the `expect` below it.

Skip the entry after reporting the error instead, matching how a walk error is already handled a few lines above. A file removed by another process mid-scan is enough to reach this, so an abort here takes out an otherwise healthy run.

Fixes #1444 and Closes #1577

Co-authored-by: Alexander Kireev <ak.chatman.media@gmail.com>
Signed-off-by: Amir Zarrinkafsh <3339418+nightah@users.noreply.github.com>
2026-09-11 12:00:46 +10:00
Amir ZarrinkafshandAlexander Kireev 25761c7bf3 test(cli): Show panic when canonicalize fails mid-walk
Co-authored-by: Alexander Kireev <ak.chatman.media@gmail.com>
Signed-off-by: Amir Zarrinkafsh <3339418+nightah@users.noreply.github.com>
2026-09-11 11:59:49 +10:00
Ed Page d43b6c087a chore: Release v1.50.1 2026-09-01 11:51:23 -05:00
Ed Page 84aa9630a9 docs: Update changelog 2026-09-01 11:51:08 -05:00
Ed Page 79e6746de5 Merge pull request #1608 from nightcityblade/fix/python-asend
fix: allow Python asend identifier
2026-09-01 11:50:08 -05:00
Ed Page aba69857f2 Merge pull request #1616 from crate-ci/renovate/clap-cargo-0.x
chore(deps): Update Rust crate clap-cargo to 0.19.0
2026-09-01 08:04:57 -05:00
Ed Page 824cc73f5f chore(deps): Update pre-commit hook crate-ci/typos to v1.50.0 (#100)
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [crate-ci/typos](https://redirect.github.com/crate-ci/typos) |
repository | minor | `v1.48.0` → `v1.50.0` |

Note: The `pre-commit` manager in Renovate is not supported by the
`pre-commit` maintainers or community. Please do not report any problems
there, instead [create a Discussion in the Renovate
repository](https://redirect.github.com/renovatebot/renovate/discussions/new)
if you have any questions.

---

### Release Notes

<details>
<summary>crate-ci/typos (crate-ci/typos)</summary>

###
[`v1.50.0`](https://redirect.github.com/crate-ci/typos/releases/tag/v1.50.0)

[Compare
Source](https://redirect.github.com/crate-ci/typos/compare/v1.49.1...v1.50.0)

#### \[1.50.0] - 2026-08-28

##### Features

- Updated the dictionary with the [August
2026](https://redirect.github.com/crate-ci/typos/issues/1587) changes

###
[`v1.49.1`](https://redirect.github.com/crate-ci/typos/releases/tag/v1.49.1)

[Compare
Source](https://redirect.github.com/crate-ci/typos/compare/v1.49.0...v1.49.1)

#### \[1.49.1] - 2026-08-27

##### Fixes

- Don't correct the brand name `HashiCorp`

###
[`v1.49.0`](https://redirect.github.com/crate-ci/typos/releases/tag/v1.49.0)

[Compare
Source](https://redirect.github.com/crate-ci/typos/compare/v1.48.0...v1.49.0)

#### \[1.49.0] - 2026-08-03

##### Features

- Updated the dictionary with the [July
2026](https://redirect.github.com/crate-ci/typos/issues/1573) changes

</details>

---

### Configuration

📅 **Schedule**: (UTC)

- Branch creation
  - "before 5am on the first day of the month"
- Automerge
  - At any time (no schedule defined)

🚦 **Automerge**: Disabled by config. Please merge this manually once you
are satisfied.

♻ **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.

---

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

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/epage/_rust).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0NC40OS4wIiwidXBkYXRlZEluVmVyIjoiNDQuNDkuMCIsInRhcmdldEJyYW5jaCI6Im1haW4iLCJsYWJlbHMiOltdfQ==-->
2026-09-01 07:03:33 -05:00
renovate[bot] 92ed824f4f chore(deps): Update compatible (#1615)
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [bstr](https://redirect.github.com/BurntSushi/bstr) | dependencies |
patch | `1.13.0` → `1.13.1` |
| [clap](https://redirect.github.com/clap-rs/clap) | dependencies |
patch | `4.6.5` → `4.6.6` |
|
[globset](https://redirect.github.com/BurntSushi/ripgrep/tree/master/crates/globset)
([source](https://redirect.github.com/BurntSushi/ripgrep/tree/HEAD/crates/globset))
| dependencies | patch | `0.4.19` → `0.4.20` |
|
[ignore](https://redirect.github.com/BurntSushi/ripgrep/tree/master/crates/ignore)
([source](https://redirect.github.com/BurntSushi/ripgrep/tree/HEAD/crates/ignore))
| dependencies | patch | `0.4.32` → `0.4.33` |
| [indexmap](https://redirect.github.com/indexmap-rs/indexmap) |
dev-dependencies | patch | `2.14.0` → `2.14.1` |
| [log](https://redirect.github.com/rust-lang/log) | dependencies |
patch | `0.4.33` → `0.4.34` |

---

### Release Notes

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

###
[`v1.13.1`](https://redirect.github.com/BurntSushi/bstr/compare/1.13.0...1.13.1)

[Compare
Source](https://redirect.github.com/BurntSushi/bstr/compare/1.13.0...1.13.1)

</details>

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

###
[`v4.6.6`](https://redirect.github.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#466---2026-08-06)

[Compare
Source](https://redirect.github.com/clap-rs/clap/compare/v4.6.5...v4.6.6)

##### Features

- Add `Command::get_overridden_usage`

</details>

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

###
[`v0.4.20`](https://redirect.github.com/BurntSushi/ripgrep/compare/globset-0.4.19...globset-0.4.20)

[Compare
Source](https://redirect.github.com/BurntSushi/ripgrep/compare/globset-0.4.19...globset-0.4.20)

</details>

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

###
[`v0.4.33`](https://redirect.github.com/BurntSushi/ripgrep/compare/ignore-0.4.32...ignore-0.4.33)

[Compare
Source](https://redirect.github.com/BurntSushi/ripgrep/compare/ignore-0.4.32...ignore-0.4.33)

</details>

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

###
[`v2.14.1`](https://redirect.github.com/indexmap-rs/indexmap/blob/HEAD/RELEASES.md#2141-2026-08-28)

[Compare
Source](https://redirect.github.com/indexmap-rs/indexmap/compare/2.14.0...2.14.1)

- Simplify comparisons where `Equivalent` isn't needed (`Q = K`).
- Unify index assertions for bounds checks.
- Fix (or `expect`) clippy lints.

</details>

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

###
[`v0.4.34`](https://redirect.github.com/rust-lang/log/blob/HEAD/CHANGELOG.md#0434---2026-08-22)

[Compare
Source](https://redirect.github.com/rust-lang/log/compare/0.4.33...0.4.34)

</details>

---

### Configuration

📅 **Schedule**: (UTC)

- Branch creation
  - "before 5am on the first day of the month"
- Automerge
  - At any time (no schedule defined)

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR is behind base branch, or you tick the
rebase/retry checkbox.

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

---

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

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/crate-ci/typos).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0NC40OS4wIiwidXBkYXRlZEluVmVyIjoiNDQuNDkuMCIsInRhcmdldEJyYW5jaCI6Im1hc3RlciIsImxhYmVscyI6W119-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-09-01 02:31:54 +00:00
renovate[bot] e575a6c8a0 chore(deps): Update Rust crate clap-cargo to 0.19.0 2026-09-01 02:21:45 +00:00
renovate[bot] c08d5dce77 chore(deps): Update compatible (actions) (#99)
This PR contains the following updates:

| Package | Type | Update | Change | Pending |
|---|---|---|---|---|
| [Swatinem/rust-cache](https://redirect.github.com/Swatinem/rust-cache)
| action | patch | `v2.9.1` → `v2.9.2` | |
|
[actions/upload-code-coverage](https://redirect.github.com/actions/upload-code-coverage)
| action | patch | `v1.4.1` → `v1.4.2` | |
| [crate-ci/typos](https://redirect.github.com/crate-ci/typos) | action
| minor | `v1.48.0` → `v1.50.0` | |
|
[github/codeql-action](https://redirect.github.com/github/codeql-action)
| action | patch | `v4.37.4` → `v4.37.9` | |
|
[taiki-e/install-action](https://redirect.github.com/taiki-e/install-action)
| action | minor | `v2.85.5` → `v2.87.0` | `v2.87.2` (+1) |
|
[zizmorcore/zizmor-action](https://redirect.github.com/zizmorcore/zizmor-action)
| action | patch | `v0.6.1` → `v0.6.2` | `v0.6.3` |

---

### Release Notes

<details>
<summary>Swatinem/rust-cache (Swatinem/rust-cache)</summary>

###
[`v2.9.2`](https://redirect.github.com/Swatinem/rust-cache/releases/tag/v2.9.2)

[Compare
Source](https://redirect.github.com/Swatinem/rust-cache/compare/v2.9.1...v2.9.2)

##### What's Changed

- Typofix by [@&#8203;23Skidoo](https://redirect.github.com/23Skidoo) in
[#&#8203;316](https://redirect.github.com/Swatinem/rust-cache/pull/316)
- fix: include target names in build/ and .fingerprint/ cleanup by
[@&#8203;eitsupi](https://redirect.github.com/eitsupi) in
[#&#8203;317](https://redirect.github.com/Swatinem/rust-cache/pull/317)
- fix: include cdylib/rlib/dylib/staticlib targets in build and
fingerprint cleanup by
[@&#8203;eitsupi](https://redirect.github.com/eitsupi) in
[#&#8203;320](https://redirect.github.com/Swatinem/rust-cache/pull/320)
- Scan content of `$CARGO_HOME/bin` on restore instead of relying on
`cargo install` metadata by
[@&#8203;clechasseur](https://redirect.github.com/clechasseur) in
[#&#8203;325](https://redirect.github.com/Swatinem/rust-cache/pull/325)
- docs: Update checkout action version to latest by
[@&#8203;sondrelg](https://redirect.github.com/sondrelg) in
[#&#8203;345](https://redirect.github.com/Swatinem/rust-cache/pull/345)
- Fix Windows cache path validation after Rollup migration by
[@&#8203;eitsupi](https://redirect.github.com/eitsupi) in
[#&#8203;355](https://redirect.github.com/Swatinem/rust-cache/pull/355)
- fix: support Cargo V2 build dir layout by
[@&#8203;claytonwramsey](https://redirect.github.com/claytonwramsey) in
[#&#8203;371](https://redirect.github.com/Swatinem/rust-cache/pull/371)

##### New Contributors

- [@&#8203;23Skidoo](https://redirect.github.com/23Skidoo) made their
first contribution in
[#&#8203;316](https://redirect.github.com/Swatinem/rust-cache/pull/316)
- [@&#8203;eitsupi](https://redirect.github.com/eitsupi) made their
first contribution in
[#&#8203;317](https://redirect.github.com/Swatinem/rust-cache/pull/317)
- [@&#8203;clechasseur](https://redirect.github.com/clechasseur) made
their first contribution in
[#&#8203;325](https://redirect.github.com/Swatinem/rust-cache/pull/325)
- [@&#8203;sondrelg](https://redirect.github.com/sondrelg) made their
first contribution in
[#&#8203;345](https://redirect.github.com/Swatinem/rust-cache/pull/345)
- [@&#8203;claytonwramsey](https://redirect.github.com/claytonwramsey)
made their first contribution in
[#&#8203;371](https://redirect.github.com/Swatinem/rust-cache/pull/371)

**Full Changelog**:
<https://github.com/Swatinem/rust-cache/compare/v2.9.1...v2.9.2>

</details>

<details>
<summary>actions/upload-code-coverage
(actions/upload-code-coverage)</summary>

###
[`v1.4.2`](https://redirect.github.com/actions/upload-code-coverage/compare/v1.4.1...v1.4.2)

[Compare
Source](https://redirect.github.com/actions/upload-code-coverage/compare/v1.4.1...v1.4.2)

</details>

<details>
<summary>crate-ci/typos (crate-ci/typos)</summary>

###
[`v1.50.0`](https://redirect.github.com/crate-ci/typos/releases/tag/v1.50.0)

[Compare
Source](https://redirect.github.com/crate-ci/typos/compare/v1.49.1...v1.50.0)

#### \[1.50.0] - 2026-08-28

##### Features

- Updated the dictionary with the [August
2026](https://redirect.github.com/crate-ci/typos/issues/1587) changes

###
[`v1.49.1`](https://redirect.github.com/crate-ci/typos/releases/tag/v1.49.1)

[Compare
Source](https://redirect.github.com/crate-ci/typos/compare/v1.49.0...v1.49.1)

#### \[1.49.1] - 2026-08-27

##### Fixes

- Don't correct the brand name `HashiCorp`

###
[`v1.49.0`](https://redirect.github.com/crate-ci/typos/releases/tag/v1.49.0)

[Compare
Source](https://redirect.github.com/crate-ci/typos/compare/v1.48.0...v1.49.0)

#### \[1.49.0] - 2026-08-03

##### Features

- Updated the dictionary with the [July
2026](https://redirect.github.com/crate-ci/typos/issues/1573) changes

</details>

<details>
<summary>github/codeql-action (github/codeql-action)</summary>

###
[`v4.37.9`](https://redirect.github.com/github/codeql-action/releases/tag/v4.37.9)

[Compare
Source](https://redirect.github.com/github/codeql-action/compare/v4.37.8...v4.37.9)

- Update default CodeQL bundle version to
[2.26.4](https://redirect.github.com/github/codeql-action/releases/tag/codeql-bundle-v2.26.4).
[#&#8203;4106](https://redirect.github.com/github/codeql-action/pull/4106)

###
[`v4.37.8`](https://redirect.github.com/github/codeql-action/releases/tag/v4.37.8)

[Compare
Source](https://redirect.github.com/github/codeql-action/compare/v4.37.7...v4.37.8)

No user facing changes.

###
[`v4.37.7`](https://redirect.github.com/github/codeql-action/releases/tag/v4.37.7)

[Compare
Source](https://redirect.github.com/github/codeql-action/compare/v4.37.6...v4.37.7)

- Update default CodeQL bundle version to
[2.26.3](https://redirect.github.com/github/codeql-action/releases/tag/codeql-bundle-v2.26.3).
[#&#8203;4085](https://redirect.github.com/github/codeql-action/pull/4085)

###
[`v4.37.6`](https://redirect.github.com/github/codeql-action/releases/tag/v4.37.6)

[Compare
Source](https://redirect.github.com/github/codeql-action/compare/v4.37.5...v4.37.6)

- Changed the default filepath for the new remote file address format
that was introduced in CodeQL Action 4.37.0 / 3.37.0 to
`.github/codeql-config.yml` to align it with the suggested path that is
used elsewhere.
[#&#8203;4070](https://redirect.github.com/github/codeql-action/pull/4070)

###
[`v4.37.5`](https://redirect.github.com/github/codeql-action/releases/tag/v4.37.5)

[Compare
Source](https://redirect.github.com/github/codeql-action/compare/v4.37.4...v4.37.5)

- Fixed a bug where a network error while streaming the download of the
CodeQL bundle could terminate the `init` Action instead of falling back
to downloading the bundle before extracting it.
[#&#8203;4061](https://redirect.github.com/github/codeql-action/pull/4061)

</details>

<details>
<summary>taiki-e/install-action (taiki-e/install-action)</summary>

###
[`v2.87.0`](https://redirect.github.com/taiki-e/install-action/releases/tag/v2.87.0):
2.87.0

[Compare
Source](https://redirect.github.com/taiki-e/install-action/compare/v2.86.8...v2.87.0)

- Support `kache`.
([#&#8203;1980](https://redirect.github.com/taiki-e/install-action/pull/1980),
thanks [@&#8203;ChrisJr404](https://redirect.github.com/ChrisJr404))

- Update `vacuum@latest` to 0.30.1.

- Update `uv@latest` to 0.12.6.

- Update `mise@latest` to 2026.8.14.

- Update `editorconfig-checker@latest` to 3.11.2.

###
[`v2.86.8`](https://redirect.github.com/taiki-e/install-action/releases/tag/v2.86.8):
2.86.8

[Compare
Source](https://redirect.github.com/taiki-e/install-action/compare/v2.86.7...v2.86.8)

- Update `wasmtime@latest` to 48.0.1.

- Update `wasm-tools@latest` to 1.258.0.

- Update `oxfmt@latest` to 1.80.0.

- Update `mise@latest` to 2026.8.12.

- Update `kingfisher@latest` to 2.0.0.

- Update `cargo-zigbuild@latest` to 0.23.2.

###
[`v2.86.7`](https://redirect.github.com/taiki-e/install-action/releases/tag/v2.86.7):
2.86.7

[Compare
Source](https://redirect.github.com/taiki-e/install-action/compare/v2.86.6...v2.86.7)

- Update `tombi@latest` to 1.4.1.

- Update `rafn@latest` to 0.1.5.

- Update `cargo-binstall@latest` to 1.22.0.

###
[`v2.86.6`](https://redirect.github.com/taiki-e/install-action/releases/tag/v2.86.6):
2.86.6

[Compare
Source](https://redirect.github.com/taiki-e/install-action/compare/v2.86.5...v2.86.6)

- Update `dprint@latest` to 0.56.1.

- Update `cargo-lambda@latest` to 1.9.2.

- Update `biome@latest` to 2.5.10.

###
[`v2.86.5`](https://redirect.github.com/taiki-e/install-action/releases/tag/v2.86.5):
2.86.5

[Compare
Source](https://redirect.github.com/taiki-e/install-action/compare/v2.86.4...v2.86.5)

- Update `zola@latest` to 0.23.4.

- Update `wasm-tools@latest` to 1.257.1.

- Update `protoc@latest` to 3.36.0.

- Update `mise@latest` to 2026.8.10.

- Update `cargo-dinghy@latest` to 0.8.6.

- Update `wasmtime@latest` to 48.0.0.

###
[`v2.86.4`](https://redirect.github.com/taiki-e/install-action/releases/tag/v2.86.4):
2.86.4

[Compare
Source](https://redirect.github.com/taiki-e/install-action/compare/v2.86.3...v2.86.4)

- Update `oxfmt@latest` to 1.79.0.

- Update `mise@latest` to 2026.8.8.

- Update `martin@latest` to 1.14.0.

- Update `dprint@latest` to 0.56.0.

- Update `cargo-about@latest` to 0.9.2.

- Update `biome@latest` to 2.5.9.

###
[`v2.86.3`](https://redirect.github.com/taiki-e/install-action/releases/tag/v2.86.3):
2.86.3

[Compare
Source](https://redirect.github.com/taiki-e/install-action/compare/v2.86.2...v2.86.3)

- Update `prek@latest` to 0.4.14.

- Update `osv-scanner@latest` to 2.5.1.

- Update `cargo-llvm-cov@latest` to 0.9.0.

###
[`v2.86.2`](https://redirect.github.com/taiki-e/install-action/releases/tag/v2.86.2):
2.86.2

[Compare
Source](https://redirect.github.com/taiki-e/install-action/compare/v2.86.1...v2.86.2)

- Update `uv@latest` to 0.12.5.

- Update `mise@latest` to 2026.8.6.

- Update `cargo-tarpaulin@latest` to 0.37.2.

###
[`v2.86.1`](https://redirect.github.com/taiki-e/install-action/releases/tag/v2.86.1):
2.86.1

[Compare
Source](https://redirect.github.com/taiki-e/install-action/compare/v2.86.0...v2.86.1)

- Fix an issue where `oxfmt` was accidentally installed as
`oxfmt-{target}{exe}`.
([#&#8203;1969](https://redirect.github.com/taiki-e/install-action/pull/1969))

###
[`v2.86.0`](https://redirect.github.com/taiki-e/install-action/releases/tag/v2.86.0):
2.86.0

[Compare
Source](https://redirect.github.com/taiki-e/install-action/compare/v2.85.14...v2.86.0)

- Support `oxfmt`.
([#&#8203;1967](https://redirect.github.com/taiki-e/install-action/pull/1967),
thanks [@&#8203;rami3l](https://redirect.github.com/rami3l))

###
[`v2.85.14`](https://redirect.github.com/taiki-e/install-action/releases/tag/v2.85.14):
2.85.14

[Compare
Source](https://redirect.github.com/taiki-e/install-action/compare/v2.85.13...v2.85.14)

- Update `uv@latest` to 0.12.4.

- Update `trivy@latest` to 0.74.0.

- Update `tombi@latest` to 1.4.0.

- Update `mdbook-mermaid@latest` to 0.17.1.

- Update `cargo-xwin@latest` to 0.23.1.

###
[`v2.85.13`](https://redirect.github.com/taiki-e/install-action/releases/tag/v2.85.13):
2.85.13

[Compare
Source](https://redirect.github.com/taiki-e/install-action/compare/v2.85.12...v2.85.13)

- Update `tombi@latest` to 1.3.3.

- Update `mise@latest` to 2026.8.5.

- Update `kingfisher@latest` to 1.113.0.

- Update `cargo-shear@latest` to 1.13.4.

- Update `bpf-linker@latest` to 0.11.0.

###
[`v2.85.12`](https://redirect.github.com/taiki-e/install-action/releases/tag/v2.85.12):
2.85.12

[Compare
Source](https://redirect.github.com/taiki-e/install-action/compare/v2.85.11...v2.85.12)

- Update `zola@latest` to 0.23.3.

- Update `wasm-tools@latest` to 1.256.0.

- Update `tombi@latest` to 1.2.10.

- Update `syft@latest` to 1.51.0.

- Update `prek@latest` to 0.4.13.

- Update `mise@latest` to 2026.8.4.

- Update `editorconfig-checker@latest` to 3.11.1.

- Update `cargo-tarpaulin@latest` to 0.37.1.

- Update `cargo-rdme@latest` to 2.2.1.

- Update `biome@latest` to 2.5.8.

###
[`v2.85.11`](https://redirect.github.com/taiki-e/install-action/releases/tag/v2.85.11):
2.85.11

[Compare
Source](https://redirect.github.com/taiki-e/install-action/compare/v2.85.10...v2.85.11)

- Update `zola@latest` to 0.23.2.

- Update `wasm-bindgen@latest` to 0.2.127.

- Update `uv@latest` to 0.12.3.

- Update `osv-scanner@latest` to 2.5.0.

- Update `mise@latest` to 2026.8.3.

- Update `kingfisher@latest` to 1.112.0.

- Update `editorconfig-checker@latest` to 3.10.0.

###
[`v2.85.10`](https://redirect.github.com/taiki-e/install-action/releases/tag/v2.85.10):
2.85.10

[Compare
Source](https://redirect.github.com/taiki-e/install-action/compare/v2.85.9...v2.85.10)

- Update `uv@latest` to 0.12.2.

- Update `tombi@latest` to 1.2.7.

- Update `cosign@latest` to 3.1.3.

- Update `coreutils@latest` to 0.10.0.

- Update `cargo-rdme@latest` to 2.2.0.

- Update `cargo-crap@latest` to 0.4.3.

###
[`v2.85.9`](https://redirect.github.com/taiki-e/install-action/releases/tag/v2.85.9):
2.85.9

[Compare
Source](https://redirect.github.com/taiki-e/install-action/compare/v2.85.8...v2.85.9)

- Update `zola@latest` to 0.23.1.

- Update `wild@latest` to 0.10.0.

- Update `mise@latest` to 2026.8.2.

- Update `just@latest` to 1.58.0.

- Update `jaq@latest` to 3.1.1.

- Update `cargo-nextest@latest` to 0.9.143.

- Update `cargo-crap@latest` to 0.4.2.

- Update `biome@latest` to 2.5.7.

###
[`v2.85.8`](https://redirect.github.com/taiki-e/install-action/releases/tag/v2.85.8):
2.85.8

[Compare
Source](https://redirect.github.com/taiki-e/install-action/compare/v2.85.7...v2.85.8)

- Update `zizmor@latest` to 1.29.0.

- Update `typos@latest` to 1.49.0.

- Update `trivy@latest` to 0.73.0.

- Update `tombi@latest` to 1.2.6.

- Update `prek@latest` to 0.4.12.

- Update `mise@latest` to 2026.8.1.

- Update `convco@latest` to 0.7.1.

- Update `cargo-semver-checks@latest` to 0.50.0.

- Update `cargo-crap@latest` to 0.4.1.

###
[`v2.85.7`](https://redirect.github.com/taiki-e/install-action/releases/tag/v2.85.7):
2.85.7

[Compare
Source](https://redirect.github.com/taiki-e/install-action/compare/v2.85.6...v2.85.7)

- Update `wasmtime@latest` to 47.0.3.

- Update `uv@latest` to 0.12.1.

- Update `rclone@latest` to 1.75.0.

- Update `kingfisher@latest` to 1.110.0.

###
[`v2.85.6`](https://redirect.github.com/taiki-e/install-action/releases/tag/v2.85.6):
2.85.6

[Compare
Source](https://redirect.github.com/taiki-e/install-action/compare/v2.85.5...v2.85.6)

- Update `wasm-tools@latest` to 1.255.0.

- Update `tombi@latest` to 1.2.5.

- Update `mise@latest` to 2026.7.18.

- Update `cargo-neat@latest` to 0.5.3.

- Update `cargo-crap@latest` to 0.4.0.

</details>

<details>
<summary>zizmorcore/zizmor-action (zizmorcore/zizmor-action)</summary>

###
[`v0.6.2`](https://redirect.github.com/zizmorcore/zizmor-action/releases/tag/v0.6.2)

[Compare
Source](https://redirect.github.com/zizmorcore/zizmor-action/compare/v0.6.1...v0.6.2)

zizmor 1.29.0 is now the default version.

</details>

---

### Configuration

📅 **Schedule**: (UTC)

- Branch creation
  - "before 5am on the first day of the month"
- Automerge
  - At any time (no schedule defined)

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR is behind base branch, or you tick the
rebase/retry checkbox.

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

---

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

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/epage/_rust).

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

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-09-01 01:40:18 +00:00
renovate[bot] 51781fb858 chore(deps): Update pre-commit hook crate-ci/typos to v1.50.0 2026-09-01 01:38:44 +00:00
Ed Page 9725e9e811 chore: Update prek 2026-08-29 11:48:27 -05:00
Ed Page fc41ee74d7 docs(ai): Add an AI policy (#96)
I've considered policies ranging from:
- Make it so I can't tell its AI
(https://github.com/hawkw/mycelium/blob/main/CONTRIBUTING.md#ai-policy)
- No AI creation with some carve outs
(https://forge.rust-lang.org/policies/llm-usage.html)

In creating this, I'm trying to think through negative cases like:
- People jumping on clap's Discussions posting AI answers
- Flooding repos with PRs
- Insufficiently self-reviewed PRs
- Clap completion PRs where I am trusting in the experience of the
author
- Bots
- Karma farming

On the flip side, I have found AI helpful for
- Research on how something can be done
- Writing an approximation of the code and then refactoring from there
- Test generation
- Rote tasks that aren't easy to automate

Overall, I want to keep this simple avoiding digging into some of the
specifics like Rust's policy like ensuring approved bots can be blocked
by users.
2026-08-28 16:29:13 -05:00
Ed Page 4d9c206a77 chore: Release v1.50.0 2026-08-28 12:24:43 -05:00
Ed Page 67e851f001 chore: Release typos-dict-v0.14.1 2026-08-28 12:24:04 -05:00
Ed Page fed981dab1 docs: Update changelog 2026-08-28 12:23:32 -05:00
Ed Page 30a3514976 Merge pull request #1611 from epage/aug
feat(dict): August updates
2026-08-28 12:22:56 -05:00
Ed Page 9fcae58403 feat(dict): August updates
Fixes #1587
2026-08-28 11:57:20 -05:00
nightcityblade 5956a2610c fix: Allow Python asend identifier 2026-08-28 23:52:32 +08:00
nightcityblade f6ce659dbc test: Capture Python asend behavior 2026-08-28 23:52:32 +08:00
Ed Page a8168dc298 chore: Release v1.49.1 2026-08-27 14:19:39 -05:00
Ed Page 767fe4221e docs: Update changelog 2026-08-27 14:18:41 -05:00
Ed Page 8863e88361 Merge pull request #1609 from epage/hasi
fix(dict): Don't correct the HashiCorp brand name
2026-08-27 14:18:02 -05:00
Ed Page e7a4e8ad25 fix(dict): Don't correct the HashiCorp brand name
Fixes #1606
2026-08-27 14:07:38 -05:00
Ed Page 30dd48eae9 test(cli): Show HashiCorp behavior 2026-08-27 14:06:18 -05:00
Ed Page 0766687db8 chore(ci): Reduce git checkout for committed (#98) 2026-08-27 12:33:16 -05:00
Ed Page 90588dbb95 chore(ci): Reduce git checkout for committed 2026-08-27 12:30:06 -05:00
Ed Page c2979d0bdd docs: Remove license placeholder 2026-08-26 13:33:06 -05:00
Ed Page 8d22eae6c4 chore(ci): Also allow renamed_and_removed_lints 2026-08-25 12:44:36 -05:00
renovate[bot] d7a910fc83 chore(deps): Update Rust Stable to v1.98 (#97)
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [STABLE](https://redirect.github.com/rust-lang/rust) | minor | `1.97`
→ `1.98` |

---

### Release Notes

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

###
[`v1.98`](https://redirect.github.com/rust-lang/rust/blob/HEAD/RELEASES.md#Version-1980-2026-08-20)

[Compare
Source](https://redirect.github.com/rust-lang/rust/compare/1.97.0...1.98.0)

\==========================

<a id="1.98.0-Language"></a>

## Language

- [Allow shortening lifetime of `&mut` when unsize-coercing, even in an
invariant
position.](https://redirect.github.com/rust-lang/rust/pull/149219) For
example, you can now coerce a `Cell<&'long mut i32>` to a `Cell<&'short
mut dyn Send>`. Such shortenings were already previously allowed when
coercing a `&mut` to a `&`, or coercing a `&` to a `&`.
- [Add deny-by-default `invalid_runtime_symbol_definitions` lint and
warn-by-default `suspicious_runtime_symbol_definitions`
lint](https://redirect.github.com/rust-lang/rust/pull/155521)
- The lints currently specifically targets `core` runtime symbols like
`memcmp`, `memset`, `strlen`, ... and is planned to be expanded in the
next few releases.
- [Add warn-by-default `c_void_returns` lint to check
`core::ffi::c_void` as a return
type](https://redirect.github.com/rust-lang/rust/pull/156379)

<a id="1.98.0-Platform-Support"></a>

## Platform Support

- [Add `powerpc64-unknown-linux-gnuelfv2` as Tier
3](https://redirect.github.com/rust-lang/rust/pull/144220)
- [Add `aarch64-unknown-linux-pauthtest` as Tier 3
target](https://redirect.github.com/rust-lang/rust/pull/155722)
- [Promote `thumbv7a-none-eabi` to Tier
2](https://redirect.github.com/rust-lang/rust/pull/155763)
- [Promote `thumbv7a-none-eabihf` to Tier
2](https://redirect.github.com/rust-lang/rust/pull/155763)
- [Promote `thumbv7r-none-eabi` to Tier
2](https://redirect.github.com/rust-lang/rust/pull/155763)
- [Promote `thumbv7r-none-eabihf` to Tier
2](https://redirect.github.com/rust-lang/rust/pull/155763)
- [Promote `thumbv8r-none-eabihf` to Tier
2](https://redirect.github.com/rust-lang/rust/pull/155763)

Refer to Rust's [platform support page][platform-support-doc]
for more information on Rust's tiered platform support.

[platform-support-doc]:
https://doc.rust-lang.org/rustc/platform-support.html

<a id="1.98.0-Libraries"></a>

## Libraries

- [Change `Location<'_>` lifetime to `'static` in
`Panic[Hook]Info`](https://redirect.github.com/rust-lang/rust/pull/146561)
- [Document panic in
`RangeInclusive::from(legacy::RangeInclusive)`](https://redirect.github.com/rust-lang/rust/pull/155421)
- [Document that `ManuallyDrop`'s `Box` interaction has been
fixed](https://redirect.github.com/rust-lang/rust/pull/155750)
- [Stabilize LoongArch CRC
Intrinsics](https://redirect.github.com/rust-lang/rust/issues/156908)
- [The `derive` macro is available at
`{core,std}::derive`.](https://redirect.github.com/rust-lang/rust/issues/154645)
This was previously [unintentionally stabilized in
1.96](https://redirect.github.com/rust-lang/rust/issues/159856), but is
now [explicitly
accepted](https://redirect.github.com/rust-lang/rust/issues/154645) as a
stabilized API.
- Please note that the MSRV for `{core,std}::derive` will be 1.96, and
not 1.98.

<a id="1.98.0-Stabilized-APIs"></a>

## Stabilized APIs

-
[`str::substr_range`](https://doc.rust-lang.org/stable/std/primitive.str.html#method.substr_range)
-
[`[T]::subslice_range`](https://doc.rust-lang.org/stable/std/primitive.slice.html#method.subslice_range)
-
[`core::fmt::NumBuffer`](https://doc.rust-lang.org/stable/core/fmt/struct.NumBuffer.html)
-
[`<{integer}>::format_into`](https://doc.rust-lang.org/stable/core/primitive.usize.html#method.format_into)
- [`Send/Sync for
std::process::CommandArgs`](https://doc.rust-lang.org/stable/std/process/struct.CommandArgs.html#impl-Send-for-CommandArgs%3C'a%3E)
-
[`{fN}::algebraic_add`](https://doc.rust-lang.org/stable/core/primitive.f32.html#method.algebraic_add)
-
[`{fN}::algebraic_sub`](https://doc.rust-lang.org/stable/core/primitive.f32.html#method.algebraic_sub)
-
[`{fN}::algebraic_mul`](https://doc.rust-lang.org/stable/core/primitive.f32.html#method.algebraic_mul)
-
[`{fN}::algebraic_div`](https://doc.rust-lang.org/stable/core/primitive.f32.html#method.algebraic_div)
-
[`{fN}::algebraic_rem`](https://doc.rust-lang.org/stable/core/primitive.f32.html#method.algebraic_rem)
-
[`NonZero<{integer}>::from_str_radix`](https://doc.rust-lang.org/stable/core/num/struct.NonZero.html#method.from_str_radix-4)
-
[`String::from_utf16le`](https://doc.rust-lang.org/stable/std/string/struct.String.html#method.from_utf16le)
-
[`String::from_utf16le_lossy`](https://doc.rust-lang.org/stable/std/string/struct.String.html#method.from_utf16le_lossy)
-
[`String::from_utf16be`](https://doc.rust-lang.org/stable/std/string/struct.String.html#method.from_utf16be)
-
[`String::from_utf16be_lossy`](https://doc.rust-lang.org/stable/std/string/struct.String.html#method.from_utf16be_lossy)
-
[`[T]::strip_circumfix`](https://doc.rust-lang.org/stable/core/primitive.slice.html#method.strip_circumfix)
-
[`str::strip_circumfix`](https://doc.rust-lang.org/stable/core/primitive.str.html#method.strip_circumfix)
-
[`Atomic<T>::from_mut`](https://doc.rust-lang.org/stable/core/sync/atomic/struct.Atomic.html#method.from_mut)
-
[`Atomic<T>::get_mut_slice`](https://doc.rust-lang.org/stable/core/sync/atomic/struct.Atomic.html#method.get_mut_slice)
-
[`Atomic<T>::from_mut_slice`](https://doc.rust-lang.org/stable/core/sync/atomic/struct.Atomic.html#method.from_mut_slice)
-
[`std::range::legacy`](https://doc.rust-lang.org/stable/std/range/legacy/index.html)

<a id="1.98.0-Compatibility-Notes"></a>

## Compatibility Notes

- [If fully elided, lifetime bounds of trait object types may now
resolve differently or even get rejected in very specific niche
scenarios](https://redirect.github.com/rust-lang/rust/pull/129543)
- [Error in more cases of ambiguous
imports](https://redirect.github.com/rust-lang/rust/pull/145108)
- [Switch the destructors implementation for thread locals on Windows to
use Fiber Local Storage
(FLS)](https://redirect.github.com/rust-lang/rust/pull/148799)
- [Convert some cases of the `ambiguous_glob_imports` lint into a hard
error](https://redirect.github.com/rust-lang/rust/pull/149195)
- [Where-bounds of the form `Type = Type` and `Type == Type` are no
longer syntactically
allowed](https://redirect.github.com/rust-lang/rust/pull/153513)
- [Ensure Send/Sync is not implemented for
std::env::Vars{,Os}](https://redirect.github.com/rust-lang/rust/pull/155153)
- [Fix that in some attributes, arguments were not properly
rejected](https://redirect.github.com/rust-lang/rust/pull/155193)
- [`repr(transparent)` is now more strict about which fields have
"trivial" layout and hence can be ignored: `repr(C)` types, types with
private fields, and `#[non_exhaustive]` types are no longer considered
"trivial"](https://redirect.github.com/rust-lang/rust/pull/155299)
- [Correctly check whether types have equal size in `transmute()` when
some `repr` attributes are
involved.](https://redirect.github.com/rust-lang/rust/pull/155418)
- [More characters are escaped when printing strings and
chars](https://redirect.github.com/rust-lang/rust/pull/155527)
- [Implement fast path for `derive(PartialOrd)` when deriving
`Ord`](https://redirect.github.com/rust-lang/rust/pull/155598)
This can break crates in practice where a type's PartialOrd and Ord
impls were inconsistent with each other.
- [Add temporary scope to `assert_eq` and
`assert_ne`](https://redirect.github.com/rust-lang/rust/pull/155739)
- Closed a hole in the pattern matching [structural
equality](https://doc.rust-lang.org/reference/patterns.html#constant-patterns)
check, preventing cases where a match of a constant would be allowed,
despite disagreeing with a manually written `PartialEq` implementation,
when a `derive(PartialEq)` implementation for that type also exists.
- [On Emscripten the WASM exception handling ABI is now unconditionally
used](https://redirect.github.com/rust-lang/rust/pull/156928) The
`-Zemscripten-wasm-eh=false` flag to switch back to JS exceptions has
been removed.
- [The UNSAFE\_CODE lint is now consistently emitted for all unsafe
attributes](https://redirect.github.com/rust-lang/rust/pull/157201)
- [Solaris: remove `File::lock` implementation, it has the wrong
semantics (return "unsupported"
instead)](https://redirect.github.com/rust-lang/rust/pull/157509)
- [Windows-gnu targets now specify baseline tools
versions](https://redirect.github.com/rust-lang/rust/pull/158020)
- [rustfmt now discovers module files that are defined in
`cfg_select!`](https://redirect.github.com/rust-lang/rust/pull/158372)
  This may cause more code to be formatted which was previously ignored.

</details>

---

### Configuration

📅 **Schedule**: (UTC)

- Branch creation
  - Every minute (`* * * * *`)
- Automerge
  - At any time (no schedule defined)

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR is behind base branch, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

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

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/epage/_rust).

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

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-08-23 21:41:41 +00:00
renovate[bot] 1a51d4b5a0 chore(deps): Update Rust Stable to v1.98 (#1604)
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [STABLE](https://redirect.github.com/rust-lang/rust) | minor | `1.97`
→ `1.98` |

---

### Release Notes

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

###
[`v1.98`](https://redirect.github.com/rust-lang/rust/blob/HEAD/RELEASES.md#Version-1980-2026-08-20)

[Compare
Source](https://redirect.github.com/rust-lang/rust/compare/1.97.0...1.98.0)

\==========================

<a id="1.98.0-Language"></a>

## Language

- [Allow shortening lifetime of `&mut` when unsize-coercing, even in an
invariant
position.](https://redirect.github.com/rust-lang/rust/pull/149219) For
example, you can now coerce a `Cell<&'long mut i32>` to a `Cell<&'short
mut dyn Send>`. Such shortenings were already previously allowed when
coercing a `&mut` to a `&`, or coercing a `&` to a `&`.
- [Add deny-by-default `invalid_runtime_symbol_definitions` lint and
warn-by-default `suspicious_runtime_symbol_definitions`
lint](https://redirect.github.com/rust-lang/rust/pull/155521)
- The lints currently specifically targets `core` runtime symbols like
`memcmp`, `memset`, `strlen`, ... and is planned to be expanded in the
next few releases.
- [Add warn-by-default `c_void_returns` lint to check
`core::ffi::c_void` as a return
type](https://redirect.github.com/rust-lang/rust/pull/156379)

<a id="1.98.0-Platform-Support"></a>

## Platform Support

- [Add `powerpc64-unknown-linux-gnuelfv2` as Tier
3](https://redirect.github.com/rust-lang/rust/pull/144220)
- [Add `aarch64-unknown-linux-pauthtest` as Tier 3
target](https://redirect.github.com/rust-lang/rust/pull/155722)
- [Promote `thumbv7a-none-eabi` to Tier
2](https://redirect.github.com/rust-lang/rust/pull/155763)
- [Promote `thumbv7a-none-eabihf` to Tier
2](https://redirect.github.com/rust-lang/rust/pull/155763)
- [Promote `thumbv7r-none-eabi` to Tier
2](https://redirect.github.com/rust-lang/rust/pull/155763)
- [Promote `thumbv7r-none-eabihf` to Tier
2](https://redirect.github.com/rust-lang/rust/pull/155763)
- [Promote `thumbv8r-none-eabihf` to Tier
2](https://redirect.github.com/rust-lang/rust/pull/155763)

Refer to Rust's [platform support page][platform-support-doc]
for more information on Rust's tiered platform support.

[platform-support-doc]:
https://doc.rust-lang.org/rustc/platform-support.html

<a id="1.98.0-Libraries"></a>

## Libraries

- [Change `Location<'_>` lifetime to `'static` in
`Panic[Hook]Info`](https://redirect.github.com/rust-lang/rust/pull/146561)
- [Document panic in
`RangeInclusive::from(legacy::RangeInclusive)`](https://redirect.github.com/rust-lang/rust/pull/155421)
- [Document that `ManuallyDrop`'s `Box` interaction has been
fixed](https://redirect.github.com/rust-lang/rust/pull/155750)
- [Stabilize LoongArch CRC
Intrinsics](https://redirect.github.com/rust-lang/rust/issues/156908)
- [The `derive` macro is available at
`{core,std}::derive`.](https://redirect.github.com/rust-lang/rust/issues/154645)
This was previously [unintentionally stabilized in
1.96](https://redirect.github.com/rust-lang/rust/issues/159856), but is
now [explicitly
accepted](https://redirect.github.com/rust-lang/rust/issues/154645) as a
stabilized API.
- Please note that the MSRV for `{core,std}::derive` will be 1.96, and
not 1.98.

<a id="1.98.0-Stabilized-APIs"></a>

## Stabilized APIs

-
[`str::substr_range`](https://doc.rust-lang.org/stable/std/primitive.str.html#method.substr_range)
-
[`[T]::subslice_range`](https://doc.rust-lang.org/stable/std/primitive.slice.html#method.subslice_range)
-
[`core::fmt::NumBuffer`](https://doc.rust-lang.org/stable/core/fmt/struct.NumBuffer.html)
-
[`<{integer}>::format_into`](https://doc.rust-lang.org/stable/core/primitive.usize.html#method.format_into)
- [`Send/Sync for
std::process::CommandArgs`](https://doc.rust-lang.org/stable/std/process/struct.CommandArgs.html#impl-Send-for-CommandArgs%3C'a%3E)
-
[`{fN}::algebraic_add`](https://doc.rust-lang.org/stable/core/primitive.f32.html#method.algebraic_add)
-
[`{fN}::algebraic_sub`](https://doc.rust-lang.org/stable/core/primitive.f32.html#method.algebraic_sub)
-
[`{fN}::algebraic_mul`](https://doc.rust-lang.org/stable/core/primitive.f32.html#method.algebraic_mul)
-
[`{fN}::algebraic_div`](https://doc.rust-lang.org/stable/core/primitive.f32.html#method.algebraic_div)
-
[`{fN}::algebraic_rem`](https://doc.rust-lang.org/stable/core/primitive.f32.html#method.algebraic_rem)
-
[`NonZero<{integer}>::from_str_radix`](https://doc.rust-lang.org/stable/core/num/struct.NonZero.html#method.from_str_radix-4)
-
[`String::from_utf16le`](https://doc.rust-lang.org/stable/std/string/struct.String.html#method.from_utf16le)
-
[`String::from_utf16le_lossy`](https://doc.rust-lang.org/stable/std/string/struct.String.html#method.from_utf16le_lossy)
-
[`String::from_utf16be`](https://doc.rust-lang.org/stable/std/string/struct.String.html#method.from_utf16be)
-
[`String::from_utf16be_lossy`](https://doc.rust-lang.org/stable/std/string/struct.String.html#method.from_utf16be_lossy)
-
[`[T]::strip_circumfix`](https://doc.rust-lang.org/stable/core/primitive.slice.html#method.strip_circumfix)
-
[`str::strip_circumfix`](https://doc.rust-lang.org/stable/core/primitive.str.html#method.strip_circumfix)
-
[`Atomic<T>::from_mut`](https://doc.rust-lang.org/stable/core/sync/atomic/struct.Atomic.html#method.from_mut)
-
[`Atomic<T>::get_mut_slice`](https://doc.rust-lang.org/stable/core/sync/atomic/struct.Atomic.html#method.get_mut_slice)
-
[`Atomic<T>::from_mut_slice`](https://doc.rust-lang.org/stable/core/sync/atomic/struct.Atomic.html#method.from_mut_slice)
-
[`std::range::legacy`](https://doc.rust-lang.org/stable/std/range/legacy/index.html)

<a id="1.98.0-Compatibility-Notes"></a>

## Compatibility Notes

- [If fully elided, lifetime bounds of trait object types may now
resolve differently or even get rejected in very specific niche
scenarios](https://redirect.github.com/rust-lang/rust/pull/129543)
- [Error in more cases of ambiguous
imports](https://redirect.github.com/rust-lang/rust/pull/145108)
- [Switch the destructors implementation for thread locals on Windows to
use Fiber Local Storage
(FLS)](https://redirect.github.com/rust-lang/rust/pull/148799)
- [Convert some cases of the `ambiguous_glob_imports` lint into a hard
error](https://redirect.github.com/rust-lang/rust/pull/149195)
- [Where-bounds of the form `Type = Type` and `Type == Type` are no
longer syntactically
allowed](https://redirect.github.com/rust-lang/rust/pull/153513)
- [Ensure Send/Sync is not implemented for
std::env::Vars{,Os}](https://redirect.github.com/rust-lang/rust/pull/155153)
- [Fix that in some attributes, arguments were not properly
rejected](https://redirect.github.com/rust-lang/rust/pull/155193)
- [`repr(transparent)` is now more strict about which fields have
"trivial" layout and hence can be ignored: `repr(C)` types, types with
private fields, and `#[non_exhaustive]` types are no longer considered
"trivial"](https://redirect.github.com/rust-lang/rust/pull/155299)
- [Correctly check whether types have equal size in `transmute()` when
some `repr` attributes are
involved.](https://redirect.github.com/rust-lang/rust/pull/155418)
- [More characters are escaped when printing strings and
chars](https://redirect.github.com/rust-lang/rust/pull/155527)
- [Implement fast path for `derive(PartialOrd)` when deriving
`Ord`](https://redirect.github.com/rust-lang/rust/pull/155598)
This can break crates in practice where a type's PartialOrd and Ord
impls were inconsistent with each other.
- [Add temporary scope to `assert_eq` and
`assert_ne`](https://redirect.github.com/rust-lang/rust/pull/155739)
- Closed a hole in the pattern matching [structural
equality](https://doc.rust-lang.org/reference/patterns.html#constant-patterns)
check, preventing cases where a match of a constant would be allowed,
despite disagreeing with a manually written `PartialEq` implementation,
when a `derive(PartialEq)` implementation for that type also exists.
- [On Emscripten the WASM exception handling ABI is now unconditionally
used](https://redirect.github.com/rust-lang/rust/pull/156928) The
`-Zemscripten-wasm-eh=false` flag to switch back to JS exceptions has
been removed.
- [The UNSAFE\_CODE lint is now consistently emitted for all unsafe
attributes](https://redirect.github.com/rust-lang/rust/pull/157201)
- [Solaris: remove `File::lock` implementation, it has the wrong
semantics (return "unsupported"
instead)](https://redirect.github.com/rust-lang/rust/pull/157509)
- [Windows-gnu targets now specify baseline tools
versions](https://redirect.github.com/rust-lang/rust/pull/158020)
- [rustfmt now discovers module files that are defined in
`cfg_select!`](https://redirect.github.com/rust-lang/rust/pull/158372)
  This may cause more code to be formatted which was previously ignored.

</details>

---

### Configuration

📅 **Schedule**: (UTC)

- Branch creation
  - Every minute (`* * * * *`)
- Automerge
  - At any time (no schedule defined)

🚦 **Automerge**: Enabled.

♻ **Rebasing**: Whenever PR is behind base branch, or you tick the
rebase/retry checkbox.

🔕 **Ignore**: Close this PR and you won't be reminded about this update
again.

---

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

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/crate-ci/typos).

<!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0NC4zNS40IiwidXBkYXRlZEluVmVyIjoiNDQuMzUuNCIsInRhcmdldEJyYW5jaCI6Im1hc3RlciIsImxhYmVscyI6W119-->

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-08-20 21:20:35 +00:00
Ed Page 8b090d2eeb docs(ai): Solidify the policy 2026-08-12 15:19:33 -05:00
Ed Page 82c988371d docs(gh): Add a PR template
Goals
- Encourage having an issue approved first
- Encourage meaningful content (unlike most AI generated PR
  descriptions)
2026-08-12 15:14:35 -05:00
Ed Page 516da22ea7 docs(ai): Try out uv's policy 2026-08-12 13:14:30 -05:00
Ed Page d016febe98 docs(ai): Start with regex's policy 2026-08-12 12:47:17 -05:00
Ed Page e321fc4544 chore(ci): Remove dtolnay/rust-toolchain (#95)
This causes enough issues with zizmor
2026-08-10 08:50:21 -05:00
Ed Page 059ebedc85 chore(ci): Remove dtolnay/rust-toolchain
This causes enough issues with zizmor
2026-08-10 08:37:35 -05:00
Ed Page 50a73522c7 fix: Remove lint config for clippy::from_iter_instead_of_collect (#94)
`clippy::from_iter_instead_of_collect` was
[deprecated](https://github.com/rust-lang/rust-clippy/pull/17208) a
couple of months ago, and shows a warning on `beta` (`1.98.0`) when
there is any config set for it:
```
warning: lint `clippy::from_iter_instead_of_collect` has been removed: lint has proved problematic
  |
  = note: requested on the command line with `-W clippy::from_iter_instead_of_collect`
  = note: `#[warn(renamed_and_removed_lints)]` on by default
```

Given that `1.98.0` will be `stable` in a couple of weeks
(`2026-08-20`), I figured it would be a good idea to remove
`from_iter_instead_of_collect` from `[lints.clippy]` early.
2026-08-08 21:31:44 -05:00
Scott Schafer f1016dff78 fix: Remove lint config for clippy::from_iter_instead_of_collect 2026-08-08 20:22:14 -06:00
Ed Page 5e38bf262b Merge pull request #1593 from MsfPablo/fix/readme-absolute-doc-urls-1381
docs: use absolute URLs for docs/ links in README (fixes #1381)
2026-08-07 08:46:08 -05:00
Pablo Garcia 2846392ab1 docs: use absolute URLs for docs/ links in README (fixes #1381)
crates.io renders the crate README but resolves relative links against
the crate package directory (crates/typos/), so the relative docs/*.md
links 404 on crates.io — e.g. the "config reference" link resolved to
crates/typos/docs/reference.md, which does not exist (the files live at
repo-root docs/). Per the maintainer's direction, convert all relative
docs/ markdown links (and the screenshot image) to absolute GitHub
URLs so they resolve correctly both on GitHub and on crates.io.

Developed with AI assistance and reviewed by the contributor.
2026-08-07 14:58:52 +02:00
renovate[bot] 2a44449ff3 chore(deps): Update compatible (#1585)
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [aho-corasick](https://redirect.github.com/BurntSushi/aho-corasick) |
dependencies | patch | `1.1.4` → `1.1.5` |
| [anyhow](https://redirect.github.com/dtolnay/anyhow) | dependencies |
patch | `1.0.103` → `1.0.104` |
| [bstr](https://redirect.github.com/BurntSushi/bstr) | dependencies |
minor | `1.12.3` → `1.13.0` |
| [clap](https://redirect.github.com/clap-rs/clap) | dependencies |
patch | `4.6.1` → `4.6.5` |
|
[globset](https://redirect.github.com/BurntSushi/ripgrep/tree/master/crates/globset)
([source](https://redirect.github.com/BurntSushi/ripgrep/tree/HEAD/crates/globset))
| dependencies | patch | `0.4.18` → `0.4.19` |
|
[ignore](https://redirect.github.com/BurntSushi/ripgrep/tree/master/crates/ignore)
([source](https://redirect.github.com/BurntSushi/ripgrep/tree/HEAD/crates/ignore))
| dependencies | patch | `0.4.26` → `0.4.32` |
| [regex](https://redirect.github.com/rust-lang/regex) | dependencies |
minor | `1.12.4` → `1.13.1` |
| [regex](https://redirect.github.com/rust-lang/regex) |
dev-dependencies | minor | `1.12.4` → `1.13.1` |
| [schemars](https://graham.cool/schemars/)
([source](https://redirect.github.com/GREsau/schemars)) | dependencies |
patch | `1.2.1` → `1.2.2` |
| [serde](https://serde.rs)
([source](https://redirect.github.com/serde-rs/serde)) | dependencies |
patch | `1.0.228` → `1.0.229` |
| [serde_json](https://redirect.github.com/serde-rs/json) | dependencies
| patch | `1.0.150` → `1.0.151` |
| [serde_json](https://redirect.github.com/serde-rs/json) |
dev-dependencies | patch | `1.0.150` → `1.0.151` |
| [thread_local](https://redirect.github.com/Amanieu/thread_local-rs) |
dependencies | patch | `1.1.9` → `1.1.10` |
| [toml](https://redirect.github.com/toml-rs/toml) | dependencies |
patch | `1.1.2+spec-1.1.0` → `1.1.4` |
| [trycmd](https://redirect.github.com/assert-rs/snapbox) |
dev-dependencies | patch | `1.2.0` → `1.2.1` |
| [winnow](https://redirect.github.com/winnow-rs/winnow) | dependencies
| patch | `1.0.3` → `1.0.4` |

---

### Release Notes

<details>
<summary>BurntSushi/aho-corasick (aho-corasick)</summary>

###
[`v1.1.5`](https://redirect.github.com/BurntSushi/aho-corasick/compare/1.1.4...1.1.5)

[Compare
Source](https://redirect.github.com/BurntSushi/aho-corasick/compare/1.1.4...1.1.5)

</details>

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

###
[`v1.0.104`](https://redirect.github.com/dtolnay/anyhow/releases/tag/1.0.104)

[Compare
Source](https://redirect.github.com/dtolnay/anyhow/compare/1.0.103...1.0.104)

- Update `syn` dev-dependency to version 3

</details>

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

###
[`v1.13.0`](https://redirect.github.com/BurntSushi/bstr/compare/1.12.3...1.13.0)

[Compare
Source](https://redirect.github.com/BurntSushi/bstr/compare/1.12.3...1.13.0)

</details>

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

###
[`v4.6.5`](https://redirect.github.com/clap-rs/clap/compare/clap_complete-v4.6.4...clap_complete-v4.6.5)

[Compare
Source](https://redirect.github.com/clap-rs/clap/compare/v4.6.4...v4.6.5)

###
[`v4.6.4`](https://redirect.github.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#464---2026-07-21)

[Compare
Source](https://redirect.github.com/clap-rs/clap/compare/v4.6.3...v4.6.4)

##### Internal

- Update to syn v3

###
[`v4.6.3`](https://redirect.github.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#463---2026-07-20)

[Compare
Source](https://redirect.github.com/clap-rs/clap/compare/v4.6.2...v4.6.3)

##### Fixes

- *(derive)* Allow `"literal".function()` as attribute values

###
[`v4.6.2`](https://redirect.github.com/clap-rs/clap/blob/HEAD/CHANGELOG.md#462---2026-07-15)

[Compare
Source](https://redirect.github.com/clap-rs/clap/compare/v4.6.1...v4.6.2)

##### Fixes

- *(help)* Say `alias` when there is only one

</details>

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

###
[`v0.4.19`](https://redirect.github.com/BurntSushi/ripgrep/compare/globset-0.4.18...globset-0.4.19)

[Compare
Source](https://redirect.github.com/BurntSushi/ripgrep/compare/globset-0.4.18...globset-0.4.19)

</details>

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

###
[`v0.4.32`](https://redirect.github.com/BurntSushi/ripgrep/compare/ignore-0.4.31...ignore-0.4.32)

[Compare
Source](https://redirect.github.com/BurntSushi/ripgrep/compare/ignore-0.4.31...ignore-0.4.32)

###
[`v0.4.31`](https://redirect.github.com/BurntSushi/ripgrep/compare/ignore-0.4.30...ignore-0.4.31)

[Compare
Source](https://redirect.github.com/BurntSushi/ripgrep/compare/ignore-0.4.30...ignore-0.4.31)

###
[`v0.4.30`](https://redirect.github.com/BurntSushi/ripgrep/compare/ignore-0.4.29...ignore-0.4.30)

[Compare
Source](https://redirect.github.com/BurntSushi/ripgrep/compare/ignore-0.4.29...ignore-0.4.30)

###
[`v0.4.29`](https://redirect.github.com/BurntSushi/ripgrep/compare/ignore-0.4.28...ignore-0.4.29)

[Compare
Source](https://redirect.github.com/BurntSushi/ripgrep/compare/ignore-0.4.28...ignore-0.4.29)

###
[`v0.4.28`](https://redirect.github.com/BurntSushi/ripgrep/compare/ignore-0.4.27...ignore-0.4.28)

[Compare
Source](https://redirect.github.com/BurntSushi/ripgrep/compare/ignore-0.4.27...ignore-0.4.28)

###
[`v0.4.27`](https://redirect.github.com/BurntSushi/ripgrep/compare/ignore-0.4.26...ignore-0.4.27)

[Compare
Source](https://redirect.github.com/BurntSushi/ripgrep/compare/ignore-0.4.26...ignore-0.4.27)

</details>

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

###
[`v1.13.1`](https://redirect.github.com/rust-lang/regex/blob/HEAD/CHANGELOG.md#1131-2026-07-15)

[Compare
Source](https://redirect.github.com/rust-lang/regex/compare/1.13.0...1.13.1)

\===================
This is a release that fixes a bug where incorrect regex match offsets
could be
reported. Note that this doesn't impact whether a match occurs or not,
just
where it occurs. The match offsets are still valid for slicing, they
just may
not refer to the correct leftmost-first match. See
[#&#8203;1364](https://redirect.github.com/rust-lang/regex/pull/1364)
for (many) more details.

Bug fixes:

-
[#&#8203;1354](https://redirect.github.com/rust-lang/regex/issues/1354):
  Fixes previously unsound reverse suffix and inner optimizations.

###
[`v1.13.0`](https://redirect.github.com/rust-lang/regex/blob/HEAD/CHANGELOG.md#1130-2026-07-09)

[Compare
Source](https://redirect.github.com/rust-lang/regex/compare/1.12.4...1.13.0)

\===================
This release includes a new API, a `regex!` macro, for lazy compilation
of
a regex from a string literal. If you use regexes a lot, it's likely
you've
already written one exactly like it. The new macro can be used like
this:

```rust
use regex::regex;

fn is_match(line: &str) -> bool {
    // The regex will be compiled approximately once and reused automatically.
    // This avoids the footgun of using `Regex::new` here, which would
    // guarantee that it would be compiled every time this routine is called.
    // This would likely make this routine much slower than it needs to be.
    regex!(r"bar|baz").is_match(line)
}

let hay = "\
path/to/foo:54:Blue Harvest
path/to/bar:90:Something, Something, Something, Dark Side
path/to/baz:3:It's a Trap!
";

let matches = hay.lines().filter(|line| is_match(line)).count();
assert_eq!(matches, 2);
```

Improvements:

- [#&#8203;709](https://redirect.github.com/rust-lang/regex/issues/709):
Add a new `regex!` macro for efficient and automatic reuse of a compiled
regex.

</details>

<details>
<summary>GREsau/schemars (schemars)</summary>

###
[`v1.2.2`](https://redirect.github.com/GREsau/schemars/blob/HEAD/CHANGELOG.md#122---2026-07-27)

[Compare
Source](https://redirect.github.com/GREsau/schemars/compare/v1.2.1...v1.2.2)

- Update to syn 3 in schemars\_derive

</details>

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

###
[`v1.0.229`](https://redirect.github.com/serde-rs/serde/releases/tag/v1.0.229)

[Compare
Source](https://redirect.github.com/serde-rs/serde/compare/v1.0.228...v1.0.229)

- Update to syn 3

</details>

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

###
[`v1.0.151`](https://redirect.github.com/serde-rs/json/releases/tag/v1.0.151)

[Compare
Source](https://redirect.github.com/serde-rs/json/compare/v1.0.150...v1.0.151)

- Add RawValue::from\_string\_unchecked
([#&#8203;1331](https://redirect.github.com/serde-rs/json/issues/1331),
thanks
[@&#8203;WonderLawrence](https://redirect.github.com/WonderLawrence))

</details>

<details>
<summary>Amanieu/thread_local-rs (thread_local)</summary>

###
[`v1.1.10`](https://redirect.github.com/Amanieu/thread_local-rs/blob/HEAD/CHANGELOG.md#1110---2026-07-10)

[Compare
Source](https://redirect.github.com/Amanieu/thread_local-rs/compare/v1.1.9...v1.1.10)

##### Fixed

- Fix undefined behavior when `get_or` or `get_or_try` reentrantly
initializes the same `ThreadLocal`
([#&#8203;97](https://redirect.github.com/Amanieu/thread_local-rs/issues/97)).
- Fix an integer underflow in iterator `size_hint` implementations
([#&#8203;89](https://redirect.github.com/Amanieu/thread_local-rs/issues/89)).
- Fix compilation with the `nightly` feature enabled
([#&#8203;96](https://redirect.github.com/Amanieu/thread_local-rs/issues/96)).

##### Changed

- `ThreadLocal::get` no longer allocates a thread ID or registers a
thread-local destructor when no value exists for the current thread
([#&#8203;84](https://redirect.github.com/Amanieu/thread_local-rs/issues/84)).

</details>

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

###
[`v1.1.4`](https://redirect.github.com/toml-rs/toml/compare/toml-v1.1.3...toml-v1.1.4)

[Compare
Source](https://redirect.github.com/toml-rs/toml/compare/toml-v1.1.3...toml-v1.1.4)

###
[`v1.1.3`](https://redirect.github.com/toml-rs/toml/compare/toml-v1.1.2...toml-v1.1.3)

[Compare
Source](https://redirect.github.com/toml-rs/toml/compare/toml-v1.1.2...toml-v1.1.3)

</details>

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

###
[`v1.2.1`](https://redirect.github.com/assert-rs/snapbox/compare/trycmd-v1.2.0...trycmd-v1.2.1)

[Compare
Source](https://redirect.github.com/assert-rs/snapbox/compare/trycmd-v1.2.0...trycmd-v1.2.1)

</details>

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

###
[`v1.0.4`](https://redirect.github.com/winnow-rs/winnow/blob/HEAD/CHANGELOG.md#104---2026-07-13)

[Compare
Source](https://redirect.github.com/winnow-rs/winnow/compare/v1.0.3...v1.0.4)

##### Fixes

- Expand the number of supported fields for `seq!` from 22 to 32

</details>

---

### Configuration

📅 **Schedule**: (UTC)

- Branch creation
  - "before 5am on the first day of the month"
- 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://redirect.github.com/renovatebot/renovate/discussions) if
that's undesired.

---

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

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/).
View the [repository job
log](https://developer.mend.io/github/crate-ci/typos).

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

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2026-08-03 17:07:17 +00:00
Ed Page 6f0dadaa3e Merge pull request #1590 from epage/str
refactor: Migrate away from KString
2026-08-03 11:54:24 -05:00
Ed Page 31d9f0ea07 refactor: Migrate away from KString 2026-08-03 11:41:05 -05:00