diff options
author | Lars Wirzenius <liw@liw.fi> | 2021-03-30 09:41:46 +0300 |
---|---|---|
committer | Lars Wirzenius <liw@liw.fi> | 2021-03-30 12:04:20 +0300 |
commit | 2d90bc71cdcb952cc76df03031755fd62ee309c8 (patch) | |
tree | ba420167d32c8a17a9229b470a537b382e793432 | |
parent | dc0f531545a255fb4543e0d0697e318efc9cf791 (diff) | |
download | bumper-rs-2d90bc71cdcb952cc76df03031755fd62ee309c8.tar.gz |
feat: report absolute path when setting version for Rust
-rw-r--r-- | src/errors.rs | 3 | ||||
-rw-r--r-- | src/rust.rs | 7 |
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(()) |