Skip to content

chore(deps): update foyer requirement from 0.14.1 to 0.17.0 #332

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

dependabot[bot]
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github May 1, 2025

Updates the requirements on foyer to permit the latest version.

Release notes

Sourced from foyer's releases.

v0.17.0

Releases

crate version
foyer 0.17.0
foyer-common 0.17.0
foyer-memory 0.17.0
foyer-storage 0.17.0
foyer-bench 0.17.0

Changes

  • Refine entry-level properties.
    • Packing ephemeral, hint, location into CacheProperties and HybridCacheProperties, use insert_with_properties() and fetch_with_properties() for setting them.
    • Migration from foyer < v0.17.0: Repleace .insert_with_hint(..), .insert_ephemeral(..), etc with insert_with_properties(..) and fetch_with_properties(..).
  • Refine disk cache insertion with entries populated from the disk cache.
    • Use an age-based FIFO policy to manager large object disk cache.
    • Track the source of in-memory cache entries.
    • When an in-memory cache entry is being inserted into the disk cache, the disk cache will determine if to skip it according to its resource and age. Entries populated from the disk cache and are not going to evicted soon will be skipped.
  • Support flush entries in the in-memory cache to the disk cache on closing the hybrid cache.
    • Migration from foyer < v0.17.0: Enable by .with_flush_on_close(true) with the hybrid cache builder.
  • Refine io throttling.
    • Support advanced io throttling by read/write IOPS/throughput, and support count IOs by IO count or by IO count with IO size.
    • Migration from foyer < v0.17.0: Please set io throttling for device, instead of using RateLimiterAmissionPicker.
  • Support request deduplication and one-flight optimization with fetch(..) interface for the disk cache.
    • Migration from foyer < v0.17.0: Use .fetch_with_properties(..) API and set the location of HybridCacheProperties to Location::OnDisk.
  • Miscs:
    • Add builder() API for Cache and HybridCache to create builders.
    • Opt-out tracing dependency by default, enable it by enabling tracing feature.
    • Bump mixtrics to v0.1.

Latest foyer-bench usage:

bench tool for foyer - Hybrid cache for Rust

Usage: foyer-bench [OPTIONS] <--file <FILE>|--dir <DIR>|--no-disk>

Options: --no-disk Run with in-memory cache compatible mode -f, --file <FILE> File for disk cache data. Use DirectFile as device -d, --dir <DIR> Directory for disk cache data. Use DirectFs as device --mem <MEM> In-memory cache capacity [default: "1.0 GiB"] --disk <DISK> Disk cache capacity [default: "1.0 GiB"] </tr></table>

... (truncated)

Changelog

Sourced from foyer's changelog.


title: Changelog description: Changelog for foyer. authors: mrcroxx date: 2023-05-12T11:02:09+08:00

Changelog

2025-04-28

Releases

crate version
foyer 0.17.0
foyer-common 0.17.0
foyer-memory 0.17.0
foyer-storage 0.17.0
foyer-bench 0.17.0

Changes

  • Refine entry-level properties.
    • Packing ephemeral, hint, location into CacheProperties and HybridCacheProperties, use insert_with_properties() and fetch_with_properties() for setting them.
    • Migration from foyer < v0.17.0: Repleace .insert_with_hint(..), .insert_ephemeral(..), etc with insert_with_properties(..) and fetch_with_properties(..).
  • Refine disk cache insertion with entries populated from the disk cache.
    • Use an age-based FIFO policy to manager large object disk cache.
    • Track the source of in-memory cache entries.
    • When an in-memory cache entry is being inserted into the disk cache, the disk cache will determine if to skip it according to its resource and age. Entries populated from the disk cache and are not going to evicted soon will be skipped.
  • Support flush entries in the in-memory cache to the disk cache on closing the hybrid cache.
    • Migration from foyer < v0.17.0: Enable by .with_flush_on_close(true) with the hybrid cache builder.
  • Refine io throttling.
    • Support advanced io throttling by read/write IOPS/throughput, and support count IOs by IO count or by IO count with IO size.
    • Migration from foyer < v0.17.0: Please set io throttling for device, instead of using RateLimiterAmissionPicker.
  • Support request deduplication and one-flight optimization with fetch(..) interface for the disk cache.
    • Migration from foyer < v0.17.0: Use .fetch_with_properties(..) API and set the location of HybridCacheProperties to Location::OnDisk.
  • Miscs:
    • Add builder() API for Cache and HybridCache to create builders.
    • Opt-out tracing dependency by default, enable it by enabling tracing feature.
    • Bump mixtrics to v0.1.

Latest foyer-bench usage:

bench tool for foyer - Hybrid cache for Rust

Usage: foyer-bench [OPTIONS] <--file <FILE>|--dir <DIR>|--no-disk> </tr></table>

... (truncated)

Commits
  • 050d33a chore: release foyer v0.17.0 (#993)
  • c62f342 feat: add builder for hybrid cache to make it easier to discover (#994)
  • c567126 refactor: opt out fastrace dep without feature tracing (#992)
  • 467ebdd refactor: refine evition info and fifo picker (#989)
  • e652e09 feat: skip disk cache insert for young populated entries (#987)
  • fdedf32 refactor: combine properties and split mem-only and hybrid impl (#985)
  • eb423fc refactor: move utils into a mod in foyer-common (#984)
  • c68c04e chore: update changelog via #980 (#981)
  • 2a26f6c feat: add metrics for lodc indexer insertion conflicts (#974)
  • 4abe3d8 feat: refine Grafana foyer dashboard variables (#958)
  • Additional commits viewable in compare view

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 merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @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)

Updates the requirements on [foyer](https://github.com/foyer-rs/foyer) to permit the latest version.
- [Release notes](https://github.com/foyer-rs/foyer/releases)
- [Changelog](https://github.com/foyer-rs/foyer/blob/main/CHANGELOG.md)
- [Commits](foyer-rs/foyer@v0.14.1...v0.17.0)

---
updated-dependencies:
- dependency-name: foyer
  dependency-version: 0.17.0
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <[email protected]>
@dependabot dependabot bot added dependencies Pull requests that update a dependency file rust Pull requests that update Rust code labels May 1, 2025
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.

0 participants