Skip to content

Commit 7a37c4a

Browse files
authored
Update bincode to 2.0 (#18396)
# Objective Update bincode ## Solution Fix compilation for #18352 by reading the [migration guide](https://github.com/bincode-org/bincode/blob/trunk/docs/migration_guide.md) Also fixes an unused import warning I got when running the tests for bevy_reflect.
1 parent 8481b63 commit 7a37c4a

File tree

5 files changed

+14
-15
lines changed

5 files changed

+14
-15
lines changed

crates/bevy_reflect/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -118,7 +118,7 @@ wgpu-types = { version = "24", features = [
118118
[dev-dependencies]
119119
ron = "0.8.0"
120120
rmp-serde = "1.1"
121-
bincode = "1.3"
121+
bincode = { version = "2.0", features = ["serde"] }
122122
serde_json = "1.0"
123123
serde = { version = "1", features = ["derive"] }
124124
static_assertions = "1.1.0"

crates/bevy_reflect/src/serde/de/mod.rs

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,6 @@ mod tests {
3030
vec,
3131
vec::Vec,
3232
};
33-
use bincode::Options;
3433
use core::{any::TypeId, f32::consts::PI, ops::RangeInclusive};
3534
use serde::{de::DeserializeSeed, Deserialize};
3635
use serde::{de::IgnoredAny, Deserializer};
@@ -470,10 +469,9 @@ mod tests {
470469

471470
let deserializer = ReflectDeserializer::new(&registry);
472471

473-
let dynamic_output = bincode::DefaultOptions::new()
474-
.with_fixint_encoding()
475-
.deserialize_seed(deserializer, &input)
476-
.unwrap();
472+
let config = bincode::config::standard().with_fixed_int_encoding();
473+
let (dynamic_output, _read_bytes) =
474+
bincode::serde::seed_decode_from_slice(deserializer, &input, config).unwrap();
477475

478476
let output = <MyStruct as FromReflect>::from_reflect(dynamic_output.as_ref()).unwrap();
479477
assert_eq!(expected, output);

crates/bevy_reflect/src/serde/ser/mod.rs

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,8 +24,9 @@ mod tests {
2424
serde::{ReflectSerializer, ReflectSerializerProcessor},
2525
PartialReflect, Reflect, ReflectSerialize, Struct, TypeRegistry,
2626
};
27+
#[cfg(feature = "functions")]
28+
use alloc::boxed::Box;
2729
use alloc::{
28-
boxed::Box,
2930
string::{String, ToString},
3031
vec,
3132
vec::Vec,
@@ -348,7 +349,8 @@ mod tests {
348349
let registry = get_registry();
349350

350351
let serializer = ReflectSerializer::new(&input, &registry);
351-
let bytes = bincode::serialize(&serializer).unwrap();
352+
let config = bincode::config::standard().with_fixed_int_encoding();
353+
let bytes = bincode::serde::encode_to_vec(&serializer, config).unwrap();
352354

353355
let expected: Vec<u8> = vec![
354356
1, 0, 0, 0, 0, 0, 0, 0, 41, 0, 0, 0, 0, 0, 0, 0, 98, 101, 118, 121, 95, 114, 101, 102,

crates/bevy_scene/Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -43,7 +43,7 @@ uuid = { version = "1.13.1", default-features = false, features = ["js"] }
4343

4444
[dev-dependencies]
4545
postcard = { version = "1.0", features = ["alloc"] }
46-
bincode = "1.3"
46+
bincode = { version = "2.0", features = ["serde"] }
4747
rmp-serde = "1.1"
4848

4949
[lints]

crates/bevy_scene/src/serde.rs

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -522,7 +522,6 @@ mod tests {
522522
world::FromWorld,
523523
};
524524
use bevy_reflect::{Reflect, ReflectDeserialize, ReflectSerialize};
525-
use bincode::Options;
526525
use serde::{de::DeserializeSeed, Deserialize, Serialize};
527526
use std::io::BufReader;
528527

@@ -894,8 +893,9 @@ mod tests {
894893

895894
let scene = DynamicScene::from_world(&world);
896895

896+
let config = bincode::config::standard().with_fixed_int_encoding();
897897
let scene_serializer = SceneSerializer::new(&scene, registry);
898-
let serialized_scene = bincode::serialize(&scene_serializer).unwrap();
898+
let serialized_scene = bincode::serde::encode_to_vec(&scene_serializer, config).unwrap();
899899

900900
assert_eq!(
901901
vec![
@@ -913,10 +913,9 @@ mod tests {
913913
type_registry: registry,
914914
};
915915

916-
let deserialized_scene = bincode::DefaultOptions::new()
917-
.with_fixint_encoding()
918-
.deserialize_seed(scene_deserializer, &serialized_scene)
919-
.unwrap();
916+
let (deserialized_scene, _read_bytes) =
917+
bincode::serde::seed_decode_from_slice(scene_deserializer, &serialized_scene, config)
918+
.unwrap();
920919

921920
assert_eq!(1, deserialized_scene.entities.len());
922921
assert_scene_eq(&scene, &deserialized_scene);

0 commit comments

Comments
 (0)