kodept 0.2.2

Simple compiler with dependent types support in mind
Documentation
[package]
name = "kodept"
version = "0.2.2"
edition = "2021"
authors = ["Владимир Никитин <potyras85@mail.ru>"]
description = "Simple compiler with dependent types support in mind"
repository = "https://github.com/ITesserakt/Kodept/"
categories = ["compilers"]
license = "Apache-2.0"
rust-version = "1.75.0"

[workspace]
members = [
    ".",
    "crates/kodept-core",
    "crates/kodept-parse",
    "crates/kodept-inference",
    "crates/kodept-ast",
    "crates/kodept-macros",
    "crates/kodept-interpret",
    "crates/slotgraph"
]

# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html

[workspace.dependencies]
nom = "7.1"
thiserror = "1.0"
extend = "1.2"
itertools = "0.13"
id_tree = "1.8.0"
tracing = "0.1.40"

[workspace.dependencies.derive_more]
version = "0.99"
features = ["display", "into", "from", "deref", "deref_mut", "constructor", "try_into", "is_variant"]

[workspace.lints]
clippy.suspicious = "deny"
clippy.correctness = "deny"
clippy.complexity = "warn"
clippy.style = "warn"
clippy.perf = "warn"
rust.unsafe_code = "deny"

[dependencies]
anyhow = "1"
clap = { version = "4.5", features = ["derive", "env"] }
codespan-reporting = "0.11.1"
derive_more.workspace = true
dhat = { version = "0.3", optional = true }
extend.workspace = true
gag = { version = "1.0.0", optional = true }
itertools.workspace = true
rayon = { version = "1.10.0", optional = true }
replace_with = "0.1.7"
thiserror.workspace = true
tracing.workspace = true
tracing-subscriber = { version = "0.3.17", default-features = false, features = ["fmt", "ansi"] }

[dependencies.kodept-core]
path = "crates/kodept-core"
version = "0.2"

[dependencies.kodept-parse]
path = "crates/kodept-parse"
features = ["peg"]
version = "0.2"

[dependencies.kodept-ast]
path = "crates/kodept-ast"
version = "0.4"

[dependencies.kodept-macros]
path = "crates/kodept-macros"
version = "0.1"

[dependencies.kodept-interpret]
path = "crates/kodept-interpret"
version = "0.1"

[dev-dependencies]
tempfile = "3.7.0"
insta = "1.39.0"
kodept-inference = { path = "crates/kodept-inference", version = "0.2" }

[features]
profiler = ["dep:dhat"]
parallel = ["dep:rayon"]
trace = ["dep:gag", "kodept-parse/trace", "kodept-parse/pest"]

[profile.profiler]
debug = true
inherits = "release"

[profile.bench]
opt-level = 3

[profile.release]
opt-level = 3
lto = true
panic = "abort"
strip = true

[profile.dev]
opt-level = 0
debug = true
panic = 'unwind'
rpath = false