Skip to content

chore(deps): bump snafu from 0.8.9 to 0.9.2 - #35

Closed
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/cargo/snafu-0.9.2
Closed

chore(deps): bump snafu from 0.8.9 to 0.9.2#35
dependabot[bot] wants to merge 1 commit into
mainfrom
dependabot/cargo/snafu-0.9.2

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Aug 25, 2026

Copy link
Copy Markdown
Contributor

Bumps snafu from 0.8.9 to 0.9.2.

Changelog

Sourced from snafu's changelog.

0.9.2 - 2026-07-21

Fixed

  • The whatever macro no longer triggers the semicolon_in_expressions_from_macros lint.

0.9.1 - 2026-05-29

Fixed

  • Error types that use Self in fields or trait bounds are now supported.

[0.9.0] - 2026-03-02

Added

  • WhateverLocal is an alternate to Whatever that does not implement or require Send or Sync.

  • Errors that do not use context selectors (e.g. opaque errors, #[snafu(context(false))] errors, or #[snafu(transparent)] errors) may now be constructed using a generic value when they are annotated with the #[snafu(source(from(generic)))] attribute.

  • When using the unstable-provider-api feature flag, Report will check if each error provides a Location. When it does, the Location will be appended to the error message.

Fixed

  • Opaque errors which use const generics with default values are now supported.

Changed

  • Rust 1.65 is now the minimum supported Rust version. This is a breaking change.

  • Rust 1.81 is now the default supported Rust version. This is a breaking change.

  • Whatever implements Send and Sync, allowing it to be sent between threads. This requires that wrapped errors also implement Send and Sync. This is a breaking change.

... (truncated)

Commits
  • d6b22be Release 0.9.2
  • fd520a8 Update the changelog
  • db84e7e Merge pull request #560 from shepmaster/whatever-semicolon-expression
  • 86c5365 Do not trigger the semicolon_in_expressions_from_macros lint
  • 4fb4b5f Merge pull request #562 from shepmaster/v0-mangling
  • 666dbed Update backtrace test for symbol mangling v0
  • e9ef616 Merge pull request #561 from shepmaster/migrate-from-cirrus
  • dac8b7a Migrate from CirrusCI to GitHub Actions
  • ff50133 Release 0.9.1
  • c425b0a Update the changelog
  • Additional commits viewable in compare view

Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Bumps [snafu](https://github.com/shepmaster/snafu) from 0.8.9 to 0.9.2.
- [Changelog](https://github.com/shepmaster/snafu/blob/main/CHANGELOG.md)
- [Commits](shepmaster/snafu@0.8.9...0.9.2)

---
updated-dependencies:
- dependency-name: snafu
  dependency-version: 0.9.2
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
@dependabot dependabot Bot added dependencies Pull requests that update a dependency file rust Pull requests that update rust code labels Aug 25, 2026
forkwright added a commit that referenced this pull request Aug 25, 2026
## Finding

Two dependabot bumps that needed real migrations, landed together so the
lockfile moves once.

**snafu 0.8.9 → 0.9.2.** `snafu::Location` is now a type alias for
`&'static core::panic::Location<'static>`, and std's `Location` has no
public constructor. Eight manual `Location::default()` sites stop
compiling with `E0599`.

Note the existing `snafu-location-migrate.py` tool found **zero**
matches here — it targets `Location::new(file!(), line!(), column!())`,
a different shape. The fix was applied by hand.

`Location::caller()` records the identical site: 0.8's `default()` was
itself `#[track_caller]`, and these helper functions are not annotated,
so the chain terminated at the same place either way. **Zero behaviour
change** — verified by reading both crate sources, not assumed.

**fjall 2.11.2 → 3.1.9.** fjall 3 swapped its vocabulary: the whole
store is now `Database`, and what was `PartitionHandle` is now
`Keyspace`. `persist` moved from the partition handle to the store. The
data API (`insert`/`get`/`remove`) is byte-identical either side — only
type names and the open/persist entry points moved. All API shapes were
read from the vendored 3.1.9 source, not inferred from error text.

## The on-disk question, answered

fjall 3 **does** change the on-disk format (`FormatVersion::V3`), and it
**fails closed**.

`Database::recover()` calls `check_version()` *before* any journal or
segment-manifest recovery runs. Against a 2.x store it logs an error
naming the official migration tool (`fjall-rs/migrate-v2-v3`) and
returns `Err(Error::InvalidVersion(...))`. The destructive recovery path
— the one that deletes segments absent from the levels manifest — is
gated behind that check succeeding, so it **never runs against a
2.x-written store**. Verified at `db.rs:538-554`.

Practically moot here: `thesauros`'s fjall-backed persistence dates to
2026-08-16, so a live 2.x keyspace is unlikely to exist. But if one
does, it errors loudly rather than eating data.

## One correction

A WHY comment claimed this pin matched "the same major version kanon's
own archeion crate already uses fleet-wide". Checked against kanon
`origin/main`: **archeion still pins `fjall = "2"`**. That claim is now
false, so it is replaced with a NOTE flagging the divergence rather than
left as stale prose.

**Decision worth making separately:** either archeion takes the same
bump, or the two diverge deliberately.

Supersedes #35 and #34.

Co-authored-by: forkwright <cody@forkwright.com>
@forkwright

Copy link
Copy Markdown
Owner

Superseded and merged.

The bump needed a real migration rather than a version change alone, and where several bumps touched one repo they landed together so the lockfile moved once rather than several times. CI is green on the combined branch.

@forkwright forkwright closed this Aug 25, 2026
@dependabot @github

dependabot Bot commented on behalf of github Aug 25, 2026

Copy link
Copy Markdown
Contributor Author

OK, I won't notify you again about this release, but will get in touch when a new version is available. If you'd rather skip all updates until the next major or minor version, let me know by commenting @dependabot ignore this major version or @dependabot ignore this minor version. You can also ignore all major, minor, or patch releases for a dependency by adding an ignore condition with the desired update_types to your config file.

If you change your mind, just re-open this PR and I'll resolve any conflicts on it.

@dependabot
dependabot Bot deleted the dependabot/cargo/snafu-0.9.2 branch August 25, 2026 21:17
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file rust Pull requests that update rust code

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant