Compare commits

..

No commits in common. "70dffdec73dc7ee5604d65202f53f5b59afa5422" and "df69f4160aabb4256ae4d94a1387c31718ee50f8" have entirely different histories.

4 changed files with 17 additions and 23 deletions

View file

@ -3,5 +3,6 @@ repos:
rev: v0.1.0 rev: v0.1.0
hooks: hooks:
- id: cargo-fmt - id: cargo-fmt
- id: cargo-check
- id: cargo-clippy - id: cargo-clippy
args: ["--all", "--all-features", "--", "-D", "warnings"] args: ["--", "-D", "warnings"]

View file

@ -2,7 +2,7 @@
name = "musixmatch-inofficial" name = "musixmatch-inofficial"
version = "0.1.0" version = "0.1.0"
edition = "2021" edition = "2021"
authors = ["ThetaDev <t.testboy@gmail.com>"] authors = ["ThetaDev"]
license = "MIT" license = "MIT"
description = "Inofficial client for the Musixmatch API" description = "Inofficial client for the Musixmatch API"
keywords = ["music", "lyrics"] keywords = ["music", "lyrics"]
@ -21,31 +21,22 @@ rustls-tls-webpki-roots = ["reqwest/rustls-tls-webpki-roots"]
rustls-tls-native-roots = ["reqwest/rustls-tls-native-roots"] rustls-tls-native-roots = ["reqwest/rustls-tls-native-roots"]
[dependencies] [dependencies]
reqwest = { version = "0.11.11", default-features = false, features = [ reqwest = {version = "0.11.11", default-features = false, features = ["json", "gzip", "cookies"]}
"json",
"gzip",
"cookies",
] }
tokio = {version = "1.20.0"} tokio = {version = "1.20.0"}
serde = { version = "1.0", features = ["derive"] } serde = { version = "1.0", features = ["derive"] }
serde_json = "1.0.85" serde_json = "1.0.85"
thiserror = "1.0.36" thiserror = "1.0.36"
log = "0.4.17" log = "0.4.17"
time = { version = "0.3.15", features = [ time = {version = "0.3.15", features = ["macros", "formatting", "serde", "serde-well-known"]}
"macros",
"formatting",
"serde",
"serde-well-known",
] }
hmac = "0.12.1" hmac = "0.12.1"
sha1 = "0.10.5" sha1 = "0.10.5"
rand = "0.8.5" rand = "0.8.5"
base64 = "0.21.0" base64 = "0.13.0"
[dev-dependencies] [dev-dependencies]
ctor = "0.2.0" ctor = "0.1.23"
rstest = { version = "0.17.0", default-features = false } rstest = {version = "0.15.0", default-features = false}
env_logger = "0.10.0" env_logger = "0.9.1"
dotenvy = "0.15.5" dotenvy = "0.15.5"
tokio = {version = "1.20.0", features = ["macros"]} tokio = {version = "1.20.0", features = ["macros"]}
futures = "0.3.21" futures = "0.3.21"

View file

@ -415,12 +415,15 @@ fn input(prompt: &str) -> String {
stdin().read_line(&mut input).expect("Failed to read line"); stdin().read_line(&mut input).expect("Failed to read line");
// Remove trailing newline // Remove trailing newline
input.pop(); input.pop();
input
return input;
} }
fn input_pwd(prompt: &str) -> String { fn input_pwd(prompt: &str) -> String {
print!("{}", prompt); print!("{}", prompt);
stdout().flush().expect("Failed to flush stdout!"); stdout().flush().expect("Failed to flush stdout!");
rpassword::read_password().expect("Failed to read password") let input = rpassword::read_password().expect("Failed to read password");
return input;
} }

View file

@ -13,7 +13,6 @@ use std::sync::{Arc, RwLock};
pub use error::Error; pub use error::Error;
use base64::Engine;
use hmac::{Hmac, Mac}; use hmac::{Hmac, Mac};
use log::{error, info, warn}; use log::{error, info, warn};
use rand::{seq::SliceRandom, Rng}; use rand::{seq::SliceRandom, Rng};
@ -426,7 +425,7 @@ fn sign_url_with_date(url: &mut Url, date: OffsetDateTime) {
mac.update(date.format(YMD_FORMAT).unwrap_or_default().as_bytes()); mac.update(date.format(YMD_FORMAT).unwrap_or_default().as_bytes());
let sig = mac.finalize().into_bytes(); let sig = mac.finalize().into_bytes();
let sig_b64 = base64::engine::general_purpose::STANDARD.encode(sig) + "\n"; let sig_b64 = base64::encode(sig) + "\n";
url.query_pairs_mut() url.query_pairs_mut()
.append_pair("signature", &sig_b64) .append_pair("signature", &sig_b64)