Revert "init: Check all releases (#21417) (#21419)"

This reverts commit 6e656deb59.
This commit is contained in:
Trent Nelson
2021-12-13 08:48:40 -07:00
committed by Tao Zhu
parent afa87c6a0b
commit 336c39446b

View File

@ -859,54 +859,39 @@ fn check_for_newer_github_release(
version_filter: Option<semver::VersionReq>, version_filter: Option<semver::VersionReq>,
prerelease_allowed: bool, prerelease_allowed: bool,
) -> reqwest::Result<Option<String>> { ) -> reqwest::Result<Option<String>> {
let mut page = 1; let url =
const PER_PAGE: usize = 100; reqwest::Url::parse("https://api.github.com/repos/solana-labs/solana/releases").unwrap();
let client = reqwest::blocking::Client::builder() let client = reqwest::blocking::Client::builder()
.user_agent("solana-install") .user_agent("solana-install")
.build()?; .build()?;
let mut all_releases = vec![]; let request = client.get(url).build()?;
let mut releases = vec![]; let response = client.execute(request)?;
while page == 1 || releases.len() == PER_PAGE { let mut releases = response
let url = reqwest::Url::parse_with_params( .json::<GithubReleases>()?
"https://api.github.com/repos/solana-labs/solana/releases", .0
&[ .into_iter()
("per_page", &format!("{}", PER_PAGE)), .filter_map(
("page", &format!("{}", page)), |GithubRelease {
], tag_name,
) prerelease,
.unwrap(); }| {
let request = client.get(url).build()?; if let Ok(version) = semver_of(&tag_name) {
let response = client.execute(request)?; if (prerelease_allowed || !prerelease)
&& version_filter
releases = response .as_ref()
.json::<GithubReleases>()? .map_or(true, |version_filter| version_filter.matches(&version))
.0 {
.into_iter() return Some(version);
.filter_map(
|GithubRelease {
tag_name,
prerelease,
}| {
if let Ok(version) = semver_of(&tag_name) {
if (prerelease_allowed || !prerelease)
&& version_filter
.as_ref()
.map_or(true, |version_filter| version_filter.matches(&version))
{
return Some(version);
}
} }
None }
}, None
) },
.collect::<Vec<_>>(); )
all_releases.extend_from_slice(&releases); .collect::<Vec<_>>();
page += 1;
}
all_releases.sort(); releases.sort();
Ok(all_releases.pop().map(|r| r.to_string())) Ok(releases.pop().map(|r| r.to_string()))
} }
pub enum SemverUpdateType { pub enum SemverUpdateType {