@@ -2,7 +2,6 @@ use std::fs::File;
22use std::path::Path;
33use std::time::SystemTime;
44
5−use clap::crate_version;
65use semver::Version;
76use serde::{Deserialize, Serialize};
87
@@ -17,9 +16,9 @@ pub struct AssetsMetadata {
1716const FILENAME: &'static str = "metadata.yaml";
1817
1918impl AssetsMetadata {
20− pub(crate) fn new() -> AssetsMetadata {
19+ pub(crate) fn new(current_version: &str) -> AssetsMetadata {
2120 AssetsMetadata {
22− bat_version: Some(crate_version!().into()),
21+ bat_version: Some(current_version.to_owned()),
2322 creation_time: Some(SystemTime::now()),
2423 }
2524 }
@@ -64,9 +63,9 @@ impl AssetsMetadata {
6463 }
6564 }
6665
67− pub fn is_compatible(&self) -> bool {
66+ pub fn is_compatible_with(&self, current_version: &str) -> bool {
6867 let current_version =
69− Version::parse(crate_version!()).expect("bat follows semantic versioning");
68+ Version::parse(current_version).expect("bat follows semantic versioning");
7069 let stored_version = self
7170 .bat_version
7271 .as_ref()