[package] name = "package_management" version = "0.1.0" edition = "2024" authors = ["Lucy "] description = "A Rust project for package management with CLI and optional TUI support." license = "MIT" [dependencies] # CLI utilities anyhow = "1.0.100" clap = { version = "4.5.48", features = ["derive"] } console = "0.16.1" # Optional Terminal UI crossterm = { version = "0.29.0", optional = true } tui = { version = "0.19.0", optional = true } # Parsing & scraping html_parser = "0.7.0" scraper = "0.19.0" regex = "1.11.3" serde = { version = "1.0.228", features = ["derive"] } serde_json = "1.0.145" jsonschema = "0.17.0" walkdir = "2.5.0" chrono = { version = "0.4.38", default-features = false, features = ["clock"] } sha2 = "0.10.8" # Utilities indicatif = "0.18.0" spinners = "4.1.1" num_cpus = "1.17.0" rand = "0.9.2" md5 = "0.8.0" # HTTP reqwest = { version = "0.12.23", features = ["blocking", "json"] } semver = "1.0.27" inquire = "0.9.1" tracing = "0.1.41" tracing-appender = "0.2.3" tracing-subscriber = { version = "0.3.20", features = ["env-filter", "fmt"] } gptman = "2.0.1" dialoguer = "0.12.0" tokio = { version = "1.47.1", features = ["full"] } shell-words = "1.1.0" url = "2.5.7" uuid = { version = "1.18.1", features = ["v4"] } hex = "0.4.3" diesel = { version = "2.1.6", features = ["sqlite", "r2d2", "returning_clauses_for_sqlite_3_35"] } [features] # TUI feature flag tui = ["dep:tui", "dep:crossterm"] # Optional default features default = [] # ----------------------- # Cargo-make tasks # ----------------------- [tasks.format] description = "Format Rust code using rustfmt" install_crate = "rustfmt" command = "cargo" args = ["fmt", "--", "--emit=files"] [tasks.clean] description = "Clean build artifacts" command = "cargo" args = ["clean"] [tasks.build] description = "Build the project" command = "cargo" args = ["build"] dependencies = ["clean"] [tasks.test] description = "Run tests" command = "cargo" args = ["test"] dependencies = ["clean"] [tasks.my-flow] description = "Run full workflow: format, build, test" dependencies = ["format", "build", "test"] [tasks.dev-flow] description = "Full developer workflow: format, lint, build, test" dependencies = ["format", "clippy", "build", "test"] [tasks.release-build] description = "Build the project in release mode" command = "cargo" args = ["build", "--release", "--all-features"] dependencies = ["clean"]