[workspace] members = [".", "metadata"] [package] name = "cargo-contract" version = "0.18.0" authors = ["Parity Technologies "] build = "build.rs" edition = "2021" license = "GPL-3.0" readme = "README.md" repository = "https://github.com/paritytech/cargo-contract" documentation = "https://docs.substrate.io/tutorials/v3/ink-workshop/pt1/" homepage = "https://www.parity.io/" description = "Setup and deployment tool for developing Wasm based smart contracts via ink!" keywords = ["wasm", "parity", "webassembly", "blockchain", "edsl"] categories = ["command-line-utilities", "development-tools::build-utils", "development-tools::cargo-plugins"] include = [ "Cargo.toml", "src/**/*.rs", "README.md", "LICENSE", "build.rs", "templates", "src/**/*.scale", # We need to include `ink_linting` in the releases, so that the dylint driver which # is contained in that crate is build locally as part of the installation. "ink_linting", "!ink_linting/target/", "!ink_linting/ui/" ] [dependencies] env_logger = "0.9.0" anyhow = "1.0.56" clap = { version = "3.1.6", features = ["derive", "env"] } log = "0.4.14" heck = "0.4.0" zip = { version = "0.5.13", default-features = false } parity-wasm = "0.42.2" cargo_metadata = "0.14.2" scale = { package = "parity-scale-codec", version = "3.0.0", features = ["derive"] } which = "4.2.4" colored = "2.0.0" toml = "0.5.8" rustc_version = "0.4.0" blake2 = "0.10.4" contract-metadata = { version = "0.6.0", path = "./metadata" } semver = { version = "1.0.6", features = ["serde"] } serde = { version = "1.0.136", default-features = false, features = ["derive"] } serde_json = "1.0.79" tempfile = "3.3.0" url = { version = "2.2.2", features = ["serde"] } impl-serde = "0.3.2" regex = "1.5.5" # dependencies for extrinsics (deploying and calling a contract) async-std = { version = "1.10.0", features = ["attributes", "tokio1"] } ink_metadata = { version = "3.0.0-rc9", features = ["derive"] } ink_env = "3.0.0-rc9" scale-info = { version = "2.0.1", default-features = false, features = ["derive"] } sp-core = "6.0.0" sp-runtime = "6.0.0" pallet-contracts-primitives = "6.0.0" subxt = "0.18.1" futures = "0.3.19" hex = "0.4.3" jsonrpsee = { version = "0.9.0", features = ["ws-client"] } nom = "7.1.0" nom-supreme = { version = "0.7.0", features = ["error"] } indexmap = "1.8.0" thiserror = "1.0.30" escape8259 = "0.5.1" itertools = "0.10.3" [build-dependencies] anyhow = "1.0.56" zip = { version = "0.5.13", default-features = false } walkdir = "2.3.2" substrate-build-script-utils = "3.0.0" platforms = "2.0.0" which = "4.2.4" [dev-dependencies] assert_cmd = "2.0.4" assert_matches = "1.5.0" pretty_assertions = "1.2.0" wabt = "0.10.0" regex = "1.5.5" predicates = "2.1.1" ink_primitives = "3.0.0-rc9" ink_storage = "3.0.0-rc9" ink_lang = "3.0.0-rc9" ink_lang_codegen = "3.0.0-rc9" [features] # This `std` feature is required for testing using an inline contract's metadata, because `ink!` annotates the metadata # generation code with `#[cfg(feature = "std")]`. default = ["std"] std = [] # Enable this to execute long running tests, which usually are only run on the CI server # # Disabled by default test-ci-only = [] # Enable this to execute tests which depend on a locally running contracts enabed chain # e.g.https://github.com/paritytech/canvas-node integration-tests = []