codetwin 0.1.10

A code to diagram/documentation generator.
Documentation
[package]
  autobins      = false
  categories    = ["command-line-utilities", "development-tools"]
  description   = "A code to diagram/documentation generator."
  documentation = "https://docs.rs/codetwin"
  edition       = "2024"
  keywords      = ["architecture", "cli", "docs", "documentation", "generator"]
  license       = "MIT"
  name          = "codetwin"
  readme        = "README.md"
  repository    = "https://github.com/carlosferreyra/codetwin"
  rust-version  = "1.93"
  version       = "0.1.10"

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

[dependencies]
  anyhow                = "1.0"
  chrono                = "0.4"
  clap                  = { version = "4.5", features = ["derive"] }
  glob                  = "0.3"
  ignore                = "0.4"
  notify-debouncer-mini = "0.4"
  petgraph              = "0.6"
  rayon                 = "1.7"
  serde                 = { version = "1.0", features = ["derive"] }
  serde_json            = "1.0"
  toml                  = "0.8"
  tracing               = "0.1"
  tracing-subscriber    = { version = "0.3", features = ["env-filter"] }
  tree-sitter           = "0.20"
  tree-sitter-python    = "0.20"
  tree-sitter-rust      = "0.20"
  walkdir               = "2.4"

  # --- REFACTORED PROFILES ---

[profile.dev]
  debug     = true # Keep full debug info for development
  opt-level = 0    # Keep your code fast to compile

# The Secret Sauce: Maximize speed for dependencies ONLY.
# This ensures Tree-sitter and Petgraph aren't sluggish during 'cargo run'
[profile.dev.package."*"]
  opt-level = 3

[profile.release]
  codegen-units = 1       # Give the compiler a single block for better optimization
  lto           = "fat"   # Aggressive Link-Time Optimization across all crates
  opt-level     = 3       # Maximum execution speed
  panic         = "abort" # Removes overhead of stack unwinding; makes code faster
  strip         = true    # Keep this; it doesn't hurt speed and keeps the file clean

[profile.dist]
  inherits = "release"
  # No changes needed here as 'release' is now the peak performance profile

[package.metadata.release]
  pre-release-hook = [
    "bash",
    "-c",
    "PATH=\"$HOME/.cargo/bin:$PATH\" git-cliff --tag {{version}} --output CHANGELOG.md && git add CHANGELOG.md",
  ]

[package.metadata.dist]
  changelog = "CHANGELOG.md"