forked from keep-starknet-strange/madara
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Cargo.toml
208 lines (191 loc) · 13 KB
/
Cargo.toml
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
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
[workspace]
resolver = "2"
members = [
"crates/node",
"crates/runtime",
"crates/pallets/starknet",
"crates/primitives/digest-log",
"crates/primitives/transactions",
"crates/primitives/felt",
"crates/primitives/hashers",
"crates/primitives/fee",
"crates/primitives/state",
"crates/primitives/block",
"crates/primitives/sequencer-address",
"crates/primitives/storage",
"crates/primitives/commitments",
"crates/primitives/chain-id",
"crates/client/block-proposer",
"crates/client/db",
"crates/client/rpc-core",
"crates/client/rpc",
"crates/client/mapping-sync",
"crates/client/storage",
"crates/client/transaction-pool",
"starknet-rpc-test",
]
[profile.release]
panic = "unwind"
[profile.production]
inherits = "release"
codegen-units = 1 # Setting this to 1 allows for more optimizations at the cost of slower compile time
lto = true # Enables Link Time Optimization, enabling more aggressive optimizations across the entire codebase
opt-level = 3 # Optimize for speed regardless of binary size or compile time
rpath = false # Disables adding rpath to the binary
[workspace.package]
authors = ["Abdelhamid Bakhta <@abdelhamidbakhta>"]
edition = "2021"
repository = "https://github.com/keep-starknet-strange/madara/"
version = "0.3.0"
[workspace.dependencies]
# Substrate frame dependencies
frame-executive = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.43", default-features = false }
frame-support = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.43", default-features = false }
frame-benchmarking = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.43", default-features = false }
frame-benchmarking-cli = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.43", default-features = false }
frame-system = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.43", default-features = false }
frame-system-benchmarking = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.43", default-features = false }
frame-system-rpc-runtime-api = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.43", default-features = false }
frame-try-runtime = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.43", default-features = false }
substrate-frame-rpc-system = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.43", default-features = false }
# Substrate primitives dependencies
sp-core = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.43", default-features = false }
sp-std = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.43", default-features = false }
sp-io = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.43", default-features = false }
sp-runtime = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.43", default-features = false }
sp-consensus-aura = { git = "http://github.com/paritytech/substrate", branch = "polkadot-v0.9.43", default-features = false }
sp-consensus = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.43", default-features = false }
sp-consensus-grandpa = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.43", default-features = false }
sp-timestamp = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.43", default-features = false }
sp-inherents = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.43", default-features = false }
sp-keyring = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.43", default-features = false }
sp-api = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.43", default-features = false }
sp-blockchain = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.43", default-features = false }
sp-block-builder = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.43", default-features = false }
sp-offchain = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.43", default-features = false }
sp-session = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.43", default-features = false }
sp-transaction-pool = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.43", default-features = false }
sp-version = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.43", default-features = false }
sp-database = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.43", default-features = false }
sp-arithmetic = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.43", default-features = false }
sp-storage = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.43", default-features = false }
sp-state-machine = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.43", default-features = false }
sp-trie = { version = "7.0.0", git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.43", default-features = false }
sp-tracing = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.43" }
# Substrate client dependencies
sc-client-db = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.43", features = [
"rocksdb",
] }
sc-network = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.43" }
sc-network-common = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.43" }
sc-network-sync = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.43" }
sc-consensus = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.43" }
# For integration tests in order to create blocks on demand
sc-consensus-manual-seal = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.43", default-features = false }
sc-consensus-grandpa = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.43" }
sc-rpc = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.43" }
sc-rpc-api = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.43" }
sc-basic-authorship = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.43" }
sc-client-api = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.43" }
sc-cli = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.43" }
sc-executor = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.43" }
sc-service = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.43" }
sc-telemetry = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.43" }
sc-keystore = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.43" }
sc-transaction-pool = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.43" }
sc-transaction-pool-api = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.43" }
sc-consensus-aura = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.43" }
sc-block-builder = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.43" }
sc-proposer-metrics = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.43" }
sc-utils = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.43" }
substrate-test-runtime-client = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.43" }
# Substrate build & tools dependencies
substrate-build-script-utils = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.43" }
substrate-wasm-builder = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.43" }
prometheus-endpoint = { package = "substrate-prometheus-endpoint", version = "0.10.0-dev", git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.43" }
# Substrate Frame pallet
pallet-aura = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.43" }
pallet-grandpa = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.43" }
pallet-timestamp = { default-features = false, git = "https://github.com/paritytech/substrate", branch = "polkadot-v0.9.43" }
# Madara pallets
pallet-starknet = { path = "crates/pallets/starknet", default-features = false }
# Madara primtitives
mp-digest-log = { path = "crates/primitives/digest-log", default-features = false }
mp-block = { path = "crates/primitives/block", default-features = false }
mp-fee = { path = "crates/primitives/fee", default-features = false }
mp-felt = { path = "crates/primitives/felt", default-features = false }
mp-hashers = { path = "crates/primitives/hashers", default-features = false }
mp-sequencer-address = { path = "crates/primitives/sequencer-address", default-features = false }
mp-state = { path = "crates/primitives/state", default-features = false }
mp-storage = { path = "crates/primitives/storage", default-features = false }
mp-transactions = { path = "crates/primitives/transactions", default-features = false }
mp-commitments = { path = "crates/primitives/commitments", default-features = false }
mp-chain-id = { path = "crates/primitives/chain-id", default-features = false }
# Madara client
mc-mapping-sync = { path = "crates/client/mapping-sync" }
mc-db = { path = "crates/client/db" }
mc-storage = { path = "crates/client/storage" }
mc-rpc = { path = "crates/client/rpc" }
mc-rpc-core = { path = "crates/client/rpc-core" }
mc-block-proposer = { path = "crates/client/block-proposer" }
mc-transaction-pool = { path = "crates/client/transaction-pool" }
mc-data-availability = { path = "crates/client/data-availability" }
# Madara runtime
madara-runtime = { path = "crates/runtime" }
# Starknet dependencies
# Cairo Virtual Machine
cairo-vm = { git = "https://github.com/keep-starknet-strange/cairo-rs", branch = "no_std-support-21eff70", default-features = false, features = [
"cairo-1-hints",
"parity-scale-codec",
] }
starknet-crypto = { version = "0.6.0", default-features = false }
starknet-core = { version = "0.6.0", default-features = false }
starknet-providers = { version = "0.6.0", default-features = false }
starknet-ff = { version = "0.3.4", default-features = false }
starknet-signers = { version = "0.4.0" }
starknet-accounts = { version = "0.5.0" }
starknet-contract = { version = "0.5.0" }
blockifier = { git = "https://github.com/keep-starknet-strange/blockifier", branch = "no_std-support-7578442", default-features = false, features = [
"parity-scale-codec",
] }
starknet_api = { git = "https://github.com/keep-starknet-strange/starknet-api", branch = "no_std-support-dc83f05", features = [
"testing",
"parity-scale-codec",
], default-features = false }
# Cairo lang
cairo-lang-starknet = { git = "https://github.com/keep-starknet-strange/cairo.git", branch = "no_std-support-8bbf530" }
cairo-lang-casm-contract-class = { git = "https://github.com/keep-starknet-strange/cairo.git", branch = "no_std-support-8bbf530", default-features = false }
cairo-lang-casm = { git = "https://github.com/keep-starknet-strange/cairo.git", branch = "no_std-support-8bbf530", default-features = false }
cairo-lang-utils = { git = "https://github.com/keep-starknet-strange/cairo.git", branch = "no_std-support-8bbf530", default-features = false }
# Other third party dependencies
anyhow = "1.0.75"
flate2 = "1.0.27"
scale-codec = { package = "parity-scale-codec", version = "3.2.2", default-features = false }
parity-scale-codec = { version = "3.2.2", default-features = false }
scale-info = { version = "2.9.0", default-features = false }
lazy_static = { version = "1.4.0", default-features = false }
log = { version = "0.4.20", default-features = false }
hex = { version = "0.4.3", default-features = false }
safe-mix = { version = "1.0", default-features = false }
jsonrpsee = { version = "0.16.3", default-features = false }
clap = { version = "4.4.2", default-features = false }
futures = { version = "0.3.28", default-features = false }
futures-timer = { version = "3.0.2", default-features = false }
md5 = { version = "0.7.0", default-features = false }
reqwest = { version = "0.11.20", default-features = false }
serde = { version = "1.0.188", default-features = false }
serde_json = { version = "1.0.107", default-features = false }
serde_with = { version = "2.3.3", default-features = false }
bitvec = { version = "1", default-features = false }
thiserror = "1.0.48"
thiserror-no-std = "2.0.2"
derive_more = { version = "0.99.17", default-features = false }
rstest = "0.18.1"
pretty_assertions = "1.4.0"
linked-hash-map = { version = "0.5.6", default-features = false }
parking_lot = "0.12.1"
async-trait = "0.1.73"
indexmap = { git = "https://github.com/bluss/indexmap", rev = "ca5f848e10c31e80aeaad0720d14aa2f6dd6cfb1", default-features = false }
num-traits = "0.2.16"
num-bigint = "0.4.4"
phf = { version = "0.11", default-features = false }