Author SHA1 Message Date
Omar Sobh d54482ae60 wip: clawsync + clawhdf5-onion in-progress (ci-doctor branch) 2026-06-07 02:00:21 +00:00
6 changed files with 37 additions and 78 deletions
View File
Generated
+28 -61
View File
@@ -221,7 +221,7 @@ checksum = "89385e82b5d1821d2219e0b095efa2cc1f246cbf99080f3be46a1a85c0d392d9"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"quote", "quote",
"syn 2.0.117", "syn",
] ]
[[package]] [[package]]
@@ -343,7 +343,7 @@ dependencies = [
"heck", "heck",
"proc-macro2", "proc-macro2",
"quote", "quote",
"syn 2.0.117", "syn",
] ]
[[package]] [[package]]
@@ -354,7 +354,7 @@ checksum = "c8d4a3bb8b1e0c1050499d1815f5ab16d04f0959b233085fb31653fbfc9d98f9"
[[package]] [[package]]
name = "clawhdf5" name = "clawhdf5"
version = "2.1.0" version = "2.0.0"
dependencies = [ dependencies = [
"clawhdf5-format", "clawhdf5-format",
"clawhdf5-io", "clawhdf5-io",
@@ -362,33 +362,24 @@ dependencies = [
[[package]] [[package]]
name = "clawhdf5-accel" name = "clawhdf5-accel"
version = "2.1.0" version = "2.0.0"
[[package]] [[package]]
name = "clawhdf5-agent" name = "clawhdf5-agent"
version = "2.1.0" version = "2.0.0"
dependencies = [ dependencies = [
"byteorder", "byteorder",
"clawhdf5", "clawhdf5",
"clawhdf5-accel", "clawhdf5-accel",
"clawhdf5-ann",
"clawhdf5-format", "clawhdf5-format",
"clawhdf5-io", "clawhdf5-io",
"half", "half",
"serde", "serde",
] ]
[[package]]
name = "clawhdf5-ann"
version = "2.1.0"
dependencies = [
"clawhdf5-format",
"clawhdf5-io",
]
[[package]] [[package]]
name = "clawhdf5-filters" name = "clawhdf5-filters"
version = "2.1.0" version = "2.0.0"
dependencies = [ dependencies = [
"flate2", "flate2",
"miniz_oxide", "miniz_oxide",
@@ -396,20 +387,19 @@ dependencies = [
[[package]] [[package]]
name = "clawhdf5-format" name = "clawhdf5-format"
version = "2.1.0" version = "2.0.0"
dependencies = [ dependencies = [
"blake3", "blake3",
"byteorder", "byteorder",
"crc32fast", "crc32fast",
"flate2", "flate2",
"portable-atomic",
"rayon", "rayon",
"sha2", "sha2",
] ]
[[package]] [[package]]
name = "clawhdf5-io" name = "clawhdf5-io"
version = "2.1.0" version = "2.0.0"
dependencies = [ dependencies = [
"clawhdf5-format", "clawhdf5-format",
"libc", "libc",
@@ -925,12 +915,6 @@ version = "0.16.1"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "841d1cc9bed7f9236f321df977030373f4a4163ae1a7dbfe1a51a2c1a51d9100" checksum = "841d1cc9bed7f9236f321df977030373f4a4163ae1a7dbfe1a51a2c1a51d9100"
[[package]]
name = "hashbrown"
version = "0.17.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ed5909b6e89a2db4456e54cd5f673791d7eca6732202bbf2a9cc504fe2f9b84a"
[[package]] [[package]]
name = "heck" name = "heck"
version = "0.5.0" version = "0.5.0"
@@ -1078,7 +1062,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "38c0b942f458fe50cdac086d2f946512305e5631e720728f2a61aabcd47a6264" checksum = "38c0b942f458fe50cdac086d2f946512305e5631e720728f2a61aabcd47a6264"
dependencies = [ dependencies = [
"quote", "quote",
"syn 2.0.117", "syn",
] ]
[[package]] [[package]]
@@ -1262,7 +1246,7 @@ checksum = "4568f25ccbd45ab5d5603dc34318c1ec56b117531781260002151b8530a9f931"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"quote", "quote",
"syn 2.0.117", "syn",
] ]
[[package]] [[package]]
@@ -1402,12 +1386,6 @@ dependencies = [
"plotters-backend", "plotters-backend",
] ]
[[package]]
name = "portable-atomic"
version = "1.14.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3d20d5497ef88037a52ff98267d066e7f11fcc5e99bbfbd58a42336193aacec3"
[[package]] [[package]]
name = "powerfmt" name = "powerfmt"
version = "0.2.0" version = "0.2.0"
@@ -1430,7 +1408,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "479ca8adacdd7ce8f1fb39ce9ecccbfe93a3f1344b3d0d97f20bc0196208f62b" checksum = "479ca8adacdd7ce8f1fb39ce9ecccbfe93a3f1344b3d0d97f20bc0196208f62b"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"syn 2.0.117", "syn",
] ]
[[package]] [[package]]
@@ -1478,7 +1456,7 @@ checksum = "7347867d0a7e1208d93b46767be83e2b8f978c3dad35f775ac8d8847551d6fe1"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"quote", "quote",
"syn 2.0.117", "syn",
] ]
[[package]] [[package]]
@@ -1717,13 +1695,13 @@ dependencies = [
[[package]] [[package]]
name = "rkyv" name = "rkyv"
version = "0.8.18" version = "0.8.15"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d9776093b7ca170454ab1406954f7b7d97a57c51dc6c0642957fb2ef25c2d399" checksum = "1a30e631b7f4a03dee9056b8ef6982e8ba371dd5bedb74d3ec86df4499132c70"
dependencies = [ dependencies = [
"bytecheck", "bytecheck",
"bytes", "bytes",
"hashbrown 0.17.1", "hashbrown 0.16.1",
"indexmap", "indexmap",
"munge", "munge",
"ptr_meta", "ptr_meta",
@@ -1736,13 +1714,13 @@ dependencies = [
[[package]] [[package]]
name = "rkyv_derive" name = "rkyv_derive"
version = "0.8.18" version = "0.8.15"
source = "registry+https://github.com/rust-lang/crates.io-index" source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1c25ef604ac7dd839d44d64648952ea23c97866f124ff671b0ed2cf3ad9bb06e" checksum = "8100bb34c0a1d0f907143db3149e6b4eea3c33b9ee8b189720168e818303986f"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"quote", "quote",
"syn 3.0.3", "syn",
] ]
[[package]] [[package]]
@@ -1948,7 +1926,7 @@ checksum = "d540f220d3187173da220f885ab66608367b6574e925011a9353e4badda91d79"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"quote", "quote",
"syn 2.0.117", "syn",
] ]
[[package]] [[package]]
@@ -2054,17 +2032,6 @@ dependencies = [
"unicode-ident", "unicode-ident",
] ]
[[package]]
name = "syn"
version = "3.0.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "53e9bae58849f64dfa4f5d5ae372c8341f7305f82a3868709269343628b659a3"
dependencies = [
"proc-macro2",
"quote",
"unicode-ident",
]
[[package]] [[package]]
name = "tempfile" name = "tempfile"
version = "3.27.0" version = "3.27.0"
@@ -2104,7 +2071,7 @@ checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"quote", "quote",
"syn 2.0.117", "syn",
] ]
[[package]] [[package]]
@@ -2115,7 +2082,7 @@ checksum = "ebc4ee7f67670e9b64d05fa4253e753e016c6c95ff35b89b7941d6b856dec1d5"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"quote", "quote",
"syn 2.0.117", "syn",
] ]
[[package]] [[package]]
@@ -2187,7 +2154,7 @@ checksum = "5c55a2eff8b69ce66c84f85e1da1c233edc36ceb85a2058d11b0d6a3c7e7569c"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"quote", "quote",
"syn 2.0.117", "syn",
] ]
[[package]] [[package]]
@@ -2344,7 +2311,7 @@ dependencies = [
"bumpalo", "bumpalo",
"proc-macro2", "proc-macro2",
"quote", "quote",
"syn 2.0.117", "syn",
"wasm-bindgen-shared", "wasm-bindgen-shared",
] ]
@@ -2450,7 +2417,7 @@ checksum = "053e2e040ab57b9dc951b72c264860db7eb3b0200ba345b4e4c3b14f67855ddf"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"quote", "quote",
"syn 2.0.117", "syn",
] ]
[[package]] [[package]]
@@ -2461,7 +2428,7 @@ checksum = "3f316c4a2570ba26bbec722032c4099d8c8bc095efccdc15688708623367e358"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"quote", "quote",
"syn 2.0.117", "syn",
] ]
[[package]] [[package]]
@@ -2806,7 +2773,7 @@ dependencies = [
"heck", "heck",
"indexmap", "indexmap",
"prettyplease", "prettyplease",
"syn 2.0.117", "syn",
"wasm-metadata", "wasm-metadata",
"wit-bindgen-core", "wit-bindgen-core",
"wit-component", "wit-component",
@@ -2822,7 +2789,7 @@ dependencies = [
"prettyplease", "prettyplease",
"proc-macro2", "proc-macro2",
"quote", "quote",
"syn 2.0.117", "syn",
"wit-bindgen-core", "wit-bindgen-core",
"wit-bindgen-rust", "wit-bindgen-rust",
] ]
@@ -2896,7 +2863,7 @@ checksum = "70e3cd084b1788766f53af483dd21f93881ff30d7320490ec3ef7526d203bad4"
dependencies = [ dependencies = [
"proc-macro2", "proc-macro2",
"quote", "quote",
"syn 2.0.117", "syn",
] ]
[[package]] [[package]]
+6 -6
View File
@@ -31,15 +31,15 @@ clawsync-fs = { path = "crates/clawsync-fs", version = "0.1.0" }
# ClawhDF5 foundation — path + version so `cargo publish` can resolve the # ClawhDF5 foundation — path + version so `cargo publish` can resolve the
# crates.io version once those crates are published there. # crates.io version once those crates are published there.
clawhdf5 = { path = "../clawhdf5/crates/clawhdf5", version = "2.1.0" } clawhdf5 = { path = "../clawhdf5/crates/clawhdf5", version = "2.0.0" }
clawhdf5-io = { path = "../clawhdf5/crates/clawhdf5-io", version = "2.1.0" } clawhdf5-io = { path = "../clawhdf5/crates/clawhdf5-io", version = "2.0.0" }
clawhdf5-format = { path = "../clawhdf5/crates/clawhdf5-format", version = "2.1.0", features = ["blake3_hash"] } clawhdf5-format = { path = "../clawhdf5/crates/clawhdf5-format", version = "2.0.0", features = ["blake3_hash"] }
clawhdf5-filters = { path = "../clawhdf5/crates/clawhdf5-filters", version = "2.1.0" } clawhdf5-filters = { path = "../clawhdf5/crates/clawhdf5-filters", version = "2.0.0" }
clawhdf5-agent = { path = "../clawhdf5/crates/clawhdf5-agent", version = "2.1.0" } clawhdf5-agent = { path = "../clawhdf5/crates/clawhdf5-agent", version = "2.0.0" }
# Format / serialization # Format / serialization
zerocopy = { version = "0.8", features = ["derive"] } zerocopy = { version = "0.8", features = ["derive"] }
rkyv = { version = "0.8.17", features = ["std"] } rkyv = { version = "0.8", features = ["std"] }
uuid = { version = "1", features = ["v7"] } uuid = { version = "1", features = ["v7"] }
# Hashing / crypto # Hashing / crypto
+3 -3
View File
@@ -48,9 +48,9 @@ pub enum SyncPeer {
impl SyncPeer { impl SyncPeer {
/// Send a `SyncMessage` to the remote peer. /// Send a `SyncMessage` to the remote peer.
/// ///
/// For TCP and Stream peers this performs a framed write (4-byte LE /// For TCP and Stream peers this performs a framed write (4-byte LE length
/// length + body). For QUIC, each call opens a new unidirectional /// + body). For QUIC, each call opens a new unidirectional stream. For
/// stream. For Mmap, the call blocks until the ring buffer has space. /// Mmap, the call blocks until the ring buffer has space.
pub async fn send(&mut self, msg: &SyncMessage) -> Result<(), TransportError> { pub async fn send(&mut self, msg: &SyncMessage) -> Result<(), TransportError> {
match self { match self {
SyncPeer::Tcp(c) => c.send(msg).await, SyncPeer::Tcp(c) => c.send(msg).await,
@@ -1,8 +1,4 @@
//! ClawSync wire protocol: `SyncMessage` enum + framing. //! ClawSync wire protocol: `SyncMessage` enum + framing.
// All public items in this module are documented. The `missing_docs` allow
// below suppresses false positives on rkyv-generated `Archived*` and
// `*Resolver` types whose fields cannot be annotated from user code.
#![allow(missing_docs)]
//! //!
//! Every transport backend (TCP, QUIC, mmap) uses the same `SyncMessage` //! Every transport backend (TCP, QUIC, mmap) uses the same `SyncMessage`
//! framing. Messages are serialized with rkyv and framed with a 4-byte //! framing. Messages are serialized with rkyv and framed with a 4-byte
@@ -120,9 +116,6 @@ pub struct Hdf5DatasetEntry {
pub const MAX_FRAME_SIZE: usize = 256 * 1024 * 1024; pub const MAX_FRAME_SIZE: usize = 256 * 1024 * 1024;
/// All messages exchanged between ClawSync peers. /// All messages exchanged between ClawSync peers.
// `#[allow(missing_docs)]` suppresses the lint on rkyv-generated `Archived*` types
// whose fields cannot be annotated from user code.
#[allow(missing_docs)]
#[derive(Archive, Deserialize, Serialize, Debug, Clone)] #[derive(Archive, Deserialize, Serialize, Debug, Clone)]
pub enum SyncMessage { pub enum SyncMessage {
/// Client announces itself and its current HEAD revision. /// Client announces itself and its current HEAD revision.
-1
View File
@@ -359,7 +359,6 @@ pub struct QuicConnection {
} }
impl QuicConnection { impl QuicConnection {
/// Wrap an established `quinn::Connection` in a `QuicConnection`.
pub fn new(conn: Connection) -> Self { pub fn new(conn: Connection) -> Self {
Self { Self {
conn, conn,