content: [package]
  name = "stylus-sdk"
  keywords = ["arbitrum", "ethereum", "stylus", "alloy"]
  description = "Rust smart contracts with Arbitrum Stylus"
  readme = "../README.md"
  
  authors.workspace = true
  edition.workspace = true
  license.workspace = true
  repository.workspace = true
  version.workspace = true
  
  [dependencies]
  alloy-primitives.workspace = true
  alloy-sol-types.workspace = true
  cfg-if.workspace = true
  clap.workspace = true
  derivative.workspace = true
  hex = { workspace = true, default-features = false, features = ["alloc"] }
  keccak-const.workspace = true
  
  # local deps
  mini-alloc = { workspace = true, optional = true }
  stylus-proc.workspace = true
  stylus-core.workspace = true
  ruint = "=1.15.0"
  branches = "=0.2.1"
  rclite = "=0.2.7"
  
  [target.'cfg(target_arch = "wasm32")'.dependencies]
  alloy-primitives = { workspace = true, features = ["native-keccak"] }
  
  # Ensure these dependencies won't be included in wasm32 target
  [target.'cfg(not(target_arch = "wasm32"))'.dependencies]
  rclite = { workspace = true, optional = true }
  stylus-test = { workspace = true, optional = true }
  
  [dev-dependencies]
  paste.workspace = true
  sha3.workspace = true
  alloy-primitives = { workspace = true, default-features = false, features=["tiny-keccak"] }
  stylus-sdk = { workspace = true, features = ["stylus-test"] }
  
  [package.metadata.docs.rs]
  features = ["default", "docs", "debug", "export-abi", "stylus-test"]
  
  [features]
  default = ["mini-alloc"]
  export-abi = ["debug", "stylus-proc/export-abi", "alloy-primitives/tiny-keccak"]
  debug = []
  docs = []
  hostio = []
  mini-alloc = ["dep:mini-alloc"]
  stylus-test = ["dep:stylus-test", "dep:rclite", "stylus-proc/stylus-test"]
  reentrant = ["stylus-proc/reentrant", "stylus-core/reentrant", "stylus-test/reentrant"]
  