This PR logically separates out parts of the code to their own crates. This will be useful for future Tauri App development.
105 lines
2.5 KiB
TOML
105 lines
2.5 KiB
TOML
[workspace]
|
|
members = [ "utils", "recipe","template"]
|
|
|
|
[workspace.package]
|
|
version = "0.8.0"
|
|
description = "A CLI tool built for creating Containerfile templates based on the Ublue Community Project"
|
|
edition = "2021"
|
|
repository = "https://github.com/blue-build/cli"
|
|
license = "Apache-2.0"
|
|
categories = ["command-line-utilities"]
|
|
|
|
[workspace.dependencies]
|
|
anyhow = "1"
|
|
format_serde_error = "0.3.0"
|
|
log = "0.4"
|
|
serde = { version = "1", features = ["derive"] }
|
|
serde_json = "1"
|
|
serde_yaml = "0.9.30"
|
|
typed-builder = "0.18.1"
|
|
uuid = { version = "1.7.0", features = ["v4"] }
|
|
|
|
[workspace.lints.rust]
|
|
unsafe_code = "forbid"
|
|
|
|
[workspace.lints.clippy]
|
|
correctness = "warn"
|
|
suspicious = "warn"
|
|
perf = "warn"
|
|
style = "warn"
|
|
nursery = "warn"
|
|
|
|
[package]
|
|
name = "blue-build"
|
|
build = "build.rs"
|
|
|
|
version.workspace = true
|
|
edition.workspace = true
|
|
description.workspace = true
|
|
repository.workspace = true
|
|
license.workspace = true
|
|
|
|
[dependencies]
|
|
blue-build-recipe = { path = "./recipe" }
|
|
blue-build-template = { path = "./template" }
|
|
blue-build-utils = { path = "./utils" }
|
|
clap = { version = "4", features = ["derive", "cargo", "unicode"] }
|
|
clap-verbosity-flag = "2"
|
|
clap_complete = "4"
|
|
clap_complete_nushell = "4"
|
|
colorized = "1"
|
|
env_logger = "0.11"
|
|
fuzzy-matcher = "0.3"
|
|
open = "5"
|
|
os_info = "3.7" # update os module config and tests when upgrading os_info
|
|
requestty = { version = "0.5", features = ["macros", "termion"] }
|
|
shadow-rs = { version = "0.26" }
|
|
urlencoding = "2.1.3"
|
|
users = "0.11.0"
|
|
|
|
# Optional Dependencies
|
|
futures-util = { version = "0.3", optional = true }
|
|
podman-api = { version = "0.10.0", optional = true }
|
|
signal-hook = { version = "0.3.17", optional = true }
|
|
signal-hook-tokio = { version = "0.3.1", features = [
|
|
"futures-v0_3",
|
|
], optional = true }
|
|
sigstore = { version = "0.8.0", optional = true }
|
|
tokio = { version = "1", features = ["full"], optional = true }
|
|
|
|
# Workspace dependencies
|
|
anyhow.workspace = true
|
|
log.workspace = true
|
|
serde.workspace = true
|
|
serde_json.workspace = true
|
|
serde_yaml.workspace = true
|
|
typed-builder.workspace = true
|
|
uuid.workspace = true
|
|
|
|
[features]
|
|
default = []
|
|
nightly = ["builtin-podman"]
|
|
builtin-podman = [
|
|
"podman-api",
|
|
"tokio",
|
|
"futures-util",
|
|
"signal-hook-tokio",
|
|
"signal-hook",
|
|
]
|
|
tls = ["podman-api/tls", "builtin-podman"]
|
|
|
|
[dev-dependencies]
|
|
rusty-hook = "0.11.2"
|
|
|
|
[build-dependencies]
|
|
shadow-rs = { version = "0.26.1", default-features = false }
|
|
dunce = "1.0.4"
|
|
|
|
[lints]
|
|
workspace = true
|
|
|
|
[profile.release]
|
|
lto = true
|
|
codegen-units = 1
|
|
strip = true
|
|
debug = false
|