diff options
| author | Linus Färnstrand <faern@faern.net> | 2023-01-31 11:48:29 +0100 |
|---|---|---|
| committer | Linus Färnstrand <linus@mullvad.net> | 2023-01-31 13:26:32 +0100 |
| commit | aac71a41a23c903b789563c082f09bfe5076e6da (patch) | |
| tree | 4a3a4daccc05cd1f1505bbea3d22e598ac36351a /android | |
| parent | 13a923ef85ea9aee2353e198a9c33ab21e814675 (diff) | |
| download | mullvadvpn-aac71a41a23c903b789563c082f09bfe5076e6da.tar.xz mullvadvpn-aac71a41a23c903b789563c082f09bfe5076e6da.zip | |
Replace serde-xml-rs with quick-xml in translations-converter
Diffstat (limited to 'android')
5 files changed, 13 insertions, 6 deletions
diff --git a/android/translations-converter/Cargo.toml b/android/translations-converter/Cargo.toml index 6e744a3c4f..9c0f96a6fa 100644 --- a/android/translations-converter/Cargo.toml +++ b/android/translations-converter/Cargo.toml @@ -12,4 +12,4 @@ htmlize = "0.5" lazy_static = "1" regex = "1" serde = { version = "1", features = ["derive"] } -serde-xml-rs = "0.4" +quick-xml = { version = "0.27.1", features = ["serialize"] } diff --git a/android/translations-converter/src/android/plurals.rs b/android/translations-converter/src/android/plurals.rs index df783765bd..7d88a19135 100644 --- a/android/translations-converter/src/android/plurals.rs +++ b/android/translations-converter/src/android/plurals.rs @@ -18,6 +18,7 @@ pub struct PluralResources { #[derive(Clone, Debug, Deserialize, Serialize)] pub struct PluralResource { /// The plural resource ID. + #[serde(rename = "@name")] pub name: String, /// The items of the plural resource, one for each quantity variant. @@ -31,6 +32,7 @@ pub struct PluralResource { #[derive(Clone, Debug, Deserialize, Serialize)] pub struct PluralVariant { /// The quantity for this variant to be used. + #[serde(rename = "@quantity")] pub quantity: PluralQuantity, /// The string value diff --git a/android/translations-converter/src/android/string_value.rs b/android/translations-converter/src/android/string_value.rs index 0cec2f49ea..26f43e7d40 100644 --- a/android/translations-converter/src/android/string_value.rs +++ b/android/translations-converter/src/android/string_value.rs @@ -197,7 +197,7 @@ mod tests { parameters %2$s %d %1$d</root>"#; let deserialized: Wrapper = - serde_xml_rs::from_str(serialized_input).expect("Mal-formed serialized input"); + quick_xml::de::from_str(serialized_input).expect("Mal-formed serialized input"); let expected = StringValue( r#"A multi-line string value with \"quotes\" and parameters %2$s %d %1$d"#.to_owned(), diff --git a/android/translations-converter/src/android/strings.rs b/android/translations-converter/src/android/strings.rs index 61a27e9793..4a75fa63af 100644 --- a/android/translations-converter/src/android/strings.rs +++ b/android/translations-converter/src/android/strings.rs @@ -18,9 +18,11 @@ pub struct StringResources { #[derive(Clone, Debug, Eq, Deserialize, PartialEq, Serialize)] pub struct StringResource { /// The string resource ID. + #[serde(rename = "@name")] pub name: String, /// If the string should be translated or not. + #[serde(rename = "@translatable")] #[serde(default = "default_translatable")] pub translatable: bool, @@ -143,7 +145,7 @@ mod tests { ]); let deserialized: StringResources = - serde_xml_rs::from_str(xml_input).expect("malformed XML in test input"); + quick_xml::de::from_str(xml_input).expect("malformed XML in test input"); assert_eq!(deserialized, expected); } @@ -182,7 +184,7 @@ mod tests { ]); let deserialized: StringResources = - serde_xml_rs::from_str(xml_input).expect("malformed XML in test input"); + quick_xml::de::from_str(xml_input).expect("malformed XML in test input"); assert_eq!(deserialized, expected); } diff --git a/android/translations-converter/src/main.rs b/android/translations-converter/src/main.rs index 6b63410a59..cf58adf0f3 100644 --- a/android/translations-converter/src/main.rs +++ b/android/translations-converter/src/main.rs @@ -39,6 +39,7 @@ use crate::normalize::Normalize; use std::{ collections::HashMap, fs::{self, File}, + io::BufReader, path::Path, }; @@ -48,7 +49,8 @@ fn main() { let strings_file = File::open(resources_dir.join("values/strings.xml")) .expect("Failed to open string resources file"); let string_resources: android::StringResources = - serde_xml_rs::from_reader(strings_file).expect("Failed to read string resources file"); + quick_xml::de::from_reader(BufReader::new(strings_file)) + .expect("Failed to read string resources file"); let known_strings: HashMap<_, _> = string_resources .into_iter() @@ -58,7 +60,8 @@ fn main() { let plurals_file = File::open(resources_dir.join("values/plurals.xml")) .expect("Failed to open plurals resources file"); let plural_resources: android::PluralResources = - serde_xml_rs::from_reader(plurals_file).expect("Failed to read plural resources file"); + quick_xml::de::from_reader(BufReader::new(plurals_file)) + .expect("Failed to read plural resources file"); let known_plurals: HashMap<_, _> = plural_resources .iter() |
