remove derivative dependency

This commit is contained in:
monosans
2025-08-01 23:02:48 +03:00
parent 7676b14eb7
commit d820e9406b
3 changed files with 47 additions and 53 deletions
Generated
+22 -45
View File
@@ -84,7 +84,7 @@ checksum = "e539d3fca749fcee5236ab05e93a52867dd549cc157c8cb7f99595f3cedffdb5"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.104",
"syn",
]
[[package]]
@@ -341,7 +341,7 @@ dependencies = [
"proc-macro2",
"quote",
"strsim",
"syn 2.0.104",
"syn",
]
[[package]]
@@ -352,7 +352,7 @@ checksum = "fc34b93ccb385b40dc71c6fceac4b2ad23662c7eeb248cf10d529b7e055b6ead"
dependencies = [
"darling_core",
"quote",
"syn 2.0.104",
"syn",
]
[[package]]
@@ -361,17 +361,6 @@ version = "2.9.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2a2330da5de22e8a3cb63252ce2abb30116bf5265e89c0e01bc17015ce30a476"
[[package]]
name = "derivative"
version = "2.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "fcc3dd5e9e9c0b295d6e1e4d811fb6f157d5ffd784b8d202fc62eac8035a770b"
dependencies = [
"proc-macro2",
"quote",
"syn 1.0.109",
]
[[package]]
name = "dirs"
version = "6.0.0"
@@ -401,7 +390,7 @@ checksum = "97369cbbc041bc366949bc74d34658d6cda5621039731c6310521892a3a20ae0"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.104",
"syn",
]
[[package]]
@@ -428,7 +417,7 @@ dependencies = [
"heck",
"proc-macro2",
"quote",
"syn 2.0.104",
"syn",
]
[[package]]
@@ -565,7 +554,7 @@ checksum = "162ee34ebcb7c64a8abebc059ce0fee27c2262618d7b60ed8faf72fef13c3650"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.104",
"syn",
]
[[package]]
@@ -999,7 +988,7 @@ dependencies = [
"indoc",
"proc-macro2",
"quote",
"syn 2.0.104",
"syn",
]
[[package]]
@@ -1340,7 +1329,6 @@ version = "0.1.0"
dependencies = [
"color-eyre",
"crossterm",
"derivative",
"dirs",
"fancy-regex",
"futures",
@@ -1731,7 +1719,7 @@ checksum = "5b0276cf7f2c73365f7157c8123c21cd9a50fbbd844757af28ca1f5925fc2a00"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.104",
"syn",
]
[[package]]
@@ -1881,7 +1869,7 @@ dependencies = [
"proc-macro2",
"quote",
"rustversion",
"syn 2.0.104",
"syn",
]
[[package]]
@@ -1890,17 +1878,6 @@ version = "2.6.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "13c2bddecc57b384dee18652358fb23172facb8a2c51ccc10d74c157bdea3292"
[[package]]
name = "syn"
version = "1.0.109"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "72b64191b275b66ffe2469e8af2c1cfe3bafa67b529ead792a6d0160888b4237"
dependencies = [
"proc-macro2",
"quote",
"unicode-ident",
]
[[package]]
name = "syn"
version = "2.0.104"
@@ -1929,7 +1906,7 @@ checksum = "728a70f3dbaf5bab7f0c4b1ac8d7ae5ea60a4b5549c8a5914361c99147a709d2"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.104",
"syn",
]
[[package]]
@@ -1979,7 +1956,7 @@ checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.104",
"syn",
]
[[package]]
@@ -1990,7 +1967,7 @@ checksum = "7f7cf42b4507d8ea322120659672cf1b9dbb93f8f2d4ecfd6e51350ff5b17a1d"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.104",
"syn",
]
[[package]]
@@ -2055,7 +2032,7 @@ checksum = "6e06d43f1345a3bcd39f6a56dbb7dcab2ba47e68e8ac134855e7e2bdbaf8cab8"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.104",
"syn",
]
[[package]]
@@ -2184,7 +2161,7 @@ checksum = "81383ab64e72a7a8b8e13130c49e3dab29def6d0c7d76a03087b3cf71c5c6903"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.104",
"syn",
]
[[package]]
@@ -2367,7 +2344,7 @@ dependencies = [
"log",
"proc-macro2",
"quote",
"syn 2.0.104",
"syn",
"wasm-bindgen-shared",
]
@@ -2402,7 +2379,7 @@ checksum = "8ae87ea40c9f689fc23f209965b6fb8a99ad69aeeb0231408be24920604395de"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.104",
"syn",
"wasm-bindgen-backend",
"wasm-bindgen-shared",
]
@@ -2494,7 +2471,7 @@ checksum = "a47fddd13af08290e67f4acabf4b459f647552718f683a7b415d290ac744a836"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.104",
"syn",
]
[[package]]
@@ -2505,7 +2482,7 @@ checksum = "bd9211b69f8dcdfa817bfd14bf1c97c9188afa36f4750130fcdf3f400eca9fa8"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.104",
"syn",
]
[[package]]
@@ -2816,7 +2793,7 @@ checksum = "38da3c9736e16c5d3c8c597a9aaa5d1fa565d0532ae05e27c24aa62fb32c0ab6"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.104",
"syn",
"synstructure",
]
@@ -2837,7 +2814,7 @@ checksum = "9ecf5b4cc5364572d7f4c329661bcc82724222973f2cab6f050a4e5c22f75181"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.104",
"syn",
]
[[package]]
@@ -2857,7 +2834,7 @@ checksum = "d71e5d6e06ab090c67b5e44993ec16b72dcbaabc526db883a360057678b48502"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.104",
"syn",
"synstructure",
]
@@ -2897,5 +2874,5 @@ checksum = "5b96237efa0c878c64bd89c436f661be4e46b2f3eff1ebb976f7ef2321d2f58f"
dependencies = [
"proc-macro2",
"quote",
"syn 2.0.104",
"syn",
]
-1
View File
@@ -10,7 +10,6 @@ color-eyre = "=0.6.5"
crossterm = { version = "=0.28.1", features = [
"event-stream",
], optional = true }
derivative = "=2.2.0"
dirs = "=6.0.0"
fancy-regex = "=0.16.0"
futures = { version = "=0.3.31", optional = true }
+25 -7
View File
@@ -1,5 +1,6 @@
use std::{
fmt::{self, Write as _},
hash::{Hash, Hasher},
str::FromStr,
};
@@ -33,7 +34,7 @@ impl FromStr for ProxyType {
}
impl fmt::Display for ProxyType {
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result {
write!(
f,
"{}",
@@ -46,19 +47,14 @@ impl fmt::Display for ProxyType {
}
}
#[derive(derivative::Derivative, Eq)]
#[derivative(Hash, PartialEq)]
#[derive(Clone, Eq)]
pub struct Proxy {
pub protocol: ProxyType,
pub host: String,
pub port: u16,
pub username: Option<String>,
pub password: Option<String>,
#[derivative(Hash = "ignore")]
#[derivative(PartialEq = "ignore")]
pub timeout: Option<tokio::time::Duration>,
#[derivative(Hash = "ignore")]
#[derivative(PartialEq = "ignore")]
pub exit_ip: Option<String>,
}
@@ -130,3 +126,25 @@ impl Proxy {
s
}
}
#[expect(clippy::missing_trait_methods)]
impl PartialEq for Proxy {
fn eq(&self, other: &Self) -> bool {
self.protocol == other.protocol
&& self.host == other.host
&& self.port == other.port
&& self.username == other.username
&& self.password == other.password
}
}
#[expect(clippy::missing_trait_methods)]
impl Hash for Proxy {
fn hash<H: Hasher>(&self, state: &mut H) {
self.protocol.hash(state);
self.host.hash(state);
self.port.hash(state);
self.username.hash(state);
self.password.hash(state);
}
}