xtask: Handle pre-releases in release

This commit is contained in:
Kévin Commaille 2021-04-12 19:22:26 +02:00 committed by Jonas Platte
parent 508aa6dac5
commit d189c5ea29

View File

@ -42,7 +42,15 @@ impl ReleaseTask {
/// Run the task to effectively create a release.
pub(crate) fn run(self) -> Result<()> {
let title = &self.title();
println!("Starting release for {}", title);
let prerelease = self.local_crate.version.is_prerelease();
println!(
"Starting {} for {}…",
match prerelease {
true => "pre-release",
false => "release",
},
title
);
if self.is_released()? {
return Err("This crate version is already released".into());
@ -68,6 +76,11 @@ impl ReleaseTask {
self.local_crate.publish(&self.client)?;
if prerelease {
println!("Pre-release created successfully!");
return Ok(());
}
let changes = &self.local_crate.changes()?;
let tag = &self.tag_name();