[package]
name = "synor-compiler"
version.workspace = true
edition.workspace = true
authors.workspace = true
license.workspace = true
description = "Contract compiler and WASM optimizer for Synor smart contracts"
keywords = ["synor", "smart-contracts", "wasm", "compiler", "blockchain"]
categories = ["wasm", "development-tools"]

[dependencies]
# Internal crates
synor-types = { path = "../synor-types" }
synor-vm = { path = "../synor-vm" }

# WASM manipulation (wasm-tools ecosystem)
wasmparser = "0.201"
wasm-encoder = "0.201"

# Serialization
serde = { workspace = true }
serde_json.workspace = true
borsh.workspace = true

# Utilities
thiserror.workspace = true
tracing.workspace = true
hex.workspace = true
blake3.workspace = true

# CLI support (optional)
clap = { workspace = true, optional = true }

# Process execution for wasm-opt
[target.'cfg(not(target_arch = "wasm32"))'.dependencies]
which = "6.0"

[features]
default = []
cli = ["clap"]

[dev-dependencies]
tempfile.workspace = true
