diff --git a/CHANGELOG.md b/CHANGELOG.md
index f217e5c1..17b3fa6b 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,27 @@
+## 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.
+
+
+
## 2024-08-31
| crate | version |
diff --git a/README.md b/README.md
index 540169b9..6ea75be1 100644
--- a/README.md
+++ b/README.md
@@ -196,6 +196,17 @@ More examples and details can be found [here](https://github.com/foyer-rs/foyer/
*foyer* is built against the recent stable release. The minimum supported version is 1.81.0. The current *foyer* version is not guaranteed to build on Rust versions earlier than the minimum supported version.
+## Supported Platforms
+
+*foyer* is designed to serve on Linux OS, but can still be built on other OS for development.
+
+However, other components may not support non-Linux OS.
+
+| Component | Linux | MacOS | Windows |
+| - | - | - | - |
+| foyer | ✓ | ✓ | ✓ |
+| foyer-bench | ✓ | ✗ | ✗ |
+
## Development State & Roadmap
Currently, *foyer* is still under heavy development.
@@ -210,11 +221,7 @@ Don't forget to pass `make fast` (which means fast check & test) locally before
If you want to run a broader range of checks locally, run `make full`. 🙌
-Thank you for your contribution~
-
-
-
-
+Thank you for your contribution~
## Star History
diff --git a/foyer-bench/Cargo.toml b/foyer-bench/Cargo.toml
index 148bc258..c6bd15bc 100644
--- a/foyer-bench/Cargo.toml
+++ b/foyer-bench/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "foyer-bench"
-version = "0.3.1"
+version = "0.3.2"
edition = "2021"
authors = ["MrCroxx "]
description = "bench tool for foyer - the hybrid cache for Rust"
@@ -17,7 +17,7 @@ clap = { workspace = true }
console-subscriber = { version = "0.4", optional = true }
fastrace = { workspace = true, optional = true }
fastrace-jaeger = { workspace = true, optional = true }
-foyer = { version = "0.11.1", path = "../foyer" }
+foyer = { version = "0.11.2", path = "../foyer" }
futures = "0.3"
hdrhistogram = "7"
itertools = { workspace = true }
diff --git a/foyer-common/Cargo.toml b/foyer-common/Cargo.toml
index 982448ed..bd9d5f37 100644
--- a/foyer-common/Cargo.toml
+++ b/foyer-common/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "foyer-common"
-version = "0.9.1"
+version = "0.9.2"
edition = "2021"
authors = ["MrCroxx "]
description = "common components for foyer - the hybrid cache for Rust"
diff --git a/foyer-intrusive/Cargo.toml b/foyer-intrusive/Cargo.toml
index d2a980ef..598e35c5 100644
--- a/foyer-intrusive/Cargo.toml
+++ b/foyer-intrusive/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "foyer-intrusive"
-version = "0.9.1"
+version = "0.9.2"
edition = "2021"
authors = ["MrCroxx "]
description = "intrusive data structures for foyer - the hybrid cache for Rust"
@@ -11,7 +11,7 @@ readme = "../README.md"
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
[dependencies]
-foyer-common = { version = "0.9.1", path = "../foyer-common" }
+foyer-common = { version = "0.9.2", path = "../foyer-common" }
itertools = { workspace = true }
[features]
diff --git a/foyer-memory/Cargo.toml b/foyer-memory/Cargo.toml
index e2ea5a19..ba2ee1c0 100644
--- a/foyer-memory/Cargo.toml
+++ b/foyer-memory/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "foyer-memory"
-version = "0.7.1"
+version = "0.7.2"
edition = "2021"
authors = ["MrCroxx "]
description = "memory cache for foyer - the hybrid cache for Rust"
@@ -15,8 +15,8 @@ ahash = "0.8"
bitflags = "2"
cmsketch = "0.2.1"
fastrace = { workspace = true }
-foyer-common = { version = "0.9.1", path = "../foyer-common" }
-foyer-intrusive = { version = "0.9.1", path = "../foyer-intrusive" }
+foyer-common = { version = "0.9.2", path = "../foyer-common" }
+foyer-intrusive = { version = "0.9.2", path = "../foyer-intrusive" }
futures = "0.3"
hashbrown = "0.14"
itertools = { workspace = true }
diff --git a/foyer-storage/Cargo.toml b/foyer-storage/Cargo.toml
index d181c4fe..1a2c365c 100644
--- a/foyer-storage/Cargo.toml
+++ b/foyer-storage/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "foyer-storage"
-version = "0.10.1"
+version = "0.10.2"
edition = "2021"
authors = ["MrCroxx "]
description = "storage engine for foyer - the hybrid cache for Rust"
@@ -24,8 +24,8 @@ bytes = "1"
clap = { workspace = true }
either = "1"
fastrace = { workspace = true }
-foyer-common = { version = "0.9.1", path = "../foyer-common" }
-foyer-memory = { version = "0.7.1", path = "../foyer-memory" }
+foyer-common = { version = "0.9.2", path = "../foyer-common" }
+foyer-memory = { version = "0.7.2", path = "../foyer-memory" }
fs4 = "0.9.1"
futures = "0.3"
itertools = { workspace = true }
diff --git a/foyer/Cargo.toml b/foyer/Cargo.toml
index fecd526a..6c925596 100644
--- a/foyer/Cargo.toml
+++ b/foyer/Cargo.toml
@@ -1,6 +1,6 @@
[package]
name = "foyer"
-version = "0.11.1"
+version = "0.11.2"
edition = "2021"
authors = ["MrCroxx "]
description = "Hybrid cache for Rust"
@@ -15,9 +15,9 @@ rust-version = "1.81.0"
ahash = "0.8"
anyhow = "1"
fastrace = { workspace = true }
-foyer-common = { version = "0.9.1", path = "../foyer-common" }
-foyer-memory = { version = "0.7.1", path = "../foyer-memory" }
-foyer-storage = { version = "0.10.1", path = "../foyer-storage" }
+foyer-common = { version = "0.9.2", path = "../foyer-common" }
+foyer-memory = { version = "0.7.2", path = "../foyer-memory" }
+foyer-storage = { version = "0.10.2", path = "../foyer-storage" }
futures = "0.3"
pin-project = "1"
tokio = { workspace = true }