[package] name = "listenbrainz-cli-tools" version = "0.2.1" edition = "2021" repository = "https://github.com/RustyNova016/listenbrainz-cli-tools" publish = true license = "MIT" description = "A CLI app containing a set of useful tools for Listenbrainz" rust-version = "1.75" # See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html [dependencies] # Main crate #listenbrainz = "0.7.0" # Self maintained upstream version listenbrainz = {version = "0.7.2", package = "listenbrainz_rs_nova"} # Fork with fixes #listenbrainz = { branch = "main", git = "https://github.com/InputUsername/listenbrainz-rs.git" } # Upstream version of the musicbrainz crate. Use "listenbrainz-cli-tools_master" for main builds, "listenbrainz-cli-tools_dev" for dev builds # This fixes: # - https://github.com/RustyNova016/listenbrainz-cli-tools/issues/97 #musicbrainz_rs = "5.0.0" # Original musicbrainz_rs crate. It currently seems unmaintained, and need some PRs to pass musicbrainz_rs = {version = "0.6.0", package = "musicbrainz_rs_nova"} # Fork with fixes #musicbrainz_rs = { branch = "listenbrainz-cli-tools_master", package = "musicbrainz_rs_nova", git = "https://github.com/RustyNova016/musicbrainz_rs.git" } #musicbrainz_rs = { path = "../musicbrainz_rs"} # For easy development, download the musicbrainz_rs crate for yourself. Don't forget to change it back as PRs will fail derive_builder = "0.20.0" inquire = "0.7.5" itertools = "0.13.0" color-eyre = "0.6.3" rust_decimal = "1.35.0" clap = { version = "4.5.8", features = ["unicode", "wrap_help", "derive", "color"] } clap_complete = "4.5.7" chrono = "0.4.38" serde = { version = "1.0.204", features = ["rc"] } serde_json = "1.0.120" once_cell = "1.19.0" extend = "1.2.0" directories = "5.0.1" chashmap = "2.2.2" indicatif = { version = "0.17.8", features = ["rayon", "improved_unicode", "futures"] } tokio = { version = "1.38.0", features = ["full"] } rayon = "1.10.0" reqwest = { version = "0.12.5", features = ["json"] } cacache = { version = "13.0.0", default-features = false, features = ["tokio-runtime", "mmap"] } rmp-serde = "1.3.0" rand = "0.8.5" thiserror = "1.0.61" derive_more = { version = "0.99.18" } derive-new = "0.6.0" derive-getters = "0.4.0" rust_decimal_macros = "1.34.2" futures = "0.3.30" humantime = "2.1.0" regex = "1.10.5" clap-markdown = "0.1.4" # The profile that 'cargo dist' will build with [profile.dist] inherits = "release" lto = "thin" [lints.rust] unsafe_code = "forbid" async_fn_in_trait = { level = "allow", priority = 1 } [lints.clippy] #pedantic = "deny" #nursery = "deny" #perf = "warn" #cargo = "warn" # Applied enum_glob_use = { level = "deny", priority = 1 } semicolon_if_nothing_returned = { level = "warn", priority = 1 } use_self = { level = "warn", priority = 1 } or_fun_call = { level = "warn", priority = 1 } match_same_arms = { level = "warn", priority = 1 } manual_string_new = { level = "warn", priority = 1 } doc_markdown = { level = "warn", priority = 1 } uninlined_format_args = { level = "warn", priority = 1 } explicit_iter_loop = { level = "warn", priority = 1 } #unwrap_used = { level = "warn", priority = 1 } # Fix needed in separate PR # Won't apply must_use_candidate = { level = "allow", priority = 1 } map_unwrap_or = { level = "allow", priority = 1 } # Config for 'cargo dist' [workspace.metadata.dist] # The preferred cargo-dist version to use in CI (Cargo.toml SemVer syntax) cargo-dist-version = "0.11.1" # CI backends to support ci = ["github"] # The installers to generate for each app installers = ["shell", "powershell"] # Target platforms to build apps for (Rust target-triple syntax) targets = ["aarch64-apple-darwin", "x86_64-apple-darwin", "x86_64-unknown-linux-gnu", "x86_64-pc-windows-msvc"] # Publish jobs to run in CI pr-run-mode = "plan"