Skip to content

Releases: foyer-rs/foyer

0.13.1

04 Dec 09:21
98294d1
Compare
Choose a tag to compare

Releases

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

Changes

  • Refactor cache builders. name field requires Cow<'static, str> instead of &'static str for convenience.

What's Changed

  • doc: enable necessary features when building docs by @MrCroxx in #812
  • refactor: use Cow<'static, str> instead of &'static str by @MrCroxx in #814
  • chore: release foyer v0.13.1 by @MrCroxx in #815

Full Changelog: 0.13.0...0.13.1

0.13.0

03 Dec 06:44
54893fe
Compare
Choose a tag to compare

Releases

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

Changes

  • Refine in-memory cache framework:
    • Allow "get"/"release"/"entry drop" to acquire read lock or lock-free if the algorithm allows.
    • Make most Eviction APIs safe, only acquire unsafe Rust while accessing algorithm managed per-entry state with UnsafeCell.
    • Replace the "reinsertion" design with release with real "release last ref" design.
    • Rename some APIs.
  • Refine metrics framework:
    • Replace metrics with customized metrics framework to support various metrics backend.
    • Implement built-in metrics exporter that adapts to crate prometheus/prometheus-client/opentelemetry.

What's Changed

  • feat: support no disk (mem only) for foyer bench by @MrCroxx in #773
  • feat: use equivalent to loose the key trait bounds by @MrCroxx in #774
  • refactor: use workspace lint rules for active crates by @MrCroxx in #776
  • chore: update metrics and ot deps by @MrCroxx in #782
  • chore: add warning when region count is smaller than expected by @MrCroxx in #784
  • feat: simplify foyer in-memory cache framework by @MrCroxx in #785
  • fix: fix insert ephemeral by @MrCroxx in #786
  • refactor: wrapper no/immutable/mutable op into Op by @MrCroxx in #788
  • chore: update default grafana view to a mroe compacted layout by @MrCroxx in #781
  • feat: introduce metrics framework for different metrics backend by @MrCroxx in #790
  • feat: introduce both opentelemetry 0.26 and 0.27 exporter by @MrCroxx in #793
  • feat: support in-memory cache online resize by @MrCroxx in #794
  • fix: fix lru high priority weight calculation by @MrCroxx in #797
  • doc: add example for export metrics with prometheus and hyper by @MrCroxx in #799
  • feat: support multiple foyer instance share the same prometheus by @MrCroxx in #801
  • refacor: give hybrid cache builder a default metrics registry type by @MrCroxx in #803
  • refactor: export metrics exporters in mod level by @MrCroxx in #804
  • feat: support prometheus-client metrics exporter by @MrCroxx in #805
  • chore: add slatedb as a show case by @MrCroxx in #709
  • chore: update "Other Examples" in readme by @MrCroxx in #806
  • chore: make clippy happy with rust 1.83.0 by @MrCroxx in #807
  • chore: upgrade hashbrown deps to 0.15 by @MrCroxx in #809
  • chore: upgrade deps by @MrCroxx in #810
  • chore: release foyer v0.13.0 by @MrCroxx in #811

Full Changelog: 0.12.2...0.13.0

0.12.2

11 Oct 02:54
0244d59
Compare
Choose a tag to compare

2024-10-11

Releases

crate version
foyer 0.12.2
foyer-common 0.12.2
foyer-intrusive 0.12.2
foyer-memory 0.12.2
foyer-storage 0.12.2
foyer-bench 0.12.2

Changes

  • Revert "Scale shards to 1 when there is not enough capacity". It would be useful sometimes. Just raise the warning.

What's Changed

  • fix: do not scale in shards when capacity is not enough, just warn by @MrCroxx in #769
  • chore: disable madsim test, just test build by @MrCroxx in #770
  • chore: release foyer v0.12.2 by @MrCroxx in #771

Full Changelog: 0.12.1...0.12.2

0.12.1

10 Oct 09:11
192d5b8
Compare
Choose a tag to compare

Releases

crate version
foyer 0.12.1
foyer-common 0.12.1
foyer-intrusive 0.12.1
foyer-memory 0.12.1
foyer-storage 0.12.1
foyer-bench 0.12.1

Changes

  • Downgrade hashbrown to 0.14 to fix build on nightly for projects using hashbrown < 0.15.
  • Fix build with madsim.
  • Refine small object disk cache.
  • Scale shards to 1 when there is not enough capacity.

What's Changed

Full Changelog: 0.12.0...0.12.1

0.12.0

09 Oct 06:13
cf53a60
Compare
Choose a tag to compare

Releases

crate version
foyer 0.12.0
foyer-common 0.12.0
foyer-intrusive 0.12.0
foyer-memory 0.12.0
foyer-storage 0.12.0
foyer-bench 0.12.0

Changes

  • Align the versions of all components to the same. 📣
  • Introduce small object disk cache. 🎉
  • Introduce mixed/large/small storage engine.
  • Refactor builders for the hybrid cache.
  • Introduce submit queue size threshold to prevent from channel piling up.
  • Support jeprof for foyer-bench.
  • Rename feature "mtrace" to "tracing".

What's Changed

  • chore: update license checker version by @MrCroxx in #739
  • feat: introduce small object disk cache by @MrCroxx in #658
  • chore: use workspace.package to manage crate meta by @MrCroxx in #740
  • feat: impl destroy for sodc by @MrCroxx in #744
  • refactor: refine device build by @MrCroxx in #745
  • feat: introduce submit queue size threshold by @MrCroxx in #749
  • bug: fix panic when serde as batching by @MrCroxx in #750
  • chore: fix typos with the lates typos checker by @MrCroxx in #752
  • feat: support jeprof for foyer-bench by @MrCroxx in #748
  • chore: refine cargo features and deps, rename feature mtrace to tracing by @MrCroxx in #754
  • refactor: refine runtime and tracing options by @MrCroxx in #756
  • chore: release 0.12.0 by @MrCroxx in #755

Full Changelog: 0.11.5...0.12.0

0.11.5

24 Sep 16:56
6ac0e83
Compare
Choose a tag to compare

2024-09-25

Releases

crate version
foyer 0.11.5
foyer-common 0.9.5
foyer-intrusive 0.9.5
foyer-memory 0.7.5
foyer-storage 0.10.5
foyer-bench 0.3.5

Changes

  • Fix panic on dropping the hybrid cache. #736

What's Changed

  • fix: hold runtime ref and handle to prevent spawn after shutdown by @MrCroxx in #736
  • chore: release foyer 0.11.5 by @MrCroxx in #737

Full Changelog: 0.11.4...0.11.5

0.11.4

24 Sep 07:39
5fe3957
Compare
Choose a tag to compare

Releases

crate version
foyer 0.11.4
foyer-common 0.9.4
foyer-intrusive 0.9.4
foyer-memory 0.7.4
foyer-storage 0.10.4
foyer-bench 0.3.4

Changes

  • Revert pre-serialization design. The insert latency and memory usage would be better for most cases.
  • Rename with_buffer_threshold to with_buffer_pool_size. The old method is kept but marked as deprecated.
  • Raise a warn when using DirectFileDevice on within a file system.

What's Changed

  • doc: fix a tiny broken link by @MrCroxx in #728
  • refactor: rename with_buffer_threshold to with_buffer_pool_size by @MrCroxx in #729
  • chore: warn if DirectFileDevice is used in a fs by @MrCroxx in #730
  • refactor: revert the pre-serialization and parallel buffer by @MrCroxx in #717
  • refactor: replace manual future enum with auto_enum by @MrCroxx in #732
  • chore: release foyer 0.11.4 by @MrCroxx in #733

Full Changelog: 0.11.3...0.11.4

0.11.3

20 Sep 05:31
a52da3a
Compare
Choose a tag to compare

2024-09-20

Releases

crate version
foyer 0.11.3
foyer-common 0.9.3
foyer-intrusive 0.9.3
foyer-memory 0.7.3
foyer-storage 0.10.3
foyer-bench 0.3.3

Changes

  • Fix panicked by io buffer pool alignment issue.

What's Changed

Full Changelog: 0.11.2...0.11.3

0.11.2

12 Sep 07:25
1bafdfa
Compare
Choose a tag to compare

2024-09-12

crate version
foyer 0.11.2
foyer-common 0.9.2
foyer-intrusive 0.9.2
foyer-memory 0.7.2
foyer-storage 0.10.2
foyer-bench 0.3.2

Changes

  • Support windows (for foyer only).
  • Bump rust toolchain to 1.81.0.
  • Expose in-memory cache builder and cache entry.
  • Reduce page fault and vec growth overhead.
  • Use bytes size for foyer-bench.
  • Fix install deps script.

What's Changed

New Contributors

Full Changelog: 0.11.1...0.11.2

0.11.1

31 Aug 11:41
07bebcf
Compare
Choose a tag to compare

2024-08-31

crate version
foyer 0.11.1
foyer-common 0.9.1
foyer-intrusive 0.9.1
foyer-memory 0.7.1
foyer-storage 0.10.1
foyer-bench 0.3.1

Changes

  • Add metrics for serde.
  • Refine fetch runtime usage.
  • Fix unhandled low-layer errors. #674 #677 #679
  • Implement Default for TokioRuntimeConfig.
  • Fix typos and format code with unstable features.

What's Changed

New Contributors

Full Changelog: 0.11.0...0.11.1