summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMatthias Beyer <mail@beyermatthias.de>2018-12-03 01:09:03 +0100
committerMatthias Beyer <mail@beyermatthias.de>2018-12-03 01:09:03 +0100
commit37ac37f22ea0e6773cd6e4bc03945f21a7f32231 (patch)
treec8d9bf4d3b764bab6fd44cea950c656dbb4b2533
parent49b0b3a4141338f291e7522b6970173c5970489d (diff)
parent115002971d1b4bb5ac9c2af616417b9a9913f795 (diff)
downloadimag-37ac37f22ea0e6773cd6e4bc03945f21a7f32231.zip
imag-37ac37f22ea0e6773cd6e4bc03945f21a7f32231.tar.gz
Merge branch 'minor'
-rw-r--r--.travis.yml4
-rw-r--r--lib/core/libimagstore/src/storeid.rs18
-rw-r--r--lib/entry/libimagentrylink/src/external.rs2
3 files changed, 8 insertions, 16 deletions
diff --git a/.travis.yml b/.travis.yml
index 8a42a2e..7cb993e 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -16,7 +16,7 @@ matrix:
- bash ./scripts/branch-contains-no-tmp-commits
- bash ./scripts/version-updated
- language: rust
- rust: 1.28.0
+ rust: 1.29.2
cache:
directories:
- /home/travis/.cargo
@@ -26,7 +26,7 @@ matrix:
- cargo build --all --all-features -j 1 || exit 1
- cargo test --all --all-features -j 1 || exit 1
- language: rust
- rust: 1.29.2
+ rust: 1.30.1
cache:
directories:
- /home/travis/.cargo
diff --git a/lib/core/libimagstore/src/storeid.rs b/lib/core/libimagstore/src/storeid.rs
index dbb061d..f57d24a 100644
--- a/lib/core/libimagstore/src/storeid.rs
+++ b/lib/core/libimagstore/src/storeid.rs
@@ -120,15 +120,10 @@ impl StoreId {
}
pub fn to_str(&self) -> Result<String> {
- self.base
- .as_ref()
- .cloned()
- .map(|mut base| { base.push(self.id.clone()); base })
- .unwrap_or_else(|| self.id.clone())
- .to_str()
- .map(String::from)
- .ok_or_else(|| err_msg("Store ID Handling error"))
- .map_err(Error::from)
+ match self.base.as_ref() {
+ None => Ok(self.id.display().to_string()),
+ Some(ref base) => Ok(format!("{}/{}", base.display(), self.id.display())),
+ }
}
/// Helper function for creating a displayable String from StoreId
@@ -192,10 +187,7 @@ impl StoreId {
impl Display for StoreId {
fn fmt(&self, fmt: &mut Formatter) -> RResult<(), FmtError> {
- match self.id.to_str() {
- Some(s) => write!(fmt, "{}", s),
- None => write!(fmt, "{}", self.id.to_string_lossy()),
- }
+ write!(fmt, "{}", self.id.display())
}
}
diff --git a/lib/entry/libimagentrylink/src/external.rs b/lib/entry/libimagentrylink/src/external.rs
index d4c6956..143188f 100644
--- a/lib/entry/libimagentrylink/src/external.rs
+++ b/lib/entry/libimagentrylink/src/external.rs
@@ -301,7 +301,7 @@ pub mod iter {
/// Check whether the StoreId starts with `/link/external/`
pub fn is_external_link_storeid<A: AsRef<StoreId> + Debug>(id: A) -> bool {
debug!("Checking whether this is a 'links/external/': '{:?}'", id);
- id.as_ref().local().starts_with("links/external")
+ id.as_ref().is_in_collection(&["links", "external"])
}
/// Implement `ExternalLinker` for `Entry`, hiding the fact that there is no such thing as an external