diff --git a/Cargo.lock b/Cargo.lock index 90580f7..9a3b7f2 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -73,6 +73,15 @@ dependencies = [ "pkg-config", ] +[[package]] +name = "ansi_term" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "ee49baf6cb617b853aa8d93bf420db2383fab46d314482ca2803b40d5fde979b" +dependencies = [ + "winapi", +] + [[package]] name = "aspotify" version = "0.7.0" @@ -414,6 +423,21 @@ dependencies = [ "libloading", ] +[[package]] +name = "clap" +version = "2.33.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "37e58ac78573c40708d45522f0d80fa2f01cc4f9b4e2bf749807255454312002" +dependencies = [ + "ansi_term", + "atty", + "bitflags", + "strsim 0.8.0", + "textwrap", + "unicode-width", + "vec_map", +] + [[package]] name = "colored" version = "2.0.0" @@ -581,7 +605,7 @@ dependencies = [ "ident_case", "proc-macro2", "quote", - "strsim", + "strsim 0.9.3", "syn", ] @@ -644,6 +668,7 @@ dependencies = [ "async-std", "async-stream", "chrono", + "clap", "colored", "dirs", "futures", @@ -653,6 +678,7 @@ dependencies = [ "librespot", "log", "oggvorbismeta", + "protobuf", "reqwest", "sanitize-filename", "serde", @@ -1294,6 +1320,12 @@ dependencies = [ "winapi", ] +[[package]] +name = "libm" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "c7d73b3f436185384286bd8098d17ec07c9a7d2388a6599f824d8502b529702a" + [[package]] name = "libmdns" version = "0.6.2" @@ -1314,9 +1346,8 @@ dependencies = [ [[package]] name = "librespot" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "450aa724dcc28a06c6f3a070e7f4b84c0800d9152bec3b012a11ff886986bd58" +version = "0.3.0" +source = "git+https://github.com/oSumAtrIX/free-librespot#19dea7516f71818a64cbded6c5a94065f22677c7" dependencies = [ "base64", "env_logger", @@ -1327,6 +1358,7 @@ dependencies = [ "librespot-audio", "librespot-connect", "librespot-core", + "librespot-discovery", "librespot-metadata", "librespot-playback", "librespot-protocol", @@ -1340,39 +1372,28 @@ dependencies = [ [[package]] name = "librespot-audio" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fa0e89d3e106d80600537eba02c17ea6dd8b3de3f46c99952b813b6f6d6445c0" +version = "0.3.0" +source = "git+https://github.com/oSumAtrIX/free-librespot#19dea7516f71818a64cbded6c5a94065f22677c7" dependencies = [ "aes-ctr", "byteorder", "bytes", - "cfg-if", "futures-util", - "lewton 0.10.2", "librespot-core", "log", - "ogg 0.8.0", "tempfile", "tokio", - "zerocopy", ] [[package]] name = "librespot-connect" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "69425fd6c8d74779f1ec86b16e6b3114df50c8a0d94db5a5601ef634bfb5e288" +version = "0.3.0" +source = "git+https://github.com/oSumAtrIX/free-librespot#19dea7516f71818a64cbded6c5a94065f22677c7" dependencies = [ - "aes-ctr", - "base64", "form_urlencoded", - "futures-core", "futures-util", - "hmac", - "hyper", - "libmdns", "librespot-core", + "librespot-discovery", "librespot-playback", "librespot-protocol", "log", @@ -1380,17 +1401,14 @@ dependencies = [ "rand", "serde", "serde_json", - "sha-1", "tokio", "tokio-stream", - "url", ] [[package]] name = "librespot-core" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "df3e70dce131f5531c982ca133f04fd1d1dd4208de27291dcd9ab6841c963248" +version = "0.3.0" +source = "git+https://github.com/oSumAtrIX/free-librespot#19dea7516f71818a64cbded6c5a94065f22677c7" dependencies = [ "aes", "base64", @@ -1427,11 +1445,32 @@ dependencies = [ "vergen", ] +[[package]] +name = "librespot-discovery" +version = "0.3.0" +source = "git+https://github.com/oSumAtrIX/free-librespot#19dea7516f71818a64cbded6c5a94065f22677c7" +dependencies = [ + "aes-ctr", + "base64", + "cfg-if", + "form_urlencoded", + "futures-core", + "hmac", + "hyper", + "libmdns", + "librespot-core", + "log", + "rand", + "serde_json", + "sha-1", + "thiserror", + "tokio", +] + [[package]] name = "librespot-metadata" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "84157ce5d901dbdcaef17ed305deba5d87171725347673a1b632a334d910af47" +version = "0.3.0" +source = "git+https://github.com/oSumAtrIX/free-librespot#19dea7516f71818a64cbded6c5a94065f22677c7" dependencies = [ "async-trait", "byteorder", @@ -1443,18 +1482,21 @@ dependencies = [ [[package]] name = "librespot-playback" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "59ca3df986a7e1a43008717660803e159177e86a589d484a0fc01fccd7967ad6" +version = "0.3.0" +source = "git+https://github.com/oSumAtrIX/free-librespot#19dea7516f71818a64cbded6c5a94065f22677c7" dependencies = [ "byteorder", "cpal", "futures-executor", "futures-util", + "lewton 0.10.2", "librespot-audio", "librespot-core", "librespot-metadata", "log", + "ogg 0.8.0", + "rand", + "rand_distr", "rodio", "shell-words", "thiserror", @@ -1464,13 +1506,11 @@ dependencies = [ [[package]] name = "librespot-protocol" -version = "0.2.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1c753be4c3bd0f02b30c00d5d8547f16d557654cb737e70505aec6aa9990435d" +version = "0.3.0" +source = "git+https://github.com/oSumAtrIX/free-librespot#19dea7516f71818a64cbded6c5a94065f22677c7" dependencies = [ "glob", "protobuf", - "protobuf-codegen", "protobuf-codegen-pure", ] @@ -1744,6 +1784,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9a64b1ec5cda2586e284722486d802acf1f7dbdc623e2bfc57e65ca1cd099290" dependencies = [ "autocfg", + "libm", ] [[package]] @@ -2017,24 +2058,24 @@ dependencies = [ [[package]] name = "protobuf" -version = "2.14.0" +version = "2.25.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8e86d370532557ae7573551a1ec8235a0f8d6cb276c7c9e6aa490b511c447485" +checksum = "23129d50f2c9355ced935fce8a08bd706ee2e7ce2b3b33bf61dace0e379ac63a" [[package]] name = "protobuf-codegen" -version = "2.14.0" +version = "2.25.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "de113bba758ccf2c1ef816b127c958001b7831136c9bc3f8e9ec695ac4e82b0c" +checksum = "4ba98ce0dadaa6de1e7f1b6d82a0a73b03e0c049169a167c919d906b0875026c" dependencies = [ "protobuf", ] [[package]] name = "protobuf-codegen-pure" -version = "2.14.0" +version = "2.25.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2d1a4febc73bf0cada1d77c459a0c8e5973179f1cfd5b0f1ab789d45b17b6440" +checksum = "a2bab16316ed0c5794a06c399af55a3ca7b93496cb35cb4c15bcc8f5d824f2b7" dependencies = [ "protobuf", "protobuf-codegen", @@ -2080,6 +2121,16 @@ dependencies = [ "getrandom", ] +[[package]] +name = "rand_distr" +version = "0.4.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "964d548f8e7d12e102ef183a0de7e98180c9f8729f555897a857b96e48122d2f" +dependencies = [ + "num-traits", + "rand", +] + [[package]] name = "rand_hc" version = "0.3.1" @@ -2169,9 +2220,9 @@ dependencies = [ [[package]] name = "rodio" -version = "0.13.1" +version = "0.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b65c2eda643191f6d1bb12ea323a9db8d9ba95374e9be3780b5a9fb5cfb8520f" +checksum = "4d98f5e557b61525057e2bc142c8cd7f0e70d75dc32852309bec440e6e046bf9" dependencies = [ "cpal", ] @@ -2403,6 +2454,12 @@ version = "0.1.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ef5430c8e36b713e13b48a9f709cc21e046723fe44ce34587b73a830203b533e" +[[package]] +name = "strsim" +version = "0.8.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8ea5119cdb4c55b55d432abb513a0429384878c15dde60cc77b1c99de1a95a6a" + [[package]] name = "strsim" version = "0.9.3" @@ -2461,6 +2518,15 @@ dependencies = [ "winapi-util", ] +[[package]] +name = "textwrap" +version = "0.11.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d326610f408c7a4eb6f51c37c330e496b08506c9457c9d34287ecc38809fb060" +dependencies = [ + "unicode-width", +] + [[package]] name = "thiserror" version = "1.0.30" @@ -2528,9 +2594,9 @@ dependencies = [ [[package]] name = "tokio-macros" -version = "1.4.1" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "154794c8f499c2619acd19e839294703e9e32e7630ef5f46ea80d4ef0fbee5eb" +checksum = "b2dd85aeaba7b68df939bd357c6afb36c87951be9e80bf9c859f2fc3e9fca0fd" dependencies = [ "proc-macro2", "quote", @@ -2683,6 +2749,12 @@ version = "0.2.15" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "accd4ea62f7bb7a82fe23066fb0957d48ef677f6eeb8215f372f52e48bb32426" +[[package]] +name = "vec_map" +version = "0.8.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f1bddf1187be692e79c5ffeab891132dfb0f236ed36a43c7ed39f1165ee20191" + [[package]] name = "vergen" version = "3.2.0" diff --git a/Cargo.toml b/Cargo.toml index c0af5a3..e5ab365 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -15,11 +15,13 @@ authors = ["exttex", "oSumAtrIX"] build = "build.rs" [target.'cfg(windows)'.build-dependencies] -winres = "0.1.12" +winres = "0.1" [dependencies] -log = "0.4.14" +clap = "2.33" +log = "0.4" url = "2.2" +protobuf = "2.25.0" id3 = "0.6" dirs = "3.0" chrono = "0.4" @@ -29,17 +31,17 @@ reqwest = "0.11" colored = "2" lame = "0.1.3" aspotify = "0.7" -librespot = "0.2" -async-std = { version = "1.10.0", features = ["attributes", "tokio1"] } +librespot = { git = "https://github.com/oSumAtrIX/free-librespot" } +async-std = { version = "1.10", features = ["attributes", "tokio1"] } serde_json = "1.0" async-stream = "0.3" oggvorbismeta = "0.1" sanitize-filename = "0.3" -serde = { version = "1.0.130", features = ["derive"] } +serde = { version = "1.0", features = ["derive"] } tokio = { version = "1.12", features = ["fs"] } [package.metadata.winres] OriginalFilename = "DownOnSpot.exe" -FileDescription = "Download songs from spotify with rust" +FileDescription = "Download songs from Spotify with Rust" ProductName = "DownOnSpot" ProductVersion = "0.0.1" \ No newline at end of file