[workspace]
resolver = "2"
exclude = [
  "tests/fixture/failure",
  "tests/fixture/state",
  "tests/fixture/success",
  "dev",
]
members = [
  "gen-dev-cargo-toml",
]

[workspace.package]
version = "6.0.0"
authors = [
  "Liv <mokou@fastmail.com>",
  "Carol (Nichols || Goulding) <carol.nichols@gmail.com>",
]
license = "MIT"
edition = "2021"

[workspace.dependencies]
anyhow = "1.0.81"
serde = { version = "1.0.197", features = ["derive"] }
toml_edit = { version = "0.22.9", default-features = false, features = ["parse", "serde"] }

[package]
name = "rustlings"
description = "Small exercises to get you used to reading and writing Rust code!"
default-run = "rustlings"
version.workspace = true
authors.workspace = true
license.workspace = true
edition.workspace = true

[dependencies]
anyhow.workspace = true
clap = { version = "4.5.4", features = ["derive"] }
crossterm = "0.27.0"
notify-debouncer-mini = "0.4.1"
ratatui = "0.26.1"
rustlings-macros = { path = "rustlings-macros" }
serde_json = "1.0.115"
serde.workspace = true
toml_edit.workspace = true
which = "6.0.1"
winnow = "0.6.5"

[dev-dependencies]
assert_cmd = "2.0.14"
glob = "0.3.0"
predicates = "3.1.0"

[profile.release]
panic = "abort"

[profile.dev]
panic = "abort"