[workspace] resolver = "2" members = [".", "server", "cli"] [workspace.package] version = "0.1.0" license = "Apache-2.0" description = "Konarr" edition = "2021" rust-version = "1.75" keywords = [] categories = [] documentation = "https://docs.rs/konarr" repository = "https://github.com/42ByteLabs/konarr" authors = ["42ByteLabs"] [profile.dev] opt-level = 0 [profile.release] opt-level = 3 [package] name = "konarr" description.workspace = true version.workspace = true documentation.workspace = true repository.workspace = true license.workspace = true edition.workspace = true rust-version.workspace = true categories.workspace = true keywords.workspace = true authors.workspace = true [package.metadata.release] shared-version = true tag-name = "v{{version}}" [features] default = [] # Database / Models models = ["dep:geekorm", "dep:libsql"] # Tools tools = ["dep:tokio", "client"] # Client client = ["dep:reqwest", "dep:openssl", "dep:tokio"] websocket = [] docker = ["dep:bollard"] [dependencies] log = "0.4" serde = { version = "1.0", features = ["derive"] } serde_yaml = "0.9" chrono = { version = "0.4", features = ["serde"] } rand = "0.8" thiserror = "1" url = { version = "2.5", features = ["serde"] } base64 = "0.22" # Database / Models geekorm = { version = "0.6.10", features = ["all", "semver", "libsql"], optional = true } libsql = { version = "^0.6", optional = true } # SBOM purl = { version = "^0.1" } serde_json = "1.0" sha2 = "0.10" semver = { version = "1.0", features = ["serde"] } # Runtime tokio = { version = "1", features = ["full"], optional = true } async-trait = "0.1" # Web Client reqwest = { version = "^0.12", features = ["json", "cookies"], optional = true } openssl = { version = "0.10", features = ["vendored"], optional = true } # Docker bollard = { version = "^0.17", optional = true } figment = { version = "0.10.19", features = ["env", "serde_yaml", "yaml"] } tokio-tungstenite = { version = "0.24.0", features = ["url", "native-tls"] } [dev-dependencies] konarr = { path = ".", features = ["client"] } tokio = { version = "1", features = ["full"] } anyhow = "1"