blob: 6208dee3d2db18577b765636be7843cf7994ec29 [file]
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied. See the License for the
# specific language governing permissions and limitations
# under the License.
[package]
name = "iggy-cli"
version = "0.13.1-edge.1"
edition = "2024"
rust-version.workspace = true
authors = ["bartosz.ciesla@gmail.com"]
repository = "https://github.com/apache/iggy"
homepage = "https://iggy.apache.org"
description = "CLI for Iggy message streaming platform"
license = "Apache-2.0"
keywords = ["iggy", "cli", "messaging", "streaming"]
readme = "README.md"
[package.metadata.binstall]
pkg-url = "{ repo }/releases/download/{ name }-{ version }/{ name }-{ target }{ archive-suffix }"
bin-dir = "{ bin }{ binary-ext }"
[package.metadata.cargo-machete]
ignored = ["cfg_aliases"]
[lib]
name = "iggy_cli"
path = "src/lib.rs"
[[bin]]
name = "iggy"
path = "src/main.rs"
[features]
default = ["login-session"]
login-session = [
"dep:keyring-core",
"dep:zbus-secret-service-keyring-store",
"dep:apple-native-keyring-store",
"dep:windows-native-keyring-store",
]
[dependencies]
anyhow = { workspace = true }
async-trait = { workspace = true }
bytes = { workspace = true }
chrono = { workspace = true }
clap = { workspace = true }
clap_complete = { workspace = true }
comfy-table = { workspace = true }
dirs = { workspace = true }
figlet-rs = { workspace = true }
iggy = { workspace = true }
iggy_binary_protocol = { workspace = true }
iggy_common = { workspace = true }
keyring-core = { workspace = true, optional = true }
passterm = { workspace = true }
secrecy = { workspace = true }
serde = { workspace = true }
serde_json = { workspace = true }
thiserror = { workspace = true }
tokio = { workspace = true }
toml = { workspace = true }
tracing = { workspace = true }
tracing-appender = { workspace = true }
tracing-subscriber = { workspace = true, default-features = false }
# `cfg(secret_service_keyring)` is the cfg_aliases alias for the BSD/Linux
# desktop platforms; see build.rs.
[target.'cfg(any(target_os = "linux", target_os = "freebsd", target_os = "dragonfly", target_os = "netbsd", target_os = "openbsd"))'.dependencies]
zbus-secret-service-keyring-store = { workspace = true, optional = true }
[target.'cfg(target_os = "macos")'.dependencies]
apple-native-keyring-store = { workspace = true, optional = true }
[target.'cfg(target_os = "windows")'.dependencies]
windows-native-keyring-store = { workspace = true, optional = true }
[build-dependencies]
cfg_aliases = { workspace = true }
[dev-dependencies]
tempfile = { workspace = true }
tokio = { workspace = true, features = ["macros", "rt"] }