-
Notifications
You must be signed in to change notification settings - Fork 101
Expand file tree
/
Copy pathCargo.toml
More file actions
155 lines (145 loc) · 5.74 KB
/
Copy pathCargo.toml
File metadata and controls
155 lines (145 loc) · 5.74 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
[workspace.package]
authors = ["Aurora Labs <hello@aurora.dev>"]
edition = "2024"
keywords = ["aurora", "engine", "evm", "blockchain"]
homepage = "https://github.com/aurora-is-near/aurora-engine"
repository = "https://github.com/aurora-is-near/aurora-engine"
license = "CC0-1.0"
readme = "README.md"
publish = false
[workspace.dependencies]
aurora-engine = { path = "engine", default-features = false }
aurora-engine-hashchain = { path = "engine-hashchain", default-features = false }
aurora-engine-modexp = { path = "engine-modexp", version = "1.2.0", default-features = false }
aurora-engine-precompiles = { path = "engine-precompiles", version = "2.0.0", default-features = false }
aurora-engine-sdk = { path = "engine-sdk", version = "2.0.1", default-features = false }
aurora-engine-test-doubles = { path = "engine-test-doubles" }
aurora-engine-transactions = { path = "engine-transactions", version = "1.4.0", default-features = false }
aurora-engine-types = { path = "engine-types", version = "3.0.0", default-features = false }
aurora-engine-workspace = { path = "engine-workspace" }
engine-standalone-storage = { path = "engine-standalone-storage" }
engine-standalone-tracing = { path = "engine-standalone-tracing", default-features = false, features = ["impl-serde"] }
anyhow = "1"
ark-bn254 = { version = "0.6", default-features = false }
ark-serialize = { version = "0.6", default-features = false }
ark-ec = { version = "0.6", default-features = false }
ark-ff = { version = "0.6", default-features = false }
aurora-evm = { version = "2.2.1", default-features = false }
base64 = { version = "0.22", default-features = false, features = ["alloc"] }
bitflags = { version = "1", default-features = false }
blst = "0.3"
borsh = { version = "1", default-features = false, features = ["derive"] }
bs58 = { version = "0.5", default-features = false, features = ["alloc", "sha2"] }
bstr = "1"
cargo-near-build = "0.11"
criterion = "0.8"
ethabi = { version = "18", default-features = false }
fixed-hash = { version = "0.8", default-features = false }
function_name = "0.3"
git2 = "0.21"
hex = { version = "0.4", default-features = false, features = ["alloc"] }
ibig = { version = "0.3", default-features = false, features = ["num-traits"] }
impl-serde = { version = "0.5", default-features = false }
libsecp256k1 = { version = "0.7", default-features = false }
near-crypto = "0.36"
near-gas = "0.3"
near-parameters = "0.36"
near-primitives = "0.36"
near-primitives-core = "0.36"
near-sdk = "5"
near-vm-runner = { version = "0.36", features = ["wasmtime_vm", "near_vm"] }
near-workspaces = "0.22"
num = { version = "0.4", default-features = false, features = ["alloc"] }
postgres = "0.19"
primitive-types = { version = "0.13", default-features = false, features = ["rlp", "serde_no_std"] }
p256 = { version = "0.13", default-features = false }
rand = "0.10"
reqwest = "0.13"
ripemd = { version = "0.2", default-features = false }
rlp = { version = "0.6", default-features = false }
rocksdb = { version = "0.21", default-features = false }
serde = { version = "1", default-features = false, features = ["alloc", "derive"] }
serde_json = { version = "1", default-features = false, features = ["alloc"] }
sha2 = { version = "0.11", default-features = false }
sha3 = { version = "0.12", default-features = false }
strum = { version = "0.28", features = ["derive"] }
tempfile = "3"
test-case = "3"
tokio = { version = "1", default-features = false, features = ["macros"] }
walrus = "0.26"
wee_alloc = { version = "0.4", default-features = false }
zip = { version = "8", default-features = false, features = ["deflate"] }
[workspace.lints.rust]
# `fixed_hash::construct_fixed_hash!` expands to `#[cfg(feature = "dev")]`, which is no longer
# a known feature. Declare it so rustc does not warn about it (used in engine-hashchain).
unexpected_cfgs = { level = "warn", check-cfg = ['cfg(feature, values("dev"))'] }
[workspace.lints.clippy]
all = { level = "deny", priority = -1 }
pedantic = { level = "deny", priority = -1 }
nursery = { level = "deny", priority = -1 }
missing_errors_doc = "allow"
missing_panics_doc = "allow"
module_name_repetitions = "allow"
unreadable_literal = "allow"
similar_names = "allow"
too_long_first_doc_paragraph = "allow"
[workspace]
resolver = "2"
members = [
"engine",
"engine-hashchain",
"engine-test-doubles",
"engine-modexp",
"engine-precompiles",
"engine-sdk",
"engine-standalone-storage",
"engine-standalone-tracing",
"engine-tests",
"engine-tests-connector",
"engine-transactions",
"engine-types",
"engine-workspace",
]
exclude = [
"etc/tests/state-migration-test",
"etc/tests/ft-receiver",
"etc/tests/benchmark-contract",
"etc/tests/self-contained-5bEgfRQ",
"etc/tests/fibonacci",
"etc/tests/modexp-bench",
"etc/tests/mock-controller",
"etc/xcc-router",
]
[profile.release]
opt-level = 3 # "z" level decreases contract size, but at the same time, increases NEAR gas consumption in some cases
debug = false
debug-assertions = false
overflow-checks = true
lto = true
panic = "abort"
incremental = false
codegen-units = 1
rpath = false
[profile.dev]
# Due to a strange bug, setting this to 3 will cause test failures
opt-level = "z"
debug = false
debug-assertions = true
overflow-checks = true
lto = true
panic = "abort"
incremental = false
codegen-units = 1
rpath = false
[profile.bench]
# lto must be enabled in the bench profile as well for
# it to actually happen when running tests with --release
lto = true
opt-level = 3
# The profile is needed for faster linking in case we need to run a small number of tests locally or just test
# business logic rather than test gas cost. E.g., of using the profile with the cargo:
# `cargo test --profile fast-link name_of_test_we_want_execute`
[profile.fast-link]
inherits = "dev"
opt-level = 0
lto = false