[workspace]
members = [ "eipw-preamble", "eipw-lint", "eipw-lint-js", "eipw-snippets" ]

[workspace.package]
version = "0.11.0"
edition = "2021"
license = "MPL-2.0"
repository = "https://github.com/ethereum/eipw"
rust-version = "1.81"

[workspace.dependencies]
eipw-snippets = { path = "eipw-snippets", version = "0.3.0" }
eipw-lint = { path = "eipw-lint", version = "0.11.0" }
eipw-preamble = { path = "eipw-preamble", version = "0.4.0" }
tokio = "1.44.1"
serde_json = "1.0.140"
toml = "0.8.20"
serde = "1.0.219"
getrandom = "0.2.15"
regex = "1.11.1"
snafu = "0.8.5"
assert_matches = "1.5.0"
pretty_assertions = "1.4.1"
figment = "0.10.19"

[package]
name = "eipw"
description = "Ethereum Improvement Proposal linter that's one more than eipv"
version.workspace = true
edition.workspace = true
license.workspace = true
rust-version.workspace = true
repository.workspace = true

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

[features]
schema-version = [ "eipw-lint/schema-version" ]

[dependencies]
eipw-snippets.workspace = true
tokio = { workspace = true, features = [ "macros" ] }
eipw-lint = { workspace = true, features = [ "tokio" ] }
serde_json.workspace = true
toml.workspace = true
serde = { workspace = true, features = [ "derive" ] }

sysexits = "0.8.5"
clap = { version = "4.5.27", features = [ "derive", "cargo" ] }
thiserror = "2.0.11"
figment = { workspace = true, features = ["toml"] }

[target.'cfg(target_arch = "wasm32")'.dependencies]
tokio = { workspace = true, features = [ "macros", "rt" ] }
getrandom = { workspace = true, features = [ "js" ] }

[target.'cfg(not(target_arch = "wasm32"))'.dependencies]
tokio = { workspace = true, features = [ "fs", "macros", "rt-multi-thread" ] }
