diff --git a/Cargo.lock b/Cargo.lock index 9aa1471e030fe..17b23eb5b65b2 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1916,7 +1916,16 @@ version = "4.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f51c5d4ddabd36886dd3e1438cb358cdcb0d7c499cb99cb4ac2e38e18b5cb210" dependencies = [ - "dirs-sys", + "dirs-sys 0.3.7", +] + +[[package]] +name = "directories" +version = "5.0.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "9a49173b84e034382284f27f1af4dcbbd231ffa358c0fe316541a7337f376a35" +dependencies = [ + "dirs-sys 0.4.1", ] [[package]] @@ -1925,7 +1934,7 @@ version = "4.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ca3aa72a6f96ea37bbc5aa912f6788242832f75369bdfdadcb0e38423f100059" dependencies = [ - "dirs-sys", + "dirs-sys 0.3.7", ] [[package]] @@ -1949,6 +1958,18 @@ dependencies = [ "winapi 0.3.9", ] +[[package]] +name = "dirs-sys" +version = "0.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "520f05a5cbd335fae5a99ff7a6ab8627577660ee5cfd6a94a6a929b52ff0321c" +dependencies = [ + "libc", + "option-ext", + "redox_users", + "windows-sys 0.48.0", +] + [[package]] name = "dirs-sys-next" version = "0.1.2" @@ -4429,6 +4450,12 @@ dependencies = [ "vcpkg", ] +[[package]] +name = "option-ext" +version = "0.2.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "04744f49eae99ab78e0d5c0b603ab218f515ea8cfe5a456d7629ad883a3b6e7d" + [[package]] name = "ordered-multimap" version = "0.4.3" @@ -9077,7 +9104,7 @@ name = "turborepo-ffi" version = "0.1.0" dependencies = [ "cbindgen", - "directories", + "directories 4.0.1", "prost", "prost-build", "thiserror", @@ -9117,7 +9144,7 @@ dependencies = [ "const_format", "ctrlc", "dialoguer", - "directories", + "directories 4.0.1", "dirs-next", "dunce", "futures", @@ -9371,10 +9398,11 @@ checksum = "a156c684c91ea7d62626509bce3cb4e1d9ed5c4d978f7b4352658f96a4c26b4a" [[package]] name = "update-informer" -version = "0.6.0" -source = "git+https://github.com/mgrachev/update-informer?rev=b7a415ac2276e857167b9fe8282044f93155878a#b7a415ac2276e857167b9fe8282044f93155878a" +version = "1.0.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "19d952f24d9cd8b7564d22c7b2cde3429c48b50c6f4e72b07b382ae4ee5f21b3" dependencies = [ - "directories", + "directories 5.0.1", "semver 1.0.17", "serde", "serde_json", diff --git a/crates/turbo-updater/Cargo.toml b/crates/turbo-updater/Cargo.toml index 80b0cdd146b92..0e32bda5acc61 100644 --- a/crates/turbo-updater/Cargo.toml +++ b/crates/turbo-updater/Cargo.toml @@ -19,4 +19,4 @@ reqwest = { workspace = true, features = ["json", "blocking"] } semver = { workspace = true } serde = { workspace = true, features = ["derive"] } thiserror = { workspace = true } -update-informer = { git = "https://github.com/mgrachev/update-informer", rev = "b7a415ac2276e857167b9fe8282044f93155878a", default_features = false } +update-informer = { version = "1.0", default_features = false } diff --git a/crates/turbo-updater/src/lib.rs b/crates/turbo-updater/src/lib.rs index e82e34d1a3495..0a1878ee5739a 100644 --- a/crates/turbo-updater/src/lib.rs +++ b/crates/turbo-updater/src/lib.rs @@ -5,7 +5,7 @@ use semver::Version as SemVerVersion; use serde::Deserialize; use thiserror::Error as ThisError; use update_informer::{ - http_client::{HttpClient, SendRequest}, + http_client::{GenericHttpClient, HeaderMap, HttpClient}, Check, Package, Registry, Result as UpdateResult, }; @@ -51,8 +51,8 @@ struct NPMRegistry; impl Registry for NPMRegistry { const NAME: &'static str = "npm-registry"; - fn get_latest_version( - http: HttpClient, + fn get_latest_version( + http: GenericHttpClient, pkg: &Package, ) -> UpdateResult> { // determine tag to request @@ -76,19 +76,19 @@ impl Registry for NPMRegistry { // Vendored here until update-informer allows us to control tls implementation pub struct ReqwestHttpClient; -impl SendRequest for ReqwestHttpClient { +impl HttpClient for ReqwestHttpClient { fn get( url: &str, timeout: Duration, - headers: Option<(&str, &str)>, + headers: HeaderMap, ) -> Result> { let mut req = reqwest::blocking::Client::builder() .timeout(timeout) .build()? .get(url); - if let Some((key, val)) = headers { - req = req.header(key, val) + for (key, value) in headers { + req = req.header(key, value); } let json = req.send()?.json()?;