xtask: Upgrade dependencies

This commit is contained in:
Jonas Platte 2021-10-18 12:52:31 +02:00
parent cda6119224
commit e579735ebc
No known key found for this signature in database
GPG Key ID: CC154DE0E30B7C67
3 changed files with 22 additions and 26 deletions

View File

@ -9,12 +9,11 @@ publish = false
default = ["isahc", "semver", "toml_edit"]
[dependencies]
assign = "1.1.1"
isahc = { version = "1.2.0", features = ["json"], optional = true }
semver = { version = "0.11.0", features = ["serde"], optional = true }
semver = { version = "1.0.4", features = ["serde"], optional = true }
serde = { version = "1.0.118", features = ["derive"] }
serde_json = "1.0.60"
toml = "0.5.8"
toml_edit = { version = "0.2.0", optional = true }
toml_edit = { version = "0.6.0", optional = true }
xflags = "0.2.1"
xshell = "0.1.9"

View File

@ -1,6 +1,5 @@
use std::path::PathBuf;
use assign::assign;
use isahc::{HttpClient, ReadResponseExt};
use semver::Version;
use serde::{de::IgnoredAny, Deserialize};
@ -55,7 +54,7 @@ impl Package {
let mut document = read_file(&package.manifest_path)?.parse::<Document>()?;
let version = if self.version.is_prerelease()
let version = if !self.version.pre.is_empty()
|| self.name.strip_suffix("-macros") == Some(&package.name)
{
format!("={}", self.version)
@ -87,7 +86,11 @@ impl Package {
changelog_path.set_file_name("CHANGELOG.md");
let changelog = read_file(&changelog_path)?;
let version = assign!(self.version.clone(), { pre: vec![], build: vec![] });
let version = Version {
pre: semver::Prerelease::EMPTY,
build: semver::BuildMetadata::EMPTY,
..self.version.clone()
};
if !changelog.starts_with(&format!("# {}\n", version))
&& !changelog.starts_with(&format!("# {} (unreleased)\n", version))

View File

@ -10,7 +10,7 @@ use isahc::{
http::StatusCode,
HttpClient, ReadResponseExt, Request,
};
use semver::{Identifier, Version};
use semver::Version;
use serde_json::json;
use crate::{cargo::Package, cmd, util::ask_yes_no, GithubConfig, Metadata, Result};
@ -58,7 +58,7 @@ impl ReleaseTask {
/// Run the task to effectively create a release.
pub(crate) fn run(&mut self) -> Result<()> {
let title = &self.title();
let prerelease = self.version.is_prerelease();
let prerelease = !self.version.pre.is_empty();
let publish_only = self.package.name == "ruma-identifiers-validation";
if let Some(name) = self.package.name.strip_suffix("-macros") {
@ -371,35 +371,29 @@ trait VersionExt {
impl VersionExt for Version {
fn add_pre_release(&mut self) {
if !self.is_prerelease() {
self.pre = vec![Identifier::AlphaNumeric("alpha".into()), Identifier::Numeric(1)];
if self.pre.is_empty() {
self.pre = semver::Prerelease::new("alpha.1").unwrap();
}
}
fn increment_pre_number(&mut self) {
if self.is_prerelease() {
if let Identifier::Numeric(n) = self.pre[1] {
self.pre[1] = Identifier::Numeric(n + 1);
if let Some((prefix, num)) = self.pre.as_str().rsplit_once('.') {
if let Ok(num) = num.parse::<u8>() {
self.pre = semver::Prerelease::new(&format!("{}.{}", prefix, num + 1)).unwrap();
}
}
}
fn increment_pre_label(&mut self) {
if self.is_prerelease() {
match &self.pre[0] {
Identifier::AlphaNumeric(n) if n == "alpha" => {
self.pre =
vec![Identifier::AlphaNumeric("beta".into()), Identifier::Numeric(1)];
}
_ => {}
}
if self.pre.as_str().starts_with("alpha.") {
self.pre = semver::Prerelease::new("beta.1").unwrap();
}
}
fn is_next(&self, version: &Version) -> bool {
let mut next = self.clone();
if self.is_prerelease() {
if !self.pre.is_empty() {
next.increment_pre_number();
if next == *version {
return true;
@ -410,9 +404,9 @@ impl VersionExt for Version {
return true;
}
next.pre = vec![];
next.pre = semver::Prerelease::EMPTY;
} else {
next.increment_patch();
next.patch += 1;
if next == *version {
return true;
}
@ -422,7 +416,7 @@ impl VersionExt for Version {
return true;
}
next.increment_minor();
next.minor += 1;
if next == *version {
return true;
}
@ -432,7 +426,7 @@ impl VersionExt for Version {
return true;
}
next.increment_major();
next.major += 1;
if next == *version {
return true;
}