[package]
name = "jvc"
version = "0.1.18"
authors = ["Stanciu Neculai <neculai.stanciu@outlook.com>"]
edition = "2018"
description = "A simple tool that help with java versions."
license = "MIT"
repository= "https://github.com/neculai-stanciu/jvc"
keywords = ["jvc", "java", "versions", "adoptopenjdk", "zulu"]
categories = ["command-line-utilities"]
readme = "README.md"
exclude = [
    ".ci",
    ".github",
    "target"
]

[[bin]]
name = "jvc"
path = "src/main.rs"

[[bin]]
name = "jvc-init"
path = "src/jvc-init.rs"


[dependencies]
# args parser
structopt = "0.3.21"

# async runtime
tokio = { version = "1.2.0", features = ["macros", "rt", "net", "io-util", "fs"] }
async-trait = "0.1.42"

# error handling
anyhow = "1.0.38"
thiserror = "1.0.23"
# logging
log = "0.4.14"
env_logger = "0.8.2"
# http client
reqwest = { version = "0.11", features = ["json"] }
# ansi colors
colored = "2.0.0"
# json serialization
serde = { version = "1.0.123", features = ["derive"] }
serde_json = "1.0.62"
chrono = { version = "0.4.19", features = ["serde"] }
# temp dir
tempdir = "0.3.7"
# Progress bar
indicatif = "0.15.0"
# archive support
tar = "0.4.32"
zip = "0.5.9"
flate2 = "1.0.14"

symlink = "0.1.0"

# common dirs
dirs = "3.0.1"

[target.'cfg(windows)'.dependencies]
csv = "1.1.5"
winreg= "0.8.0"

[profile.dev]
opt-level = 0
debug = true
debug-assertions = true
overflow-checks = true
lto = false
incremental = true
rpath = false


[profile.release]
codegen-units = 1
lto = true

# Reduce build time by setting proc-macro crates non optimized.
[profile.release.build-override]
opt-level = 0


[dev-dependencies.cargo-husky]
# read more here: https://github.com/rhysd/cargo-husky
version = "1"
default-features = false # Disable features which are enabled by default
features = ["precommit-hook", "run-cargo-test", "run-cargo-clippy"]
