[package]
name = "mise"
version = "2024.10.2"
edition = "2021"
description = "The front-end to your dev env"
authors = ["Jeff Dickey (@jdx)"]
homepage = "https://mise.jdx.dev"
documentation = "https://mise.jdx.dev"
repository = "https://github.com/jdx/mise"
readme = "README.md"
license = "MIT"
keywords = ["mise"]
categories = ["command-line-utilities"]
include = [
    "/Cargo.lock",
    "/LICENSE",
    "/README.md",
    "/build.rs",
    "/completions/*",
    "/settings.toml",
    "/zipsign.pub",
    "src/**/*.rs",
    "src/assets/**",
    "src/plugins/core/assets/**",
]
rust-version = "1.76.0"
build = "build.rs"

# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html

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

#[[bench]]
#name = "config_bench"
#harness = false

[profile.serious]
inherits = "release"
lto = true

[dependencies]
base64 = "0.22.1"
calm_io = "0.1.1"
chrono = { version = "0.4.38", default-features = false, features = [
    "std",
    "clock",
] }
ci_info = "0.14.14"
clap = { version = "4.5.4", features = ["env", "derive", "string"] }
clap_mangen = { version = "0.2.20", optional = true }
color-eyre = "0.6.3"
color-print = "0.3.6"
confique = { version = "0.2.5", default-features = false }
console = "0.15.8"
contracts = "0.6.3"
demand = "1.1.2"
dotenvy = "0.15.7"
duct = "0.13.7"
either = { version = "1.11.0", features = ["serde"] }
eyre = "0.6.12"
filetime = "0.2.23"
flate2 = "1.0.30"
fslock = "0.2.1"
git2 = "<1"
glob = "0.3"
globset = "0.4"
heck = "0.5"
home = "0.5.9"
humantime = "2"
indenter = "0.3.3"
indexmap = { version = "2", features = ["serde"] }
indicatif = { version = "0.17.8", features = ["default", "improved_unicode"] }
indoc = "2.0.5"
itertools = "0.13"
log = "0.4.21"
num_cpus = "1"
number_prefix = "0.4"
once_cell = "1.19.0"
openssl = { version = "0.10.66", optional = true }
path-absolutize = "3"
petgraph = "0.6.4"
rand = "0.8.5"
rayon = "1.10.0"
regex = "1.10.4"
reqwest = { version = "0.12", default-features = false, features = [
    "json",
    "gzip",
] }
rmp-serde = "1.3.0"
serde = "1.0.199"
serde_derive = "1.0.199"
serde_ignored = "0.1"
serde_json = { version = "1.0.116", features = [] }
sha2 = "0.10.8"
shell-escape = "0.1.5"
shell-words = "1.1.0"
signal-hook = "0.3.17"
simplelog = { version = "0.12.2" }
siphasher = "1"
strum = { version = "0.26.2", features = ["derive"] }
sys-info = "0.9.1"
tabled = { version = "0.16", features = ["ansi"] }
tar = "0.4.40"
tempfile = "3.10.1"
tera = "1.19"
terminal_size = "0.4"
thiserror = "1.0.59"
tokio = { version = "1.37.0", features = [
    "io-std",
    "rt",
    "time",
] }
toml = { version = "0.8", features = ["parse"] }
toml_edit = { version = "0.22", features = ["parse"] }
url = "2.5.0"
# usage-lib = { path = "../usage/lib", features = ["clap", "docs"] }
usage-lib = { version = "0.8", features = ["clap", "docs"] }
versions = { version = "6.2.0", features = ["serde"] }
vfox = "0.1"
walkdir = "2.5.0"
which = "6"
xx = { version = "1.0.0", features = ["glob"] }
zip = { version = "2", default-features = false, features = ["deflate"] }

[target.'cfg(unix)'.dependencies]
exec = "0.3"
nix = { version = "0.29", features = ["signal", "user"] }
self_update = { version = "0.41", default-features = false, features = [
    "archive-tar",
    "compression-flate2",
    "signatures",
] }

[target.'cfg(windows)'.dependencies]
self_update = { version = "0.41", default-features = false, features = [
    "archive-zip",
    "signatures",
] }
sevenz-rust = "0.6"

[build-dependencies]
built = { version = "0.7", features = ["chrono", "git2"] }
cfg_aliases = "0.2"
heck = "0.5"
toml = "0.8"
indexmap = "2"

[dev-dependencies]
assert_cmd = "2.0.14"
ctor = "0.2.8"
insta = { version = "1.38.0", features = ["filters", "json"] }
predicates = "3.1.0"
pretty_assertions = "1.4.0"
test-case = "3.3.1"
test-log = "0.2"

[features]
default = ["native-tls"]
native-tls = ["reqwest/native-tls"]
rustls = ["reqwest/rustls-tls", "self_update/rustls"]
rustls-native-roots = ["reqwest/rustls-tls-native-roots", "self_update/rustls"]

[package.metadata.binstall]
bin-dir = "mise/bin/mise"
[package.metadata.binstall.overrides.aarch64-apple-darwin]
pkg-url = "{ repo }/releases/download/v{ version }/mise-v{version}-macos-arm64{ archive-suffix }"
[package.metadata.binstall.overrides.x86_64-apple-darwin]
pkg-url = "{ repo }/releases/download/v{ version }/mise-v{version}-macos-x64{ archive-suffix }"
[package.metadata.binstall.overrides.aarch64-unknown-linux-gnu]
pkg-url = "{ repo }/releases/download/v{ version }/mise-v{version}-linux-arm64{ archive-suffix }"
[package.metadata.binstall.overrides.x86_64-unknown-linux-gnu]
pkg-url = "{ repo }/releases/download/v{ version }/mise-v{version}-linux-x64{ archive-suffix }"
[package.metadata.binstall.overrides.armv7-unknown-linux-gnueabihf]
pkg-url = "{ repo }/releases/download/v{ version }/mise-v{version}-linux-armv7{ archive-suffix }"

[package.metadata.cargo-machete]
ignored = ["built", "openssl", "cfg_aliases"]
