summaryrefslogtreecommitdiffhomepage
path: root/android
diff options
context:
space:
mode:
authorLinus Färnstrand <faern@faern.net>2023-01-31 11:48:29 +0100
committerLinus Färnstrand <linus@mullvad.net>2023-01-31 13:26:32 +0100
commitaac71a41a23c903b789563c082f09bfe5076e6da (patch)
tree4a3a4daccc05cd1f1505bbea3d22e598ac36351a /android
parent13a923ef85ea9aee2353e198a9c33ab21e814675 (diff)
downloadmullvadvpn-aac71a41a23c903b789563c082f09bfe5076e6da.tar.xz
mullvadvpn-aac71a41a23c903b789563c082f09bfe5076e6da.zip
Replace serde-xml-rs with quick-xml in translations-converter
Diffstat (limited to 'android')
-rw-r--r--android/translations-converter/Cargo.toml2
-rw-r--r--android/translations-converter/src/android/plurals.rs2
-rw-r--r--android/translations-converter/src/android/string_value.rs2
-rw-r--r--android/translations-converter/src/android/strings.rs6
-rw-r--r--android/translations-converter/src/main.rs7
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()