laterite-cli 0.9.16

The Laterite command-line tool (lat): admin bootstrap and operations
[package]
name = "laterite-cli"
version = "0.9.16"
description = "The Laterite command-line tool (lat): admin bootstrap and operations"
edition.workspace = true
license.workspace = true
repository.workspace = true

[[bin]]
name = "lat"
path = "src/main.rs"

[dependencies]
laterite-core = { workspace = true }
laterite-auth = { workspace = true }
laterite-admin = { workspace = true }
laterite-web = { workspace = true }
laterite-media = { workspace = true }
anyhow = { workspace = true }
chrono = { workspace = true }
chrono-tz = { workspace = true }
clap = { workspace = true }
iana-time-zone = { workspace = true }
dialoguer = { workspace = true }
rand = { workspace = true }
rpassword = { workspace = true }
serde = { workspace = true }
sqlx = { workspace = true }
tokio = { workspace = true }
# `plugin sync` reads each plugin's Cargo.toml to verify its crate name.
toml = "0.8"
# Compatibility checks compare a plugin's framework requirement against this
# application's version. Semver has subtle rules (a pre-1.0 minor is the breaking
# position), so the comparison is not hand-rolled.
semver = "1"
# `i18n extract` parses Rust to find the `t!`/`tn!`/`tp!` source strings.
syn = { version = "2", features = ["full", "visit"] }
proc-macro2 = "1"

[features]
# The `lat` tool is a developer tool, not a deployed application, so it enables
# every driver by default: `lat new` must be able to connect to whichever
# database the user chooses. A generated application stays lean, compiling only
# the one driver it selects.
default = ["postgres", "mysql", "sqlite"]
postgres = ["laterite-core/postgres", "laterite-auth/postgres", "laterite-admin/postgres"]
mysql = ["laterite-core/mysql", "laterite-auth/mysql", "laterite-admin/mysql"]
sqlite = ["laterite-core/sqlite", "laterite-auth/sqlite", "laterite-admin/sqlite"]

[dev-dependencies]
tempfile = { workspace = true }