Skip to content

Bump redb from 4.3.0 to 4.4.0 - #545

Merged
Ralith merged 1 commit into
masterfrom
dependabot/cargo/redb-4.4.0
Oct 19, 2026
Merged

Ralith merged 1 commit into
masterfrom
dependabot/cargo/redb-4.4.0

Conversation

@dependabot

@dependabot dependabot Bot commented on behalf of github Oct 19, 2026

Copy link
Copy Markdown
Contributor

Bumps redb from 4.3.0 to 4.4.0.

Release notes

Sourced from redb's releases.

4.4.0

New features

  • Implement Value and Key for the NonZero integer types, NonZeroU8 to NonZeroU128 and NonZeroI8 to NonZeroI128.
  • Add Value::NICHE, an optional byte string that a type never encodes to. When a type declares one, Option of that type encodes None as it, in place of a tag byte. Adding a niche to a type changes the encoding of Option of it, and its type name with it, so the two are not equivalent types: a table that stores Option of the type from before it declared the niche fails to open with TableTypeMismatch instead of being misread, and can be read through a copy of the type that declares no niche.
  • Stabilize ReadableTable::lower_bound() and ReadableTable::upper_bound(), which return a read-only Cursor, modeled on the standard library's BTreeMap cursors.
  • Stabilize Table::lower_bound_mut() and Table::upper_bound_mut(), which return a CursorMut modeled on the standard library's BTreeMap cursors. Inserting sorted data through insert_before() can be around 3x faster than insert().

Bug fixes

  • Fix a bug where check_integrity() could report that it repaired corruption, after a transaction that grew the file size was aborted.
  • Fix Database::create() repairing the database it had just created, which failed with RepairAborted under a repair callback that aborts.
  • Fix unbounded memory growth in the page cache under write workloads, when the cache never reached its configured size limit.
  • Fix Durability::None commits being lost on a clean close, after a panic was caught inside an earlier write transaction.
  • Fix compact() leaving free regions at the end of the file, when the compaction emptied more of them than it made commits.
  • Fix compact() waiting forever when the caller holds a write transaction. It fails with CompactionError::TransactionInProgress, as it does for a read transaction.
Changelog

Sourced from redb's changelog.

4.4.0 - 2026-10-13

New features

  • Implement Value and Key for the NonZero integer types, NonZeroU8 to NonZeroU128 and NonZeroI8 to NonZeroI128.
  • Add Value::NICHE, an optional byte string that a type never encodes to. When a type declares one, Option of that type encodes None as it, in place of a tag byte. Adding a niche to a type changes the encoding of Option of it, and its type name with it, so the two are not equivalent types: a table that stores Option of the type from before it declared the niche fails to open with TableTypeMismatch instead of being misread, and can be read through a copy of the type that declares no niche.
  • Stabilize ReadableTable::lower_bound() and ReadableTable::upper_bound(), which return a read-only Cursor, modeled on the standard library's BTreeMap cursors.
  • Stabilize Table::lower_bound_mut() and Table::upper_bound_mut(), which return a CursorMut modeled on the standard library's BTreeMap cursors. Inserting sorted data through insert_before() can be around 3x faster than insert().

Bug fixes

  • Fix a bug where check_integrity() could report that it repaired corruption, after a transaction that grew the file size was aborted.
  • Fix Database::create() repairing the database it had just created, which failed with RepairAborted under a repair callback that aborts.
  • Fix unbounded memory growth in the page cache under write workloads, when the cache never reached its configured size limit.
  • Fix Durability::None commits being lost on a clean close, after a panic was caught inside an earlier write transaction.
  • Fix compact() leaving free regions at the end of the file, when the compaction emptied more of them than it made commits.
  • Fix compact() waiting forever when the caller holds a write transaction. It fails with CompactionError::TransactionInProgress, as it does for a read transaction.

2.6.4 - 2026-10-02

  • Fix unbounded memory growth in the page cache under write workloads, when the cache never reached its configured size limit.
Commits
  • 7061f7e Bump version to 4.4.0
  • 8c29eee Update changelog
  • f403a51 Refuse to compact while a write transaction is live
  • f26a843 Take the consistent byte before the open publishes the recovery flag
  • 0bb989a Retry every fcntl lock request interrupted by a signal
  • c849ed0 Drop every free trailing region when compacting
  • faae676 Make non-durable commits durable when closing after a caught panic
  • 87a17ff Update changelog
  • f95d460 Bound the page cache LRU queue when the cache never fills
  • e9d0c06 Do not repair a database in which nothing has been committed
  • 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 [redb](https://github.com/cberner/redb) from 4.3.0 to 4.4.0.
- [Release notes](https://github.com/cberner/redb/releases)
- [Changelog](https://github.com/cberner/redb/blob/master/CHANGELOG.md)
- [Commits](cberner/redb@v4.3.0...v4.4.0)

---
updated-dependencies:
- dependency-name: redb
  dependency-version: 4.4.0
  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 Oct 19, 2026
@Ralith
Ralith merged commit 5351092 into master Oct 19, 2026
3 of 4 checks passed
@Ralith
Ralith deleted the dependabot/cargo/redb-4.4.0 branch October 19, 2026 15:07
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