diff --git a/.changes/updater-string-replace.md b/.changes/updater-string-replace.md new file mode 100644 index 00000000..1e682ef3 --- /dev/null +++ b/.changes/updater-string-replace.md @@ -0,0 +1,5 @@ +--- +"updater": "patch" +--- + +The plugin now correctly replaces `arch`, `current_version` and `target` again. diff --git a/plugins/updater/src/updater.rs b/plugins/updater/src/updater.rs index 385e1e87..99db57ac 100644 --- a/plugins/updater/src/updater.rs +++ b/plugins/updater/src/updater.rs @@ -258,9 +258,13 @@ impl Updater { // the URL will be generated dynamically let url: Url = url .to_string() - .replace("{{current_version}}", &self.current_version.to_string()) - .replace("{{target}}", &self.target) - .replace("{{arch}}", self.arch) + // url::Url automatically url-encodes the string + .replace( + "%7B%7Bcurrent_version%7D%7D", + &self.current_version.to_string(), + ) + .replace("%7B%7Btarget%7D%7D", &self.target) + .replace("%7B%7Barch%7D%7D", self.arch) .parse()?; let mut request = Client::new().get(url).headers(headers.clone());