summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLars Wirzenius <liw@liw.fi>2021-03-30 09:41:46 +0300
committerLars Wirzenius <liw@liw.fi>2021-03-30 12:04:20 +0300
commit2d90bc71cdcb952cc76df03031755fd62ee309c8 (patch)
treeba420167d32c8a17a9229b470a537b382e793432
parentdc0f531545a255fb4543e0d0697e318efc9cf791 (diff)
downloadbumper-rs-2d90bc71cdcb952cc76df03031755fd62ee309c8.tar.gz
feat: report absolute path when setting version for Rust
-rw-r--r--src/errors.rs3
-rw-r--r--src/rust.rs7
2 files changed, 9 insertions, 1 deletions
diff --git a/src/errors.rs b/src/errors.rs
index 0652adf..c7febe3 100644
--- a/src/errors.rs
+++ b/src/errors.rs
@@ -29,6 +29,9 @@ pub enum BumperError {
#[error("Cargo.toml doesn't specify a package name")]
UnnamedProject,
+ #[error("Couldn't turn {0} into an absolute path: {1}")]
+ AbsPath(PathBuf, #[source] std::io::Error),
+
#[error("Failed to run git: {0}")]
GitInvoke(#[source] std::io::Error),
diff --git a/src/rust.rs b/src/rust.rs
index 848422c..56778b1 100644
--- a/src/rust.rs
+++ b/src/rust.rs
@@ -27,10 +27,15 @@ impl Rust {
self.cargo_toml.set_version(version)?;
self.cargo_toml.write()?;
+ let dirname = self
+ .dirname
+ .canonicalize()
+ .map_err(|err| BumperError::AbsPath(self.dirname.to_path_buf(), err))?;
+
info!(
"Rust project {}, in {}, version set to {}",
self.cargo_toml.name()?,
- self.dirname.display(),
+ dirname.display(),
version
);
Ok(())