Skip to content

Commit 9b1f8a6

Browse files
authored
chore: update Rust, fix clippy & build (#149)
* chore: update Rust, fix clippy & build * chore: regenerate descriptors.bin
1 parent 9e3ade3 commit 9b1f8a6

File tree

6 files changed

+15
-15
lines changed

6 files changed

+15
-15
lines changed

pbjson-build/src/generator/message.rs

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,7 @@ fn write_field_empty_predicate<W: Write>(
8989
| (FieldType::Scalar(ScalarType::Bytes), FieldModifier::UseDefault) => {
9090
write!(writer, "!self.{}.is_empty()", member.rust_field_name())
9191
}
92-
(_, FieldModifier::Optional) | (FieldType::Message(_), _) => {
92+
(_, FieldModifier::Optional) | (FieldType::Message, _) => {
9393
write!(writer, "self.{}.is_some()", member.rust_field_name())
9494
}
9595
(FieldType::Scalar(ScalarType::F64), FieldModifier::UseDefault)
@@ -877,7 +877,7 @@ fn write_deserialize_field<W: Write>(
877877
field.rust_type_name()
878878
)?;
879879
}
880-
FieldType::Message(_) => writeln!(
880+
FieldType::Message => writeln!(
881881
writer,
882882
"map_.next_value::<::std::option::Option<_>>()?.map({}::{})",
883883
resolver.rust_type(&one_of.path),
@@ -983,7 +983,7 @@ fn write_deserialize_field<W: Write>(
983983
}
984984
write!(writer, "{})", Indent(indent + 1))?;
985985
}
986-
FieldType::Message(_) => match field.field_modifier {
986+
FieldType::Message => match field.field_modifier {
987987
FieldModifier::Repeated => {
988988
// No explicit presence for repeated fields
989989
write!(writer, "Some(map_.next_value()?)")?;

pbjson-build/src/lib.rs

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -80,7 +80,7 @@
8080
)]
8181

8282
use prost_types::FileDescriptorProto;
83-
use std::io::{BufWriter, Error, ErrorKind, Result, Write};
83+
use std::io::{BufWriter, Error, Result, Write};
8484
use std::path::PathBuf;
8585

8686
use crate::descriptor::{Descriptor, Package};
@@ -205,9 +205,7 @@ impl Builder {
205205
pub fn build<S: AsRef<str>>(&mut self, prefixes: &[S]) -> Result<()> {
206206
let mut output: PathBuf = self.out_dir.clone().map(Ok).unwrap_or_else(|| {
207207
std::env::var_os("OUT_DIR")
208-
.ok_or_else(|| {
209-
Error::new(ErrorKind::Other, "OUT_DIR environment variable is not set")
210-
})
208+
.ok_or_else(|| Error::other("OUT_DIR environment variable is not set"))
211209
.map(Into::into)
212210
})?;
213211
output.push("FILENAME");

pbjson-build/src/message.rs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ impl ScalarType {
5252
pub enum FieldType {
5353
Scalar(ScalarType),
5454
Enum(TypePath),
55-
Message(TypePath),
55+
Message,
5656
Map(ScalarType, Box<FieldType>),
5757
}
5858

@@ -203,7 +203,7 @@ fn field_modifier(
203203
Label::Optional => match message.syntax {
204204
Syntax::Proto2 => FieldModifier::Optional,
205205
Syntax::Proto3 => match field_type {
206-
FieldType::Message(_) => FieldModifier::Optional,
206+
FieldType::Message => FieldModifier::Optional,
207207
_ => FieldModifier::UseDefault,
208208
},
209209
},
@@ -245,7 +245,7 @@ fn resolve_type(descriptors: &DescriptorSet, type_name: &str) -> FieldType {
245245

246246
match maybe_descriptor {
247247
Some((path, Descriptor::Enum(_))) => FieldType::Enum(path.clone()),
248-
Some((path, Descriptor::Message(descriptor))) => match descriptor.is_map() {
248+
Some((_path, Descriptor::Message(descriptor))) => match descriptor.is_map() {
249249
true => {
250250
assert_eq!(descriptor.fields.len(), 2, "expected map to have 2 fields");
251251
let key = &descriptor.fields[0];
@@ -263,7 +263,7 @@ fn resolve_type(descriptors: &DescriptorSet, type_name: &str) -> FieldType {
263263
}
264264
// Note: This may actually be a group but it is non-trivial to detect this,
265265
// they're deprecated, and pbjson doesn't need to be able to distinguish
266-
false => FieldType::Message(path.clone()),
266+
false => FieldType::Message,
267267
},
268268
None => panic!("failed to resolve type: {}", type_name),
269269
}

pbjson-types/descriptors.bin

2.84 KB
Binary file not shown.

pbjson/src/lib.rs

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -124,9 +124,11 @@ pub mod private {
124124
#[test]
125125
fn test_bytes() {
126126
for _ in 0..20 {
127-
let mut rng = thread_rng();
128-
let len = rng.gen_range(50..100);
129-
let raw: Vec<_> = std::iter::from_fn(|| Some(rng.gen())).take(len).collect();
127+
let mut rng = rand::rng();
128+
let len = rng.random_range(50..100);
129+
let raw: Vec<_> = std::iter::from_fn(|| Some(rng.random()))
130+
.take(len)
131+
.collect();
130132

131133
for config in [
132134
base64::engine::general_purpose::STANDARD,

rust-toolchain.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
[toolchain]
2-
channel = "1.74"
2+
channel = "1.91"
33
components = ["rustfmt", "clippy"]

0 commit comments

Comments
 (0)