Browse Source

Use `serde_bytes` to serialize `Vec<u8>`

Seializing Vec<u8> by default iterate over each element instead of copying
the byte array.

See: https://github.com/rust-lang/rust/issues/31844
tags/v0.2.5-alpha
haixuanTao 2 years ago
parent
commit
504910c350
3 changed files with 39 additions and 27 deletions
  1. +37
    -27
      Cargo.lock
  2. +1
    -0
      libraries/core/Cargo.toml
  3. +1
    -0
      libraries/core/src/daemon_messages.rs

+ 37
- 27
Cargo.lock View File

@@ -510,7 +510,7 @@ checksum = "16e62a023e7c117e27523144c5d2459f4397fcc3cab0085af8e2224f643a0193"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.22",
"syn 2.0.28",
]

[[package]]
@@ -527,7 +527,7 @@ checksum = "b9ccdd8f2a161be9bd5c023df56f1b2a0bd1d83872ae53b71a84a12c9bf6e842"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.22",
"syn 2.0.28",
]

[[package]]
@@ -918,7 +918,7 @@ dependencies = [
"heck 0.4.1",
"proc-macro2",
"quote",
"syn 2.0.22",
"syn 2.0.28",
]

[[package]]
@@ -1228,7 +1228,7 @@ dependencies = [
"proc-macro2",
"quote",
"scratch",
"syn 2.0.22",
"syn 2.0.28",
]

[[package]]
@@ -1245,7 +1245,7 @@ checksum = "a26acccf6f445af85ea056362561a24ef56cdc15fcc685f03aec50b9c702cb6d"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.22",
"syn 2.0.28",
]

[[package]]
@@ -1393,6 +1393,7 @@ dependencies = [
"once_cell",
"serde",
"serde-with-expand-env",
"serde_bytes",
"serde_yaml 0.9.22",
"tokio",
"tracing",
@@ -1791,7 +1792,7 @@ checksum = "5e9a1f9f7d83e59740248a6e14ecf93929ade55027844dfcea78beafccc15745"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.22",
"syn 2.0.28",
]

[[package]]
@@ -2067,7 +2068,7 @@ checksum = "89ca545a94061b6365f2c7355b4b32bd20df3ff95f02da9329b34ccc3bd6ee72"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.22",
"syn 2.0.28",
]

[[package]]
@@ -2131,7 +2132,7 @@ checksum = "e77ac7b51b8e6313251737fcef4b1c01a2ea102bde68415b62c0ee9268fec357"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.22",
"syn 2.0.28",
]

[[package]]
@@ -3300,9 +3301,9 @@ dependencies = [

[[package]]
name = "num"
version = "0.4.0"
version = "0.4.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "43db66d1170d347f9a065114077f7dccb00c1b9478c89384490a3425279a4606"
checksum = "b05180d69e3da0e530ba2a1dae5110317e49e3b7f3d41be227dc5f92e49ee7af"
dependencies = [
"num-bigint",
"num-complex",
@@ -3716,7 +3717,7 @@ dependencies = [
"pest_meta",
"proc-macro2",
"quote",
"syn 2.0.22",
"syn 2.0.28",
]

[[package]]
@@ -3757,7 +3758,7 @@ checksum = "39407670928234ebc5e6e580247dd567ad73a3578460c5990f9503df207e8f07"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.22",
"syn 2.0.28",
]

[[package]]
@@ -4689,9 +4690,9 @@ checksum = "bebd363326d05ec3e2f532ab7660680f3b02130d780c299bca73469d521bc0ed"

[[package]]
name = "serde"
version = "1.0.164"
version = "1.0.183"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "9e8c8cf938e98f769bc164923b06dce91cea1751522f46f8466461af04c9027d"
checksum = "32ac8da02677876d532745a130fc9d8e6edfa81a269b107c5b00829b91d8eb3c"
dependencies = [
"serde_derive",
]
@@ -4715,15 +4716,24 @@ dependencies = [
"shellexpand 2.1.2",
]

[[package]]
name = "serde_bytes"
version = "0.11.12"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ab33ec92f677585af6d88c65593ae2375adde54efdbf16d597f2cbc7a6d368ff"
dependencies = [
"serde",
]

[[package]]
name = "serde_derive"
version = "1.0.164"
version = "1.0.183"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d9735b638ccc51c28bf6914d90a2e9725b377144fc612c49a611fddd1b631d68"
checksum = "aafe972d60b0b9bee71a91b92fee2d4fb3c9d7e8f6b179aa99f27203d99a4816"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.22",
"syn 2.0.28",
]

[[package]]
@@ -4745,7 +4755,7 @@ checksum = "bcec881020c684085e55a25f7fd888954d56609ef363479dc5a1305eb0d40cab"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.22",
"syn 2.0.28",
]

[[package]]
@@ -4976,7 +4986,7 @@ checksum = "7d395866cb6778625150f77a430cc0af764ce0300f6a3d3413477785fa34b6c7"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.22",
"syn 2.0.28",
]

[[package]]
@@ -5053,9 +5063,9 @@ dependencies = [

[[package]]
name = "syn"
version = "2.0.22"
version = "2.0.28"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2efbeae7acf4eabd6bcdcbd11c92f45231ddda7539edc7806bd1a04a03b24616"
checksum = "04361975b3f5e348b2189d8dc55bc942f278b2d482a6a0365de5bdd62d351567"
dependencies = [
"proc-macro2",
"quote",
@@ -5178,7 +5188,7 @@ checksum = "f9456a42c5b0d803c8cd86e73dd7cc9edd429499f37a3550d286d5e86720569f"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.22",
"syn 2.0.28",
]

[[package]]
@@ -5313,7 +5323,7 @@ checksum = "630bdcf245f78637c13ec01ffae6187cca34625e8c63150d424b59e55af2675e"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.22",
"syn 2.0.28",
]

[[package]]
@@ -5451,7 +5461,7 @@ checksum = "5f4f31f56159e98206da9efd823404b79b6ef3143b4a7ab76e67b1751b25a4ab"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.22",
"syn 2.0.28",
]

[[package]]
@@ -5664,7 +5674,7 @@ checksum = "8614dda80b9075fbca36bc31b58d1447715b1236af98dee21db521c47a0cc2c0"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.22",
"syn 2.0.28",
]

[[package]]
@@ -5779,7 +5789,7 @@ dependencies = [
"once_cell",
"proc-macro2",
"quote",
"syn 2.0.22",
"syn 2.0.28",
"wasm-bindgen-shared",
]

@@ -5813,7 +5823,7 @@ checksum = "54681b18a46765f095758388f2d0cf16eb8d4169b639ab575a8f5693af210c7b"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.22",
"syn 2.0.28",
"wasm-bindgen-backend",
"wasm-bindgen-shared",
]


+ 1
- 0
libraries/core/Cargo.toml View File

@@ -12,6 +12,7 @@ license.workspace = true
eyre = "0.6.8"
serde = { version = "1.0.136", features = ["derive"] }
serde_yaml = "0.9.11"
serde_bytes = "0.11.12"
once_cell = "1.13.0"
which = "4.3.0"
uuid = { version = "1.2.1", features = ["serde"] }


+ 1
- 0
libraries/core/src/daemon_messages.rs View File

@@ -87,6 +87,7 @@ impl DaemonRequest {

#[derive(serde::Serialize, serde::Deserialize, Clone)]
pub enum Data {
#[serde(with = "serde_bytes")]
Vec(Vec<u8>),
SharedMemory {
shared_memory_id: String,


Loading…
Cancel
Save