[package]
edition = "2024"
rust-version = "1.88"
name = "espflash"
version = "4.4.0"
build = false
exclude = ["tests"]
autolib = false
autobins = false
autoexamples = false
autotests = false
autobenches = false
description = "A command-line tool for interacting with Espressif devices"
readme = "README.md"
keywords = [
"cli",
"embedded",
"esp",
]
categories = [
"command-line-utilities",
"development-tools",
"embedded",
]
license = "MIT OR Apache-2.0"
repository = "https://github.com/esp-rs/espflash"
resolver = "2"
[package.metadata.binstall]
pkg-url = "{ repo }/releases/download/v{ version }/{ name }-{ target }.{ archive-format }"
bin-dir = "{ bin }{ binary-ext }"
pkg-fmt = "zip"
[package.metadata.docs.rs]
features = ["serialport"]
no-default-features = true
rustdoc-args = [
"--cfg",
"docsrs",
]
[features]
cli = [
"dep:addr2line",
"dep:clap",
"dep:clap_complete",
"dep:comfy-table",
"dep:crossterm",
"dep:ctrlc",
"dep:defmt-decoder",
"dep:dialoguer",
"dep:directories",
"dep:env_logger",
"dep:indicatif",
"dep:update-informer",
"miette/fancy",
"serialport",
]
default = ["cli"]
serialport = [
"dep:reed-solomon",
"dep:regex",
"dep:serialport",
"dep:slip-codec",
"dep:toml",
]
[lib]
name = "espflash"
path = "src/lib.rs"
[[bin]]
name = "espflash"
path = "src/bin/espflash.rs"
required-features = [
"cli",
"serialport",
]
[dependencies.addr2line]
version = "0.25"
optional = true
[dependencies.base64]
version = "0.22"
[dependencies.bitflags]
version = "2.9"
[dependencies.bytemuck]
version = "1.23"
features = ["derive"]
[dependencies.clap]
version = "4.5"
features = [
"derive",
"env",
"wrap_help",
]
optional = true
[dependencies.clap_complete]
version = "4.5"
optional = true
[dependencies.comfy-table]
version = "7.1"
optional = true
[dependencies.crossterm]
version = "0.29"
optional = true
[dependencies.ctrlc]
version = "3.4"
optional = true
[dependencies.defmt-decoder]
version = "1.0"
features = ["unstable"]
optional = true
[dependencies.dialoguer]
version = "0.12"
optional = true
[dependencies.directories]
version = "6.0"
optional = true
[dependencies.env_logger]
version = "0.11"
optional = true
[dependencies.esp-idf-part]
version = "0.6"
[dependencies.flate2]
version = "1.1"
[dependencies.gimli]
version = "0.32.3"
[dependencies.indicatif]
version = "0.18"
optional = true
[dependencies.log]
version = "0.4"
[dependencies.md-5]
version = "0.11"
[dependencies.miette]
version = "7.6"
[dependencies.object]
version = "0.39"
[dependencies.reed-solomon]
version = "0.2.1"
optional = true
[dependencies.regex]
version = "1.11"
optional = true
[dependencies.serde]
version = "1.0"
features = ["derive"]
[dependencies.serialport]
version = "4.7"
optional = true
default-features = false
[dependencies.sha2]
version = "0.10"
[dependencies.slip-codec]
version = "0.4"
optional = true
[dependencies.strum]
version = "0.28"
features = ["derive"]
[dependencies.thiserror]
version = "2.0"
[dependencies.toml]
version = "1.1.2+spec-1.1.0"
optional = true
[dependencies.update-informer]
version = "1.2"
optional = true
[target.'cfg(target_os = "linux")'.dependencies.nix]
version = "0.30"
features = [
"signal",
"time",
]
[target."cfg(unix)".dependencies.libc]
version = "0.2.174"