17 releases (9 stable)
new 4.0.0-rc.1 | Dec 1, 2023 |
---|---|
4.0.0-rc | Nov 30, 2023 |
4.0.0-alpha | Jul 27, 2023 |
3.2.0 | Aug 22, 2023 |
2.0.0-beta.1 | Dec 7, 2022 |
#1309 in Magic Beans
5,715 downloads per month
Used in 11 crates
(6 directly)
240KB
5.5K
SLoC
contract-build
A crate for building ink!
smart contracts. Used by
cargo-contract
.
Usage
use contract_build::{
ManifestPath,
Verbosity,
BuildArtifacts,
BuildMode,
Features,
Network,
OptimizationPasses,
OutputType,
UnstableFlags,
Target,
ImageVariant,
};
let manifest_path = ManifestPath::new("my-contract/Cargo.toml").unwrap();
let args = contract_build::ExecuteArgs {
manifest_path,
verbosity: Verbosity::Default,
build_mode: BuildMode::Release,
features: Features::default(),
network: Network::Online,
build_artifact: BuildArtifacts::All,
unstable_flags: UnstableFlags::default(),
optimization_passes: Some(OptimizationPasses::default()),
keep_debug_symbols: false,
dylint: false,
output_type: OutputType::Json,
skip_wasm_validation: false,
target: Target::Wasm,
max_memory_pages: 16,
image: ImageVariant::Default,
};
contract_build::execute(args);
Dependencies
~15–26MB
~440K SLoC