diff --git a/Cargo.lock b/Cargo.lock index d0445f8..24a4cd6 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -121,27 +121,6 @@ version = "1.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "cf1de2fe8c75bc145a2f577add951f8134889b4795d47466a54a5c846d691693" -[[package]] -name = "block-buffer" -version = "0.7.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c0940dc441f31689269e10ac70eb1002a3a1d3ad1390e030043662eb7fe4688b" -dependencies = [ - "block-padding", - "byte-tools", - "byteorder", - "generic-array", -] - -[[package]] -name = "block-padding" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa79dedbb091f449f1f39e53edf88d5dbe95f895dae6135a8d7b881fb5af73f5" -dependencies = [ - "byte-tools", -] - [[package]] name = "brotli" version = "3.3.0" @@ -181,12 +160,6 @@ version = "3.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2e8c087f005730276d1096a652e92a8bacee2e2472bcc9715a74d2bec38b5820" -[[package]] -name = "byte-tools" -version = "0.3.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e3b5ca7a04898ad4bcd41c90c5285445ff5b791899bb1b0abdd2a2aa791211d7" - [[package]] name = "byteorder" version = "1.3.4" @@ -369,15 +342,6 @@ version = "0.1.12" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "0e25ea47919b1560c4e3b7fe0aaab9becf5b84a10325ddf7db0f0ba5e1026499" -[[package]] -name = "digest" -version = "0.8.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f3d0c8c8752312f9713efd397ff63acb9f85585afbf179282e720e7704954dd5" -dependencies = [ - "generic-array", -] - [[package]] name = "dirs" version = "3.0.2" @@ -470,12 +434,6 @@ dependencies = [ "termcolor", ] -[[package]] -name = "fake-simd" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e88a8acf291dafb59c2d96e8f59828f3838bb1a70398823ade51a84de6a6deed" - [[package]] name = "filetime" version = "0.2.12" @@ -615,15 +573,6 @@ dependencies = [ "slab", ] -[[package]] -name = "generic-array" -version = "0.12.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c68f0274ae0e023facc3c97b2e00f076be70e254bc851d972503b328db79b2ec" -dependencies = [ - "typenum", -] - [[package]] name = "getrandom" version = "0.2.1" @@ -877,12 +826,6 @@ dependencies = [ "pkg-config", ] -[[package]] -name = "maplit" -version = "1.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3e2e65a1a2e43cfcb47a895c4c8b10d1f4a61097f9f254f183aee60cad9c651d" - [[package]] name = "matches" version = "0.1.8" @@ -993,12 +936,6 @@ version = "1.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "13bd41f508810a131401606d54ac32a467c97172d74ba7662562ebba5ad07fa0" -[[package]] -name = "opaque-debug" -version = "0.2.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2839e79665f131bdb5782e51f2c6c9599c133c6098982a54c794358bf432529c" - [[package]] name = "openssl-probe" version = "0.1.4" @@ -1054,49 +991,6 @@ version = "2.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d4fd5641d01c8f18a23da7b6fe29298ff4b55afcccdf78973b24cf3175fee32e" -[[package]] -name = "pest" -version = "2.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "10f4872ae94d7b90ae48754df22fd42ad52ce740b8f370b03da4835417403e53" -dependencies = [ - "ucd-trie", -] - -[[package]] -name = "pest_derive" -version = "2.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "833d1ae558dc601e9a60366421196a8d94bc0ac980476d0b67e1d0988d72b2d0" -dependencies = [ - "pest", - "pest_generator", -] - -[[package]] -name = "pest_generator" -version = "2.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "99b8db626e31e5b81787b9783425769681b347011cc59471e33ea46d2ea0cf55" -dependencies = [ - "pest", - "pest_meta", - "proc-macro2", - "quote", - "syn", -] - -[[package]] -name = "pest_meta" -version = "2.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "54be6e404f5317079812fc8f9f5279de376d8856929e21c184ecf6bbd692a11d" -dependencies = [ - "maplit", - "pest", - "sha-1", -] - [[package]] name = "pin-project" version = "0.4.25" @@ -1476,22 +1370,9 @@ dependencies = [ [[package]] name = "semver" -version = "0.11.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f301af10236f6df4160f7c3f04eec6dbc70ace82d23326abad5edee88801c6b6" -dependencies = [ - "semver-parser", -] - -[[package]] -name = "semver-parser" -version = "0.10.0" +version = "1.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e012c6c5380fb91897ba7b9261a0f565e624e869d42fe1a1d03fa0d68a083d5" -dependencies = [ - "pest", - "pest_derive", -] +checksum = "5f3aac57ee7f3272d8395c6e4f502f434f0e289fcd62876f70daa008c20dcabe" [[package]] name = "serde" @@ -1570,18 +1451,6 @@ dependencies = [ "syn", ] -[[package]] -name = "sha-1" -version = "0.8.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f7d94d0bede923b3cea61f3f1ff57ff8cdfd77b400fb8f9998949e0cf04163df" -dependencies = [ - "block-buffer", - "digest", - "fake-simd", - "opaque-debug", -] - [[package]] name = "shared_child" version = "0.3.4" @@ -1900,18 +1769,6 @@ version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "59547bce71d9c38b83d9c0e92b6066c4253371f15005def0c30d9657f50c7642" -[[package]] -name = "typenum" -version = "1.12.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "373c8a200f9e67a0c95e62a4f52fbf80c23b4381c05a17845531982fa99e6b33" - -[[package]] -name = "ucd-trie" -version = "0.1.3" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "56dee185309b50d1f11bfedef0fe6d036842e3fb77413abef29f8f8d1c5d4c1c" - [[package]] name = "unicode-bidi" version = "0.3.4" diff --git a/Cargo.toml b/Cargo.toml index 1ee376f..c2f9ead 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -17,7 +17,7 @@ serde_json = "1.0.64" chrono = { version = "0.4.19", features = ["serde"] } tar = "0.4.35" xz2 = "0.1.6" -semver = "0.11.0" +semver = "1.0.3" dirs = "3.0.2" colored = "2.0.0" zip = "0.5.13" diff --git a/src/current_version.rs b/src/current_version.rs index 88c5342..6f7fab3 100644 --- a/src/current_version.rs +++ b/src/current_version.rs @@ -34,7 +34,7 @@ pub enum Error { EnvNotApplied, #[snafu(display("Can't read the version as a valid semver"))] VersionError { - source: semver::SemVerError, + source: semver::Error, version: String, }, } diff --git a/src/installed_versions.rs b/src/installed_versions.rs index 6e02087..cb2ca43 100644 --- a/src/installed_versions.rs +++ b/src/installed_versions.rs @@ -32,5 +32,5 @@ pub fn list>(installations_dir: P) -> Result, Error> #[derive(Debug, Snafu)] pub enum Error { IoError { source: std::io::Error }, - SemverError { source: semver::SemVerError }, + SemverError { source: semver::Error }, } diff --git a/src/user_version.rs b/src/user_version.rs index a1b224c..5e0a220 100644 --- a/src/user_version.rs +++ b/src/user_version.rs @@ -77,7 +77,7 @@ fn skip_first_v(str: &str) -> &str { } impl FromStr for UserVersion { - type Err = semver::SemVerError; + type Err = semver::Error; fn from_str(s: &str) -> Result { match Version::parse(s) { Ok(v) => Ok(Self::Full(v)), diff --git a/src/user_version_reader.rs b/src/user_version_reader.rs index a40f194..7a1cc53 100644 --- a/src/user_version_reader.rs +++ b/src/user_version_reader.rs @@ -20,7 +20,7 @@ impl UserVersionReader { } impl FromStr for UserVersionReader { - type Err = semver::SemVerError; + type Err = semver::Error; fn from_str(s: &str) -> Result { let pathbuf = PathBuf::from_str(&s); diff --git a/src/version.rs b/src/version.rs index 0bd7481..4a1da23 100644 --- a/src/version.rs +++ b/src/version.rs @@ -1,3 +1,5 @@ +use crate::alias; +use crate::config; use crate::lts::LtsType; use std::str::FromStr; @@ -14,7 +16,7 @@ fn first_letter_is_number(s: &str) -> bool { } impl Version { - pub fn parse>(version_str: S) -> Result { + pub fn parse>(version_str: S) -> Result { let lowercased = version_str.as_ref().to_lowercase(); if lowercased == "system" { Ok(Self::Bypassed) @@ -40,9 +42,9 @@ impl Version { pub fn find_aliases( &self, - config: &crate::config::FnmConfig, - ) -> std::io::Result> { - let aliases = crate::alias::list_aliases(&config)? + config: &config::FnmConfig, + ) -> std::io::Result> { + let aliases = alias::list_aliases(&config)? .drain(..) .filter(|alias| alias.s_ver() == self.v_str()) .collect(); @@ -53,10 +55,7 @@ impl Version { format!("{}", self) } - pub fn installation_path( - &self, - config: &crate::config::FnmConfig, - ) -> Option { + pub fn installation_path(&self, config: &config::FnmConfig) -> Option { match self { Self::Bypassed => None, v @ Self::Lts(_) | v @ Self::Alias(_) => { @@ -71,7 +70,7 @@ impl Version { } } - pub fn root_path(&self, config: &crate::config::FnmConfig) -> Option { + pub fn root_path(&self, config: &config::FnmConfig) -> Option { match self.installation_path(&config) { None => None, Some(path) => { @@ -105,7 +104,7 @@ impl std::fmt::Display for Version { } impl FromStr for Version { - type Err = semver::SemVerError; + type Err = semver::Error; fn from_str(s: &str) -> Result { Self::parse(s) }