[package]
name = "ctgen"
version = "0.1.6"
edition = "2021"
authors = ["Ivan Ganev <iganev@cytec.bg>"]
description = "Code Generator based on Handlebars Templates and Database Reflection"
keywords = ["handlebars", "database", "codegen", "code", "generator"]
categories = ["template-engine", "command-line-utilities", "development-tools", "database"]
homepage = "https://github.com/cytecbg/ctgen"
repository = "https://github.com/cytecbg/ctgen"
documentation = "https://docs.rs/crate/ctgen/"
readme = "README.md"
license = "MIT"

[dependencies]
futures = "0"
tokio = { version = "1", features = ["full"] }

log = "0"
env_logger = "0"
anyhow = "1"
dotenvy = "0"
clap = { version = "4", features = ["derive"] }

dirs = "5"
walkdir = "2"

toml = { version = "0", features = ["preserve_order"] }
regex = "1.10"

indexmap = { version = "2", features = ["serde"] }
serde_json = { version = "1", features = ["preserve_order"] }
serde = { version = "1", features = ["derive"] }

database-reflection = { version = "0", features = ["mariadb"] }
# database-reflection = { path = "../database-reflection", features = ["mariadb"] }
sqlx = { version = "0.8", features = ["runtime-tokio-rustls", "mysql"]}

handlebars = { version = "6", features = ["dir_source", "script_helper"] }
handlebars-inflector = "0.3"
handlebars-concat = "0.3"
handlebars-chrono = { version = "0", features = [ "locale", "timezone" ] }
rhai = { version = "1.18", features = [ "sync", "serde" ] }
rhai-chrono = { version = "0", features = ["sync"] }
rhai-sci = { version = "0.2" }
rhai-fs = { version = "0.1", features = ["sync"] }
rhai-url = { version = "0" }

chrono = { version = "0.4" }

console = "0.15"
dialoguer = { version = "0.11", features = ["history"] }
indicatif = "0.17"

[profile.release]
opt-level = "z"
lto = true
codegen-units = 1
panic = "abort"
strip = "symbols"