diff options
Diffstat (limited to 'src/frontend')
-rw-r--r-- | src/frontend/json.rs | 7 | ||||
-rw-r--r-- | src/frontend/list.rs | 3 | ||||
-rw-r--r-- | src/frontend/mod.rs | 3 | ||||
-rw-r--r-- | src/frontend/table.rs | 3 |
4 files changed, 10 insertions, 6 deletions
diff --git a/src/frontend/json.rs b/src/frontend/json.rs index 63b7bbe..b6a34e5 100644 --- a/src/frontend/json.rs +++ b/src/frontend/json.rs @@ -10,6 +10,7 @@ use failure::Error; use crate::frontend::Frontend; use crate::backend::Backend; +use crate::compare::ComparePackage; use librepology::v1::api::Api; pub struct JsonFrontend(Stdout); @@ -33,7 +34,7 @@ impl Frontend for JsonFrontend { writeln!(outlock, "{}", output).map_err(Error::from) } - fn compare_packages(&self, packages: Vec<Package>, backend: &Backend, filter_repos: Vec<Repo>) -> Result<()> { + fn compare_packages(&self, packages: Vec<ComparePackage>, backend: &Backend, filter_repos: Vec<Repo>) -> Result<()> { #[derive(Serialize)] struct PackageComp { // not optimal, as we have to clone the inner variables from the package @@ -53,8 +54,8 @@ impl Frontend for JsonFrontend { .filter(|p| filter_repos.contains(p.repo())) .map(|upstream_package| { PackageComp { - package_name: package.name().deref().clone(), - local_version: package.version().deref().clone(), + package_name: package.name().clone(), + local_version: package.version().clone(), upstream_repo: upstream_package.repo().deref().clone(), upstream_version: upstream_package.version().deref().clone(), } diff --git a/src/frontend/list.rs b/src/frontend/list.rs index b229ecd..e870ab0 100644 --- a/src/frontend/list.rs +++ b/src/frontend/list.rs @@ -10,6 +10,7 @@ use failure::Error; use crate::frontend::Frontend; use crate::backend::Backend; +use crate::compare::ComparePackage; use librepology::v1::api::Api; pub struct ListFrontend(Stdout); @@ -71,7 +72,7 @@ impl Frontend for ListFrontend { }) } - fn compare_packages(&self, packages: Vec<Package>, backend: &Backend, filter_repos: Vec<Repo>) -> Result<()> { + fn compare_packages(&self, packages: Vec<ComparePackage>, backend: &Backend, filter_repos: Vec<Repo>) -> Result<()> { let mut output = self.0.lock(); for package in packages { diff --git a/src/frontend/mod.rs b/src/frontend/mod.rs index 0027fd8..43e5b5e 100644 --- a/src/frontend/mod.rs +++ b/src/frontend/mod.rs @@ -7,12 +7,13 @@ use crate::config::Configuration; use crate::frontend::list::ListFrontend; use crate::frontend::json::JsonFrontend; use crate::frontend::table::TableFrontend; +use crate::compare::ComparePackage; use crate::backend::Backend; pub trait Frontend { fn list_packages(&self, packages: Vec<Package>) -> Result<()>; fn list_problems(&self, problems: Vec<Problem>) -> Result<()>; - fn compare_packages(&self, packages: Vec<Package>, backend: &Backend, filter_repos: Vec<Repo>) -> Result<()>; + fn compare_packages(&self, packages: Vec<ComparePackage>, backend: &Backend, filter_repos: Vec<Repo>) -> Result<()>; } pub mod list; diff --git a/src/frontend/table.rs b/src/frontend/table.rs index f840482..6a30e9c 100644 --- a/src/frontend/table.rs +++ b/src/frontend/table.rs @@ -10,6 +10,7 @@ use prettytable::Table; use crate::frontend::Frontend; use crate::backend::Backend; +use crate::compare::ComparePackage; use librepology::v1::api::Api; pub struct TableFrontend(Stdout); @@ -94,7 +95,7 @@ impl Frontend for TableFrontend { Ok(()) } - fn compare_packages(&self, packages: Vec<Package>, backend: &Backend, filter_repos: Vec<Repo>) -> Result<()> { + fn compare_packages(&self, packages: Vec<ComparePackage>, backend: &Backend, filter_repos: Vec<Repo>) -> Result<()> { let mut table = Table::new(); let format = format::FormatBuilder::new() .column_separator('|') |