diff --git a/CHANGELOG.md b/CHANGELOG.md
index 2abd56b2..3e656e0b 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,23 @@
+## 2024-04-11
+
+| crate | version |
+| - | - |
+| foyer | 0.7.0 |
+| foyer-common | 0.5.0 |
+| foyer-intrusive | 0.4.0 |
+| foyer-memory | 0.2.0 |
+| foyer-storage | 0.6.0 |
+| foyer-storage-bench | 0.6.0 |
+| foyer-workspace-hack | 0.4.0 |
+
+
+
+### Changes
+
+- Make `foyer` compatible with rust stable toolchain (MSRV = 1.77.2). 🎉
+
+
+
## 2024-04-09
| crate | version |
@@ -12,6 +32,8 @@
- fix: Fix panics on `state()` for s3fifo entry.
- fix: Enable `offset_of` feature for `foyer-storage`.
+
+
## 2024-04-08
| crate | version |
@@ -26,6 +48,8 @@
- feat: Introduce s3fifo to `foyer-memory`.
- fix: Fix doctest for `foyer-intrusive`.
+
+
## 2024-03-21
| crate | version |
diff --git a/foyer-common/Cargo.toml b/foyer-common/Cargo.toml
index 0abd488a..335ae28e 100644
--- a/foyer-common/Cargo.toml
+++ b/foyer-common/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "foyer-common"
-version = "0.4.0"
+version = "0.5.0"
edition = "2021"
authors = ["MrCroxx "]
description = "common utils for foyer - the hybrid cache for Rust"
@@ -17,7 +17,7 @@ normal = ["foyer-workspace-hack"]
anyhow = "1.0"
bytes = "1"
cfg-if = "1"
-foyer-workspace-hack = { version = "0.3", path = "../foyer-workspace-hack" }
+foyer-workspace-hack = { version = "0.4", path = "../foyer-workspace-hack" }
itertools = "0.12"
parking_lot = { version = "0.12", features = ["arc_lock"] }
paste = "1.0"
diff --git a/foyer-experimental-bench/Cargo.toml b/foyer-experimental-bench/Cargo.toml
index 4552d34d..b21e44e2 100644
--- a/foyer-experimental-bench/Cargo.toml
+++ b/foyer-experimental-bench/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "foyer-experimental-bench"
-version = "0.1.0"
+version = "0.0.0"
edition = "2021"
authors = ["MrCroxx "]
description = "storage engine bench tool for foyer - the hybrid cache for Rust"
@@ -8,6 +8,7 @@ license = "Apache-2.0"
repository = "https://github.com/mrcroxx/foyer"
homepage = "https://github.com/mrcroxx/foyer"
readme = "../README.md"
+publish = false
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
autobenches = false
@@ -19,11 +20,11 @@ anyhow = "1"
bytesize = "1"
clap = { version = "4", features = ["derive"] }
console-subscriber = { version = "0.2", optional = true }
-foyer-common = { version = "0.4", path = "../foyer-common" }
-foyer-experimental = { version = "0.1", path = "../foyer-experimental" }
-foyer-intrusive = { version = "0.3", path = "../foyer-intrusive" }
-foyer-storage = { version = "0.5", path = "../foyer-storage" }
-foyer-workspace-hack = { version = "0.3", path = "../foyer-workspace-hack" }
+foyer-common = { version = "0.5", path = "../foyer-common" }
+foyer-experimental = { version = "*", path = "../foyer-experimental" }
+foyer-intrusive = { version = "0.4", path = "../foyer-intrusive" }
+foyer-storage = { version = "0.6", path = "../foyer-storage" }
+foyer-workspace-hack = { version = "0.4", path = "../foyer-workspace-hack" }
futures = "0.3"
hdrhistogram = "7"
http-body-util = "0.1"
diff --git a/foyer-experimental/Cargo.toml b/foyer-experimental/Cargo.toml
index ab8b0a50..f60cac62 100644
--- a/foyer-experimental/Cargo.toml
+++ b/foyer-experimental/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "foyer-experimental"
-version = "0.1.0"
+version = "0.0.0"
edition = "2021"
authors = ["MrCroxx "]
description = "experimental components for foyer - the hybrid cache for Rust"
@@ -8,6 +8,7 @@ license = "Apache-2.0"
repository = "https://github.com/mrcroxx/foyer"
homepage = "https://github.com/mrcroxx/foyer"
readme = "../README.md"
+publish = false
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[package.metadata.cargo-udeps.ignore]
@@ -17,8 +18,8 @@ normal = ["foyer-workspace-hack"]
anyhow = "1.0"
bytes = "1"
crossbeam = { version = "0.8", features = ["std", "crossbeam-channel"] }
-foyer-common = { version = "0.4", path = "../foyer-common" }
-foyer-workspace-hack = { version = "0.3", path = "../foyer-workspace-hack" }
+foyer-common = { version = "0.5", path = "../foyer-common" }
+foyer-workspace-hack = { version = "0.4", path = "../foyer-workspace-hack" }
lazy_static = "1"
parking_lot = { version = "0.12", features = ["arc_lock"] }
paste = "1.0"
diff --git a/foyer-intrusive/Cargo.toml b/foyer-intrusive/Cargo.toml
index 8b33072a..f178e839 100644
--- a/foyer-intrusive/Cargo.toml
+++ b/foyer-intrusive/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "foyer-intrusive"
-version = "0.3.1"
+version = "0.4.0"
edition = "2021"
authors = ["MrCroxx "]
description = "intrusive data structures for foyer - the hybrid cache for Rust"
@@ -16,8 +16,8 @@ normal = ["foyer-workspace-hack"]
[dependencies]
bytes = "1"
cmsketch = "0.1"
-foyer-common = { version = "0.4", path = "../foyer-common" }
-foyer-workspace-hack = { version = "0.3", path = "../foyer-workspace-hack" }
+foyer-common = { version = "0.5", path = "../foyer-common" }
+foyer-workspace-hack = { version = "0.4", path = "../foyer-workspace-hack" }
itertools = "0.12"
memoffset = "0.9"
parking_lot = "0.12"
diff --git a/foyer-memory/Cargo.toml b/foyer-memory/Cargo.toml
index 9c26a60c..a37f336c 100644
--- a/foyer-memory/Cargo.toml
+++ b/foyer-memory/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "foyer-memory"
-version = "0.1.4"
+version = "0.2.0"
edition = "2021"
authors = ["MrCroxx "]
description = "memory cache for foyer - the hybrid cache for Rust"
@@ -18,8 +18,8 @@ ahash = "0.8"
bitflags = "2"
cmsketch = "0.2"
crossbeam = "0.8"
-foyer-intrusive = { version = "0.3", path = "../foyer-intrusive" }
-foyer-workspace-hack = { version = "0.3", path = "../foyer-workspace-hack" }
+foyer-intrusive = { version = "0.4", path = "../foyer-intrusive" }
+foyer-workspace-hack = { version = "0.4", path = "../foyer-workspace-hack" }
futures = "0.3"
hashbrown = "0.14"
itertools = "0.12"
diff --git a/foyer-storage-bench/Cargo.toml b/foyer-storage-bench/Cargo.toml
index e8400682..c7f02b49 100644
--- a/foyer-storage-bench/Cargo.toml
+++ b/foyer-storage-bench/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "foyer-storage-bench"
-version = "0.5.1"
+version = "0.6.0"
edition = "2021"
authors = ["MrCroxx "]
description = "storage engine bench tool for foyer - the hybrid cache for Rust"
@@ -18,10 +18,10 @@ anyhow = "1"
bytesize = "1"
clap = { version = "4", features = ["derive"] }
console-subscriber = { version = "0.2", optional = true }
-foyer-common = { version = "0.4", path = "../foyer-common" }
-foyer-intrusive = { version = "0.3", path = "../foyer-intrusive" }
-foyer-storage = { version = "0.5", path = "../foyer-storage" }
-foyer-workspace-hack = { version = "0.3", path = "../foyer-workspace-hack" }
+foyer-common = { version = "0.5", path = "../foyer-common" }
+foyer-intrusive = { version = "0.4", path = "../foyer-intrusive" }
+foyer-storage = { version = "0.6", path = "../foyer-storage" }
+foyer-workspace-hack = { version = "0.4", path = "../foyer-workspace-hack" }
futures = "0.3"
hdrhistogram = "7"
http-body-util = "0.1"
diff --git a/foyer-storage/Cargo.toml b/foyer-storage/Cargo.toml
index 4eb2174a..16bba14c 100644
--- a/foyer-storage/Cargo.toml
+++ b/foyer-storage/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "foyer-storage"
-version = "0.5.1"
+version = "0.6.0"
edition = "2021"
authors = ["MrCroxx "]
description = "storage engine for foyer - the hybrid cache for Rust"
@@ -19,9 +19,9 @@ anyhow = "1.0"
bitflags = "2.3.1"
bitmaps = "3.2"
bytes = "1"
-foyer-common = { version = "0.4", path = "../foyer-common" }
-foyer-intrusive = { version = "0.3", path = "../foyer-intrusive" }
-foyer-workspace-hack = { version = "0.3", path = "../foyer-workspace-hack" }
+foyer-common = { version = "0.5", path = "../foyer-common" }
+foyer-intrusive = { version = "0.4", path = "../foyer-intrusive" }
+foyer-workspace-hack = { version = "0.4", path = "../foyer-workspace-hack" }
futures = "0.3"
itertools = "0.12"
lazy_static = "1"
diff --git a/foyer-workspace-hack/Cargo.toml b/foyer-workspace-hack/Cargo.toml
index 03c4afc0..b03784d9 100644
--- a/foyer-workspace-hack/Cargo.toml
+++ b/foyer-workspace-hack/Cargo.toml
@@ -4,7 +4,7 @@
[package]
name = "foyer-workspace-hack"
-version = "0.3.0"
+version = "0.4.0"
authors = ["MrCroxx "]
description = "workspace-hack package, managed by hakari"
license = "Apache-2.0"
diff --git a/foyer/Cargo.toml b/foyer/Cargo.toml
index 4c9fb883..5e3652c2 100644
--- a/foyer/Cargo.toml
+++ b/foyer/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "foyer"
-version = "0.6.0"
+version = "0.7.0"
edition = "2021"
authors = ["MrCroxx "]
description = "Hybrid cache for Rust"
@@ -15,8 +15,8 @@ rust-version = "1.77.2"
normal = ["foyer-workspace-hack"]
[dependencies]
-foyer-common = { version = "0.4", path = "../foyer-common" }
-foyer-intrusive = { version = "0.3", path = "../foyer-intrusive" }
-foyer-memory = { version = "0.1", path = "../foyer-memory" }
-foyer-storage = { version = "0.5", path = "../foyer-storage" }
-foyer-workspace-hack = { version = "0.3", path = "../foyer-workspace-hack" }
+foyer-common = { version = "0.5", path = "../foyer-common" }
+foyer-intrusive = { version = "0.4", path = "../foyer-intrusive" }
+foyer-memory = { version = "0.2", path = "../foyer-memory" }
+foyer-storage = { version = "0.6", path = "../foyer-storage" }
+foyer-workspace-hack = { version = "0.4", path = "../foyer-workspace-hack" }