moka-rs/moka
 Watch   
 Star   
 Fork   
16 days ago
moka

Moka 0.12.14

Version 0.12.14

Fixed

  • Fixed a race condition in the and_compute_with method in the future::Cache. (#574 by @Squadrick):
    • When multiple calls are made concurrently for the same key, the f closure may read a stale value, causing the first update to be lost when it is overwritten by a later one.

Changed

2026-01-26 08:41:59
moka

Moka 0.12.13

Version 0.12.13

Fixed

  • Fixed/mitigated use-after-free issues in the hierarchical timer wheels when Expiry returns None (Issue #565, reported by @sharksforarms).
    • Fixed a bug that caused freed timer nodes to remain in the timer wheels in some edge cases (#566 by @powergee).
    • The mitigation added to v0.12.12 was enhanced by atomically reading the expiration state to prevent rare race conditions that could cause use-after-free issues (#570).
  • Fixed Expiry::expire_after_update not clearing expiration time for expired entries (future::Cache: #549, by @singulared, sync::Cache: #564).
2025-12-21 14:02:14
moka

Moka 0.12.12

Version 0.12.12

Bumped the minimum supported Rust version (MSRV) to 1.71.1, released on August 3, 2023 (#555).

Fixed

  • Fixed use-after-free panic in the hierarchical timer wheels when Expiry returns None (#548, by @awarus).
  • Fixed a subtle undefined behavior (UB) in the internal deque::move_to_back method (found by Miri) (#553).

Added

Removed

  • Removed several unneeded files from the published package (#541, by @weiznich).
  • Removed the once_cell crate from the dependencies (#520, by @Expyron).
  • Removed the rustc_version crate from the dev-dependencies (#554).