From 2dac99fde327ec7d1271b7522932de8a8570e7b5 Mon Sep 17 00:00:00 2001 From: Federico Terzi Date: Fri, 3 Apr 2020 18:41:09 +0200 Subject: [PATCH] Remove git2 dependency. Fix #218 --- Cargo.lock | 71 ----------------------------------------- Cargo.toml | 1 - packager/mac/espanso.rb | 1 - src/main.rs | 14 +------- src/package/default.rs | 5 ++- src/package/mod.rs | 1 - 6 files changed, 3 insertions(+), 90 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 744565d..47fbd70 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -137,10 +137,6 @@ dependencies = [ name = "cc" version = "1.0.45" source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "jobserver 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)", - "num_cpus 1.10.1 (registry+https://github.com/rust-lang/crates.io-index)", -] [[package]] name = "cfg-if" @@ -379,7 +375,6 @@ dependencies = [ "dialoguer 0.4.0 (registry+https://github.com/rust-lang/crates.io-index)", "dirs 2.0.2 (registry+https://github.com/rust-lang/crates.io-index)", "fs2 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)", - "git2 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)", "lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)", "libc 0.2.62 (registry+https://github.com/rust-lang/crates.io-index)", "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", @@ -497,20 +492,6 @@ dependencies = [ "wasi 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)", ] -[[package]] -name = "git2" -version = "0.10.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "bitflags 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.62 (registry+https://github.com/rust-lang/crates.io-index)", - "libgit2-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)", - "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", - "openssl-probe 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)", - "openssl-sys 0.9.49 (registry+https://github.com/rust-lang/crates.io-index)", - "url 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)", -] - [[package]] name = "h2" version = "0.1.26" @@ -634,16 +615,6 @@ name = "itoa" version = "0.4.4" source = "registry+https://github.com/rust-lang/crates.io-index" -[[package]] -name = "jobserver" -version = "0.1.17" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "getrandom 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.62 (registry+https://github.com/rust-lang/crates.io-index)", - "log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)", -] - [[package]] name = "kernel32-sys" version = "0.2.2" @@ -663,43 +634,6 @@ name = "libc" version = "0.2.62" source = "registry+https://github.com/rust-lang/crates.io-index" -[[package]] -name = "libgit2-sys" -version = "0.9.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "cc 1.0.45 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.62 (registry+https://github.com/rust-lang/crates.io-index)", - "libssh2-sys 0.2.12 (registry+https://github.com/rust-lang/crates.io-index)", - "libz-sys 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)", - "openssl-sys 0.9.49 (registry+https://github.com/rust-lang/crates.io-index)", - "pkg-config 0.3.16 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "libssh2-sys" -version = "0.2.12" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "cc 1.0.45 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.62 (registry+https://github.com/rust-lang/crates.io-index)", - "libz-sys 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)", - "openssl-sys 0.9.49 (registry+https://github.com/rust-lang/crates.io-index)", - "pkg-config 0.3.16 (registry+https://github.com/rust-lang/crates.io-index)", - "vcpkg 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)", -] - -[[package]] -name = "libz-sys" -version = "1.0.25" -source = "registry+https://github.com/rust-lang/crates.io-index" -dependencies = [ - "cc 1.0.45 (registry+https://github.com/rust-lang/crates.io-index)", - "libc 0.2.62 (registry+https://github.com/rust-lang/crates.io-index)", - "pkg-config 0.3.16 (registry+https://github.com/rust-lang/crates.io-index)", - "vcpkg 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)", -] - [[package]] name = "linked-hash-map" version = "0.5.2" @@ -1839,7 +1773,6 @@ dependencies = [ "checksum futures 0.1.29 (registry+https://github.com/rust-lang/crates.io-index)" = "1b980f2816d6ee8673b6517b52cb0e808a180efc92e5c19d02cdda79066703ef" "checksum futures-cpupool 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "ab90cde24b3319636588d0c35fe03b1333857621051837ed769faefb4c2162e4" "checksum getrandom 0.1.12 (registry+https://github.com/rust-lang/crates.io-index)" = "473a1265acc8ff1e808cd0a1af8cee3c2ee5200916058a2ca113c29f2d903571" -"checksum git2 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)" = "39f27186fbb5ec67ece9a56990292bc5aed3c3fc51b9b07b0b52446b1dfb4a82" "checksum h2 0.1.26 (registry+https://github.com/rust-lang/crates.io-index)" = "a5b34c246847f938a410a03c5458c7fee2274436675e76d8b903c08efc29c462" "checksum http 0.1.18 (registry+https://github.com/rust-lang/crates.io-index)" = "372bcb56f939e449117fb0869c2e8fd8753a8223d92a172c6e808cf123a5b6e4" "checksum http-body 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "6741c859c1b2463a423a1dbce98d418e6c3c3fc720fb0d45528657320920292d" @@ -1851,13 +1784,9 @@ dependencies = [ "checksum indexmap 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "a61202fbe46c4a951e9404a720a0180bcf3212c750d735cb5c4ba4dc551299f3" "checksum iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "dbe6e417e7d0975db6512b90796e8ce223145ac4e33c377e4a42882a0e88bb08" "checksum itoa 0.4.4 (registry+https://github.com/rust-lang/crates.io-index)" = "501266b7edd0174f8530248f87f99c88fbe60ca4ef3dd486835b8d8d53136f7f" -"checksum jobserver 0.1.17 (registry+https://github.com/rust-lang/crates.io-index)" = "f2b1d42ef453b30b7387e113da1c83ab1605d90c5b4e0eb8e96d016ed3b8c160" "checksum kernel32-sys 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7507624b29483431c0ba2d82aece8ca6cdba9382bff4ddd0f7490560c056098d" "checksum lazy_static 1.4.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" "checksum libc 0.2.62 (registry+https://github.com/rust-lang/crates.io-index)" = "34fcd2c08d2f832f376f4173a231990fa5aef4e99fb569867318a227ef4c06ba" -"checksum libgit2-sys 0.9.1 (registry+https://github.com/rust-lang/crates.io-index)" = "a30f8637eb59616ee3b8a00f6adff781ee4ddd8343a615b8238de756060cc1b3" -"checksum libssh2-sys 0.2.12 (registry+https://github.com/rust-lang/crates.io-index)" = "8914d10b159fc288f2b6f253c94bd0c15a777fd5a297691141d89674b87e66fd" -"checksum libz-sys 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)" = "2eb5e43362e38e2bca2fd5f5134c4d4564a23a5c28e9b95411652021a8675ebe" "checksum linked-hash-map 0.5.2 (registry+https://github.com/rust-lang/crates.io-index)" = "ae91b68aebc4ddb91978b11a1b02ddd8602a05ec19002801c5666000e05e0f83" "checksum lock_api 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "62ebf1391f6acad60e5c8b43706dde4582df75c06698ab44511d15016bc2442c" "checksum log 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)" = "14b6052be84e6b71ab17edffc2eeabf5c2c3ae1fdb464aae35ac50c67a44e1f7" diff --git a/Cargo.toml b/Cargo.toml index 601a2ec..95a12ba 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -26,7 +26,6 @@ chrono = "0.4.9" lazy_static = "1.4.0" walkdir = "2.2.9" reqwest = "0.9.20" -git2 = {version = "0.10.1", features = ["https"]} tempfile = "3.1.0" dialoguer = "0.4.0" rand = "0.7.2" diff --git a/packager/mac/espanso.rb b/packager/mac/espanso.rb index d259b87..6e7f477 100644 --- a/packager/mac/espanso.rb +++ b/packager/mac/espanso.rb @@ -7,7 +7,6 @@ class Espanso < Formula url "https://github.com/federico-terzi/espanso/releases/latest/download/espanso-mac.tar.gz" sha256 "{{{release_hash}}}" version "{{{app_version}}}" - depends_on "openssl@1.1" def install bin.install "espanso" diff --git a/src/main.rs b/src/main.rs index e4d5485..4e0f4a6 100644 --- a/src/main.rs +++ b/src/main.rs @@ -45,7 +45,6 @@ use std::io::{BufReader, BufRead}; use crate::package::default::DefaultPackageManager; use crate::package::{PackageManager, InstallResult, UpdateResult, RemoveResult, PackageResolver}; use std::sync::atomic::AtomicBool; -use crate::package::git::GitPackageResolver; use crate::package::zip::ZipPackageResolver; mod ui; @@ -73,12 +72,6 @@ const LOG_FILE: &str = "espanso.log"; fn main() { let install_subcommand = SubCommand::with_name("install") .about("Install a package. Equivalent to 'espanso package install'") - .arg(Arg::with_name("no-git") - .short("g") - .long("no-git") - .required(false) - .takes_value(false) - .help("Install packages avoiding the GIT package provider. Try this flag if the default mode is not working.")) .arg(Arg::with_name("external") .short("e") .long("external") @@ -766,12 +759,7 @@ fn install_main(_config_set: ConfigSet, matches: &ArgMatches) { exit(1); }); - let package_resolver: Box = if matches.is_present("no-git") { - println!("Using alternative package provider"); - Box::new(ZipPackageResolver::new()) - }else{ - Box::new(GitPackageResolver::new()) - }; + let package_resolver= Box::new(ZipPackageResolver::new()); let allow_external: bool = if matches.is_present("external") { println!("Allowing external repositories"); diff --git a/src/package/default.rs b/src/package/default.rs index 10cebfa..e2f3caf 100644 --- a/src/package/default.rs +++ b/src/package/default.rs @@ -27,11 +27,9 @@ use crate::package::UpdateResult::{NotOutdated, Updated}; use crate::package::InstallResult::{NotFoundInIndex, AlreadyInstalled, BlockedExternalPackage}; use std::fs; use tempfile::TempDir; -use git2::Repository; use regex::Regex; use crate::package::RemoveResult::Removed; use std::collections::HashMap; -use super::git::GitPackageResolver; const DEFAULT_PACKAGE_INDEX_FILE : &str = "package_index.json"; @@ -338,6 +336,7 @@ mod tests { use std::fs::{create_dir, create_dir_all}; use crate::package::InstallResult::*; use std::io::Write; + use crate::package::zip::ZipPackageResolver; const OUTDATED_INDEX_CONTENT : &str = include_str!("../res/test/outdated_index.json"); const INDEX_CONTENT_WITHOUT_UPDATE: &str = include_str!("../res/test/index_without_update.json"); @@ -359,7 +358,7 @@ mod tests { let package_manager = DefaultPackageManager::new( package_dir.path().clone().to_path_buf(), data_dir.path().clone().to_path_buf(), - Some(Box::new(GitPackageResolver::new())), + Some(Box::new(ZipPackageResolver::new())), ); TempPackageManager { diff --git a/src/package/mod.rs b/src/package/mod.rs index c33a3bd..8942c96 100644 --- a/src/package/mod.rs +++ b/src/package/mod.rs @@ -17,7 +17,6 @@ * along with espanso. If not, see . */ -pub(crate) mod git; pub(crate) mod zip; pub(crate) mod default;