Bump update-informer to v1.3.0 (#16157)

# Description

This PR bumps `update-informer` to 1.3.0 and gets rid of
`NativeTlsHttpClient`.
This commit is contained in:
Grachev Mikhail
2025-07-11 20:11:12 +03:00
committed by GitHub
parent 172a0c44bd
commit f48656e18b
3 changed files with 133 additions and 36 deletions

140
Cargo.lock generated
View File

@ -677,6 +677,12 @@ dependencies = [
"vsimd",
]
[[package]]
name = "base64ct"
version = "1.8.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "55248b47b0caf0546f7988906588779981c43bb1bc9d0c44087278f80cdb44ba"
[[package]]
name = "bincode"
version = "1.3.3"
@ -1200,6 +1206,35 @@ version = "0.3.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "7c74b8349d32d297c9134b8c88677813a227df8f779daa29bfc29c183fe3dca6"
[[package]]
name = "cookie"
version = "0.18.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4ddef33a339a91ea89fb53151bd0a4689cfce27055c291dfa69945475d22c747"
dependencies = [
"percent-encoding",
"time",
"version_check",
]
[[package]]
name = "cookie_store"
version = "0.21.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2eac901828f88a5241ee0600950ab981148a18f2f756900ffba1b125ca6a3ef9"
dependencies = [
"cookie",
"document-features",
"idna",
"indexmap",
"log",
"serde",
"serde_derive",
"serde_json",
"time",
"url",
]
[[package]]
name = "core-foundation"
version = "0.9.4"
@ -1469,6 +1504,16 @@ version = "2.9.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2a2330da5de22e8a3cb63252ce2abb30116bf5265e89c0e01bc17015ce30a476"
[[package]]
name = "der"
version = "0.7.10"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e7c1832837b905bbfb5101e07cc24c8deddf52f93225eee6ead5f4d63d53ddcb"
dependencies = [
"pem-rfc7468",
"zeroize",
]
[[package]]
name = "deranged"
version = "0.3.11"
@ -1617,6 +1662,15 @@ version = "1.0.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "aac81fa3e28d21450aa4d2ac065992ba96a1d7303efbce51a95f4fd175b67562"
[[package]]
name = "document-features"
version = "0.2.11"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "95249b50c6c185bee49034bcb378a49dc2b5dff0be90ff6616d31d64febab05d"
dependencies = [
"litrs",
]
[[package]]
name = "downcast-rs"
version = "1.2.1"
@ -1775,13 +1829,13 @@ checksum = "a5d9305ccc6942a704f4335694ecd3de2ea531b114ac2d51f5f843750787a92f"
[[package]]
name = "etcetera"
version = "0.8.0"
version = "0.10.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "136d1b5283a1ab77bd9257427ffd09d8667ced0570b6f938942bc7568ed5b943"
checksum = "26c7b13d0780cb82722fd59f6f57f925e143427e4a75313a6c77243bf5326ae6"
dependencies = [
"cfg-if",
"home",
"windows-sys 0.48.0",
"windows-sys 0.59.0",
]
[[package]]
@ -3003,7 +3057,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "fc2f4eb4bc735547cfed7c0a4922cbd04a4655978c09b54f1f7b228750664c34"
dependencies = [
"cfg-if",
"windows-targets 0.48.5",
"windows-targets 0.52.6",
]
[[package]]
@ -3107,6 +3161,12 @@ version = "0.7.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "4ee93343901ab17bd981295f2cf0026d4ad018c7c31ba84549a4ddbb47a45104"
[[package]]
name = "litrs"
version = "0.4.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "b4ce301924b7887e9d637144fdade93f9dfff9b60981d4ac161db09720d39aa5"
[[package]]
name = "lock_api"
version = "0.4.12"
@ -3789,7 +3849,7 @@ dependencies = [
"unicode-segmentation",
"unicode-width 0.2.0",
"update-informer",
"ureq",
"ureq 2.12.1",
"url",
"uu_cp",
"uu_mkdir",
@ -4745,6 +4805,15 @@ version = "0.2.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "df94ce210e5bc13cb6651479fa48d14f601d9858cfe0467f43ae157023b938d3"
[[package]]
name = "pem-rfc7468"
version = "0.7.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "88b39c9bfcfc231068454382784bb460aae594343fb030d46e9f50a645418412"
dependencies = [
"base64ct",
]
[[package]]
name = "percent-encoding"
version = "2.3.1"
@ -7679,16 +7748,16 @@ checksum = "8ecb6da28b8a351d773b68d5825ac39017e680750f980f3a1a85cd8dd28a47c1"
[[package]]
name = "update-informer"
version = "1.2.0"
version = "1.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "53813bf5d5f0d8430794f8cc48e99521cc9e298066958d16383ccb8b39d182a7"
checksum = "67b27dcf766dc6ad64c2085201626e1a7955dc1983532bfc8406d552903ace2a"
dependencies = [
"etcetera",
"reqwest",
"semver",
"serde",
"serde_json",
"ureq",
"ureq 3.0.3",
]
[[package]]
@ -7712,6 +7781,43 @@ dependencies = [
"webpki-roots 0.26.8",
]
[[package]]
name = "ureq"
version = "3.0.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "217751151c53226090391713e533d9a5e904ba2570dabaaace29032687589c3e"
dependencies = [
"base64 0.22.1",
"cc",
"cookie_store",
"der",
"flate2",
"log",
"native-tls",
"percent-encoding",
"rustls 0.23.20",
"rustls-pemfile 2.2.0",
"rustls-pki-types",
"serde",
"serde_json",
"ureq-proto",
"utf-8",
"webpki-root-certs 0.26.11",
"webpki-roots 0.26.8",
]
[[package]]
name = "ureq-proto"
version = "0.3.5"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ae239d0a3341aebc94259414d1dc67cfce87d41cbebc816772c91b77902fafa4"
dependencies = [
"base64 0.22.1",
"http 1.2.0",
"httparse",
"log",
]
[[package]]
name = "url"
version = "2.5.4"
@ -8192,6 +8298,24 @@ dependencies = [
"url",
]
[[package]]
name = "webpki-root-certs"
version = "0.26.11"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "75c7f0ef91146ebfb530314f5f1d24528d7f0767efbfd31dce919275413e393e"
dependencies = [
"webpki-root-certs 1.0.1",
]
[[package]]
name = "webpki-root-certs"
version = "1.0.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "86138b15b2b7d561bc4469e77027b8dd005a43dc502e9031d1f5afc8ce1f280e"
dependencies = [
"rustls-pki-types",
]
[[package]]
name = "webpki-roots"
version = "0.26.8"

View File

@ -168,7 +168,7 @@ thiserror = "2.0.12"
titlecase = "3.6"
toml = "0.8"
trash = "5.2"
update-informer = { version = "1.2.0", default-features = false, features = ["github", "ureq"] }
update-informer = { version = "1.3.0", default-features = false, features = ["github", "ureq"] }
umask = "2.1"
unicode-segmentation = "1.12"
unicode-width = "0.2"

View File

@ -6,8 +6,6 @@ use update_informer::{
registry,
};
use super::tls::tls;
#[derive(Clone)]
pub struct VersionCheck;
@ -85,30 +83,6 @@ impl Registry for NuShellNightly {
}
}
struct NativeTlsHttpClient;
impl HttpClient for NativeTlsHttpClient {
fn get<T: serde::de::DeserializeOwned>(
url: &str,
timeout: std::time::Duration,
headers: update_informer::http_client::HeaderMap,
) -> update_informer::Result<T> {
let agent = ureq::AgentBuilder::new()
.tls_connector(std::sync::Arc::new(tls(false)?))
.build();
let mut req = agent.get(url).timeout(timeout);
for (header, value) in headers {
req = req.set(header, value);
}
let json = req.call()?.into_json()?;
Ok(json)
}
}
pub fn check_for_latest_nushell_version() -> Value {
let current_version = env!("CARGO_PKG_VERSION").to_string();
@ -123,7 +97,6 @@ pub fn check_for_latest_nushell_version() -> Value {
// Since this is run on demand, there isn't really a need to cache the check.
let informer =
update_informer::new(NuShellNightly, nightly_pkg_name, current_version.clone())
.http_client(NativeTlsHttpClient)
.interval(std::time::Duration::ZERO);
if let Ok(Some(new_version)) = informer.check_version() {