From 60026e8fe0ee9e29134cc96fb5630faffc9611e9 Mon Sep 17 00:00:00 2001 From: "Mayeul@Zama" Date: Fri, 4 Nov 2022 10:36:13 +0100 Subject: [PATCH] dep(optimizer): replace rmp-serde by bincode --- concrete-optimizer/Cargo.toml | 2 +- concrete-optimizer/src/utils/cache/persistent.rs | 15 +++++++-------- 2 files changed, 8 insertions(+), 9 deletions(-) diff --git a/concrete-optimizer/Cargo.toml b/concrete-optimizer/Cargo.toml index 7fefbf731..f2cc70e22 100644 --- a/concrete-optimizer/Cargo.toml +++ b/concrete-optimizer/Cargo.toml @@ -13,7 +13,7 @@ derive_more = "0.99.17" file-lock = "2.1.6" static_init = "1.0.3" serde = { version = "1.0", features = ["derive"] } -rmp-serde = "1.1.0" +bincode = "1.3" puruspe = "0.2.0" [dev-dependencies] diff --git a/concrete-optimizer/src/utils/cache/persistent.rs b/concrete-optimizer/src/utils/cache/persistent.rs index 4718f47cc..ee2276c46 100644 --- a/concrete-optimizer/src/utils/cache/persistent.rs +++ b/concrete-optimizer/src/utils/cache/persistent.rs @@ -6,8 +6,6 @@ use std::sync::{Arc, RwLock, RwLockWriteGuard}; use std::time::Instant; use file_lock::{FileLock, FileOptions}; -use rmp_serde::{Deserializer, Serializer}; -use serde::Serialize; use super::ephemeral; use super::ephemeral::{EphemeralCache, KeyValueFunction}; @@ -202,8 +200,9 @@ where } }; let mut buf = BufReader::new(&filelock.file); - let mut deserializer = Deserializer::new(buf.borrow_mut()); - let disk_version = ::deserialize(&mut deserializer); + + let disk_version: Result = bincode::deserialize_from(buf.borrow_mut()); + match disk_version { Ok(disk_version) => { if disk_version != *version { @@ -221,7 +220,7 @@ where return None; } } - match ::deserialize(&mut deserializer) { + match bincode::deserialize_from(buf.borrow_mut()) { Ok(content) => Some(content), Err(error) => { println!( @@ -257,9 +256,9 @@ where } let file = &mut filelock.file; let mut buf = BufWriter::new(file); - let mut serializer = Serializer::new(&mut buf); - self.version.serialize(&mut serializer).unwrap(); - content.serialize(&mut serializer).unwrap(); + + bincode::serialize_into(&mut buf, &self.version).unwrap(); + bincode::serialize_into(&mut buf, content).unwrap(); } pub fn clear_file(path: &str) {