[[bench]]
harness = false
name = "benches"
path = "benches/benches.rs"
[[bench]]
harness = false
name = "compile_time"
path = "benches/compile_time.rs"
[[bench]]
harness = false
name = "libfuncs"
path = "benches/libfuncs.rs"
[[bench]]
name = "util"
path = "benches/util.rs"
[[bin]]
name = "cairo-native-compile"
path = "src/bin/cairo-native-compile.rs"
[[bin]]
name = "cairo-native-dump"
path = "src/bin/cairo-native-dump.rs"
required-features = ["build-cli"]
[[bin]]
name = "cairo-native-run"
path = "src/bin/cairo-native-run.rs"
required-features = ["build-cli"]
[[bin]]
name = "cairo-native-stress"
path = "src/bin/cairo-native-stress/main.rs"
required-features = ["build-cli"]
[[bin]]
name = "cairo-native-test"
path = "src/bin/cairo-native-test.rs"
required-features = ["build-cli"]
[[bin]]
name = "scarb-native-dump"
path = "src/bin/scarb-native-dump.rs"
required-features = ["scarb"]
[[bin]]
name = "scarb-native-test"
path = "src/bin/scarb-native-test.rs"
required-features = ["scarb"]
[build-dependencies.cc]
version = "1.2.7"
[dependencies.anyhow]
optional = true
version = "1.0"
[dependencies.aquamarine]
version = "0.6.0"
[dependencies.ark-ec]
version = "0.5.0"
[dependencies.ark-ff]
version = "0.5.0"
[dependencies.ark-secp256k1]
version = "0.5.0"
[dependencies.ark-secp256r1]
version = "0.5.0"
[dependencies.bumpalo]
version = "3.16.0"
[dependencies.cairo-lang-compiler]
version = "2.10.0-rc.0"
[dependencies.cairo-lang-defs]
version = "2.10.0-rc.0"
[dependencies.cairo-lang-filesystem]
version = "2.10.0-rc.0"
[dependencies.cairo-lang-runner]
version = "2.10.0-rc.0"
[dependencies.cairo-lang-semantic]
version = "2.10.0-rc.0"
[dependencies.cairo-lang-sierra]
version = "2.10.0-rc.0"
[dependencies.cairo-lang-sierra-ap-change]
version = "2.10.0-rc.0"
[dependencies.cairo-lang-sierra-gas]
version = "2.10.0-rc.0"
[dependencies.cairo-lang-sierra-generator]
version = "2.10.0-rc.0"
[dependencies.cairo-lang-starknet]
version = "2.10.0-rc.0"
[dependencies.cairo-lang-starknet-classes]
version = "2.10.0-rc.0"
[dependencies.cairo-lang-test-plugin]
optional = true
version = "2.10.0-rc.0"
[dependencies.cairo-lang-utils]
version = "2.10.0-rc.0"
[dependencies.cairo-native-runtime]
optional = true
version = "0.2.6"
[dependencies.clap]
features = ["derive"]
optional = true
version = "4.5.23"
[dependencies.colored]
optional = true
version = "2.1.0"
[dependencies.educe]
version = "0.5.11"
[dependencies.itertools]
version = "0.13.0"
[dependencies.keccak]
version = "0.1.5"
[dependencies.lazy_static]
version = "1.5"
[dependencies.libc]
version = "0.2"
[dependencies.libloading]
version = "0.8.6"
[dependencies.llvm-sys]
version = "191.0.0"
[dependencies.melior]
features = ["ods-dialects", "helpers"]
version = "0.20.2"
[dependencies.mlir-sys]
version = "0.4.1"
[dependencies.num-bigint]
version = "0.4.6"
[dependencies.num-integer]
version = "0.1.46"
[dependencies.num-traits]
version = "0.2"
[dependencies.scarb-metadata]
optional = true
version = "1.12.0"
[dependencies.scarb-ui]
optional = true
version = "0.1.5"
[dependencies.serde]
features = ["derive"]
version = "1.0"
[dependencies.serde_json]
version = "1.0.128"
[dependencies.sha2]
version = "0.10.8"
[dependencies.starknet-types-core]
default-features = false
features = ["std", "serde", "num-traits"]
version = "0.1.7"
[dependencies.stats_alloc]
version = "0.1.10"
[dependencies.tempfile]
version = "3.15.0"
[dependencies.thiserror]
version = "2.0.9"
[dependencies.tracing]
version = "0.1"
[dependencies.tracing-subscriber]
features = ["env-filter", "json", "registry"]
optional = true
version = "0.3.19"
[dependencies.utf8_iter]
version = "1.0.4"
[dev-dependencies.cairo-lang-semantic]
features = ["testing"]
version = "2.10.0-rc.0"
[dev-dependencies.cairo-vm]
features = ["cairo-1-hints"]
version = "2.0.0-rc3"
[dev-dependencies.criterion]
features = ["html_reports"]
version = "0.5.1"
[dev-dependencies.lambdaworks-math]
version = "0.11.0"
[dev-dependencies.pretty_assertions_sorted]
version = "1.2.3"
[dev-dependencies.proptest]
version = "1.5.0"
[dev-dependencies.rayon]
version = "1.10.0"
[dev-dependencies.rstest]
version = "0.24.0"
[dev-dependencies.serde_json]
version = "1.0.128"
[dev-dependencies.test-case]
version = "3.3"
[dev-dependencies.walkdir]
version = "2.5.0"
[[example]]
name = "easy_api"
path = "examples/easy_api.rs"
[[example]]
name = "erc20"
path = "examples/erc20.rs"
[[example]]
name = "invoke"
path = "examples/invoke.rs"
[[example]]
name = "starknet"
path = "examples/starknet.rs"
[features]
build-cli = ["dep:clap", "dep:tracing-subscriber", "dep:anyhow", "dep:cairo-lang-test-plugin", "dep:colored"]
default = ["build-cli", "with-runtime"]
scarb = ["build-cli", "dep:scarb-ui", "dep:scarb-metadata"]
with-cheatcode = []
with-debug-utils = []
with-mem-tracing = []
with-runtime = ["dep:cairo-native-runtime"]
[lib]
name = "cairo_native"
path = "src/lib.rs"
[package]
autobenches = false
autobins = false
autoexamples = false
autolib = false
autotests = false
build = false
description = "A compiler to convert Cairo's intermediate representation Sierra code to MLIR."
edition = "2021"
keywords = ["starknet", "cairo", "compiler", "mlir"]
license = "Apache-2.0"
name = "cairo-native"
readme = "README.md"
repository = "https://github.com/lambdaclass/cairo_native"
resolver = "2"
version = "0.2.6"
[package.metadata.cargo-udeps.ignore]
normal = ["aquamarine"]
[profile.ci]
debug = "line-tables-only"
inherits = "dev"
opt-level = 3
[profile.dev.build-override]
opt-level = 3
[profile.dev.package."*"]
opt-level = 1
[profile.optimized-dev]
inherits = "dev"
opt-level = 3
[profile.release]
codegen-units = 1
lto = true
[[test]]
name = "common"
path = "tests/common.rs"
[[test]]
name = "entry"
path = "tests/entry.rs"