diff --git a/Cargo.lock b/Cargo.lock
index 124d9f796..c1258435f 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -79,7 +79,7 @@ checksum = "7f202df86484c868dbad7eaa557ef785d5c66295e41b460ef922eca0723b842c"
[[package]]
name = "anyspawn"
-version = "0.5.2"
+version = "0.5.3"
dependencies = [
"criterion",
"futures",
@@ -271,7 +271,7 @@ name = "automation"
version = "0.1.0"
dependencies = [
"duct",
- "ohno 0.3.4",
+ "ohno 0.3.5",
"serde",
"serde_json",
]
@@ -466,7 +466,7 @@ checksum = "1e748733b7cbc798e1434b6ac524f0c1ff2ab456fe201501e6497c8417a4fc33"
[[package]]
name = "bytesbuf"
-version = "0.5.2"
+version = "0.5.3"
dependencies = [
"alloc_tracker",
"bytes",
@@ -486,21 +486,21 @@ dependencies = [
[[package]]
name = "bytesbuf_io"
-version = "0.5.2"
+version = "0.5.4"
dependencies = [
"bytesbuf",
"futures",
"futures-core",
"mutants",
"new_zealand",
- "ohno 0.3.4",
+ "ohno 0.3.5",
"testing_aids",
"trait-variant",
]
[[package]]
name = "cachet"
-version = "0.6.2"
+version = "0.6.4"
dependencies = [
"alloc_tracker",
"anyspawn",
@@ -512,7 +512,7 @@ dependencies = [
"dynosaur",
"futures",
"layered",
- "ohno 0.3.4",
+ "ohno 0.3.5",
"opentelemetry",
"opentelemetry_sdk",
"parking_lot",
@@ -533,7 +533,7 @@ dependencies = [
[[package]]
name = "cachet_memory"
-version = "0.3.1"
+version = "0.3.3"
dependencies = [
"cachet_tier",
"criterion",
@@ -541,7 +541,7 @@ dependencies = [
"futures",
"moka",
"mutants",
- "ohno 0.3.4",
+ "ohno 0.3.5",
"thread_aware",
"tick",
"tokio",
@@ -549,7 +549,7 @@ dependencies = [
[[package]]
name = "cachet_service"
-version = "0.2.2"
+version = "0.2.3"
dependencies = [
"cachet_tier",
"layered",
@@ -558,10 +558,10 @@ dependencies = [
[[package]]
name = "cachet_tier"
-version = "0.2.1"
+version = "0.2.2"
dependencies = [
"dynosaur",
- "ohno 0.3.4",
+ "ohno 0.3.5",
"parking_lot",
"recoverable",
"tick",
@@ -1132,7 +1132,7 @@ dependencies = [
"layered",
"mutants",
"native-tls",
- "ohno 0.3.4",
+ "ohno 0.3.5",
"opentelemetry",
"opentelemetry-semantic-conventions",
"opentelemetry-stdout",
@@ -1160,7 +1160,7 @@ dependencies = [
[[package]]
name = "fetch_hyper"
-version = "0.3.0"
+version = "0.3.2"
dependencies = [
"anyspawn",
"bytes",
@@ -1179,7 +1179,7 @@ dependencies = [
"layered",
"mutants",
"native-tls",
- "ohno 0.3.4",
+ "ohno 0.3.5",
"opentelemetry",
"opentelemetry-semantic-conventions",
"opentelemetry_sdk",
@@ -1209,14 +1209,14 @@ dependencies = [
[[package]]
name = "fetch_tls"
-version = "0.2.1"
+version = "0.2.2"
dependencies = [
"base64",
"http",
"insta",
"mutants",
"native-tls",
- "ohno 0.3.4",
+ "ohno 0.3.5",
"rstest",
"rustls",
"rustls-pki-types",
@@ -1635,7 +1635,7 @@ dependencies = [
[[package]]
name = "http_extensions"
-version = "0.4.4"
+version = "0.5.0"
dependencies = [
"alloc_tracker",
"bytes",
@@ -1650,7 +1650,7 @@ dependencies = [
"hyper-util",
"layered",
"mutants",
- "ohno 0.3.4",
+ "ohno 0.3.5",
"pin-project",
"recoverable",
"serde",
@@ -2229,7 +2229,7 @@ dependencies = [
[[package]]
name = "multitude"
-version = "0.1.2"
+version = "0.1.3"
dependencies = [
"allocator-api2 0.4.0",
"bolero",
@@ -2359,12 +2359,12 @@ dependencies = [
[[package]]
name = "ohno"
-version = "0.3.4"
+version = "0.3.5"
dependencies = [
"futures",
"insta",
"mutants",
- "ohno_macros 0.3.2",
+ "ohno_macros 0.3.3",
"regex",
"testing_aids",
"thiserror",
@@ -2385,7 +2385,7 @@ dependencies = [
[[package]]
name = "ohno_macros"
-version = "0.3.2"
+version = "0.3.3"
dependencies = [
"insta",
"mutants",
@@ -2886,7 +2886,7 @@ name = "recoverable"
version = "0.1.4"
dependencies = [
"insta",
- "ohno 0.3.4",
+ "ohno 0.3.5",
"static_assertions",
"testing_aids",
]
@@ -3115,7 +3115,7 @@ checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49"
[[package]]
name = "seatbelt"
-version = "0.5.3"
+version = "0.5.4"
dependencies = [
"alloc_tracker",
"criterion",
@@ -3127,7 +3127,7 @@ dependencies = [
"jiff",
"layered",
"mutants",
- "ohno 0.3.4",
+ "ohno 0.3.5",
"opentelemetry",
"opentelemetry-stdout",
"opentelemetry_sdk",
@@ -3147,14 +3147,14 @@ dependencies = [
[[package]]
name = "seatbelt_http"
-version = "0.2.4"
+version = "0.3.0"
dependencies = [
"futures",
"http",
"http_extensions",
"layered",
"mutants",
- "ohno 0.3.4",
+ "ohno 0.3.5",
"seatbelt",
"templated_uri",
"tick",
@@ -3428,12 +3428,12 @@ dependencies = [
[[package]]
name = "templated_uri"
-version = "0.2.3"
+version = "0.3.0"
dependencies = [
"data_privacy",
"http",
"mutants",
- "ohno 0.3.4",
+ "ohno 0.3.5",
"pct-str",
"serde",
"serde_json",
@@ -3446,7 +3446,7 @@ dependencies = [
[[package]]
name = "templated_uri_macros"
-version = "0.2.2"
+version = "0.2.3"
dependencies = [
"mutants",
"templated_uri_macros_impl",
@@ -3454,13 +3454,13 @@ dependencies = [
[[package]]
name = "templated_uri_macros_impl"
-version = "0.2.2"
+version = "0.2.3"
dependencies = [
"chumsky",
"darling",
"insta",
"mutants",
- "ohno 0.3.4",
+ "ohno 0.3.5",
"prettyplease",
"proc-macro2",
"quote",
@@ -3517,7 +3517,7 @@ dependencies = [
[[package]]
name = "thread_aware"
-version = "0.7.2"
+version = "0.7.3"
dependencies = [
"futures",
"many_cpus",
@@ -3528,7 +3528,7 @@ dependencies = [
[[package]]
name = "thread_aware_macros"
-version = "0.7.2"
+version = "0.7.3"
dependencies = [
"mutants",
"syn",
@@ -3537,7 +3537,7 @@ dependencies = [
[[package]]
name = "thread_aware_macros_impl"
-version = "0.7.1"
+version = "0.7.2"
dependencies = [
"insta",
"prettyplease",
@@ -3557,7 +3557,7 @@ dependencies = [
[[package]]
name = "tick"
-version = "0.3.2"
+version = "0.3.3"
dependencies = [
"chrono",
"chrono-tz",
@@ -3567,7 +3567,7 @@ dependencies = [
"insta",
"jiff",
"mutants",
- "ohno 0.3.4",
+ "ohno 0.3.5",
"pin-project-lite",
"serde",
"serde_core",
@@ -3916,7 +3916,7 @@ checksum = "ebc1c04c71510c7f702b52b7c350734c9ff1295c464a03335b00bb84fc54f853"
[[package]]
name = "uniflight"
-version = "0.2.2"
+version = "0.2.3"
dependencies = [
"ahash",
"async-once-cell",
diff --git a/Cargo.toml b/Cargo.toml
index 9963ce991..7300a8cd3 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -23,41 +23,41 @@ homepage = "https://github.com/microsoft/oxidizer"
[workspace.dependencies]
# local dependencies
-anyspawn = { path = "crates/anyspawn", default-features = false, version = "0.5.2" }
-bytesbuf = { path = "crates/bytesbuf", default-features = false, version = "0.5.2" }
-bytesbuf_io = { path = "crates/bytesbuf_io", default-features = false, version = "0.5.2" }
-cachet = { path = "crates/cachet", default-features = false, version = "0.6.2" }
-cachet_memory = { path = "crates/cachet_memory", default-features = false, version = "0.3.1" }
-cachet_service = { path = "crates/cachet_service", default-features = false, version = "0.2.2" }
-cachet_tier = { path = "crates/cachet_tier", default-features = false, version = "0.2.1" }
+anyspawn = { path = "crates/anyspawn", default-features = false, version = "0.5.3" }
+bytesbuf = { path = "crates/bytesbuf", default-features = false, version = "0.5.3" }
+bytesbuf_io = { path = "crates/bytesbuf_io", default-features = false, version = "0.5.4" }
+cachet = { path = "crates/cachet", default-features = false, version = "0.6.4" }
+cachet_memory = { path = "crates/cachet_memory", default-features = false, version = "0.3.3" }
+cachet_service = { path = "crates/cachet_service", default-features = false, version = "0.2.3" }
+cachet_tier = { path = "crates/cachet_tier", default-features = false, version = "0.2.2" }
data_privacy = { path = "crates/data_privacy", default-features = false, version = "0.12.0" }
data_privacy_core = { path = "crates/data_privacy_core", default-features = false, version = "0.1.0" }
data_privacy_macros = { path = "crates/data_privacy_macros", default-features = false, version = "0.10.0" }
data_privacy_macros_impl = { path = "crates/data_privacy_macros_impl", default-features = false, version = "0.10.0" }
fetch = { path = "crates/fetch", default-features = false, version = "0.10.0" }
-fetch_hyper = { path = "crates/fetch_hyper", default-features = false, version = "0.3.0" }
+fetch_hyper = { path = "crates/fetch_hyper", default-features = false, version = "0.3.2" }
fetch_options = { path = "crates/fetch_options", default-features = false, version = "0.2.0" }
-fetch_tls = { path = "crates/fetch_tls", default-features = false, version = "0.2.1" }
+fetch_tls = { path = "crates/fetch_tls", default-features = false, version = "0.2.2" }
fundle = { path = "crates/fundle", default-features = false, version = "0.3.2" }
fundle_macros = { path = "crates/fundle_macros", default-features = false, version = "0.3.2" }
fundle_macros_impl = { path = "crates/fundle_macros_impl", default-features = false, version = "0.3.2" }
-http_extensions = { path = "crates/http_extensions", default-features = false, version = "0.4.4" }
+http_extensions = { path = "crates/http_extensions", default-features = false, version = "0.5.0" }
layered = { path = "crates/layered", default-features = false, version = "0.3.2" }
-multitude = { path = "crates/multitude", default-features = false, version = "0.1.2" }
-ohno = { path = "crates/ohno", default-features = false, version = "0.3.4" }
-ohno_macros = { path = "crates/ohno_macros", default-features = false, version = "0.3.2" }
+multitude = { path = "crates/multitude", default-features = false, version = "0.1.3" }
+ohno = { path = "crates/ohno", default-features = false, version = "0.3.5" }
+ohno_macros = { path = "crates/ohno_macros", default-features = false, version = "0.3.3" }
recoverable = { path = "crates/recoverable", default-features = false, version = "0.1.4" }
-seatbelt = { path = "crates/seatbelt", default-features = false, version = "0.5.3" }
-seatbelt_http = { path = "crates/seatbelt_http", default-features = false, version = "0.2.4" }
-templated_uri = { path = "crates/templated_uri", default-features = false, version = "0.2.3" }
-templated_uri_macros = { path = "crates/templated_uri_macros", default-features = false, version = "0.2.2" }
-templated_uri_macros_impl = { path = "crates/templated_uri_macros_impl", default-features = false, version = "0.2.2" }
+seatbelt = { path = "crates/seatbelt", default-features = false, version = "0.5.4" }
+seatbelt_http = { path = "crates/seatbelt_http", default-features = false, version = "0.3.0" }
+templated_uri = { path = "crates/templated_uri", default-features = false, version = "0.3.0" }
+templated_uri_macros = { path = "crates/templated_uri_macros", default-features = false, version = "0.2.3" }
+templated_uri_macros_impl = { path = "crates/templated_uri_macros_impl", default-features = false, version = "0.2.3" }
testing_aids = { path = "crates/testing_aids", default-features = false }
-thread_aware = { path = "crates/thread_aware", default-features = false, version = "0.7.2" }
-thread_aware_macros = { path = "crates/thread_aware_macros", default-features = false, version = "0.7.2" }
-thread_aware_macros_impl = { path = "crates/thread_aware_macros_impl", default-features = false, version = "0.7.1" }
-tick = { path = "crates/tick", default-features = false, version = "0.3.2" }
-uniflight = { path = "crates/uniflight", default-features = false, version = "0.2.2" }
+thread_aware = { path = "crates/thread_aware", default-features = false, version = "0.7.3" }
+thread_aware_macros = { path = "crates/thread_aware_macros", default-features = false, version = "0.7.3" }
+thread_aware_macros_impl = { path = "crates/thread_aware_macros_impl", default-features = false, version = "0.7.2" }
+tick = { path = "crates/tick", default-features = false, version = "0.3.3" }
+uniflight = { path = "crates/uniflight", default-features = false, version = "0.2.3" }
# external dependencies
ahash = { version = "0.8.4", default-features = false }
diff --git a/crates/anyspawn/CHANGELOG.md b/crates/anyspawn/CHANGELOG.md
index f43f871ad..fb541c24c 100644
--- a/crates/anyspawn/CHANGELOG.md
+++ b/crates/anyspawn/CHANGELOG.md
@@ -1,5 +1,11 @@
# Changelog
+## [0.5.3] - 2026-06-04
+
+- 🔧 Maintenance
+
+ - bump `thread_aware` to 0.7.3 (includes derive macro updates via `thread_aware_macros_impl` 0.7.2)
+
## [0.5.2] - 2026-06-02
- 🔧 Maintenance
diff --git a/crates/anyspawn/Cargo.toml b/crates/anyspawn/Cargo.toml
index e93ef6fca..52e70e841 100644
--- a/crates/anyspawn/Cargo.toml
+++ b/crates/anyspawn/Cargo.toml
@@ -4,7 +4,7 @@
[package]
name = "anyspawn"
description = "A generic task spawner compatible with any async runtime."
-version = "0.5.2"
+version = "0.5.3"
readme = "README.md"
keywords = ["oxidizer", "async", "runtime", "futures"]
categories = ["asynchronous"]
diff --git a/crates/anyspawn/README.md b/crates/anyspawn/README.md
index 1fa13d9d6..01dde7363 100644
--- a/crates/anyspawn/README.md
+++ b/crates/anyspawn/README.md
@@ -54,11 +54,11 @@ contention-free, NUMA-friendly task dispatch.
This crate was developed as part of The Oxidizer Project. Browse this crate's source code.
- [__cargo_doc2readme_dependencies_info]: ggGmYW0CYXZlMC43LjJhdIQbLiTyV0MU86EbZU15e0PmecoboQ9jo59bnAEbyDXw04U13GlhYvRhcoQblHE7Bl8YSN4bb97k0EOW-rkbZQa-GdodS-cbCkeYjGZgZ-BhZIKCaGFueXNwYXduZTAuNS4ygmx0aHJlYWRfYXdhcmVlMC43LjI
- [__link0]: https://docs.rs/anyspawn/0.5.2/anyspawn/?search=Spawner
- [__link1]: https://docs.rs/anyspawn/0.5.2/anyspawn/?search=SpawnCustom
- [__link2]: https://docs.rs/anyspawn/0.5.2/anyspawn/?search=CustomSpawnerBuilder
- [__link3]: https://docs.rs/thread_aware/0.7.2/thread_aware/?search=ThreadAware
- [__link4]: https://docs.rs/anyspawn/0.5.2/anyspawn/?search=SpawnCustom
- [__link5]: https://docs.rs/anyspawn/0.5.2/anyspawn/?search=Spawner::new_tokio
- [__link6]: https://docs.rs/anyspawn/0.5.2/anyspawn/?search=Spawner::new_tokio_with_handle
+ [__cargo_doc2readme_dependencies_info]: ggGmYW0CYXZlMC43LjJhdIQbLiTyV0MU86EbZU15e0PmecoboQ9jo59bnAEbyDXw04U13GlhYvRhcoQblHE7Bl8YSN4bb97k0EOW-rkbZQa-GdodS-cbCkeYjGZgZ-BhZIKCaGFueXNwYXduZTAuNS4zgmx0aHJlYWRfYXdhcmVlMC43LjM
+ [__link0]: https://docs.rs/anyspawn/0.5.3/anyspawn/?search=Spawner
+ [__link1]: https://docs.rs/anyspawn/0.5.3/anyspawn/?search=SpawnCustom
+ [__link2]: https://docs.rs/anyspawn/0.5.3/anyspawn/?search=CustomSpawnerBuilder
+ [__link3]: https://docs.rs/thread_aware/0.7.3/thread_aware/?search=ThreadAware
+ [__link4]: https://docs.rs/anyspawn/0.5.3/anyspawn/?search=SpawnCustom
+ [__link5]: https://docs.rs/anyspawn/0.5.3/anyspawn/?search=Spawner::new_tokio
+ [__link6]: https://docs.rs/anyspawn/0.5.3/anyspawn/?search=Spawner::new_tokio_with_handle
diff --git a/crates/bytesbuf/CHANGELOG.md b/crates/bytesbuf/CHANGELOG.md
index 61044fa8c..7f58d18e7 100644
--- a/crates/bytesbuf/CHANGELOG.md
+++ b/crates/bytesbuf/CHANGELOG.md
@@ -1,5 +1,11 @@
# Changelog
+## [0.5.3] - 2026-06-04
+
+- 🔧 Maintenance
+
+ - bump `thread_aware` to 0.7.3 (includes derive macro updates via `thread_aware_macros_impl` 0.7.2)
+
## [0.5.2] - 2026-06-02
- 🔧 Maintenance
diff --git a/crates/bytesbuf/Cargo.toml b/crates/bytesbuf/Cargo.toml
index 139cdc442..dec7ebc13 100644
--- a/crates/bytesbuf/Cargo.toml
+++ b/crates/bytesbuf/Cargo.toml
@@ -4,7 +4,7 @@
[package]
name = "bytesbuf"
description = "Types for creating and manipulating byte sequences."
-version = "0.5.2"
+version = "0.5.3"
readme = "README.md"
keywords = ["oxidizer", "buffers", "io", "zero-copy"]
categories = ["data-structures", "network-programming"]
diff --git a/crates/bytesbuf/README.md b/crates/bytesbuf/README.md
index cd654bbab..53b851265 100644
--- a/crates/bytesbuf/README.md
+++ b/crates/bytesbuf/README.md
@@ -471,69 +471,69 @@ See the `mem::testing` module for details (requires `test-util` Cargo feature).
This crate was developed as part of The Oxidizer Project. Browse this crate's source code.
- [__cargo_doc2readme_dependencies_info]: ggGmYW0CYXZlMC43LjJhdIQbLiTyV0MU86EbZU15e0PmecoboQ9jo59bnAEbyDXw04U13GlhYvRhcoQb3Um38gMny5obPDtS9we40N0baM-dMLra_2cbwUZ6yJrd_CNhZIGCaGJ5dGVzYnVmZTAuNS4y
- [__link0]: https://docs.rs/bytesbuf/0.5.2/bytesbuf/?search=BytesBuf
- [__link1]: https://docs.rs/bytesbuf/0.5.2/bytesbuf/?search=BytesView
- [__link10]: https://docs.rs/bytesbuf/0.5.2/bytesbuf/?search=BytesView
- [__link11]: https://docs.rs/bytesbuf/0.5.2/bytesbuf/?search=BytesView::first_slice
- [__link12]: https://docs.rs/bytesbuf/0.5.2/bytesbuf/?search=BytesView::advance
- [__link13]: https://docs.rs/bytesbuf/0.5.2/bytesbuf/?search=BytesView::first_slice
- [__link14]: https://docs.rs/bytesbuf/0.5.2/bytesbuf/?search=BytesView::first_slice
- [__link15]: https://docs.rs/bytesbuf/0.5.2/bytesbuf/?search=BytesView::first_slice
- [__link16]: https://docs.rs/bytesbuf/0.5.2/bytesbuf/?search=BytesView
- [__link17]: https://docs.rs/bytesbuf/0.5.2/bytesbuf/?search=mem::Memory
- [__link18]: https://docs.rs/bytesbuf/0.5.2/bytesbuf/?search=mem::HasMemory
- [__link19]: https://docs.rs/bytesbuf/0.5.2/bytesbuf/?search=mem::HasMemory::memory
- [__link2]: https://docs.rs/bytesbuf/0.5.2/bytesbuf/?search=BytesView
- [__link20]: https://docs.rs/bytesbuf/0.5.2/bytesbuf/?search=mem::GlobalPool
- [__link21]: https://docs.rs/bytesbuf/0.5.2/bytesbuf/?search=mem::GlobalPool::new
- [__link22]: https://docs.rs/bytesbuf/0.5.2/bytesbuf/?search=mem::Memory::reserve
- [__link23]: https://docs.rs/bytesbuf/0.5.2/bytesbuf/?search=BytesBuf
- [__link24]: https://docs.rs/bytesbuf/0.5.2/bytesbuf/?search=BytesBuf
- [__link25]: https://docs.rs/bytesbuf/0.5.2/bytesbuf/?search=BytesBuf
- [__link26]: https://docs.rs/bytesbuf/0.5.2/bytesbuf/?search=BytesBuf
- [__link27]: https://docs.rs/bytesbuf/0.5.2/bytesbuf/?search=BytesBuf::put_num_le
- [__link28]: https://docs.rs/bytesbuf/0.5.2/bytesbuf/?search=BytesBuf::put_slice
- [__link29]: https://docs.rs/bytesbuf/0.5.2/bytesbuf/?search=BytesBuf::put_byte
- [__link3]: https://docs.rs/bytesbuf/0.5.2/bytesbuf/?search=BytesView::get_num_le
- [__link30]: https://docs.rs/bytesbuf/0.5.2/bytesbuf/?search=BytesBuf::put_byte_repeated
- [__link31]: https://docs.rs/bytesbuf/0.5.2/bytesbuf/?search=BytesBuf::put_bytes
- [__link32]: https://docs.rs/bytesbuf/0.5.2/bytesbuf/?search=BytesView
- [__link33]: https://docs.rs/bytesbuf/0.5.2/bytesbuf/?search=BytesBuf::first_unfilled_slice
- [__link34]: https://docs.rs/bytesbuf/0.5.2/bytesbuf/?search=BytesBuf::advance
- [__link35]: https://docs.rs/bytesbuf/0.5.2/bytesbuf/?search=BytesBuf::first_unfilled_slice
- [__link36]: https://docs.rs/bytesbuf/0.5.2/bytesbuf/?search=BytesBuf::first_unfilled_slice
- [__link37]: https://docs.rs/bytesbuf/0.5.2/bytesbuf/?search=BytesBuf
- [__link38]: https://docs.rs/bytesbuf/0.5.2/bytesbuf/?search=BytesBuf::reserve
- [__link39]: https://docs.rs/bytesbuf/0.5.2/bytesbuf/?search=BytesBuf::remaining_capacity
- [__link4]: https://docs.rs/bytesbuf/0.5.2/bytesbuf/?search=BytesView::get_byte
- [__link40]: https://docs.rs/bytesbuf/0.5.2/bytesbuf/?search=BytesBuf
- [__link41]: https://docs.rs/bytesbuf/0.5.2/bytesbuf/?search=BytesView
- [__link42]: https://docs.rs/bytesbuf/0.5.2/bytesbuf/?search=BytesBuf
- [__link43]: https://docs.rs/bytesbuf/0.5.2/bytesbuf/?search=BytesView
- [__link44]: https://docs.rs/bytesbuf/0.5.2/bytesbuf/?search=BytesBuf
- [__link45]: https://docs.rs/bytesbuf/0.5.2/bytesbuf/?search=BytesBuf::put_bytes
- [__link46]: https://docs.rs/bytesbuf/0.5.2/bytesbuf/?search=mem::HasMemory
- [__link47]: https://docs.rs/bytesbuf/0.5.2/bytesbuf/?search=mem::HasMemory
- [__link48]: https://docs.rs/bytesbuf/0.5.2/bytesbuf/?search=BytesView
- [__link49]: https://docs.rs/bytesbuf/0.5.2/bytesbuf/?search=BytesBuf
- [__link5]: https://docs.rs/bytesbuf/0.5.2/bytesbuf/?search=BytesView::copy_to_slice
- [__link50]: https://docs.rs/bytesbuf/0.5.2/bytesbuf/?search=mem::HasMemory
- [__link51]: https://docs.rs/bytesbuf/0.5.2/bytesbuf/?search=BytesView
- [__link52]: https://docs.rs/bytesbuf/0.5.2/bytesbuf/?search=BytesBuf
- [__link53]: https://docs.rs/bytesbuf/0.5.2/bytesbuf/?search=mem::HasMemory
- [__link54]: https://docs.rs/bytesbuf/0.5.2/bytesbuf/?search=mem::HasMemory
- [__link55]: https://docs.rs/bytesbuf/0.5.2/bytesbuf/?search=mem::GlobalPool
+ [__cargo_doc2readme_dependencies_info]: ggGmYW0CYXZlMC43LjJhdIQbLiTyV0MU86EbZU15e0PmecoboQ9jo59bnAEbyDXw04U13GlhYvRhcoQb3Um38gMny5obPDtS9we40N0baM-dMLra_2cbwUZ6yJrd_CNhZIGCaGJ5dGVzYnVmZTAuNS4z
+ [__link0]: https://docs.rs/bytesbuf/0.5.3/bytesbuf/?search=BytesBuf
+ [__link1]: https://docs.rs/bytesbuf/0.5.3/bytesbuf/?search=BytesView
+ [__link10]: https://docs.rs/bytesbuf/0.5.3/bytesbuf/?search=BytesView
+ [__link11]: https://docs.rs/bytesbuf/0.5.3/bytesbuf/?search=BytesView::first_slice
+ [__link12]: https://docs.rs/bytesbuf/0.5.3/bytesbuf/?search=BytesView::advance
+ [__link13]: https://docs.rs/bytesbuf/0.5.3/bytesbuf/?search=BytesView::first_slice
+ [__link14]: https://docs.rs/bytesbuf/0.5.3/bytesbuf/?search=BytesView::first_slice
+ [__link15]: https://docs.rs/bytesbuf/0.5.3/bytesbuf/?search=BytesView::first_slice
+ [__link16]: https://docs.rs/bytesbuf/0.5.3/bytesbuf/?search=BytesView
+ [__link17]: https://docs.rs/bytesbuf/0.5.3/bytesbuf/?search=mem::Memory
+ [__link18]: https://docs.rs/bytesbuf/0.5.3/bytesbuf/?search=mem::HasMemory
+ [__link19]: https://docs.rs/bytesbuf/0.5.3/bytesbuf/?search=mem::HasMemory::memory
+ [__link2]: https://docs.rs/bytesbuf/0.5.3/bytesbuf/?search=BytesView
+ [__link20]: https://docs.rs/bytesbuf/0.5.3/bytesbuf/?search=mem::GlobalPool
+ [__link21]: https://docs.rs/bytesbuf/0.5.3/bytesbuf/?search=mem::GlobalPool::new
+ [__link22]: https://docs.rs/bytesbuf/0.5.3/bytesbuf/?search=mem::Memory::reserve
+ [__link23]: https://docs.rs/bytesbuf/0.5.3/bytesbuf/?search=BytesBuf
+ [__link24]: https://docs.rs/bytesbuf/0.5.3/bytesbuf/?search=BytesBuf
+ [__link25]: https://docs.rs/bytesbuf/0.5.3/bytesbuf/?search=BytesBuf
+ [__link26]: https://docs.rs/bytesbuf/0.5.3/bytesbuf/?search=BytesBuf
+ [__link27]: https://docs.rs/bytesbuf/0.5.3/bytesbuf/?search=BytesBuf::put_num_le
+ [__link28]: https://docs.rs/bytesbuf/0.5.3/bytesbuf/?search=BytesBuf::put_slice
+ [__link29]: https://docs.rs/bytesbuf/0.5.3/bytesbuf/?search=BytesBuf::put_byte
+ [__link3]: https://docs.rs/bytesbuf/0.5.3/bytesbuf/?search=BytesView::get_num_le
+ [__link30]: https://docs.rs/bytesbuf/0.5.3/bytesbuf/?search=BytesBuf::put_byte_repeated
+ [__link31]: https://docs.rs/bytesbuf/0.5.3/bytesbuf/?search=BytesBuf::put_bytes
+ [__link32]: https://docs.rs/bytesbuf/0.5.3/bytesbuf/?search=BytesView
+ [__link33]: https://docs.rs/bytesbuf/0.5.3/bytesbuf/?search=BytesBuf::first_unfilled_slice
+ [__link34]: https://docs.rs/bytesbuf/0.5.3/bytesbuf/?search=BytesBuf::advance
+ [__link35]: https://docs.rs/bytesbuf/0.5.3/bytesbuf/?search=BytesBuf::first_unfilled_slice
+ [__link36]: https://docs.rs/bytesbuf/0.5.3/bytesbuf/?search=BytesBuf::first_unfilled_slice
+ [__link37]: https://docs.rs/bytesbuf/0.5.3/bytesbuf/?search=BytesBuf
+ [__link38]: https://docs.rs/bytesbuf/0.5.3/bytesbuf/?search=BytesBuf::reserve
+ [__link39]: https://docs.rs/bytesbuf/0.5.3/bytesbuf/?search=BytesBuf::remaining_capacity
+ [__link4]: https://docs.rs/bytesbuf/0.5.3/bytesbuf/?search=BytesView::get_byte
+ [__link40]: https://docs.rs/bytesbuf/0.5.3/bytesbuf/?search=BytesBuf
+ [__link41]: https://docs.rs/bytesbuf/0.5.3/bytesbuf/?search=BytesView
+ [__link42]: https://docs.rs/bytesbuf/0.5.3/bytesbuf/?search=BytesBuf
+ [__link43]: https://docs.rs/bytesbuf/0.5.3/bytesbuf/?search=BytesView
+ [__link44]: https://docs.rs/bytesbuf/0.5.3/bytesbuf/?search=BytesBuf
+ [__link45]: https://docs.rs/bytesbuf/0.5.3/bytesbuf/?search=BytesBuf::put_bytes
+ [__link46]: https://docs.rs/bytesbuf/0.5.3/bytesbuf/?search=mem::HasMemory
+ [__link47]: https://docs.rs/bytesbuf/0.5.3/bytesbuf/?search=mem::HasMemory
+ [__link48]: https://docs.rs/bytesbuf/0.5.3/bytesbuf/?search=BytesView
+ [__link49]: https://docs.rs/bytesbuf/0.5.3/bytesbuf/?search=BytesBuf
+ [__link5]: https://docs.rs/bytesbuf/0.5.3/bytesbuf/?search=BytesView::copy_to_slice
+ [__link50]: https://docs.rs/bytesbuf/0.5.3/bytesbuf/?search=mem::HasMemory
+ [__link51]: https://docs.rs/bytesbuf/0.5.3/bytesbuf/?search=BytesView
+ [__link52]: https://docs.rs/bytesbuf/0.5.3/bytesbuf/?search=BytesBuf
+ [__link53]: https://docs.rs/bytesbuf/0.5.3/bytesbuf/?search=mem::HasMemory
+ [__link54]: https://docs.rs/bytesbuf/0.5.3/bytesbuf/?search=mem::HasMemory
+ [__link55]: https://docs.rs/bytesbuf/0.5.3/bytesbuf/?search=mem::GlobalPool
[__link56]: https://docs.rs/bytes/latest/bytes/struct.Bytes.html
- [__link57]: https://docs.rs/bytesbuf/0.5.2/bytesbuf/?search=BytesView
+ [__link57]: https://docs.rs/bytesbuf/0.5.3/bytesbuf/?search=BytesView
[__link58]: https://docs.rs/bytes/latest/bytes/struct.Bytes.html
- [__link59]: https://docs.rs/bytesbuf/0.5.2/bytesbuf/?search=BytesView
- [__link6]: https://docs.rs/bytesbuf/0.5.2/bytesbuf/?search=BytesView::copy_to_uninit_slice
+ [__link59]: https://docs.rs/bytesbuf/0.5.3/bytesbuf/?search=BytesView
+ [__link6]: https://docs.rs/bytesbuf/0.5.3/bytesbuf/?search=BytesView::copy_to_uninit_slice
[__link60]: https://docs.rs/bytes/latest/bytes/struct.Bytes.html
[__link61]: https://docs.rs/bytes/latest/bytes/struct.Bytes.html
- [__link62]: https://docs.rs/bytesbuf/0.5.2/bytesbuf/?search=BytesView
+ [__link62]: https://docs.rs/bytesbuf/0.5.3/bytesbuf/?search=BytesView
[__link63]: https://doc.rust-lang.org/stable/std/?search=sync::OnceLock
- [__link64]: https://docs.rs/bytesbuf/0.5.2/bytesbuf/?search=BytesView
- [__link7]: https://docs.rs/bytesbuf/0.5.2/bytesbuf/?search=BytesView
+ [__link64]: https://docs.rs/bytesbuf/0.5.3/bytesbuf/?search=BytesView
+ [__link7]: https://docs.rs/bytesbuf/0.5.3/bytesbuf/?search=BytesView
[__link8]: https://doc.rust-lang.org/stable/std/?search=io::Read
[__link9]: https://doc.rust-lang.org/stable/std/?search=io::BufRead
diff --git a/crates/bytesbuf_io/CHANGELOG.md b/crates/bytesbuf_io/CHANGELOG.md
index fd8a1fda0..c013d79cd 100644
--- a/crates/bytesbuf_io/CHANGELOG.md
+++ b/crates/bytesbuf_io/CHANGELOG.md
@@ -1,5 +1,17 @@
# Changelog
+## [0.5.4] - 2026-06-04
+
+- 🔧 Maintenance
+
+ - bump `ohno` to 0.3.5 (transitively updates `ohno_macros` to 0.3.3)
+
+## [0.5.3] - 2026-06-04
+
+- 🔧 Maintenance
+
+ - bump `thread_aware` to 0.7.3 (includes derive macro updates via `thread_aware_macros_impl` 0.7.2)
+
## [0.5.2] - 2026-06-02
- 🔧 Maintenance
diff --git a/crates/bytesbuf_io/Cargo.toml b/crates/bytesbuf_io/Cargo.toml
index a3a1efa31..1d1dc6e8d 100644
--- a/crates/bytesbuf_io/Cargo.toml
+++ b/crates/bytesbuf_io/Cargo.toml
@@ -4,7 +4,7 @@
[package]
name = "bytesbuf_io"
description = "Asynchronous I/O abstractions expressed via `bytesbuf` types."
-version = "0.5.2"
+version = "0.5.4"
readme = "README.md"
keywords = ["oxidizer", "io", "zero-copy", "performance", "async"]
categories = [
@@ -22,7 +22,11 @@ homepage.workspace = true
repository = "https://github.com/microsoft/oxidizer/tree/main/crates/bytesbuf_io"
[package.metadata.cargo_check_external_types]
-allowed_external_types = ["bytesbuf::*", "ohno::*", "futures_core::stream::Stream"]
+allowed_external_types = [
+ "bytesbuf::*",
+ "ohno::*",
+ "futures_core::stream::Stream",
+]
[package.metadata.docs.rs]
all-features = true
diff --git a/crates/bytesbuf_io/README.md b/crates/bytesbuf_io/README.md
index bac716d4e..8cca89a79 100644
--- a/crates/bytesbuf_io/README.md
+++ b/crates/bytesbuf_io/README.md
@@ -35,9 +35,9 @@ types that produce or consume streams of bytes. These are in the `testing` modul
This crate was developed as part of The Oxidizer Project. Browse this crate's source code.
- [__cargo_doc2readme_dependencies_info]: ggGmYW0CYXZlMC43LjJhdIQbLiTyV0MU86EbZU15e0PmecoboQ9jo59bnAEbyDXw04U13GlhYvRhcoQbzALaooHm88wblzy9ny6Wy9IbBKVdX0-eOvkbIABdjy2GM0phZIGCa2J5dGVzYnVmX2lvZTAuNS4y
+ [__cargo_doc2readme_dependencies_info]: ggGmYW0CYXZlMC43LjJhdIQbLiTyV0MU86EbZU15e0PmecoboQ9jo59bnAEbyDXw04U13GlhYvRhcoQbzALaooHm88wblzy9ny6Wy9IbBKVdX0-eOvkbIABdjy2GM0phZIGCa2J5dGVzYnVmX2lvZTAuNS40
[__link0]: https://docs.io/bytesbuf
- [__link1]: https://docs.rs/bytesbuf_io/0.5.2/bytesbuf_io/?search=Read
- [__link2]: https://docs.rs/bytesbuf_io/0.5.2/bytesbuf_io/?search=Write
+ [__link1]: https://docs.rs/bytesbuf_io/0.5.4/bytesbuf_io/?search=Read
+ [__link2]: https://docs.rs/bytesbuf_io/0.5.4/bytesbuf_io/?search=Write
[__link3]: https://docs.io/bytesbuf
- [__link4]: https://docs.rs/bytesbuf_io/0.5.2/bytesbuf_io/?search=Read
+ [__link4]: https://docs.rs/bytesbuf_io/0.5.4/bytesbuf_io/?search=Read
diff --git a/crates/cachet/CHANGELOG.md b/crates/cachet/CHANGELOG.md
index 5705aa936..d81d30f2a 100644
--- a/crates/cachet/CHANGELOG.md
+++ b/crates/cachet/CHANGELOG.md
@@ -1,5 +1,17 @@
# Changelog
+## [0.6.4] - 2026-06-04
+
+- 🔧 Maintenance
+
+ - bump `ohno` to 0.3.5 (transitively updates `ohno_macros` to 0.3.3)
+
+## [0.6.3] - 2026-06-04
+
+- 🔧 Maintenance
+
+ - bump `thread_aware` to 0.7.3 (includes derive macro updates via `thread_aware_macros_impl` 0.7.2)
+
## [0.6.2] - 2026-06-02
- 🔧 Maintenance
diff --git a/crates/cachet/Cargo.toml b/crates/cachet/Cargo.toml
index b69514fea..c5cd5210d 100644
--- a/crates/cachet/Cargo.toml
+++ b/crates/cachet/Cargo.toml
@@ -4,7 +4,7 @@
[package]
name = "cachet"
description = "A composable, customizable multi-tier caching library with rich feature support."
-version = "0.6.2"
+version = "0.6.4"
readme = "README.md"
keywords = ["oxidizer", "caching", "concurrency"]
categories = ["caching", "concurrency"]
diff --git a/crates/cachet/README.md b/crates/cachet/README.md
index e2d202edd..9931e8069 100644
--- a/crates/cachet/README.md
+++ b/crates/cachet/README.md
@@ -265,26 +265,26 @@ See the `telemetry_subscriber` example for a complete demonstration.
This crate was developed as part of The Oxidizer Project. Browse this crate's source code.
- [__cargo_doc2readme_dependencies_info]: ggGmYW0CYXZlMC43LjJhdIQbLiTyV0MU86EbZU15e0PmecoboQ9jo59bnAEbyDXw04U13GlhYvRhcoQbg_hDqE88LP4bMh0J5Y4y4Osb0zDJ1kwqOsoblCGrm49Rx2thZIiCaGJ5dGVzYnVmZTAuNS4ygmZjYWNoZXRlMC42LjKCbWNhY2hldF9tZW1vcnllMC4zLjGCbmNhY2hldF9zZXJ2aWNlZTAuMi4ygmtjYWNoZXRfdGllcmUwLjIuMYJkdGlja2UwLjMuMoJndHJhY2luZ2YwLjEuNDSCaXVuaWZsaWdodGUwLjIuMg
- [__link0]: https://docs.rs/cachet/0.6.2/cachet/?search=TimeToRefresh
- [__link1]: https://crates.io/crates/uniflight/0.2.2
- [__link10]: https://docs.rs/cachet_tier/0.2.1/cachet_tier/?search=CacheTier
- [__link11]: https://docs.rs/cachet/0.6.2/cachet/?search=InsertPolicy
- [__link12]: https://docs.rs/cachet/0.6.2/cachet/?search=TimeToRefresh
- [__link13]: https://docs.rs/cachet_tier/0.2.1/cachet_tier/?search=Error
- [__link14]: https://crates.io/crates/cachet_tier/0.2.1
- [__link15]: https://crates.io/crates/cachet_memory/0.3.1
+ [__cargo_doc2readme_dependencies_info]: ggGmYW0CYXZlMC43LjJhdIQbLiTyV0MU86EbZU15e0PmecoboQ9jo59bnAEbyDXw04U13GlhYvRhcoQbg_hDqE88LP4bMh0J5Y4y4Osb0zDJ1kwqOsoblCGrm49Rx2thZIiCaGJ5dGVzYnVmZTAuNS4zgmZjYWNoZXRlMC42LjSCbWNhY2hldF9tZW1vcnllMC4zLjOCbmNhY2hldF9zZXJ2aWNlZTAuMi4zgmtjYWNoZXRfdGllcmUwLjIuMoJkdGlja2UwLjMuM4JndHJhY2luZ2YwLjEuNDSCaXVuaWZsaWdodGUwLjIuMw
+ [__link0]: https://docs.rs/cachet/0.6.4/cachet/?search=TimeToRefresh
+ [__link1]: https://crates.io/crates/uniflight/0.2.3
+ [__link10]: https://docs.rs/cachet_tier/0.2.2/cachet_tier/?search=CacheTier
+ [__link11]: https://docs.rs/cachet/0.6.4/cachet/?search=InsertPolicy
+ [__link12]: https://docs.rs/cachet/0.6.4/cachet/?search=TimeToRefresh
+ [__link13]: https://docs.rs/cachet_tier/0.2.2/cachet_tier/?search=Error
+ [__link14]: https://crates.io/crates/cachet_tier/0.2.2
+ [__link15]: https://crates.io/crates/cachet_memory/0.3.3
[__link16]: https://docs.rs/moka
- [__link17]: https://crates.io/crates/cachet_service/0.2.2
- [__link18]: https://docs.rs/cachet/0.6.2/cachet/?search=telemetry::attributes
- [__link19]: https://docs.rs/bytesbuf/0.5.2/bytesbuf/?search=BytesView
- [__link2]: https://docs.rs/cachet/0.6.2/cachet/?search=CacheBuilder::stampede_protection
+ [__link17]: https://crates.io/crates/cachet_service/0.2.3
+ [__link18]: https://docs.rs/cachet/0.6.4/cachet/?search=telemetry::attributes
+ [__link19]: https://docs.rs/bytesbuf/0.5.3/bytesbuf/?search=BytesView
+ [__link2]: https://docs.rs/cachet/0.6.4/cachet/?search=CacheBuilder::stampede_protection
[__link20]: https://crates.io/crates/tracing/0.1.44
- [__link21]: https://docs.rs/cachet/0.6.2/cachet/?search=telemetry::attributes
- [__link3]: https://docs.rs/cachet_tier/0.2.1/cachet_tier/?search=CacheTier
- [__link4]: https://docs.rs/cachet_tier/0.2.1/cachet_tier/?search=DynamicCache
- [__link5]: https://docs.rs/cachet/0.6.2/cachet/?search=InsertPolicy
- [__link6]: https://docs.rs/tick/0.3.2/tick/?search=Clock
- [__link7]: https://docs.rs/cachet/0.6.2/cachet/?search=Cache
- [__link8]: https://docs.rs/cachet/0.6.2/cachet/?search=CacheBuilder
- [__link9]: https://docs.rs/cachet_tier/0.2.1/cachet_tier/?search=CacheEntry
+ [__link21]: https://docs.rs/cachet/0.6.4/cachet/?search=telemetry::attributes
+ [__link3]: https://docs.rs/cachet_tier/0.2.2/cachet_tier/?search=CacheTier
+ [__link4]: https://docs.rs/cachet_tier/0.2.2/cachet_tier/?search=DynamicCache
+ [__link5]: https://docs.rs/cachet/0.6.4/cachet/?search=InsertPolicy
+ [__link6]: https://docs.rs/tick/0.3.3/tick/?search=Clock
+ [__link7]: https://docs.rs/cachet/0.6.4/cachet/?search=Cache
+ [__link8]: https://docs.rs/cachet/0.6.4/cachet/?search=CacheBuilder
+ [__link9]: https://docs.rs/cachet_tier/0.2.2/cachet_tier/?search=CacheEntry
diff --git a/crates/cachet_memory/CHANGELOG.md b/crates/cachet_memory/CHANGELOG.md
index e2a6e6729..0ce21e8aa 100644
--- a/crates/cachet_memory/CHANGELOG.md
+++ b/crates/cachet_memory/CHANGELOG.md
@@ -1,5 +1,17 @@
# Changelog
+## [0.3.3] - 2026-06-04
+
+- 🔧 Maintenance
+
+ - bump `ohno` to 0.3.5 (transitively updates `ohno_macros` to 0.3.3)
+
+## [0.3.2] - 2026-06-04
+
+- 🔧 Maintenance
+
+ - bump `thread_aware` to 0.7.3 (includes derive macro updates via `thread_aware_macros_impl` 0.7.2)
+
## [0.3.1] - 2026-06-02
- 🔧 Maintenance
diff --git a/crates/cachet_memory/Cargo.toml b/crates/cachet_memory/Cargo.toml
index f61a20226..140d76829 100644
--- a/crates/cachet_memory/Cargo.toml
+++ b/crates/cachet_memory/Cargo.toml
@@ -4,7 +4,7 @@
[package]
name = "cachet_memory"
description = "In-memory cache tier backed by Moka for the cachet caching library."
-version = "0.3.1"
+version = "0.3.3"
readme = "README.md"
keywords = ["oxidizer", "caching", "concurrency"]
categories = ["caching", "concurrency"]
diff --git a/crates/cachet_memory/README.md b/crates/cachet_memory/README.md
index 9671c3ee0..ee837dc5d 100644
--- a/crates/cachet_memory/README.md
+++ b/crates/cachet_memory/README.md
@@ -91,17 +91,17 @@ TTL/TTI unset or set them to a sufficiently high ceiling.
This crate was developed as part of The Oxidizer Project. Browse this crate's source code.
- [__cargo_doc2readme_dependencies_info]: ggGmYW0CYXZlMC43LjJhdIQbLiTyV0MU86EbZU15e0PmecoboQ9jo59bnAEbyDXw04U13GlhYvRhcoQbN0kpRlU_G9QbWC713oa4KjsbRG6BIsW3BU8bzI21NivEBVphZIKCbWNhY2hldF9tZW1vcnllMC4zLjGCa2NhY2hldF90aWVyZTAuMi4x
- [__link0]: https://docs.rs/cachet_memory/0.3.1/cachet_memory/?search=InMemoryCache
- [__link1]: https://docs.rs/cachet_memory/0.3.1/cachet_memory/?search=InMemoryCacheBuilder
- [__link10]: https://docs.rs/cachet_tier/0.2.1/cachet_tier/?search=CacheEntry::expires_after
- [__link11]: https://docs.rs/cachet_memory/0.3.1/cachet_memory/?search=InMemoryCacheBuilder::time_to_live
- [__link12]: https://docs.rs/cachet_memory/0.3.1/cachet_memory/?search=InMemoryCacheBuilder::time_to_idle
- [__link2]: https://docs.rs/cachet_memory/0.3.1/cachet_memory/?search=policy::EvictionPolicy
- [__link3]: https://docs.rs/cachet_tier/0.2.1/cachet_tier/?search=CacheEntry::expires_after
- [__link4]: https://docs.rs/cachet_memory/0.3.1/cachet_memory/?search=InMemoryCacheBuilder::on_eviction
- [__link5]: https://docs.rs/cachet_memory/0.3.1/cachet_memory/?search=InMemoryCacheBuilder::with_eviction_telemetry
- [__link6]: https://docs.rs/cachet_memory/0.3.1/cachet_memory/?search=InMemoryCacheBuilder::on_eviction
- [__link7]: https://docs.rs/cachet_memory/0.3.1/cachet_memory/?search=notification::RemovalCause
- [__link8]: https://docs.rs/cachet_memory/0.3.1/cachet_memory/?search=InMemoryCacheBuilder::with_eviction_telemetry
- [__link9]: https://docs.rs/cachet_memory/0.3.1/cachet_memory/?search=InMemoryCache
+ [__cargo_doc2readme_dependencies_info]: ggGmYW0CYXZlMC43LjJhdIQbLiTyV0MU86EbZU15e0PmecoboQ9jo59bnAEbyDXw04U13GlhYvRhcoQbN0kpRlU_G9QbWC713oa4KjsbRG6BIsW3BU8bzI21NivEBVphZIKCbWNhY2hldF9tZW1vcnllMC4zLjOCa2NhY2hldF90aWVyZTAuMi4y
+ [__link0]: https://docs.rs/cachet_memory/0.3.3/cachet_memory/?search=InMemoryCache
+ [__link1]: https://docs.rs/cachet_memory/0.3.3/cachet_memory/?search=InMemoryCacheBuilder
+ [__link10]: https://docs.rs/cachet_tier/0.2.2/cachet_tier/?search=CacheEntry::expires_after
+ [__link11]: https://docs.rs/cachet_memory/0.3.3/cachet_memory/?search=InMemoryCacheBuilder::time_to_live
+ [__link12]: https://docs.rs/cachet_memory/0.3.3/cachet_memory/?search=InMemoryCacheBuilder::time_to_idle
+ [__link2]: https://docs.rs/cachet_memory/0.3.3/cachet_memory/?search=policy::EvictionPolicy
+ [__link3]: https://docs.rs/cachet_tier/0.2.2/cachet_tier/?search=CacheEntry::expires_after
+ [__link4]: https://docs.rs/cachet_memory/0.3.3/cachet_memory/?search=InMemoryCacheBuilder::on_eviction
+ [__link5]: https://docs.rs/cachet_memory/0.3.3/cachet_memory/?search=InMemoryCacheBuilder::with_eviction_telemetry
+ [__link6]: https://docs.rs/cachet_memory/0.3.3/cachet_memory/?search=InMemoryCacheBuilder::on_eviction
+ [__link7]: https://docs.rs/cachet_memory/0.3.3/cachet_memory/?search=notification::RemovalCause
+ [__link8]: https://docs.rs/cachet_memory/0.3.3/cachet_memory/?search=InMemoryCacheBuilder::with_eviction_telemetry
+ [__link9]: https://docs.rs/cachet_memory/0.3.3/cachet_memory/?search=InMemoryCache
diff --git a/crates/cachet_service/CHANGELOG.md b/crates/cachet_service/CHANGELOG.md
index 86bd626c5..1f6218c53 100644
--- a/crates/cachet_service/CHANGELOG.md
+++ b/crates/cachet_service/CHANGELOG.md
@@ -1,5 +1,11 @@
# Changelog
+## [0.2.3] - 2026-06-04
+
+- 🔧 Maintenance
+
+ - bump `ohno` to 0.3.5 (transitively updates `ohno_macros` to 0.3.3)
+
## [0.2.2] - 2026-06-02
- 🔧 Maintenance
diff --git a/crates/cachet_service/Cargo.toml b/crates/cachet_service/Cargo.toml
index ed5b5cd5e..ee8dfcbf4 100644
--- a/crates/cachet_service/Cargo.toml
+++ b/crates/cachet_service/Cargo.toml
@@ -4,7 +4,7 @@
[package]
name = "cachet_service"
description = "Layered service integration for the cachet caching library."
-version = "0.2.2"
+version = "0.2.3"
readme = "README.md"
keywords = ["oxidizer", "caching", "concurrency"]
categories = ["caching", "concurrency"]
diff --git a/crates/cachet_service/README.md b/crates/cachet_service/README.md
index 9670c19bb..e8dc4f7f6 100644
--- a/crates/cachet_service/README.md
+++ b/crates/cachet_service/README.md
@@ -45,7 +45,7 @@ let tier = ServiceAdapter::new(my_service);
This crate was developed as part of The Oxidizer Project. Browse this crate's source code.
- [__cargo_doc2readme_dependencies_info]: ggGmYW0CYXZlMC43LjJhdIQbLiTyV0MU86EbZU15e0PmecoboQ9jo59bnAEbyDXw04U13GlhYvRhcoQbcrlL8sHnAG4b1ofYj6gT3UEbqnvnufpKEjIbZAmyA7kxTiRhZIKCbmNhY2hldF9zZXJ2aWNlZTAuMi4ygmtjYWNoZXRfdGllcmUwLjIuMQ
- [__link0]: https://docs.rs/cachet_service/0.2.2/cachet_service/?search=ServiceAdapter
- [__link1]: https://docs.rs/cachet_tier/0.2.1/cachet_tier/?search=CacheTier
- [__link2]: https://docs.rs/cachet_service/0.2.2/cachet_service/?search=ServiceAdapter
+ [__cargo_doc2readme_dependencies_info]: ggGmYW0CYXZlMC43LjJhdIQbLiTyV0MU86EbZU15e0PmecoboQ9jo59bnAEbyDXw04U13GlhYvRhcoQbcrlL8sHnAG4b1ofYj6gT3UEbqnvnufpKEjIbZAmyA7kxTiRhZIKCbmNhY2hldF9zZXJ2aWNlZTAuMi4zgmtjYWNoZXRfdGllcmUwLjIuMg
+ [__link0]: https://docs.rs/cachet_service/0.2.3/cachet_service/?search=ServiceAdapter
+ [__link1]: https://docs.rs/cachet_tier/0.2.2/cachet_tier/?search=CacheTier
+ [__link2]: https://docs.rs/cachet_service/0.2.3/cachet_service/?search=ServiceAdapter
diff --git a/crates/cachet_tier/CHANGELOG.md b/crates/cachet_tier/CHANGELOG.md
index fd4230ec0..82e9ba68a 100644
--- a/crates/cachet_tier/CHANGELOG.md
+++ b/crates/cachet_tier/CHANGELOG.md
@@ -1,5 +1,11 @@
# Changelog
+## [0.2.2] - 2026-06-04
+
+- 🔧 Maintenance
+
+ - bump `ohno` to 0.3.5 (transitively updates `ohno_macros` to 0.3.3)
+
## [0.2.1] - 2026-06-02
- 🔧 Maintenance
diff --git a/crates/cachet_tier/Cargo.toml b/crates/cachet_tier/Cargo.toml
index 19dbc5685..1aabe0122 100644
--- a/crates/cachet_tier/Cargo.toml
+++ b/crates/cachet_tier/Cargo.toml
@@ -4,7 +4,7 @@
[package]
name = "cachet_tier"
description = "Core cache tier trait and abstractions for building cache backends."
-version = "0.2.1"
+version = "0.2.2"
readme = "README.md"
keywords = ["oxidizer", "caching", "concurrency"]
categories = ["caching", "concurrency"]
diff --git a/crates/cachet_tier/README.md b/crates/cachet_tier/README.md
index 6a947eb45..a17f8dfea 100644
--- a/crates/cachet_tier/README.md
+++ b/crates/cachet_tier/README.md
@@ -74,10 +74,10 @@ for multi-tier caches with heterogeneous storage backends.
This crate was developed as part of The Oxidizer Project. Browse this crate's source code.
- [__cargo_doc2readme_dependencies_info]: ggGmYW0CYXZlMC43LjJhdIQbLiTyV0MU86EbZU15e0PmecoboQ9jo59bnAEbyDXw04U13GlhYvRhcoQbSFGoN9aDWgMbkFPVkj7eiZMblYTgYHQyDnsb4bh5vMZ5KTlhZIGCa2NhY2hldF90aWVyZTAuMi4x
- [__link0]: https://docs.rs/cachet_tier/0.2.1/cachet_tier/?search=CacheTier
- [__link1]: https://docs.rs/cachet_tier/0.2.1/cachet_tier/?search=CacheEntry
- [__link2]: https://docs.rs/cachet_tier/0.2.1/cachet_tier/?search=Error
- [__link3]: https://docs.rs/cachet_tier/0.2.1/cachet_tier/?search=CacheTier
- [__link4]: https://docs.rs/cachet_tier/0.2.1/cachet_tier/?search=CacheTier
- [__link5]: https://docs.rs/cachet_tier/0.2.1/cachet_tier/?search=DynamicCache
+ [__cargo_doc2readme_dependencies_info]: ggGmYW0CYXZlMC43LjJhdIQbLiTyV0MU86EbZU15e0PmecoboQ9jo59bnAEbyDXw04U13GlhYvRhcoQbSFGoN9aDWgMbkFPVkj7eiZMblYTgYHQyDnsb4bh5vMZ5KTlhZIGCa2NhY2hldF90aWVyZTAuMi4y
+ [__link0]: https://docs.rs/cachet_tier/0.2.2/cachet_tier/?search=CacheTier
+ [__link1]: https://docs.rs/cachet_tier/0.2.2/cachet_tier/?search=CacheEntry
+ [__link2]: https://docs.rs/cachet_tier/0.2.2/cachet_tier/?search=Error
+ [__link3]: https://docs.rs/cachet_tier/0.2.2/cachet_tier/?search=CacheTier
+ [__link4]: https://docs.rs/cachet_tier/0.2.2/cachet_tier/?search=CacheTier
+ [__link5]: https://docs.rs/cachet_tier/0.2.2/cachet_tier/?search=DynamicCache
diff --git a/crates/data_privacy_macros_impl/Cargo.toml b/crates/data_privacy_macros_impl/Cargo.toml
index 616d717b7..32d69dd00 100644
--- a/crates/data_privacy_macros_impl/Cargo.toml
+++ b/crates/data_privacy_macros_impl/Cargo.toml
@@ -29,7 +29,13 @@ all-features = true
[dependencies]
proc-macro2 = { workspace = true }
quote = { workspace = true }
-syn = { workspace = true, features = ["derive", "full", "parsing", "printing", "proc-macro"] }
+syn = { workspace = true, features = [
+ "derive",
+ "full",
+ "parsing",
+ "printing",
+ "proc-macro",
+] }
[dev-dependencies]
insta = { workspace = true, features = ["yaml"] }
diff --git a/crates/fetch/README.md b/crates/fetch/README.md
index 229874848..ac5748464 100644
--- a/crates/fetch/README.md
+++ b/crates/fetch/README.md
@@ -697,51 +697,51 @@ fetch = { version = "*", features = ["json", "tokio"] }
This crate was developed as part of The Oxidizer Project. Browse this crate's source code.
- [__cargo_doc2readme_dependencies_info]: ggGmYW0CYXZlMC43LjJhdIQbLiTyV0MU86EbZU15e0PmecoboQ9jo59bnAEbyDXw04U13GlhYvRhcoQbg9gUGftKOZYbOcUidqRvtlIb4jNz0TaSSBQbzELqodjgpHxhZIeCZWJ5dGVzZjEuMTEuMYJoYnl0ZXNidWZlMC41LjKCZWZldGNoZjAuMTAuMIJvaHR0cF9leHRlbnNpb25zZTAuNC40gmdsYXllcmVkZTAuMy4ygmhzZWF0YmVsdGUwLjUuM4JtdGVtcGxhdGVkX3VyaWUwLjIuMw
+ [__cargo_doc2readme_dependencies_info]: ggGmYW0CYXZlMC43LjJhdIQbLiTyV0MU86EbZU15e0PmecoboQ9jo59bnAEbyDXw04U13GlhYvRhcoQbg9gUGftKOZYbOcUidqRvtlIb4jNz0TaSSBQbzELqodjgpHxhZIeCZWJ5dGVzZjEuMTEuMYJoYnl0ZXNidWZlMC41LjOCZWZldGNoZjAuMTAuMIJvaHR0cF9leHRlbnNpb25zZTAuNS4wgmdsYXllcmVkZTAuMy4ygmhzZWF0YmVsdGUwLjUuNIJtdGVtcGxhdGVkX3VyaWUwLjMuMA
[__link0]: https://docs.rs/fetch/0.10.0/fetch/?search=HttpClient
- [__link1]: https://docs.rs/http_extensions/0.4.4/http_extensions/?search=RequestHandler
+ [__link1]: https://docs.rs/http_extensions/0.5.0/http_extensions/?search=RequestHandler
[__link10]: https://docs.rs/fetch/0.10.0/fetch/?search=HttpClient::post
[__link11]: https://docs.rs/fetch/0.10.0/fetch/?search=HttpClient::put
[__link12]: https://docs.rs/fetch/0.10.0/fetch/?search=HttpClient::delete
[__link13]: https://docs.rs/fetch/0.10.0/fetch/?search=HttpClient::request
- [__link14]: https://docs.rs/http_extensions/0.4.4/http_extensions/?search=HttpRequestBuilder
+ [__link14]: https://docs.rs/http_extensions/0.5.0/http_extensions/?search=HttpRequestBuilder
[__link15]: https://docs.rs/fetch/0.10.0/fetch/?search=HttpClientBuilder::base_uri
- [__link16]: https://docs.rs/templated_uri/0.2.3/templated_uri/?search=BaseUri
- [__link17]: https://docs.rs/http_extensions/0.4.4/http_extensions/?search=HttpRequestBuilder::fetch
- [__link18]: https://docs.rs/http_extensions/0.4.4/http_extensions/?search=HttpResponse
+ [__link16]: https://docs.rs/templated_uri/0.3.0/templated_uri/?search=BaseUri
+ [__link17]: https://docs.rs/http_extensions/0.5.0/http_extensions/?search=HttpRequestBuilder::fetch
+ [__link18]: https://docs.rs/http_extensions/0.5.0/http_extensions/?search=HttpResponse
[__link19]: https://docs.rs/fetch/0.10.0/fetch/?search=http::Response
[__link2]: https://docs.rs/reqwest/
- [__link20]: https://docs.rs/http_extensions/0.4.4/http_extensions/?search=HttpResponse::ensure_success
- [__link21]: https://docs.rs/http_extensions/0.4.4/http_extensions/?search=HttpResponse::status
- [__link22]: https://docs.rs/http_extensions/0.4.4/http_extensions/?search=HttpResponse::headers
- [__link23]: https://docs.rs/http_extensions/0.4.4/http_extensions/?search=HttpResponse::into_body
- [__link24]: https://docs.rs/http_extensions/0.4.4/http_extensions/?search=HttpBody::into_text
- [__link25]: https://docs.rs/http_extensions/0.4.4/http_extensions/?search=HttpBody::into_bytes
- [__link26]: https://docs.rs/http_extensions/0.4.4/http_extensions/?search=HttpBody::into_json
- [__link27]: https://docs.rs/http_extensions/0.4.4/http_extensions/?search=HttpRequestBuilder::fetch
+ [__link20]: https://docs.rs/http_extensions/0.5.0/http_extensions/?search=HttpResponse::ensure_success
+ [__link21]: https://docs.rs/http_extensions/0.5.0/http_extensions/?search=HttpResponse::status
+ [__link22]: https://docs.rs/http_extensions/0.5.0/http_extensions/?search=HttpResponse::headers
+ [__link23]: https://docs.rs/http_extensions/0.5.0/http_extensions/?search=HttpResponse::into_body
+ [__link24]: https://docs.rs/http_extensions/0.5.0/http_extensions/?search=HttpBody::into_text
+ [__link25]: https://docs.rs/http_extensions/0.5.0/http_extensions/?search=HttpBody::into_bytes
+ [__link26]: https://docs.rs/http_extensions/0.5.0/http_extensions/?search=HttpBody::into_json
+ [__link27]: https://docs.rs/http_extensions/0.5.0/http_extensions/?search=HttpRequestBuilder::fetch
[__link28]: https://docs.rs/fetch/0.10.0/fetch/?search=HttpRequestBuilder::fetch_text
[__link29]: https://docs.rs/fetch/0.10.0/fetch/?search=HttpRequestBuilder::fetch_bytes
[__link3]: https://docs.rs/fetch/0.10.0/fetch/custom/index.html
[__link30]: https://docs.rs/fetch/0.10.0/fetch/?search=HttpRequestBuilder::fetch_json
[__link31]: https://docs.rs/fetch/0.10.0/fetch/?search=HttpRequestBuilder::fetch_json_owned
- [__link32]: https://docs.rs/http_extensions/0.4.4/http_extensions/?search=HttpBody
+ [__link32]: https://docs.rs/http_extensions/0.5.0/http_extensions/?search=HttpBody
[__link33]: https://docs.rs/fetch/0.10.0/fetch/?search=http::Response
- [__link34]: https://crates.io/crates/templated_uri/0.2.3
- [__link35]: https://docs.rs/templated_uri/0.2.3/templated_uri/?search=Uri
+ [__link34]: https://crates.io/crates/templated_uri/0.3.0
+ [__link35]: https://docs.rs/templated_uri/0.3.0/templated_uri/?search=Uri
[__link36]: https://datatracker.ietf.org/doc/html/rfc6570
- [__link37]: https://docs.rs/templated_uri/0.2.3/templated_uri/?search=Uri
+ [__link37]: https://docs.rs/templated_uri/0.3.0/templated_uri/?search=Uri
[__link38]: https://docs.rs/fetch/0.10.0/fetch/?search=handlers::Logging
- [__link39]: https://docs.rs/templated_uri/0.2.3/templated_uri/?search=Uri
+ [__link39]: https://docs.rs/templated_uri/0.3.0/templated_uri/?search=Uri
[__link4]: https://docs.rs/fetch/0.10.0/fetch/?search=custom::create_builder
- [__link40]: https://docs.rs/templated_uri/0.2.3/templated_uri/?search=PathAndQueryTemplate
+ [__link40]: https://docs.rs/templated_uri/0.3.0/templated_uri/?search=PathAndQueryTemplate
[__link41]: https://docs.rs/fetch/0.10.0/fetch/?search=HttpRequestBuilder::json
[__link42]: https://docs.rs/fetch/0.10.0/fetch/?search=HttpRequestBuilder::fetch_json
[__link43]: https://docs.rs/fetch/0.10.0/fetch/?search=Json
[__link44]: https://docs.rs/fetch/0.10.0/fetch/?search=HttpRequestBuilder::fetch_json_owned
[__link45]: https://docs.rs/fetch/0.10.0/fetch/?search=HttpBody::into_json
[__link46]: https://docs.rs/fetch/0.10.0/fetch/?search=Json
- [__link47]: https://docs.rs/http_extensions/0.4.4/http_extensions/?search=RequestHandler
- [__link48]: https://docs.rs/http_extensions/0.4.4/http_extensions/?search=RequestHandler
+ [__link47]: https://docs.rs/http_extensions/0.5.0/http_extensions/?search=RequestHandler
+ [__link48]: https://docs.rs/http_extensions/0.5.0/http_extensions/?search=RequestHandler
[__link49]: https://docs.rs/reqwest/
[__link5]: https://docs.rs/reqwest/
[__link50]: https://docs.rs/fetch/0.10.0/fetch/custom/index.html
@@ -750,23 +750,23 @@ This crate was developed as part of The Oxidizer Project. Br
[__link53]: https://docs.rs/fetch/0.10.0/fetch/?search=HttpClientBuilder::standard_pipeline
[__link54]: https://docs.rs/fetch/0.10.0/fetch/?search=HttpClientBuilder::custom_pipeline
[__link55]: https://docs.rs/fetch/0.10.0/fetch/?search=handlers::Dispatch
- [__link56]: https://docs.rs/http_extensions/0.4.4/http_extensions/?search=RequestHandler
- [__link57]: https://docs.rs/bytesbuf/0.5.2/bytesbuf/?search=BytesView
+ [__link56]: https://docs.rs/http_extensions/0.5.0/http_extensions/?search=RequestHandler
+ [__link57]: https://docs.rs/bytesbuf/0.5.3/bytesbuf/?search=BytesView
[__link58]: https://docs.rs/bytes
- [__link59]: https://docs.rs/bytesbuf/0.5.2/bytesbuf/?search=BytesView
+ [__link59]: https://docs.rs/bytesbuf/0.5.3/bytesbuf/?search=BytesView
[__link6]: https://docs.rs/hyper/
[__link60]: https://docs.rs/bytes/1.11.1/bytes/?search=Buf
[__link61]: https://docs.rs/bytes/1.11.1/bytes/?search=BufMut
[__link62]: https://docs.rs/bytes
[__link63]: https://docs.rs/fetch/0.10.0/fetch/?search=HttpClient
- [__link64]: https://docs.rs/templated_uri/0.2.3/templated_uri/?search=Uri
- [__link65]: https://docs.rs/bytesbuf/0.5.2/bytesbuf/?search=BytesView
- [__link66]: https://docs.rs/bytesbuf/0.5.2/bytesbuf/?search=BytesView
- [__link67]: https://docs.rs/bytesbuf/0.5.2/bytesbuf/?search=BytesView
+ [__link64]: https://docs.rs/templated_uri/0.3.0/templated_uri/?search=Uri
+ [__link65]: https://docs.rs/bytesbuf/0.5.3/bytesbuf/?search=BytesView
+ [__link66]: https://docs.rs/bytesbuf/0.5.3/bytesbuf/?search=BytesView
+ [__link67]: https://docs.rs/bytesbuf/0.5.3/bytesbuf/?search=BytesView
[__link68]: https://docs.rs/fetch/0.10.0/fetch/http/index.html
- [__link69]: https://crates.io/crates/http_extensions/0.4.4
+ [__link69]: https://crates.io/crates/http_extensions/0.5.0
[__link7]: https://docs.rs/fetch/0.10.0/fetch/custom/index.html
- [__link70]: https://crates.io/crates/seatbelt/0.5.3
+ [__link70]: https://crates.io/crates/seatbelt/0.5.4
[__link71]: https://docs.rs/layered/0.3.2/layered/?search=Service
[__link72]: https://docs.rs/fetch/0.10.0/fetch/?search=pipeline::StandardRequestPipeline
[__link73]: https://docs.rs/rustls
diff --git a/crates/fetch_hyper/CHANGELOG.md b/crates/fetch_hyper/CHANGELOG.md
index 65ee87939..6e423e7d4 100644
--- a/crates/fetch_hyper/CHANGELOG.md
+++ b/crates/fetch_hyper/CHANGELOG.md
@@ -1,9 +1,23 @@
# Changelog
+## [0.3.2] - 2026-06-04
+
+- 🔧 Maintenance
+
+ - bump `ohno` to 0.3.5 (transitively updates `ohno_macros` to 0.3.3)
+
+## [0.3.1] - 2026-06-04
+
+- 🔧 Maintenance
+
+ - bump `thread_aware` to 0.7.3 (includes derive macro updates via `thread_aware_macros_impl` 0.7.2)
+
## [0.3.0] - 2026-06-04
- 🔧 Maintenance
+ - bump `http_extensions` to 0.5.0
+ - bump `templated_uri` to 0.3.0
- bump `fetch_tls` to 0.2.1
- depends on `fetch_options` and drop duplicate types
@@ -67,7 +81,6 @@
- 🧩 Miscellaneous
- Update tool versions ([#462](https://github.com/microsoft/oxidizer/pull/462))
->>>>>>> origin/main
## [0.1.2] - 2026-06-01
diff --git a/crates/fetch_hyper/Cargo.toml b/crates/fetch_hyper/Cargo.toml
index 362122142..db31e4ba3 100644
--- a/crates/fetch_hyper/Cargo.toml
+++ b/crates/fetch_hyper/Cargo.toml
@@ -4,7 +4,7 @@
[package]
name = "fetch_hyper"
description = "Hyper-based HTTP transport utilities for fetch."
-version = "0.3.0"
+version = "0.3.2"
readme = "README.md"
keywords = ["oxidizer", "hyper", "fetch", "http", "tls"]
categories = ["network-programming"]
diff --git a/crates/fetch_hyper/README.md b/crates/fetch_hyper/README.md
index a95f79595..5e71bd789 100644
--- a/crates/fetch_hyper/README.md
+++ b/crates/fetch_hyper/README.md
@@ -39,11 +39,11 @@ The runtime is supplied by the caller via an [`anyspawn::Spawner`][__link6].
This crate was developed as part of The Oxidizer Project. Browse this crate's source code.
- [__cargo_doc2readme_dependencies_info]: ggGmYW0CYXZlMC43LjJhdIQbLiTyV0MU86EbZU15e0PmecoboQ9jo59bnAEbyDXw04U13GlhYvRhcoQb1PafKPRqQnMbycEo89Tdc1Ibs7VR1QL49eUbNVExL_GkLMNhZISCaGFueXNwYXduZTAuNS4ygmtmZXRjaF9oeXBlcmUwLjMuMIJtZmV0Y2hfb3B0aW9uc2UwLjIuMIJvaHR0cF9leHRlbnNpb25zZTAuNC40
- [__link0]: https://docs.rs/fetch_hyper/0.3.0/fetch_hyper/?search=HyperTransportBuilder
- [__link1]: https://docs.rs/fetch_hyper/0.3.0/fetch_hyper/?search=Connect
+ [__cargo_doc2readme_dependencies_info]: ggGmYW0CYXZlMC43LjJhdIQbLiTyV0MU86EbZU15e0PmecoboQ9jo59bnAEbyDXw04U13GlhYvRhcoQb1PafKPRqQnMbycEo89Tdc1Ibs7VR1QL49eUbNVExL_GkLMNhZISCaGFueXNwYXduZTAuNS4zgmtmZXRjaF9oeXBlcmUwLjMuMoJtZmV0Y2hfb3B0aW9uc2UwLjIuMIJvaHR0cF9leHRlbnNpb25zZTAuNS4w
+ [__link0]: https://docs.rs/fetch_hyper/0.3.2/fetch_hyper/?search=HyperTransportBuilder
+ [__link1]: https://docs.rs/fetch_hyper/0.3.2/fetch_hyper/?search=Connect
[__link2]: https://docs.rs/fetch_options/0.2.0/fetch_options/?search=TransportOptions
- [__link3]: https://docs.rs/fetch_hyper/0.3.0/fetch_hyper/?search=HyperTransport
- [__link4]: https://docs.rs/http_extensions/0.4.4/http_extensions/?search=RequestHandler
- [__link5]: https://docs.rs/fetch_hyper/0.3.0/fetch_hyper/?search=HyperTransportBuilder::build
- [__link6]: https://docs.rs/anyspawn/0.5.2/anyspawn/?search=Spawner
+ [__link3]: https://docs.rs/fetch_hyper/0.3.2/fetch_hyper/?search=HyperTransport
+ [__link4]: https://docs.rs/http_extensions/0.5.0/http_extensions/?search=RequestHandler
+ [__link5]: https://docs.rs/fetch_hyper/0.3.2/fetch_hyper/?search=HyperTransportBuilder::build
+ [__link6]: https://docs.rs/anyspawn/0.5.3/anyspawn/?search=Spawner
diff --git a/crates/fetch_tls/CHANGELOG.md b/crates/fetch_tls/CHANGELOG.md
index 21011cfed..9f19abedd 100644
--- a/crates/fetch_tls/CHANGELOG.md
+++ b/crates/fetch_tls/CHANGELOG.md
@@ -1,4 +1,11 @@
# Changelog
+
+## [0.2.2] - 2026-06-04
+
+- 🔧 Maintenance
+
+ - bump `ohno` to 0.3.5 (transitively updates `ohno_macros` to 0.3.3)
+
## [0.2.1] - 2026-06-04
- 🧩 Miscellaneous
diff --git a/crates/fetch_tls/Cargo.toml b/crates/fetch_tls/Cargo.toml
index 2ebccfdb0..bc339867c 100644
--- a/crates/fetch_tls/Cargo.toml
+++ b/crates/fetch_tls/Cargo.toml
@@ -4,7 +4,7 @@
[package]
name = "fetch_tls"
description = "TLS configurations and APIs used by 'fetch' crate."
-version = "0.2.1"
+version = "0.2.2"
readme = "README.md"
keywords = ["oxidizer", "tls", "fetch", "http", "client"]
categories = ["network-programming"]
diff --git a/crates/fetch_tls/README.md b/crates/fetch_tls/README.md
index c6844fd95..53e2a1f54 100644
--- a/crates/fetch_tls/README.md
+++ b/crates/fetch_tls/README.md
@@ -52,12 +52,12 @@ a [`BackendError`][__link7].
This crate was developed as part of The Oxidizer Project. Browse this crate's source code.
- [__cargo_doc2readme_dependencies_info]: ggGmYW0CYXZlMC43LjJhdIQbLiTyV0MU86EbZU15e0PmecoboQ9jo59bnAEbyDXw04U13GlhYvRhcoQbQA960tEbzWQbaOpko_VXWgAbMI3Hi90EGwIb3WsswbPp-xVhZIGCaWZldGNoX3Rsc2UwLjIuMQ
- [__link0]: https://docs.rs/fetch_tls/0.2.1/fetch_tls/?search=TlsOptions
- [__link1]: https://docs.rs/fetch_tls/0.2.1/fetch_tls/?search=TlsOptionsBuilder
- [__link2]: https://docs.rs/fetch_tls/0.2.1/fetch_tls/?search=TlsOptions::builder
- [__link3]: https://docs.rs/fetch_tls/0.2.1/fetch_tls/?search=TlsOptions::default
- [__link4]: https://docs.rs/fetch_tls/0.2.1/fetch_tls/?search=TlsBackendBuilder
- [__link5]: https://docs.rs/fetch_tls/0.2.1/fetch_tls/?search=TlsOptions
- [__link6]: https://docs.rs/fetch_tls/0.2.1/fetch_tls/?search=TlsBackend
- [__link7]: https://docs.rs/fetch_tls/0.2.1/fetch_tls/?search=BackendError
+ [__cargo_doc2readme_dependencies_info]: ggGmYW0CYXZlMC43LjJhdIQbLiTyV0MU86EbZU15e0PmecoboQ9jo59bnAEbyDXw04U13GlhYvRhcoQbQA960tEbzWQbaOpko_VXWgAbMI3Hi90EGwIb3WsswbPp-xVhZIGCaWZldGNoX3Rsc2UwLjIuMg
+ [__link0]: https://docs.rs/fetch_tls/0.2.2/fetch_tls/?search=TlsOptions
+ [__link1]: https://docs.rs/fetch_tls/0.2.2/fetch_tls/?search=TlsOptionsBuilder
+ [__link2]: https://docs.rs/fetch_tls/0.2.2/fetch_tls/?search=TlsOptions::builder
+ [__link3]: https://docs.rs/fetch_tls/0.2.2/fetch_tls/?search=TlsOptions::default
+ [__link4]: https://docs.rs/fetch_tls/0.2.2/fetch_tls/?search=TlsBackendBuilder
+ [__link5]: https://docs.rs/fetch_tls/0.2.2/fetch_tls/?search=TlsOptions
+ [__link6]: https://docs.rs/fetch_tls/0.2.2/fetch_tls/?search=TlsBackend
+ [__link7]: https://docs.rs/fetch_tls/0.2.2/fetch_tls/?search=BackendError
diff --git a/crates/http_extensions/CHANGELOG.md b/crates/http_extensions/CHANGELOG.md
index f8a436984..83d382e7e 100644
--- a/crates/http_extensions/CHANGELOG.md
+++ b/crates/http_extensions/CHANGELOG.md
@@ -1,5 +1,14 @@
# Changelog
+## [0.5.0] - 2026-06-04
+
+- 🔧 Maintenance
+
+ - bump `ohno` to 0.3.5 (transitively updates `ohno_macros` to 0.3.3)
+ - bump `thread_aware` to 0.7.3 (includes derive macro updates via `thread_aware_macros_impl` 0.7.2)
+ - bump `templated_uri` to 0.3.0
+ - bump `data_privacy` to 0.12.0
+
## [0.4.4] - 2026-06-02
- 🔧 Maintenance
diff --git a/crates/http_extensions/Cargo.toml b/crates/http_extensions/Cargo.toml
index e676c40c8..d13b2ffca 100644
--- a/crates/http_extensions/Cargo.toml
+++ b/crates/http_extensions/Cargo.toml
@@ -4,7 +4,7 @@
[package]
name = "http_extensions"
description = "Shared HTTP types and extension traits for clients and servers."
-version = "0.4.4"
+version = "0.5.0"
readme = "README.md"
keywords = ["oxidizer", "http", "extensions", "client", "server"]
categories = ["network-programming"]
diff --git a/crates/http_extensions/README.md b/crates/http_extensions/README.md
index bff7e46e3..c4a6fbdce 100644
--- a/crates/http_extensions/README.md
+++ b/crates/http_extensions/README.md
@@ -170,23 +170,23 @@ for future requests. This makes the crate particularly efficient for high-throug
This crate was developed as part of The Oxidizer Project. Browse this crate's source code.
- [__cargo_doc2readme_dependencies_info]: ggGmYW0CYXZlMC43LjJhdIQbLiTyV0MU86EbZU15e0PmecoboQ9jo59bnAEbyDXw04U13GlhYvRhcoQb8ws5BCyJXrMbtKOqwMaB35YbTeUgtnVoxOMbl-5qQusDAothZIWCZWJ5dGVzZjEuMTEuMYJoYnl0ZXNidWZlMC41LjKCZGh0dHBlMS40LjGCaWh0dHBfYm9keWUxLjAuMYJvaHR0cF9leHRlbnNpb25zZTAuNC40
+ [__cargo_doc2readme_dependencies_info]: ggGmYW0CYXZlMC43LjJhdIQbLiTyV0MU86EbZU15e0PmecoboQ9jo59bnAEbyDXw04U13GlhYvRhcoQb8ws5BCyJXrMbtKOqwMaB35YbTeUgtnVoxOMbl-5qQusDAothZIWCZWJ5dGVzZjEuMTEuMYJoYnl0ZXNidWZlMC41LjOCZGh0dHBlMS40LjGCaWh0dHBfYm9keWUxLjAuMYJvaHR0cF9leHRlbnNpb25zZTAuNS4w
[__link0]: https://crates.io/crates/http/1.4.1
- [__link1]: https://docs.rs/http_extensions/0.4.4/http_extensions/type.HttpRequest.html
- [__link10]: https://docs.rs/http_extensions/0.4.4/http_extensions/?search=StatusExt
- [__link11]: https://docs.rs/http_extensions/0.4.4/http_extensions/?search=RequestExt
- [__link12]: https://docs.rs/http_extensions/0.4.4/http_extensions/?search=ResponseExt
- [__link13]: https://docs.rs/http_extensions/0.4.4/http_extensions/?search=HttpRequestExt
- [__link14]: https://docs.rs/http_extensions/0.4.4/http_extensions/?search=HeaderMapExt
- [__link15]: https://docs.rs/http_extensions/0.4.4/http_extensions/?search=HeaderValueExt
+ [__link1]: https://docs.rs/http_extensions/0.5.0/http_extensions/type.HttpRequest.html
+ [__link10]: https://docs.rs/http_extensions/0.5.0/http_extensions/?search=StatusExt
+ [__link11]: https://docs.rs/http_extensions/0.5.0/http_extensions/?search=RequestExt
+ [__link12]: https://docs.rs/http_extensions/0.5.0/http_extensions/?search=ResponseExt
+ [__link13]: https://docs.rs/http_extensions/0.5.0/http_extensions/?search=HttpRequestExt
+ [__link14]: https://docs.rs/http_extensions/0.5.0/http_extensions/?search=HeaderMapExt
+ [__link15]: https://docs.rs/http_extensions/0.5.0/http_extensions/?search=HeaderValueExt
[__link16]: https://docs.rs/http/1.4.1/http/?search=HeaderValue
[__link17]: https://docs.rs/bytes/1.11.1/bytes/?search=Bytes
- [__link18]: https://docs.rs/http_extensions/0.4.4/http_extensions/?search=ExtensionsExt
+ [__link18]: https://docs.rs/http_extensions/0.5.0/http_extensions/?search=ExtensionsExt
[__link19]: https://docs.rs/http/1.4.1/http/?search=Extensions
- [__link2]: https://docs.rs/http_extensions/0.4.4/http_extensions/type.HttpResponse.html
- [__link20]: https://docs.rs/http_extensions/0.4.4/http_extensions/?search=RequestHandler
- [__link21]: https://docs.rs/http_extensions/0.4.4/http_extensions/?search=HttpRequestBuilder
- [__link22]: https://docs.rs/http_extensions/0.4.4/http_extensions/?search=StatusExt::ensure_success
+ [__link2]: https://docs.rs/http_extensions/0.5.0/http_extensions/type.HttpResponse.html
+ [__link20]: https://docs.rs/http_extensions/0.5.0/http_extensions/?search=RequestHandler
+ [__link21]: https://docs.rs/http_extensions/0.5.0/http_extensions/?search=HttpRequestBuilder
+ [__link22]: https://docs.rs/http_extensions/0.5.0/http_extensions/?search=StatusExt::ensure_success
[__link23]: https://crates.io/crates/http/1.4.1
[__link24]: https://docs.rs/http/1.4.1/http/?search=Request
[__link25]: https://docs.rs/http/1.4.1/http/?search=Response
@@ -194,12 +194,12 @@ This crate was developed as part of The Oxidizer Project. Br
[__link27]: https://docs.rs/http/1.4.1/http/?search=StatusCode
[__link28]: https://docs.rs/http/1.4.1/http/?search=HeaderMap
[__link29]: https://docs.rs/http_body/1.0.1/http_body/?search=Body
- [__link3]: https://docs.rs/http_extensions/0.4.4/http_extensions/?search=HttpBody
- [__link30]: https://docs.rs/http_extensions/0.4.4/http_extensions/?search=HttpBodyBuilder
- [__link31]: https://crates.io/crates/bytesbuf/0.5.2
- [__link4]: https://docs.rs/http_extensions/0.4.4/http_extensions/?search=HttpRequestBuilder
- [__link5]: https://docs.rs/http_extensions/0.4.4/http_extensions/?search=HttpResponseBuilder
- [__link6]: https://docs.rs/http_extensions/0.4.4/http_extensions/?search=HttpBody
- [__link7]: https://docs.rs/http_extensions/0.4.4/http_extensions/?search=HttpBodyBuilder
- [__link8]: https://docs.rs/http_extensions/0.4.4/http_extensions/?search=HttpError
- [__link9]: https://docs.rs/http_extensions/0.4.4/http_extensions/?search=RequestHandler
+ [__link3]: https://docs.rs/http_extensions/0.5.0/http_extensions/?search=HttpBody
+ [__link30]: https://docs.rs/http_extensions/0.5.0/http_extensions/?search=HttpBodyBuilder
+ [__link31]: https://crates.io/crates/bytesbuf/0.5.3
+ [__link4]: https://docs.rs/http_extensions/0.5.0/http_extensions/?search=HttpRequestBuilder
+ [__link5]: https://docs.rs/http_extensions/0.5.0/http_extensions/?search=HttpResponseBuilder
+ [__link6]: https://docs.rs/http_extensions/0.5.0/http_extensions/?search=HttpBody
+ [__link7]: https://docs.rs/http_extensions/0.5.0/http_extensions/?search=HttpBodyBuilder
+ [__link8]: https://docs.rs/http_extensions/0.5.0/http_extensions/?search=HttpError
+ [__link9]: https://docs.rs/http_extensions/0.5.0/http_extensions/?search=RequestHandler
diff --git a/crates/multitude/CHANGELOG.md b/crates/multitude/CHANGELOG.md
index bda0f1bf2..326daf7d1 100644
--- a/crates/multitude/CHANGELOG.md
+++ b/crates/multitude/CHANGELOG.md
@@ -1,5 +1,11 @@
# Changelog
+## [0.1.3] - 2026-06-04
+
+- 🔧 Maintenance
+
+ - bump `thread_aware` to 0.7.3 (includes derive macro updates via `thread_aware_macros_impl` 0.7.2)
+
## [0.1.2] - 2026-06-02
- 🔧 Maintenance
diff --git a/crates/multitude/Cargo.toml b/crates/multitude/Cargo.toml
index af6d949f9..827b6ade3 100644
--- a/crates/multitude/Cargo.toml
+++ b/crates/multitude/Cargo.toml
@@ -3,7 +3,7 @@
[package]
name = "multitude"
-version = "0.1.2"
+version = "0.1.3"
description = "Fast and flexible arena allocator."
readme = "README.md"
keywords = ["arena", "memory", "allocator", "bump", "rc"]
diff --git a/crates/multitude/README.md b/crates/multitude/README.md
index fc5bb6559..44e6cef88 100644
--- a/crates/multitude/README.md
+++ b/crates/multitude/README.md
@@ -383,93 +383,93 @@ existing `_rc`/`_arc` slice methods).
This crate was developed as part of The Oxidizer Project. Browse this crate's source code.
- [__cargo_doc2readme_dependencies_info]: ggGmYW0CYXZlMC43LjJhdIQbLiTyV0MU86EbZU15e0PmecoboQ9jo59bnAEbyDXw04U13GlhYvRhcoQbFKxyRA7pf2sbXqHN7VI1LMwbDpb5NgaGPesbUZzWN_I2hhxhZIWCaGJ5dGVtdWNrZjEuMjUuMIJlYnl0ZXNmMS4xMS4xgmhieXRlc2J1ZmUwLjUuMoJpbXVsdGl0dWRlZTAuMS4ygmh6ZXJvY29weWYwLjguNTA
+ [__cargo_doc2readme_dependencies_info]: ggGmYW0CYXZlMC43LjJhdIQbLiTyV0MU86EbZU15e0PmecoboQ9jo59bnAEbyDXw04U13GlhYvRhcoQbFKxyRA7pf2sbXqHN7VI1LMwbDpb5NgaGPesbUZzWN_I2hhxhZIWCaGJ5dGVtdWNrZjEuMjUuMIJlYnl0ZXNmMS4xMS4xgmhieXRlc2J1ZmUwLjUuM4JpbXVsdGl0dWRlZTAuMS4zgmh6ZXJvY29weWYwLjguNTA
[__link0]: https://crates.io/crates/bumpalo
- [__link1]: https://docs.rs/multitude/0.1.2/multitude/?search=Rc
- [__link10]: https://docs.rs/multitude/0.1.2/multitude/?search=strings::String
- [__link11]: https://docs.rs/multitude/0.1.2/multitude/?search=vec::Vec
+ [__link1]: https://docs.rs/multitude/0.1.3/multitude/?search=Rc
+ [__link10]: https://docs.rs/multitude/0.1.3/multitude/?search=strings::String
+ [__link11]: https://docs.rs/multitude/0.1.3/multitude/?search=vec::Vec
[__link12]: https://crates.io/crates/dst-factory
- [__link13]: https://docs.rs/multitude/0.1.2/multitude/?search=strings::format
- [__link14]: https://docs.rs/multitude/0.1.2/multitude/?search=strings::RcUtf16Str
- [__link15]: https://docs.rs/multitude/0.1.2/multitude/?search=strings::ArcUtf16Str
- [__link16]: https://docs.rs/multitude/0.1.2/multitude/?search=strings::BoxUtf16Str
- [__link17]: https://docs.rs/multitude/0.1.2/multitude/?search=strings::Utf16String
- [__link18]: https://docs.rs/multitude/0.1.2/multitude/?search=strings::format_utf16
- [__link19]: https://docs.rs/multitude/0.1.2/multitude/?search=Rc
- [__link2]: https://docs.rs/multitude/0.1.2/multitude/?search=strings::RcStr
- [__link20]: https://docs.rs/multitude/0.1.2/multitude/?search=Arc
- [__link21]: https://docs.rs/multitude/0.1.2/multitude/?search=Box
- [__link22]: https://docs.rs/multitude/0.1.2/multitude/?search=Arena
- [__link23]: https://docs.rs/multitude/0.1.2/multitude/?search=Arc
- [__link24]: https://docs.rs/multitude/0.1.2/multitude/?search=Box
+ [__link13]: https://docs.rs/multitude/0.1.3/multitude/?search=strings::format
+ [__link14]: https://docs.rs/multitude/0.1.3/multitude/?search=strings::RcUtf16Str
+ [__link15]: https://docs.rs/multitude/0.1.3/multitude/?search=strings::ArcUtf16Str
+ [__link16]: https://docs.rs/multitude/0.1.3/multitude/?search=strings::BoxUtf16Str
+ [__link17]: https://docs.rs/multitude/0.1.3/multitude/?search=strings::Utf16String
+ [__link18]: https://docs.rs/multitude/0.1.3/multitude/?search=strings::format_utf16
+ [__link19]: https://docs.rs/multitude/0.1.3/multitude/?search=Rc
+ [__link2]: https://docs.rs/multitude/0.1.3/multitude/?search=strings::RcStr
+ [__link20]: https://docs.rs/multitude/0.1.3/multitude/?search=Arc
+ [__link21]: https://docs.rs/multitude/0.1.3/multitude/?search=Box
+ [__link22]: https://docs.rs/multitude/0.1.3/multitude/?search=Arena
+ [__link23]: https://docs.rs/multitude/0.1.3/multitude/?search=Arc
+ [__link24]: https://docs.rs/multitude/0.1.3/multitude/?search=Box
[__link25]: https://doc.rust-lang.org/stable/alloc/?search=boxed::Box
- [__link26]: https://docs.rs/multitude/0.1.2/multitude/?search=vec::Vec
- [__link27]: https://docs.rs/multitude/0.1.2/multitude/?search=strings::String
+ [__link26]: https://docs.rs/multitude/0.1.3/multitude/?search=vec::Vec
+ [__link27]: https://docs.rs/multitude/0.1.3/multitude/?search=strings::String
[__link28]: https://crates.io/crates/allocator-api2
- [__link29]: https://docs.rs/multitude/0.1.2/multitude/?search=strings::String
- [__link3]: https://docs.rs/multitude/0.1.2/multitude/?search=Arc
- [__link30]: https://docs.rs/multitude/0.1.2/multitude/?search=vec::Vec
- [__link31]: https://docs.rs/multitude/0.1.2/multitude/?search=strings::String::into_arena_str
- [__link32]: https://docs.rs/multitude/0.1.2/multitude/?search=strings::RcStr
- [__link33]: https://docs.rs/multitude/0.1.2/multitude/?search=vec::Vec::into_arena_rc
- [__link34]: https://docs.rs/multitude/0.1.2/multitude/?search=Rc
+ [__link29]: https://docs.rs/multitude/0.1.3/multitude/?search=strings::String
+ [__link3]: https://docs.rs/multitude/0.1.3/multitude/?search=Arc
+ [__link30]: https://docs.rs/multitude/0.1.3/multitude/?search=vec::Vec
+ [__link31]: https://docs.rs/multitude/0.1.3/multitude/?search=strings::String::into_arena_str
+ [__link32]: https://docs.rs/multitude/0.1.3/multitude/?search=strings::RcStr
+ [__link33]: https://docs.rs/multitude/0.1.3/multitude/?search=vec::Vec::into_arena_rc
+ [__link34]: https://docs.rs/multitude/0.1.3/multitude/?search=Rc
[__link35]: https://github.com/microsoft/oxidizer/blob/main/crates/multitude/BUMPALO.md
[__link36]: https://crates.io/crates/bumpalo
- [__link37]: https://docs.rs/multitude/0.1.2/multitude/strings/index.html
- [__link38]: https://docs.rs/multitude/0.1.2/multitude/?search=strings::RcStr
- [__link39]: https://docs.rs/multitude/0.1.2/multitude/?search=strings::RcUtf16Str
- [__link4]: https://docs.rs/multitude/0.1.2/multitude/?search=strings::ArcStr
- [__link40]: https://docs.rs/multitude/0.1.2/multitude/?search=strings::ArcStr
- [__link41]: https://docs.rs/multitude/0.1.2/multitude/?search=strings::ArcUtf16Str
- [__link42]: https://docs.rs/multitude/0.1.2/multitude/?search=strings::BoxStr
- [__link43]: https://docs.rs/multitude/0.1.2/multitude/?search=strings::BoxUtf16Str
- [__link44]: https://docs.rs/multitude/0.1.2/multitude/?search=Arena
- [__link45]: https://docs.rs/multitude/0.1.2/multitude/?search=strings::String
- [__link46]: https://docs.rs/multitude/0.1.2/multitude/?search=strings::Utf16String
- [__link47]: https://docs.rs/multitude/0.1.2/multitude/?search=strings::format
- [__link48]: https://docs.rs/multitude/0.1.2/multitude/?search=strings::format_utf16
- [__link49]: https://docs.rs/multitude/0.1.2/multitude/?search=strings::String
- [__link5]: https://docs.rs/multitude/0.1.2/multitude/?search=Box
- [__link50]: https://docs.rs/multitude/0.1.2/multitude/?search=strings::String::into_arena_str
- [__link51]: https://docs.rs/multitude/0.1.2/multitude/?search=strings::RcStr
- [__link52]: https://docs.rs/multitude/0.1.2/multitude/?search=strings::Utf16String
- [__link53]: https://docs.rs/multitude/0.1.2/multitude/?search=strings::Utf16String::into_arena_utf16_str
- [__link54]: https://docs.rs/multitude/0.1.2/multitude/?search=strings::RcUtf16Str
- [__link55]: https://docs.rs/multitude/0.1.2/multitude/?search=Arena
- [__link56]: https://docs.rs/multitude/0.1.2/multitude/?search=Arena::alloc_dst_arc
- [__link57]: https://docs.rs/multitude/0.1.2/multitude/?search=Arena::alloc_dst_rc
- [__link58]: https://docs.rs/multitude/0.1.2/multitude/?search=Arena::alloc_dst_box
+ [__link37]: https://docs.rs/multitude/0.1.3/multitude/strings/index.html
+ [__link38]: https://docs.rs/multitude/0.1.3/multitude/?search=strings::RcStr
+ [__link39]: https://docs.rs/multitude/0.1.3/multitude/?search=strings::RcUtf16Str
+ [__link4]: https://docs.rs/multitude/0.1.3/multitude/?search=strings::ArcStr
+ [__link40]: https://docs.rs/multitude/0.1.3/multitude/?search=strings::ArcStr
+ [__link41]: https://docs.rs/multitude/0.1.3/multitude/?search=strings::ArcUtf16Str
+ [__link42]: https://docs.rs/multitude/0.1.3/multitude/?search=strings::BoxStr
+ [__link43]: https://docs.rs/multitude/0.1.3/multitude/?search=strings::BoxUtf16Str
+ [__link44]: https://docs.rs/multitude/0.1.3/multitude/?search=Arena
+ [__link45]: https://docs.rs/multitude/0.1.3/multitude/?search=strings::String
+ [__link46]: https://docs.rs/multitude/0.1.3/multitude/?search=strings::Utf16String
+ [__link47]: https://docs.rs/multitude/0.1.3/multitude/?search=strings::format
+ [__link48]: https://docs.rs/multitude/0.1.3/multitude/?search=strings::format_utf16
+ [__link49]: https://docs.rs/multitude/0.1.3/multitude/?search=strings::String
+ [__link5]: https://docs.rs/multitude/0.1.3/multitude/?search=Box
+ [__link50]: https://docs.rs/multitude/0.1.3/multitude/?search=strings::String::into_arena_str
+ [__link51]: https://docs.rs/multitude/0.1.3/multitude/?search=strings::RcStr
+ [__link52]: https://docs.rs/multitude/0.1.3/multitude/?search=strings::Utf16String
+ [__link53]: https://docs.rs/multitude/0.1.3/multitude/?search=strings::Utf16String::into_arena_utf16_str
+ [__link54]: https://docs.rs/multitude/0.1.3/multitude/?search=strings::RcUtf16Str
+ [__link55]: https://docs.rs/multitude/0.1.3/multitude/?search=Arena
+ [__link56]: https://docs.rs/multitude/0.1.3/multitude/?search=Arena::alloc_dst_arc
+ [__link57]: https://docs.rs/multitude/0.1.3/multitude/?search=Arena::alloc_dst_rc
+ [__link58]: https://docs.rs/multitude/0.1.3/multitude/?search=Arena::alloc_dst_box
[__link59]: https://doc.rust-lang.org/stable/core/?search=alloc::Layout
- [__link6]: https://docs.rs/multitude/0.1.2/multitude/?search=strings::BoxStr
+ [__link6]: https://docs.rs/multitude/0.1.3/multitude/?search=strings::BoxStr
[__link60]: https://crates.io/crates/dst-factory
[__link61]: https://doc.rust-lang.org/stable/std/?search=io::Write
- [__link62]: https://docs.rs/multitude/0.1.2/multitude/?search=vec::Vec
- [__link63]: https://docs.rs/multitude/0.1.2/multitude/?search=strings::RcStr
- [__link64]: https://docs.rs/multitude/0.1.2/multitude/?search=strings::ArcStr
- [__link65]: https://docs.rs/multitude/0.1.2/multitude/?search=strings::String
- [__link66]: https://docs.rs/multitude/0.1.2/multitude/?search=vec::Vec
- [__link67]: https://docs.rs/multitude/0.1.2/multitude/?search=Arena::alloc_dst_arc
- [__link68]: https://docs.rs/multitude/0.1.2/multitude/?search=Arena::alloc_dst_rc
- [__link69]: https://docs.rs/multitude/0.1.2/multitude/?search=Arena::alloc_dst_box
- [__link7]: https://docs.rs/multitude/0.1.2/multitude/?search=strings::RcStr
- [__link70]: https://docs.rs/multitude/0.1.2/multitude/?search=strings::RcUtf16Str
- [__link71]: https://docs.rs/multitude/0.1.2/multitude/?search=strings::ArcUtf16Str
- [__link72]: https://docs.rs/multitude/0.1.2/multitude/?search=strings::BoxUtf16Str
- [__link73]: https://docs.rs/multitude/0.1.2/multitude/?search=strings::Utf16String
- [__link74]: https://docs.rs/multitude/0.1.2/multitude/?search=strings::format_utf16
+ [__link62]: https://docs.rs/multitude/0.1.3/multitude/?search=vec::Vec
+ [__link63]: https://docs.rs/multitude/0.1.3/multitude/?search=strings::RcStr
+ [__link64]: https://docs.rs/multitude/0.1.3/multitude/?search=strings::ArcStr
+ [__link65]: https://docs.rs/multitude/0.1.3/multitude/?search=strings::String
+ [__link66]: https://docs.rs/multitude/0.1.3/multitude/?search=vec::Vec
+ [__link67]: https://docs.rs/multitude/0.1.3/multitude/?search=Arena::alloc_dst_arc
+ [__link68]: https://docs.rs/multitude/0.1.3/multitude/?search=Arena::alloc_dst_rc
+ [__link69]: https://docs.rs/multitude/0.1.3/multitude/?search=Arena::alloc_dst_box
+ [__link7]: https://docs.rs/multitude/0.1.3/multitude/?search=strings::RcStr
+ [__link70]: https://docs.rs/multitude/0.1.3/multitude/?search=strings::RcUtf16Str
+ [__link71]: https://docs.rs/multitude/0.1.3/multitude/?search=strings::ArcUtf16Str
+ [__link72]: https://docs.rs/multitude/0.1.3/multitude/?search=strings::BoxUtf16Str
+ [__link73]: https://docs.rs/multitude/0.1.3/multitude/?search=strings::Utf16String
+ [__link74]: https://docs.rs/multitude/0.1.3/multitude/?search=strings::format_utf16
[__link75]: https://crates.io/crates/widestring
- [__link76]: https://docs.rs/multitude/0.1.2/multitude/?search=zerocopy::ZerocopyView
+ [__link76]: https://docs.rs/multitude/0.1.3/multitude/?search=zerocopy::ZerocopyView
[__link77]: https://docs.rs/zerocopy/0.8.50/zerocopy/?search=FromZeros
- [__link78]: https://docs.rs/multitude/0.1.2/multitude/?search=Arena::zerocopy
- [__link79]: https://docs.rs/multitude/0.1.2/multitude/?search=bytemuck::BytemuckView
- [__link8]: https://docs.rs/multitude/0.1.2/multitude/?search=strings::ArcStr
+ [__link78]: https://docs.rs/multitude/0.1.3/multitude/?search=Arena::zerocopy
+ [__link79]: https://docs.rs/multitude/0.1.3/multitude/?search=bytemuck::BytemuckView
+ [__link8]: https://docs.rs/multitude/0.1.3/multitude/?search=strings::ArcStr
[__link80]: https://docs.rs/bytemuck/1.25.0/bytemuck/?search=Zeroable
- [__link81]: https://docs.rs/multitude/0.1.2/multitude/?search=Arena::bytemuck
+ [__link81]: https://docs.rs/multitude/0.1.3/multitude/?search=Arena::bytemuck
[__link82]: https://doc.rust-lang.org/stable/std/convert/trait.From.html
- [__link83]: https://docs.rs/multitude/0.1.2/multitude/?search=Arc
- [__link84]: https://docs.rs/multitude/0.1.2/multitude/?search=strings::ArcStr
+ [__link83]: https://docs.rs/multitude/0.1.3/multitude/?search=Arc
+ [__link84]: https://docs.rs/multitude/0.1.3/multitude/?search=strings::ArcStr
[__link85]: https://docs.rs/bytes/1.11.1/bytes/?search=Bytes
- [__link86]: https://docs.rs/bytesbuf/0.5.2/bytesbuf/?search=mem::Memory
- [__link87]: https://docs.rs/multitude/0.1.2/multitude/?search=Arena
- [__link88]: https://docs.rs/bytesbuf/0.5.2/bytesbuf/?search=BytesBuf
- [__link9]: https://docs.rs/multitude/0.1.2/multitude/?search=strings::BoxStr
+ [__link86]: https://docs.rs/bytesbuf/0.5.3/bytesbuf/?search=mem::Memory
+ [__link87]: https://docs.rs/multitude/0.1.3/multitude/?search=Arena
+ [__link88]: https://docs.rs/bytesbuf/0.5.3/bytesbuf/?search=BytesBuf
+ [__link9]: https://docs.rs/multitude/0.1.3/multitude/?search=strings::BoxStr
diff --git a/crates/ohno/CHANGELOG.md b/crates/ohno/CHANGELOG.md
index c60a4ef7a..1fcbbc64a 100644
--- a/crates/ohno/CHANGELOG.md
+++ b/crates/ohno/CHANGELOG.md
@@ -1,5 +1,11 @@
# Changelog
+## [0.3.5] - 2026-06-04
+
+- 🔧 Maintenance
+
+ - bump `ohno_macros` to 0.3.3
+
## [0.3.4] - 2026-06-02
- 🔧 Maintenance
diff --git a/crates/ohno/Cargo.toml b/crates/ohno/Cargo.toml
index 0f3390b7c..733a43ac7 100644
--- a/crates/ohno/Cargo.toml
+++ b/crates/ohno/Cargo.toml
@@ -4,7 +4,7 @@
[package]
name = "ohno"
description = "High-quality Rust error handling."
-version = "0.3.4"
+version = "0.3.5"
readme = "README.md"
keywords = ["oxidizer", "error", "backtrace"]
categories = ["data-structures"]
@@ -34,10 +34,15 @@ typeid = { workspace = true }
futures = { workspace = true }
insta = { workspace = true }
mutants = { workspace = true }
-regex = { workspace = true, features = [ "unicode-perl"] }
+regex = { workspace = true, features = ["unicode-perl"] }
testing_aids = { path = "../testing_aids" }
thiserror = { workspace = true }
-tokio = { workspace = true, features = ["macros", "rt", "time", "rt-multi-thread"] }
+tokio = { workspace = true, features = [
+ "macros",
+ "rt",
+ "time",
+ "rt-multi-thread",
+] }
[lints]
workspace = true
diff --git a/crates/ohno/README.md b/crates/ohno/README.md
index d6b64f21a..65daccf2b 100644
--- a/crates/ohno/README.md
+++ b/crates/ohno/README.md
@@ -292,25 +292,25 @@ uniformly via [`Labeled::label`][__link21].
This crate was developed as part of The Oxidizer Project. Browse this crate's source code.
- [__cargo_doc2readme_dependencies_info]: ggGmYW0CYXZlMC43LjJhdIQbLiTyV0MU86EbZU15e0PmecoboQ9jo59bnAEbyDXw04U13GlhYvRhcoQbrCd9xja6IUYbReuvcH7u-4wbH1ETqam4eFAbE9V6cT1GHJphZIKCZG9obm9lMC4zLjSCa29obm9fbWFjcm9zZTAuMy4y
+ [__cargo_doc2readme_dependencies_info]: ggGmYW0CYXZlMC43LjJhdIQbLiTyV0MU86EbZU15e0PmecoboQ9jo59bnAEbyDXw04U13GlhYvRhcoQbrCd9xja6IUYbReuvcH7u-4wbH1ETqam4eFAbE9V6cT1GHJphZIKCZG9obm9lMC4zLjWCa29obm9fbWFjcm9zZTAuMy4z
[__link0]: https://doc.rust-lang.org/stable/std/?search=fmt::Display
[__link1]: https://doc.rust-lang.org/stable/std/?search=fmt::Debug
[__link10]: https://doc.rust-lang.org/stable/std/macro.unreachable.html
- [__link11]: https://docs.rs/ohno_macros/0.3.2/ohno_macros/?search=enrich_err
- [__link12]: https://docs.rs/ohno_macros/0.3.2/ohno_macros/?search=enrich_err
- [__link13]: https://docs.rs/ohno/0.3.4/ohno/?search=Enrichable
- [__link14]: https://docs.rs/ohno/0.3.4/ohno/?search=AppError
- [__link15]: https://docs.rs/ohno/0.3.4/ohno/?search=AppError
- [__link16]: https://docs.rs/ohno/0.3.4/ohno/?search=ErrorLabel
- [__link17]: https://docs.rs/ohno/0.3.4/ohno/?search=ErrorLabel::from_error_chain
+ [__link11]: https://docs.rs/ohno_macros/0.3.3/ohno_macros/?search=enrich_err
+ [__link12]: https://docs.rs/ohno_macros/0.3.3/ohno_macros/?search=enrich_err
+ [__link13]: https://docs.rs/ohno/0.3.5/ohno/?search=Enrichable
+ [__link14]: https://docs.rs/ohno/0.3.5/ohno/?search=AppError
+ [__link15]: https://docs.rs/ohno/0.3.5/ohno/?search=AppError
+ [__link16]: https://docs.rs/ohno/0.3.5/ohno/?search=ErrorLabel
+ [__link17]: https://docs.rs/ohno/0.3.5/ohno/?search=ErrorLabel::from_error_chain
[__link18]: https://doc.rust-lang.org/stable/std/?search=error::Error::source
- [__link19]: https://docs.rs/ohno/0.3.4/ohno/?search=ErrorLabel
- [__link2]: https://docs.rs/ohno/0.3.4/ohno/?search=ErrorExt
- [__link20]: https://docs.rs/ohno/0.3.4/ohno/?search=Labeled
- [__link21]: https://docs.rs/ohno/0.3.4/ohno/?search=Labeled::label
- [__link3]: https://docs.rs/ohno/0.3.4/ohno/?search=OhnoCore
- [__link4]: https://docs.rs/ohno/0.3.4/ohno/?search=AppError
- [__link5]: https://docs.rs/ohno/0.3.4/ohno/?search=OhnoCore
+ [__link19]: https://docs.rs/ohno/0.3.5/ohno/?search=ErrorLabel
+ [__link2]: https://docs.rs/ohno/0.3.5/ohno/?search=ErrorExt
+ [__link20]: https://docs.rs/ohno/0.3.5/ohno/?search=Labeled
+ [__link21]: https://docs.rs/ohno/0.3.5/ohno/?search=Labeled::label
+ [__link3]: https://docs.rs/ohno/0.3.5/ohno/?search=OhnoCore
+ [__link4]: https://docs.rs/ohno/0.3.5/ohno/?search=AppError
+ [__link5]: https://docs.rs/ohno/0.3.5/ohno/?search=OhnoCore
[__link6]: https://doc.rust-lang.org/stable/std/?search=error::Error
[__link7]: https://doc.rust-lang.org/stable/std/?search=fmt::Display
[__link8]: https://doc.rust-lang.org/stable/std/?search=fmt::Debug
diff --git a/crates/ohno_macros/CHANGELOG.md b/crates/ohno_macros/CHANGELOG.md
index c390bbde1..887e82821 100644
--- a/crates/ohno_macros/CHANGELOG.md
+++ b/crates/ohno_macros/CHANGELOG.md
@@ -1,5 +1,11 @@
# Changelog
+## [0.3.3] - 2026-06-05
+
+- ✔️ Tasks
+
+ - Technical release
+
## [0.3.2] - 2026-06-02
- ✨ Features
diff --git a/crates/ohno_macros/Cargo.toml b/crates/ohno_macros/Cargo.toml
index fdca653e4..6de149a66 100644
--- a/crates/ohno_macros/Cargo.toml
+++ b/crates/ohno_macros/Cargo.toml
@@ -4,7 +4,7 @@
[package]
name = "ohno_macros"
description = "Macros for the ohno crate."
-version = "0.3.2"
+version = "0.3.3"
readme = "README.md"
keywords = ["oxidizer", "error", "backtrace"]
categories = ["data-structures"]
diff --git a/crates/seatbelt/CHANGELOG.md b/crates/seatbelt/CHANGELOG.md
index dd0488e67..f2bffae54 100644
--- a/crates/seatbelt/CHANGELOG.md
+++ b/crates/seatbelt/CHANGELOG.md
@@ -1,5 +1,11 @@
# Changelog
+## [0.5.4] - 2026-06-04
+
+- 🔧 Maintenance
+
+ - bump `thread_aware` to 0.7.3 (includes derive macro updates via `thread_aware_macros_impl` 0.7.2)
+
## [0.5.3] - 2026-06-02
- 🔧 Maintenance
diff --git a/crates/seatbelt/Cargo.toml b/crates/seatbelt/Cargo.toml
index c762a8993..6f111aa2b 100644
--- a/crates/seatbelt/Cargo.toml
+++ b/crates/seatbelt/Cargo.toml
@@ -4,7 +4,7 @@
[package]
name = "seatbelt"
description = "Resilience and recovery mechanisms for fallible operations."
-version = "0.5.3"
+version = "0.5.4"
readme = "README.md"
keywords = ["oxidizer", "resilience", "layered", "recovery", "retry"]
categories = ["data-structures"]
diff --git a/crates/seatbelt/README.md b/crates/seatbelt/README.md
index 1b45ab43f..da475b312 100644
--- a/crates/seatbelt/README.md
+++ b/crates/seatbelt/README.md
@@ -199,20 +199,20 @@ This crate provides several optional features that can be enabled in your `Cargo
This crate was developed as part of The Oxidizer Project. Browse this crate's source code.
- [__cargo_doc2readme_dependencies_info]: ggGmYW0CYXZlMC43LjJhdIQbLiTyV0MU86EbZU15e0PmecoboQ9jo59bnAEbyDXw04U13GlhYvRhcoQbYvFWrvv8310bVH74l03n0WQbkisnDrQ6OyIbDoEzq0lVXmRhZIWCZ2xheWVyZWRlMC4zLjKCa3JlY292ZXJhYmxlZTAuMS40gmhzZWF0YmVsdGUwLjUuM4JkdGlja2UwLjMuMoJtdG93ZXJfc2VydmljZWUwLjMuMw
+ [__cargo_doc2readme_dependencies_info]: ggGmYW0CYXZlMC43LjJhdIQbLiTyV0MU86EbZU15e0PmecoboQ9jo59bnAEbyDXw04U13GlhYvRhcoQbYvFWrvv8310bVH74l03n0WQbkisnDrQ6OyIbDoEzq0lVXmRhZIWCZ2xheWVyZWRlMC4zLjKCa3JlY292ZXJhYmxlZTAuMS40gmhzZWF0YmVsdGUwLjUuNIJkdGlja2UwLjMuM4JtdG93ZXJfc2VydmljZWUwLjMuMw
[__link0]: https://crates.io/crates/layered/0.3.2
[__link1]: https://docs.rs/layered/0.3.2/layered/?search=Stack
- [__link10]: https://docs.rs/seatbelt/0.5.3/seatbelt/hedging/index.html
- [__link11]: https://docs.rs/seatbelt/0.5.3/seatbelt/breaker/index.html
- [__link12]: https://docs.rs/seatbelt/0.5.3/seatbelt/fallback/index.html
- [__link13]: https://docs.rs/seatbelt/0.5.3/seatbelt/chaos/index.html
- [__link14]: https://docs.rs/seatbelt/0.5.3/seatbelt/?search=chaos::injection
- [__link15]: https://docs.rs/seatbelt/0.5.3/seatbelt/?search=chaos::latency
+ [__link10]: https://docs.rs/seatbelt/0.5.4/seatbelt/hedging/index.html
+ [__link11]: https://docs.rs/seatbelt/0.5.4/seatbelt/breaker/index.html
+ [__link12]: https://docs.rs/seatbelt/0.5.4/seatbelt/fallback/index.html
+ [__link13]: https://docs.rs/seatbelt/0.5.4/seatbelt/chaos/index.html
+ [__link14]: https://docs.rs/seatbelt/0.5.4/seatbelt/?search=chaos::injection
+ [__link15]: https://docs.rs/seatbelt/0.5.4/seatbelt/?search=chaos::latency
[__link16]: https://github.com/microsoft/oxidizer/blob/main/crates/seatbelt/examples/timeout.rs
[__link17]: https://github.com/microsoft/oxidizer/blob/main/crates/seatbelt/examples/timeout_advanced.rs
[__link18]: https://github.com/microsoft/oxidizer/blob/main/crates/seatbelt/examples/retry.rs
[__link19]: https://github.com/microsoft/oxidizer/blob/main/crates/seatbelt/examples/retry_advanced.rs
- [__link2]: https://docs.rs/tick/0.3.2/tick/?search=Clock
+ [__link2]: https://docs.rs/tick/0.3.3/tick/?search=Clock
[__link20]: https://github.com/microsoft/oxidizer/blob/main/crates/seatbelt/examples/retry_outage.rs
[__link21]: https://github.com/microsoft/oxidizer/blob/main/crates/seatbelt/examples/breaker.rs
[__link22]: https://github.com/microsoft/oxidizer/blob/main/crates/seatbelt/examples/hedging.rs
@@ -223,19 +223,19 @@ This crate was developed as part of The Oxidizer Project. Br
[__link27]: https://github.com/microsoft/oxidizer/blob/main/crates/seatbelt/examples/config.json
[__link28]: https://github.com/microsoft/oxidizer/blob/main/crates/seatbelt/examples/chaos_injection.rs
[__link29]: https://github.com/microsoft/oxidizer/blob/main/crates/seatbelt/examples/chaos_injection_advanced.rs
- [__link3]: https://crates.io/crates/tick/0.3.2
+ [__link3]: https://crates.io/crates/tick/0.3.3
[__link30]: https://github.com/microsoft/oxidizer/blob/main/crates/seatbelt/examples/chaos_latency.rs
- [__link31]: https://docs.rs/seatbelt/0.5.3/seatbelt/timeout/index.html
- [__link32]: https://docs.rs/seatbelt/0.5.3/seatbelt/retry/index.html
- [__link33]: https://docs.rs/seatbelt/0.5.3/seatbelt/hedging/index.html
- [__link34]: https://docs.rs/seatbelt/0.5.3/seatbelt/breaker/index.html
- [__link35]: https://docs.rs/seatbelt/0.5.3/seatbelt/fallback/index.html
- [__link36]: https://docs.rs/seatbelt/0.5.3/seatbelt/?search=chaos::injection
- [__link37]: https://docs.rs/seatbelt/0.5.3/seatbelt/?search=chaos::latency
+ [__link31]: https://docs.rs/seatbelt/0.5.4/seatbelt/timeout/index.html
+ [__link32]: https://docs.rs/seatbelt/0.5.4/seatbelt/retry/index.html
+ [__link33]: https://docs.rs/seatbelt/0.5.4/seatbelt/hedging/index.html
+ [__link34]: https://docs.rs/seatbelt/0.5.4/seatbelt/breaker/index.html
+ [__link35]: https://docs.rs/seatbelt/0.5.4/seatbelt/fallback/index.html
+ [__link36]: https://docs.rs/seatbelt/0.5.4/seatbelt/?search=chaos::injection
+ [__link37]: https://docs.rs/seatbelt/0.5.4/seatbelt/?search=chaos::latency
[__link38]: https://docs.rs/tower_service/0.3.3/tower_service/?search=Service
- [__link4]: https://docs.rs/seatbelt/0.5.3/seatbelt/?search=ResilienceContext
- [__link5]: https://docs.rs/seatbelt/0.5.3/seatbelt/?search=ResilienceContext
+ [__link4]: https://docs.rs/seatbelt/0.5.4/seatbelt/?search=ResilienceContext
+ [__link5]: https://docs.rs/seatbelt/0.5.4/seatbelt/?search=ResilienceContext
[__link6]: https://docs.rs/recoverable/0.1.4/recoverable/?search=RecoveryInfo
[__link7]: https://docs.rs/recoverable/0.1.4/recoverable/?search=Recovery
- [__link8]: https://docs.rs/seatbelt/0.5.3/seatbelt/timeout/index.html
- [__link9]: https://docs.rs/seatbelt/0.5.3/seatbelt/retry/index.html
+ [__link8]: https://docs.rs/seatbelt/0.5.4/seatbelt/timeout/index.html
+ [__link9]: https://docs.rs/seatbelt/0.5.4/seatbelt/retry/index.html
diff --git a/crates/seatbelt_http/CHANGELOG.md b/crates/seatbelt_http/CHANGELOG.md
index a3679202f..2a3be4fca 100644
--- a/crates/seatbelt_http/CHANGELOG.md
+++ b/crates/seatbelt_http/CHANGELOG.md
@@ -1,5 +1,14 @@
# Changelog
+## [0.3.0] - 2026-06-04
+
+- 🔧 Maintenance
+
+ - bump `ohno` to 0.3.5 (transitively updates `ohno_macros` to 0.3.3)
+ - bump `thread_aware` to 0.7.3 (includes derive macro updates via `thread_aware_macros_impl` 0.7.2)
+ - bump `http_extensions` to 0.5.0
+ - bump `templated_uri` to 0.3.0
+
## [0.2.4] - 2026-06-02
- 🔧 Maintenance
diff --git a/crates/seatbelt_http/Cargo.toml b/crates/seatbelt_http/Cargo.toml
index 7f5da17a9..a9d484a10 100644
--- a/crates/seatbelt_http/Cargo.toml
+++ b/crates/seatbelt_http/Cargo.toml
@@ -4,7 +4,7 @@
[package]
name = "seatbelt_http"
description = "HTTP-specific extensions for the seatbelt crate."
-version = "0.2.4"
+version = "0.3.0"
readme = "README.md"
keywords = ["oxidizer", "resilience", "seatbelt", "http", "recovery"]
categories = ["data-structures", "network-programming"]
diff --git a/crates/seatbelt_http/README.md b/crates/seatbelt_http/README.md
index 17038453b..a5c77f2a9 100644
--- a/crates/seatbelt_http/README.md
+++ b/crates/seatbelt_http/README.md
@@ -48,12 +48,12 @@ type aliases and an extension trait:
This crate was developed as part of The Oxidizer Project. Browse this crate's source code.
- [__cargo_doc2readme_dependencies_info]: ggGmYW0CYXZlMC43LjJhdIQbLiTyV0MU86EbZU15e0PmecoboQ9jo59bnAEbyDXw04U13GlhYvRhcoQbTOk4e6Z0lGUbu-9zWu8YZcwbyVvoEicMTCUbJQkpemmNhqlhZIOCb2h0dHBfZXh0ZW5zaW9uc2UwLjQuNIJoc2VhdGJlbHRlMC41LjOCbXNlYXRiZWx0X2h0dHBlMC4yLjQ
- [__link0]: https://crates.io/crates/seatbelt/0.5.3
- [__link1]: https://crates.io/crates/seatbelt/0.5.3
- [__link2]: https://docs.rs/http_extensions/0.4.4/http_extensions/?search=HttpRequest
- [__link3]: https://docs.rs/http_extensions/0.4.4/http_extensions/?search=Result
- [__link4]: https://docs.rs/seatbelt_http/0.2.4/seatbelt_http/?search=HttpRecovery
- [__link5]: https://docs.rs/seatbelt_http/0.2.4/seatbelt_http/?search=HttpClone
- [__link6]: https://docs.rs/seatbelt_http/0.2.4/seatbelt_http/type.HttpResilienceContext.html
- [__link7]: https://docs.rs/seatbelt/0.5.3/seatbelt/?search=ResilienceContext
+ [__cargo_doc2readme_dependencies_info]: ggGmYW0CYXZlMC43LjJhdIQbLiTyV0MU86EbZU15e0PmecoboQ9jo59bnAEbyDXw04U13GlhYvRhcoQbTOk4e6Z0lGUbu-9zWu8YZcwbyVvoEicMTCUbJQkpemmNhqlhZIOCb2h0dHBfZXh0ZW5zaW9uc2UwLjUuMIJoc2VhdGJlbHRlMC41LjSCbXNlYXRiZWx0X2h0dHBlMC4zLjA
+ [__link0]: https://crates.io/crates/seatbelt/0.5.4
+ [__link1]: https://crates.io/crates/seatbelt/0.5.4
+ [__link2]: https://docs.rs/http_extensions/0.5.0/http_extensions/?search=HttpRequest
+ [__link3]: https://docs.rs/http_extensions/0.5.0/http_extensions/?search=Result
+ [__link4]: https://docs.rs/seatbelt_http/0.3.0/seatbelt_http/?search=HttpRecovery
+ [__link5]: https://docs.rs/seatbelt_http/0.3.0/seatbelt_http/?search=HttpClone
+ [__link6]: https://docs.rs/seatbelt_http/0.3.0/seatbelt_http/type.HttpResilienceContext.html
+ [__link7]: https://docs.rs/seatbelt/0.5.4/seatbelt/?search=ResilienceContext
diff --git a/crates/templated_uri/CHANGELOG.md b/crates/templated_uri/CHANGELOG.md
index 74ef2650e..dbab26f96 100644
--- a/crates/templated_uri/CHANGELOG.md
+++ b/crates/templated_uri/CHANGELOG.md
@@ -1,5 +1,19 @@
# Changelog
+## [0.3.0] - 2026-06-04
+
+- ⚠️ Breaking
+
+ - bump `data_privacy` to 0.12.0
+
+- 🔧 Maintenance
+
+ - bump `ohno` to 0.3.5 (transitively updates `ohno_macros` to 0.3.3)
+
+- ✨ Features
+
+ - add serde Deserialize for Uri and PathAndQuery ([#473](https://github.com/microsoft/oxidizer/pull/473))
+
## [0.2.3] - 2026-06-02
- 🔧 Maintenance
diff --git a/crates/templated_uri/Cargo.toml b/crates/templated_uri/Cargo.toml
index 5629ee077..4fb4894f6 100644
--- a/crates/templated_uri/Cargo.toml
+++ b/crates/templated_uri/Cargo.toml
@@ -4,7 +4,7 @@
[package]
name = "templated_uri"
description = "Standards-compliant URI handling with templating, validation, and data classification"
-version = "0.2.3"
+version = "0.3.0"
readme = "README.md"
keywords = ["oxidizer", "url", "parsing", "templates", "uri"]
categories = ["encoding", "parser-implementations", "template-engine", "web-programming"]
diff --git a/crates/templated_uri/README.md b/crates/templated_uri/README.md
index ab9368ca3..62733328b 100644
--- a/crates/templated_uri/README.md
+++ b/crates/templated_uri/README.md
@@ -198,22 +198,22 @@ and servers based on [`hyper`][__link16] like [`reqwest`][__link17].
This crate was developed as part of The Oxidizer Project. Browse this crate's source code.
- [__cargo_doc2readme_dependencies_info]: ggGmYW0CYXZlMC43LjJhdIQbLiTyV0MU86EbZU15e0PmecoboQ9jo59bnAEbyDXw04U13GlhYvRhcoQbreJMElgxp0kbqex4QSgBMK8bdglL8RqN6aobvSfumN6CAithZIKCZGh0dHBlMS40LjGCbXRlbXBsYXRlZF91cmllMC4yLjM
- [__link0]: https://docs.rs/templated_uri/0.2.3/templated_uri/?search=Uri
- [__link1]: https://docs.rs/templated_uri/0.2.3/templated_uri/?search=BaseUri
- [__link10]: https://docs.rs/templated_uri/0.2.3/templated_uri/?search=Escape
- [__link11]: https://docs.rs/templated_uri/0.2.3/templated_uri/?search=Raw
+ [__cargo_doc2readme_dependencies_info]: ggGmYW0CYXZlMC43LjJhdIQbLiTyV0MU86EbZU15e0PmecoboQ9jo59bnAEbyDXw04U13GlhYvRhcoQbreJMElgxp0kbqex4QSgBMK8bdglL8RqN6aobvSfumN6CAithZIKCZGh0dHBlMS40LjGCbXRlbXBsYXRlZF91cmllMC4zLjA
+ [__link0]: https://docs.rs/templated_uri/0.3.0/templated_uri/?search=Uri
+ [__link1]: https://docs.rs/templated_uri/0.3.0/templated_uri/?search=BaseUri
+ [__link10]: https://docs.rs/templated_uri/0.3.0/templated_uri/?search=Escape
+ [__link11]: https://docs.rs/templated_uri/0.3.0/templated_uri/?search=Raw
[__link12]: https://datatracker.ietf.org/doc/html/rfc6570#section-2.3
[__link13]: https://docs.rs/http/latest/http/
- [__link14]: https://docs.rs/templated_uri/0.2.3/templated_uri/?search=Uri
+ [__link14]: https://docs.rs/templated_uri/0.3.0/templated_uri/?search=Uri
[__link15]: https://docs.rs/http/1.4.1/http/?search=Uri
[__link16]: https://docs.rs/hyper/latest/hyper/
[__link17]: https://docs.rs/reqwest/latest/reqwest/
- [__link2]: https://docs.rs/templated_uri/0.2.3/templated_uri/?search=BaseUri
- [__link3]: https://docs.rs/templated_uri/0.2.3/templated_uri/?search=BasePath
- [__link4]: https://docs.rs/templated_uri/0.2.3/templated_uri/?search=PathAndQueryTemplate
- [__link5]: https://docs.rs/templated_uri/0.2.3/templated_uri/?search=Escaped
- [__link6]: https://docs.rs/templated_uri/0.2.3/templated_uri/?search=EscapedString
- [__link7]: https://docs.rs/templated_uri/0.2.3/templated_uri/?search=Escaped
- [__link8]: https://docs.rs/templated_uri/0.2.3/templated_uri/?search=EscapedString
+ [__link2]: https://docs.rs/templated_uri/0.3.0/templated_uri/?search=BaseUri
+ [__link3]: https://docs.rs/templated_uri/0.3.0/templated_uri/?search=BasePath
+ [__link4]: https://docs.rs/templated_uri/0.3.0/templated_uri/?search=PathAndQueryTemplate
+ [__link5]: https://docs.rs/templated_uri/0.3.0/templated_uri/?search=Escaped
+ [__link6]: https://docs.rs/templated_uri/0.3.0/templated_uri/?search=EscapedString
+ [__link7]: https://docs.rs/templated_uri/0.3.0/templated_uri/?search=Escaped
+ [__link8]: https://docs.rs/templated_uri/0.3.0/templated_uri/?search=EscapedString
[__link9]: https://datatracker.ietf.org/doc/html/rfc6570
diff --git a/crates/templated_uri_macros/CHANGELOG.md b/crates/templated_uri_macros/CHANGELOG.md
index cc558cfb2..16a749f3a 100644
--- a/crates/templated_uri_macros/CHANGELOG.md
+++ b/crates/templated_uri_macros/CHANGELOG.md
@@ -1,5 +1,11 @@
# Changelog
+## [0.2.3] - 2026-06-04
+
+- 🔧 Maintenance
+
+ - bump `ohno` to 0.3.5 (transitively updates `ohno_macros` to 0.3.3)
+
## [0.2.2] - 2026-06-02
- 🔧 Maintenance
diff --git a/crates/templated_uri_macros/Cargo.toml b/crates/templated_uri_macros/Cargo.toml
index 2cf4df4bf..b3d02ca0d 100644
--- a/crates/templated_uri_macros/Cargo.toml
+++ b/crates/templated_uri_macros/Cargo.toml
@@ -4,7 +4,7 @@
[package]
name = "templated_uri_macros"
description = "Macros for the templated_uri crate."
-version = "0.2.2"
+version = "0.2.3"
readme = "README.md"
keywords = ["oxidizer", "url", "parsing", "templates", "uri"]
categories = ["encoding", "parser-implementations", "template-engine", "web-programming"]
diff --git a/crates/templated_uri_macros_impl/CHANGELOG.md b/crates/templated_uri_macros_impl/CHANGELOG.md
index 9af3be304..d1a413e30 100644
--- a/crates/templated_uri_macros_impl/CHANGELOG.md
+++ b/crates/templated_uri_macros_impl/CHANGELOG.md
@@ -1,5 +1,11 @@
# Changelog
+## [0.2.3] - 2026-06-04
+
+- 🔧 Maintenance
+
+ - bump `ohno` to 0.3.5 (transitively updates `ohno_macros` to 0.3.3)
+
## [0.2.2] - 2026-06-02
- 🔧 Maintenance
diff --git a/crates/templated_uri_macros_impl/Cargo.toml b/crates/templated_uri_macros_impl/Cargo.toml
index fbb64eb62..8d9787144 100644
--- a/crates/templated_uri_macros_impl/Cargo.toml
+++ b/crates/templated_uri_macros_impl/Cargo.toml
@@ -4,7 +4,7 @@
[package]
name = "templated_uri_macros_impl"
description = "Macros for the templated_uri crate."
-version = "0.2.2"
+version = "0.2.3"
readme = "README.md"
keywords = ["oxidizer", "url", "parsing", "templates", "uri"]
categories = ["encoding", "parser-implementations", "template-engine", "web-programming"]
diff --git a/crates/thread_aware/CHANGELOG.md b/crates/thread_aware/CHANGELOG.md
index 04441e8a8..652b38625 100644
--- a/crates/thread_aware/CHANGELOG.md
+++ b/crates/thread_aware/CHANGELOG.md
@@ -1,5 +1,11 @@
# Changelog
+## [0.7.3] - 2026-06-04
+
+- 🔧 Maintenance
+
+ - bump `thread_aware_macros` to 0.7.3 (includes `thread_aware_macros_impl` 0.7.2)
+
## [0.7.2] - 2026-06-02
- 🔧 Maintenance
diff --git a/crates/thread_aware/Cargo.toml b/crates/thread_aware/Cargo.toml
index da46ce1b5..566672c2a 100644
--- a/crates/thread_aware/Cargo.toml
+++ b/crates/thread_aware/Cargo.toml
@@ -4,7 +4,7 @@
[package]
name = "thread_aware"
description = "Facilities to support thread-isolated state."
-version = "0.7.2"
+version = "0.7.3"
readme = "README.md"
keywords = ["oxidizer", "thread", "aware"]
categories = ["data-structures"]
diff --git a/crates/thread_aware/README.md b/crates/thread_aware/README.md
index e61e09b24..b27091b56 100644
--- a/crates/thread_aware/README.md
+++ b/crates/thread_aware/README.md
@@ -147,34 +147,34 @@ impl Service {
This crate was developed as part of The Oxidizer Project. Browse this crate's source code.
- [__cargo_doc2readme_dependencies_info]: ggGmYW0CYXZlMC43LjJhdIQbLiTyV0MU86EbZU15e0PmecoboQ9jo59bnAEbyDXw04U13GlhYvRhcoQbSQ5poud34xIbuapoDTNMsOwbP9Moo-1_UfQblZcvmMWsNThhZIKCbHRocmVhZF9hd2FyZWUwLjcuMoJzdGhyZWFkX2F3YXJlX21hY3Jvc2UwLjcuMg
- [__link0]: https://docs.rs/thread_aware_macros/0.7.2/thread_aware_macros/?search=ThreadAware
+ [__cargo_doc2readme_dependencies_info]: ggGmYW0CYXZlMC43LjJhdIQbLiTyV0MU86EbZU15e0PmecoboQ9jo59bnAEbyDXw04U13GlhYvRhcoQbSQ5poud34xIbuapoDTNMsOwbP9Moo-1_UfQblZcvmMWsNThhZIKCbHRocmVhZF9hd2FyZWUwLjcuM4JzdGhyZWFkX2F3YXJlX21hY3Jvc2UwLjcuMw
+ [__link0]: https://docs.rs/thread_aware_macros/0.7.3/thread_aware_macros/?search=ThreadAware
[__link1]: https://doc.rust-lang.org/stable/std/clone/trait.Clone.html
- [__link10]: https://docs.rs/thread_aware_macros/0.7.2/thread_aware_macros/?search=ThreadAware
+ [__link10]: https://docs.rs/thread_aware_macros/0.7.3/thread_aware_macros/?search=ThreadAware
[__link11]: https://doc.rust-lang.org/stable/std/marker/trait.Send.html
- [__link12]: https://docs.rs/thread_aware_macros/0.7.2/thread_aware_macros/?search=ThreadAware
- [__link13]: https://docs.rs/thread_aware_macros/0.7.2/thread_aware_macros/?search=ThreadAware
- [__link14]: https://docs.rs/thread_aware/0.7.2/thread_aware/?search=Unaware
- [__link15]: https://docs.rs/thread_aware/0.7.2/thread_aware/?search=Unaware
- [__link16]: https://docs.rs/thread_aware_macros/0.7.2/thread_aware_macros/?search=ThreadAware
- [__link17]: https://docs.rs/thread_aware_macros/0.7.2/thread_aware_macros/?search=ThreadAware
- [__link18]: https://docs.rs/thread_aware_macros/0.7.2/thread_aware_macros/?search=ThreadAware
- [__link19]: https://docs.rs/thread_aware_macros/0.7.2/thread_aware_macros/?search=ThreadAware
- [__link2]: https://docs.rs/thread_aware_macros/0.7.2/thread_aware_macros/?search=ThreadAware
+ [__link12]: https://docs.rs/thread_aware_macros/0.7.3/thread_aware_macros/?search=ThreadAware
+ [__link13]: https://docs.rs/thread_aware_macros/0.7.3/thread_aware_macros/?search=ThreadAware
+ [__link14]: https://docs.rs/thread_aware/0.7.3/thread_aware/?search=Unaware
+ [__link15]: https://docs.rs/thread_aware/0.7.3/thread_aware/?search=Unaware
+ [__link16]: https://docs.rs/thread_aware_macros/0.7.3/thread_aware_macros/?search=ThreadAware
+ [__link17]: https://docs.rs/thread_aware_macros/0.7.3/thread_aware_macros/?search=ThreadAware
+ [__link18]: https://docs.rs/thread_aware_macros/0.7.3/thread_aware_macros/?search=ThreadAware
+ [__link19]: https://docs.rs/thread_aware_macros/0.7.3/thread_aware_macros/?search=ThreadAware
+ [__link2]: https://docs.rs/thread_aware_macros/0.7.3/thread_aware_macros/?search=ThreadAware
[__link20]: https://doc.rust-lang.org/stable/std/?search=thread::spawn
- [__link21]: https://docs.rs/thread_aware_macros/0.7.2/thread_aware_macros/?search=ThreadAware
+ [__link21]: https://docs.rs/thread_aware_macros/0.7.3/thread_aware_macros/?search=ThreadAware
[__link22]: https://doc.rust-lang.org/stable/std/?search=sync::Arc
- [__link23]: https://docs.rs/thread_aware_macros/0.7.2/thread_aware_macros/?search=ThreadAware
- [__link24]: https://docs.rs/thread_aware_macros/0.7.2/thread_aware_macros/?search=ThreadAware
- [__link25]: https://docs.rs/thread_aware_macros/0.7.2/thread_aware_macros/?search=ThreadAware
- [__link26]: https://docs.rs/thread_aware_macros/0.7.2/thread_aware_macros/?search=ThreadAware
- [__link27]: https://docs.rs/thread_aware_macros/0.7.2/thread_aware_macros/?search=ThreadAware
- [__link28]: https://docs.rs/thread_aware/0.7.2/thread_aware/?search=Arc
- [__link29]: https://docs.rs/thread_aware/0.7.2/thread_aware/?search=Arc
- [__link3]: https://docs.rs/thread_aware_macros/0.7.2/thread_aware_macros/?search=ThreadAware
- [__link4]: https://docs.rs/thread_aware_macros/0.7.2/thread_aware_macros/?search=ThreadAware
- [__link5]: https://docs.rs/thread_aware/0.7.2/thread_aware/?search=Arc
+ [__link23]: https://docs.rs/thread_aware_macros/0.7.3/thread_aware_macros/?search=ThreadAware
+ [__link24]: https://docs.rs/thread_aware_macros/0.7.3/thread_aware_macros/?search=ThreadAware
+ [__link25]: https://docs.rs/thread_aware_macros/0.7.3/thread_aware_macros/?search=ThreadAware
+ [__link26]: https://docs.rs/thread_aware_macros/0.7.3/thread_aware_macros/?search=ThreadAware
+ [__link27]: https://docs.rs/thread_aware_macros/0.7.3/thread_aware_macros/?search=ThreadAware
+ [__link28]: https://docs.rs/thread_aware/0.7.3/thread_aware/?search=Arc
+ [__link29]: https://docs.rs/thread_aware/0.7.3/thread_aware/?search=Arc
+ [__link3]: https://docs.rs/thread_aware_macros/0.7.3/thread_aware_macros/?search=ThreadAware
+ [__link4]: https://docs.rs/thread_aware_macros/0.7.3/thread_aware_macros/?search=ThreadAware
+ [__link5]: https://docs.rs/thread_aware/0.7.3/thread_aware/?search=Arc
[__link6]: https://doc.rust-lang.org/stable/std/?search=sync::Arc
- [__link7]: https://docs.rs/thread_aware/0.7.2/thread_aware/?search=storage::Strategy
- [__link8]: https://docs.rs/thread_aware_macros/0.7.2/thread_aware_macros/?search=ThreadAware
+ [__link7]: https://docs.rs/thread_aware/0.7.3/thread_aware/?search=storage::Strategy
+ [__link8]: https://docs.rs/thread_aware_macros/0.7.3/thread_aware_macros/?search=ThreadAware
[__link9]: https://doc.rust-lang.org/stable/std/marker/trait.Send.html
diff --git a/crates/thread_aware_macros/CHANGELOG.md b/crates/thread_aware_macros/CHANGELOG.md
index 541312871..27b42b21f 100644
--- a/crates/thread_aware_macros/CHANGELOG.md
+++ b/crates/thread_aware_macros/CHANGELOG.md
@@ -1,5 +1,11 @@
# Changelog
+## [0.7.3] - 2026-06-04
+
+- 🔧 Maintenance
+
+ - bump `thread_aware_macros_impl` to 0.7.2
+
## [0.7.2] - 2026-06-02
- 🔧 Maintenance
diff --git a/crates/thread_aware_macros/Cargo.toml b/crates/thread_aware_macros/Cargo.toml
index a677ca29f..64e7f608e 100644
--- a/crates/thread_aware_macros/Cargo.toml
+++ b/crates/thread_aware_macros/Cargo.toml
@@ -4,7 +4,7 @@
[package]
name = "thread_aware_macros"
description = "Macros for the thread_aware crate."
-version = "0.7.2"
+version = "0.7.3"
readme = "README.md"
keywords = ["oxidizer", "thread", "aware", "macro", "derive"]
categories = ["data-structures"]
diff --git a/crates/thread_aware_macros_impl/CHANGELOG.md b/crates/thread_aware_macros_impl/CHANGELOG.md
index c315833cb..c636f1e6b 100644
--- a/crates/thread_aware_macros_impl/CHANGELOG.md
+++ b/crates/thread_aware_macros_impl/CHANGELOG.md
@@ -1,5 +1,11 @@
# Changelog
+## [0.7.2] - 2026-06-05
+
+- ✔️ Tasks
+
+ - Technical release
+
## [0.7.1] - 2026-06-02
- ✔️ Tasks
diff --git a/crates/thread_aware_macros_impl/Cargo.toml b/crates/thread_aware_macros_impl/Cargo.toml
index 276e954de..68ab2ffb1 100644
--- a/crates/thread_aware_macros_impl/Cargo.toml
+++ b/crates/thread_aware_macros_impl/Cargo.toml
@@ -4,7 +4,7 @@
[package]
name = "thread_aware_macros_impl"
description = "Macros for the thread_aware crate."
-version = "0.7.1"
+version = "0.7.2"
readme = "README.md"
keywords = ["oxidizer", "thread", "aware", "macro", "derive"]
categories = ["data-structures"]
diff --git a/crates/tick/CHANGELOG.md b/crates/tick/CHANGELOG.md
index 8069384a8..d55afaed1 100644
--- a/crates/tick/CHANGELOG.md
+++ b/crates/tick/CHANGELOG.md
@@ -1,5 +1,11 @@
# Changelog
+## [0.3.3] - 2026-06-04
+
+- 🔧 Maintenance
+
+ - bump `thread_aware` to 0.7.3 (includes derive macro updates via `thread_aware_macros_impl` 0.7.2)
+
## [0.3.2] - 2026-06-02
- 🔧 Maintenance
diff --git a/crates/tick/Cargo.toml b/crates/tick/Cargo.toml
index ee6c8c963..c399e6a48 100644
--- a/crates/tick/Cargo.toml
+++ b/crates/tick/Cargo.toml
@@ -4,7 +4,7 @@
[package]
name = "tick"
description = "Provides primitives to interact with and manipulate machine time."
-version = "0.3.2"
+version = "0.3.3"
readme = "README.md"
keywords = ["time", "clock", "tick", "stopwatch"]
categories = ["data-structures"]
diff --git a/crates/tick/README.md b/crates/tick/README.md
index fae6aa8d9..cae4ddf0c 100644
--- a/crates/tick/README.md
+++ b/crates/tick/README.md
@@ -227,36 +227,36 @@ contain additional examples of how to use the time primitives.
This crate was developed as part of The Oxidizer Project. Browse this crate's source code.
- [__cargo_doc2readme_dependencies_info]: ggGmYW0CYXZlMC43LjJhdIQbLiTyV0MU86EbZU15e0PmecoboQ9jo59bnAEbyDXw04U13GlhYvRhcoQbL9BDcNdcFMwb7BisAbHhDTMbCjff6Srdm8MbyVtuTcwxtz5hZIKCbHRocmVhZF9hd2FyZWUwLjcuMoJkdGlja2UwLjMuMg
- [__link0]: https://docs.rs/tick/0.3.2/tick/?search=ClockControl
- [__link1]: https://docs.rs/tick/0.3.2/tick/?search=Clock
- [__link10]: https://docs.rs/tick/0.3.2/tick/?search=FutureExt
- [__link11]: https://docs.rs/tick/0.3.2/tick/?search=SystemTimeExt
+ [__cargo_doc2readme_dependencies_info]: ggGmYW0CYXZlMC43LjJhdIQbLiTyV0MU86EbZU15e0PmecoboQ9jo59bnAEbyDXw04U13GlhYvRhcoQbL9BDcNdcFMwb7BisAbHhDTMbCjff6Srdm8MbyVtuTcwxtz5hZIKCbHRocmVhZF9hd2FyZWUwLjcuM4JkdGlja2UwLjMuMw
+ [__link0]: https://docs.rs/tick/0.3.3/tick/?search=ClockControl
+ [__link1]: https://docs.rs/tick/0.3.3/tick/?search=Clock
+ [__link10]: https://docs.rs/tick/0.3.3/tick/?search=FutureExt
+ [__link11]: https://docs.rs/tick/0.3.3/tick/?search=SystemTimeExt
[__link12]: https://doc.rust-lang.org/stable/std/?search=time::SystemTime
[__link13]: https://crates.io/crates/jiff
[__link14]: https://crates.io/crates/chrono
[__link15]: https://crates.io/crates/time
- [__link16]: https://docs.rs/thread_aware/0.7.2/thread_aware/?search=ThreadAware
- [__link17]: https://docs.rs/tick/0.3.2/tick/?search=runtime::InactiveClock
- [__link18]: https://docs.rs/thread_aware/0.7.2/thread_aware/?search=ThreadAware::relocate
- [__link19]: https://docs.rs/tick/0.3.2/tick/?search=Clock
- [__link2]: https://docs.rs/tick/0.3.2/tick/?search=Clock
- [__link20]: https://docs.rs/tick/0.3.2/tick/?search=runtime::ClockDriver
- [__link21]: https://docs.rs/tick/0.3.2/tick/?search=ClockControl
- [__link22]: https://docs.rs/tick/0.3.2/tick/runtime/index.html
- [__link23]: https://docs.rs/tick/0.3.2/tick/?search=Clock
- [__link24]: https://docs.rs/tick/0.3.2/tick/?search=Clock::instant
- [__link25]: https://docs.rs/tick/0.3.2/tick/?search=Stopwatch
+ [__link16]: https://docs.rs/thread_aware/0.7.3/thread_aware/?search=ThreadAware
+ [__link17]: https://docs.rs/tick/0.3.3/tick/?search=runtime::InactiveClock
+ [__link18]: https://docs.rs/thread_aware/0.7.3/thread_aware/?search=ThreadAware::relocate
+ [__link19]: https://docs.rs/tick/0.3.3/tick/?search=Clock
+ [__link2]: https://docs.rs/tick/0.3.3/tick/?search=Clock
+ [__link20]: https://docs.rs/tick/0.3.3/tick/?search=runtime::ClockDriver
+ [__link21]: https://docs.rs/tick/0.3.3/tick/?search=ClockControl
+ [__link22]: https://docs.rs/tick/0.3.3/tick/runtime/index.html
+ [__link23]: https://docs.rs/tick/0.3.3/tick/?search=Clock
+ [__link24]: https://docs.rs/tick/0.3.3/tick/?search=Clock::instant
+ [__link25]: https://docs.rs/tick/0.3.3/tick/?search=Stopwatch
[__link26]: https://tokio.rs/
- [__link27]: https://docs.rs/tick/0.3.2/tick/?search=Clock::new_tokio
- [__link28]: https://docs.rs/tick/0.3.2/tick/?search=ClockControl
+ [__link27]: https://docs.rs/tick/0.3.3/tick/?search=Clock::new_tokio
+ [__link28]: https://docs.rs/tick/0.3.3/tick/?search=ClockControl
[__link29]: https://serde.rs/
- [__link3]: https://docs.rs/tick/0.3.2/tick/?search=ClockControl
- [__link30]: https://docs.rs/tick/0.3.2/tick/fmt/index.html
+ [__link3]: https://docs.rs/tick/0.3.3/tick/?search=ClockControl
+ [__link30]: https://docs.rs/tick/0.3.3/tick/fmt/index.html
[__link31]: https://github.com/microsoft/oxidizer/tree/main/crates/tick/examples
- [__link4]: https://docs.rs/tick/0.3.2/tick/?search=Stopwatch
- [__link5]: https://docs.rs/tick/0.3.2/tick/?search=Delay
- [__link6]: https://docs.rs/tick/0.3.2/tick/?search=PeriodicTimer
- [__link7]: https://docs.rs/tick/0.3.2/tick/?search=Error
- [__link8]: https://docs.rs/tick/0.3.2/tick/fmt/index.html
- [__link9]: https://docs.rs/tick/0.3.2/tick/runtime/index.html
+ [__link4]: https://docs.rs/tick/0.3.3/tick/?search=Stopwatch
+ [__link5]: https://docs.rs/tick/0.3.3/tick/?search=Delay
+ [__link6]: https://docs.rs/tick/0.3.3/tick/?search=PeriodicTimer
+ [__link7]: https://docs.rs/tick/0.3.3/tick/?search=Error
+ [__link8]: https://docs.rs/tick/0.3.3/tick/fmt/index.html
+ [__link9]: https://docs.rs/tick/0.3.3/tick/runtime/index.html
diff --git a/crates/uniflight/CHANGELOG.md b/crates/uniflight/CHANGELOG.md
index 511170f29..f3d3d8d8a 100644
--- a/crates/uniflight/CHANGELOG.md
+++ b/crates/uniflight/CHANGELOG.md
@@ -1,5 +1,11 @@
# Changelog
+## [0.2.3] - 2026-06-04
+
+- 🔧 Maintenance
+
+ - bump `thread_aware` to 0.7.3 (includes derive macro updates via `thread_aware_macros_impl` 0.7.2)
+
## [0.2.2] - 2026-06-02
- 🔧 Maintenance
diff --git a/crates/uniflight/Cargo.toml b/crates/uniflight/Cargo.toml
index 3a4f3c6b8..3454c4f7f 100644
--- a/crates/uniflight/Cargo.toml
+++ b/crates/uniflight/Cargo.toml
@@ -4,7 +4,7 @@
[package]
name = "uniflight"
description = "Coalesces duplicate async tasks into a single execution."
-version = "0.2.2"
+version = "0.2.3"
readme = "README.md"
keywords = ["oxidizer", "coalescing", "stempede", "singleflight", "deduplication"]
categories = ["concurrency"]
diff --git a/crates/uniflight/README.md b/crates/uniflight/README.md
index 9cb3ba38c..002da16c9 100644
--- a/crates/uniflight/README.md
+++ b/crates/uniflight/README.md
@@ -135,17 +135,17 @@ Use `--save-baseline` and `--baseline` flags to track regressions over time.
This crate was developed as part of The Oxidizer Project. Browse this crate's source code.
- [__cargo_doc2readme_dependencies_info]: ggGmYW0CYXZlMC43LjJhdIQbLiTyV0MU86EbZU15e0PmecoboQ9jo59bnAEbyDXw04U13GlhYvRhcoQb4YsqHKJIO4Ebne8KVDRuJvAbVEqIpjwMtY4bZY2vS6iuAethZIKCbHRocmVhZF9hd2FyZWUwLjcuMoJpdW5pZmxpZ2h0ZTAuMi4y
- [__link0]: https://docs.rs/uniflight/0.2.2/uniflight/struct.Merger.html
- [__link1]: https://docs.rs/uniflight/0.2.2/uniflight/?search=Merger::execute
+ [__cargo_doc2readme_dependencies_info]: ggGmYW0CYXZlMC43LjJhdIQbLiTyV0MU86EbZU15e0PmecoboQ9jo59bnAEbyDXw04U13GlhYvRhcoQb4YsqHKJIO4Ebne8KVDRuJvAbVEqIpjwMtY4bZY2vS6iuAethZIKCbHRocmVhZF9hd2FyZWUwLjcuM4JpdW5pZmxpZ2h0ZTAuMi4z
+ [__link0]: https://docs.rs/uniflight/0.2.3/uniflight/struct.Merger.html
+ [__link1]: https://docs.rs/uniflight/0.2.3/uniflight/?search=Merger::execute
[__link10]: https://doc.rust-lang.org/stable/std/?search=hash::Hash
[__link11]: https://doc.rust-lang.org/stable/std/cmp/trait.Eq.html
- [__link12]: https://docs.rs/uniflight/0.2.2/uniflight/struct.Merger.html
+ [__link12]: https://docs.rs/uniflight/0.2.3/uniflight/struct.Merger.html
[__link2]: https://doc.rust-lang.org/stable/std/?search=borrow::Borrow
- [__link3]: https://docs.rs/thread_aware/0.7.2/thread_aware/?search=storage::Strategy
- [__link4]: https://docs.rs/thread_aware/0.7.2/thread_aware/?search=PerProcess
- [__link5]: https://docs.rs/thread_aware/0.7.2/thread_aware/?search=PerNuma
- [__link6]: https://docs.rs/thread_aware/0.7.2/thread_aware/?search=PerCore
- [__link7]: https://docs.rs/uniflight/0.2.2/uniflight/struct.LeaderPanicked.html
- [__link8]: https://docs.rs/uniflight/0.2.2/uniflight/?search=LeaderPanicked::message
+ [__link3]: https://docs.rs/thread_aware/0.7.3/thread_aware/?search=storage::Strategy
+ [__link4]: https://docs.rs/thread_aware/0.7.3/thread_aware/?search=PerProcess
+ [__link5]: https://docs.rs/thread_aware/0.7.3/thread_aware/?search=PerNuma
+ [__link6]: https://docs.rs/thread_aware/0.7.3/thread_aware/?search=PerCore
+ [__link7]: https://docs.rs/uniflight/0.2.3/uniflight/struct.LeaderPanicked.html
+ [__link8]: https://docs.rs/uniflight/0.2.3/uniflight/?search=LeaderPanicked::message
[__link9]: https://doc.rust-lang.org/stable/std/clone/trait.Clone.html