Apply rustfmt to entire workspace
Runs cargo fmt --all; all 573 tests still passing, clippy still clean. No logic changes — formatting only. Co-Authored-By: Claude Sonnet 4.6 <[email protected]>
This commit is contained in:
co-authored by
Claude Sonnet 4.6
parent
3d524e2d63
commit
1c107fe58a
@@ -12,7 +12,7 @@ use clawhdf5_onion::writer::OnionFile;
|
||||
use clawsync_onion::{differ::diff_revisions, manifest::ClawSyncManifest, merger::merge_packets};
|
||||
use clawsync_transport::{
|
||||
protocol::SyncMessage,
|
||||
quic::{quic_connect, QuicConfig, QuicServer},
|
||||
quic::{QuicConfig, QuicServer, quic_connect},
|
||||
};
|
||||
use tempfile::NamedTempFile;
|
||||
|
||||
@@ -62,8 +62,7 @@ fn make_quic_configs() -> (QuicConfig, QuicConfig) {
|
||||
|
||||
let mut roots = rustls::RootCertStore::empty();
|
||||
roots.add(srv_cert_der).unwrap();
|
||||
let client_config =
|
||||
quinn::ClientConfig::with_root_certificates(Arc::new(roots)).unwrap();
|
||||
let client_config = quinn::ClientConfig::with_root_certificates(Arc::new(roots)).unwrap();
|
||||
|
||||
// Client-side QuicConfig requires a server_config field; generate a fresh
|
||||
// cert+key pair so there is no key/cert mismatch.
|
||||
@@ -71,8 +70,14 @@ fn make_quic_configs() -> (QuicConfig, QuicConfig) {
|
||||
let cli_server_config =
|
||||
quinn::ServerConfig::with_single_cert(vec![cli_cert_der], cli_key_der).unwrap();
|
||||
|
||||
let srv_cfg = QuicConfig { server_config: srv_server_config, client_config: client_config.clone() };
|
||||
let cli_cfg = QuicConfig { server_config: cli_server_config, client_config };
|
||||
let srv_cfg = QuicConfig {
|
||||
server_config: srv_server_config,
|
||||
client_config: client_config.clone(),
|
||||
};
|
||||
let cli_cfg = QuicConfig {
|
||||
server_config: cli_server_config,
|
||||
client_config,
|
||||
};
|
||||
(srv_cfg, cli_cfg)
|
||||
}
|
||||
|
||||
@@ -99,16 +104,20 @@ async fn run_quic_push(src: OnionFile, mut dst: OnionFile) -> (u64, OnionFile) {
|
||||
match msg {
|
||||
SyncMessage::ManifestRequest { .. } => {
|
||||
let dst_manifest = ClawSyncManifest::from_onion("dst", &dst, H5_BASE);
|
||||
conn.send(&SyncMessage::ManifestResponse { manifest: dst_manifest })
|
||||
.await
|
||||
.unwrap();
|
||||
conn.send(&SyncMessage::ManifestResponse {
|
||||
manifest: dst_manifest,
|
||||
})
|
||||
.await
|
||||
.unwrap();
|
||||
}
|
||||
|
||||
SyncMessage::LayerPacket { packet } => {
|
||||
let rev = packet.revision;
|
||||
merge_packets(&mut dst, vec![packet], false).unwrap();
|
||||
packets_received += 1;
|
||||
conn.send(&SyncMessage::Ack { revision: rev }).await.unwrap();
|
||||
conn.send(&SyncMessage::Ack { revision: rev })
|
||||
.await
|
||||
.unwrap();
|
||||
}
|
||||
|
||||
SyncMessage::SyncComplete { .. } => {
|
||||
@@ -125,7 +134,9 @@ async fn run_quic_push(src: OnionFile, mut dst: OnionFile) -> (u64, OnionFile) {
|
||||
});
|
||||
|
||||
// ── Client logic ─────────────────────────────────────────────────────────
|
||||
let client = quic_connect(server_addr, "localhost", cli_cfg).await.unwrap();
|
||||
let client = quic_connect(server_addr, "localhost", cli_cfg)
|
||||
.await
|
||||
.unwrap();
|
||||
|
||||
client
|
||||
.send(&SyncMessage::ManifestRequest {
|
||||
@@ -152,7 +163,10 @@ async fn run_quic_push(src: OnionFile, mut dst: OnionFile) -> (u64, OnionFile) {
|
||||
|
||||
for packet in packets {
|
||||
let rev = packet.revision;
|
||||
client.send(&SyncMessage::LayerPacket { packet }).await.unwrap();
|
||||
client
|
||||
.send(&SyncMessage::LayerPacket { packet })
|
||||
.await
|
||||
.unwrap();
|
||||
match client.recv().await.unwrap() {
|
||||
SyncMessage::Ack { revision } => assert_eq!(revision, rev),
|
||||
other => panic!("client: expected Ack, got {other:?}"),
|
||||
@@ -228,7 +242,11 @@ async fn quic_revision_hashes_match_after_sync() {
|
||||
|
||||
assert_eq!(src_revisions.len(), dst_revisions.len());
|
||||
for (s, d) in src_revisions.iter().zip(dst_revisions.iter()) {
|
||||
assert_eq!(s.blake3_hex, d.blake3_hex, "rev {} hash mismatch", s.revision);
|
||||
assert_eq!(
|
||||
s.blake3_hex, d.blake3_hex,
|
||||
"rev {} hash mismatch",
|
||||
s.revision
|
||||
);
|
||||
assert_eq!(s.annotation, d.annotation);
|
||||
}
|
||||
}
|
||||
@@ -269,9 +287,11 @@ async fn run_quic_pull(src: OnionFile, mut dst: OnionFile) -> (u64, OnionFile) {
|
||||
};
|
||||
|
||||
let srv_manifest = ClawSyncManifest::from_onion("srv", &src, H5_BASE);
|
||||
conn.send(&SyncMessage::ManifestResponse { manifest: srv_manifest })
|
||||
.await
|
||||
.unwrap();
|
||||
conn.send(&SyncMessage::ManifestResponse {
|
||||
manifest: srv_manifest,
|
||||
})
|
||||
.await
|
||||
.unwrap();
|
||||
|
||||
if src.revision_count() > client_rev_count {
|
||||
let remote_head = if client_rev_count == 0 {
|
||||
@@ -284,7 +304,9 @@ async fn run_quic_pull(src: OnionFile, mut dst: OnionFile) -> (u64, OnionFile) {
|
||||
let mut bytes_sent = 0u64;
|
||||
for packet in packets {
|
||||
bytes_sent += packet.page_data_size() as u64;
|
||||
conn.send(&SyncMessage::LayerPacket { packet }).await.unwrap();
|
||||
conn.send(&SyncMessage::LayerPacket { packet })
|
||||
.await
|
||||
.unwrap();
|
||||
match conn.recv().await.unwrap() {
|
||||
SyncMessage::Ack { .. } => {}
|
||||
other => panic!("server: expected Ack, got {other:?}"),
|
||||
@@ -310,7 +332,9 @@ async fn run_quic_pull(src: OnionFile, mut dst: OnionFile) -> (u64, OnionFile) {
|
||||
});
|
||||
|
||||
// ── Client logic ─────────────────────────────────────────────────────────
|
||||
let client = quic_connect(server_addr, "localhost", cli_cfg).await.unwrap();
|
||||
let client = quic_connect(server_addr, "localhost", cli_cfg)
|
||||
.await
|
||||
.unwrap();
|
||||
let local_rev_count = dst.revision_count();
|
||||
|
||||
client
|
||||
@@ -344,10 +368,16 @@ async fn run_quic_pull(src: OnionFile, mut dst: OnionFile) -> (u64, OnionFile) {
|
||||
match client.recv().await.unwrap() {
|
||||
SyncMessage::LayerPacket { packet } => {
|
||||
let rev = packet.revision;
|
||||
client.send(&SyncMessage::Ack { revision: rev }).await.unwrap();
|
||||
client
|
||||
.send(&SyncMessage::Ack { revision: rev })
|
||||
.await
|
||||
.unwrap();
|
||||
packets.push(packet);
|
||||
}
|
||||
SyncMessage::SyncComplete { revisions_transferred, .. } => {
|
||||
SyncMessage::SyncComplete {
|
||||
revisions_transferred,
|
||||
..
|
||||
} => {
|
||||
merge_packets(&mut dst, packets, true).unwrap();
|
||||
server_handle.await.unwrap();
|
||||
return (revisions_transferred, dst);
|
||||
@@ -412,7 +442,11 @@ async fn quic_pull_revision_hashes_match() {
|
||||
|
||||
assert_eq!(srv_revisions.len(), cli_revisions.len());
|
||||
for (s, c) in srv_revisions.iter().zip(cli_revisions.iter()) {
|
||||
assert_eq!(s.blake3_hex, c.blake3_hex, "rev {} hash mismatch", s.revision);
|
||||
assert_eq!(
|
||||
s.blake3_hex, c.blake3_hex,
|
||||
"rev {} hash mismatch",
|
||||
s.revision
|
||||
);
|
||||
assert_eq!(s.annotation, c.annotation);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -18,11 +18,7 @@
|
||||
use std::net::{IpAddr, Ipv4Addr, SocketAddr};
|
||||
|
||||
use clawhdf5_onion::writer::OnionFile;
|
||||
use clawsync_onion::{
|
||||
differ::diff_revisions,
|
||||
manifest::ClawSyncManifest,
|
||||
merger::merge_packets,
|
||||
};
|
||||
use clawsync_onion::{differ::diff_revisions, manifest::ClawSyncManifest, merger::merge_packets};
|
||||
use clawsync_transport::{
|
||||
protocol::SyncMessage,
|
||||
tcp::{TcpConnection, TcpServer},
|
||||
@@ -45,9 +41,7 @@ fn make_onion(n: u8) -> (NamedTempFile, OnionFile) {
|
||||
for i in 0..n {
|
||||
let mut s = onion.begin_session(None).unwrap();
|
||||
s.record_page(0, &vec![i; 4096]);
|
||||
onion
|
||||
.commit_session(s, Some(&format!("rev {i}")))
|
||||
.unwrap();
|
||||
onion.commit_session(s, Some(&format!("rev {i}"))).unwrap();
|
||||
}
|
||||
(tmp, onion)
|
||||
}
|
||||
@@ -57,10 +51,7 @@ fn make_onion(n: u8) -> (NamedTempFile, OnionFile) {
|
||||
// number of LayerPackets actually transferred.
|
||||
// ─────────────────────────────────────────────────────────────────────────────
|
||||
|
||||
async fn run_push(
|
||||
src: OnionFile,
|
||||
mut dst: OnionFile,
|
||||
) -> (u64, OnionFile) {
|
||||
async fn run_push(src: OnionFile, mut dst: OnionFile) -> (u64, OnionFile) {
|
||||
// Bind the server; the OS picks a free port.
|
||||
let server = TcpServer::bind(localhost_any()).await.unwrap();
|
||||
let server_addr = server.local_addr;
|
||||
@@ -79,8 +70,7 @@ async fn run_push(
|
||||
match msg {
|
||||
SyncMessage::ManifestRequest { head_revision, .. } => {
|
||||
// Build our local manifest and send it back.
|
||||
let dst_manifest =
|
||||
ClawSyncManifest::from_onion("dst", &dst, H5_BASE);
|
||||
let dst_manifest = ClawSyncManifest::from_onion("dst", &dst, H5_BASE);
|
||||
conn.send(&SyncMessage::ManifestResponse {
|
||||
manifest: dst_manifest,
|
||||
})
|
||||
@@ -163,7 +153,10 @@ async fn run_push(
|
||||
.unwrap();
|
||||
|
||||
let (server_received, dst_final) = server_handle.await.unwrap();
|
||||
assert_eq!(server_received, total_sent, "server count must match client send count");
|
||||
assert_eq!(
|
||||
server_received, total_sent,
|
||||
"server count must match client send count"
|
||||
);
|
||||
|
||||
(total_sent, dst_final)
|
||||
}
|
||||
@@ -287,7 +280,7 @@ async fn large_push_correct_packet_count() {
|
||||
// ─────────────────────────────────────────────────────────────────────────────
|
||||
|
||||
async fn run_pull(
|
||||
src: OnionFile, // server-side onion (richer)
|
||||
src: OnionFile, // server-side onion (richer)
|
||||
mut dst: OnionFile, // client-side onion (missing revisions)
|
||||
) -> (u64, OnionFile) {
|
||||
let server = TcpServer::bind(localhost_any()).await.unwrap();
|
||||
@@ -305,9 +298,11 @@ async fn run_pull(
|
||||
|
||||
// 2. Send back the server manifest.
|
||||
let srv_manifest = ClawSyncManifest::from_onion("srv", &src, H5_BASE);
|
||||
conn.send(&SyncMessage::ManifestResponse { manifest: srv_manifest })
|
||||
.await
|
||||
.unwrap();
|
||||
conn.send(&SyncMessage::ManifestResponse {
|
||||
manifest: srv_manifest,
|
||||
})
|
||||
.await
|
||||
.unwrap();
|
||||
|
||||
// 3. Server has more revisions — push the delta to the client.
|
||||
if src.revision_count() > client_rev_count {
|
||||
@@ -321,7 +316,9 @@ async fn run_pull(
|
||||
let mut bytes_sent = 0u64;
|
||||
for packet in packets {
|
||||
bytes_sent += packet.page_data_size() as u64;
|
||||
conn.send(&SyncMessage::LayerPacket { packet }).await.unwrap();
|
||||
conn.send(&SyncMessage::LayerPacket { packet })
|
||||
.await
|
||||
.unwrap();
|
||||
match conn.recv().await.unwrap() {
|
||||
SyncMessage::Ack { .. } => {}
|
||||
other => panic!("server: expected Ack, got {other:?}"),
|
||||
@@ -381,10 +378,16 @@ async fn run_pull(
|
||||
match client.recv().await.unwrap() {
|
||||
SyncMessage::LayerPacket { packet } => {
|
||||
let rev = packet.revision;
|
||||
client.send(&SyncMessage::Ack { revision: rev }).await.unwrap();
|
||||
client
|
||||
.send(&SyncMessage::Ack { revision: rev })
|
||||
.await
|
||||
.unwrap();
|
||||
packets.push(packet);
|
||||
}
|
||||
SyncMessage::SyncComplete { revisions_transferred, .. } => {
|
||||
SyncMessage::SyncComplete {
|
||||
revisions_transferred,
|
||||
..
|
||||
} => {
|
||||
merge_packets(&mut dst, packets, true).unwrap();
|
||||
server_handle.await.unwrap();
|
||||
return (revisions_transferred, dst);
|
||||
@@ -449,7 +452,11 @@ async fn pull_revision_hashes_match() {
|
||||
|
||||
assert_eq!(srv_revisions.len(), cli_revisions.len());
|
||||
for (s, c) in srv_revisions.iter().zip(cli_revisions.iter()) {
|
||||
assert_eq!(s.blake3_hex, c.blake3_hex, "rev {} hash mismatch", s.revision);
|
||||
assert_eq!(
|
||||
s.blake3_hex, c.blake3_hex,
|
||||
"rev {} hash mismatch",
|
||||
s.revision
|
||||
);
|
||||
assert_eq!(s.annotation, c.annotation);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user