-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathCargo.toml
More file actions
191 lines (175 loc) · 15 KB
/
Copy pathCargo.toml
File metadata and controls
191 lines (175 loc) · 15 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
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
[workspace.package]
authors = ["Bit & Pin <bitandpin@gmail.com>"]
edition = "2021"
homepage = "https://github.com/bitandpin/substrate-tutorial"
license = "GPL-3.0-only"
repository = "https://github.com/bitandpin/substrate-tutorial.git"
version = "0.1.0"
[workspace]
resolver = "2"
members = ["keyring", "node", "runtime"]
default-members = ["node"]
[workspace.lints.rust]
suspicious_double_ref_op = { level = "allow", priority = 2 }
# `substrate_runtime` is a common `cfg` condition name used in the repo.
unexpected_cfgs = { level = "warn", check-cfg = [
'cfg(build_opt_level, values("3"))',
'cfg(build_profile, values("debug", "release"))',
'cfg(enable_alloc_error_handler)',
'cfg(fuzzing)',
'cfg(ignore_flaky_test)',
'cfg(substrate_runtime)',
] }
[workspace.lints.clippy]
all = { level = "allow", priority = 0 }
bind_instead_of_map = { level = "allow", priority = 2 } # stylistic
borrowed-box = { level = "allow", priority = 2 } # Reasonable to fix this one
complexity = { level = "warn", priority = 1 }
correctness = { level = "warn", priority = 1 }
default_constructed_unit_structs = { level = "allow", priority = 2 } # stylistic
derivable_impls = { level = "allow", priority = 2 } # false positives
eq_op = { level = "allow", priority = 2 } # In tests we test equality.
erasing_op = { level = "allow", priority = 2 } # E.g. 0 * DOLLARS
extra-unused-type-parameters = { level = "allow", priority = 2 } # stylistic
identity-op = { level = "allow", priority = 2 } # One case where we do 0 +
if-same-then-else = { level = "allow", priority = 2 }
needless-lifetimes = { level = "allow", priority = 2 } # generated code
needless_option_as_deref = { level = "allow", priority = 2 } # false positives
nonminimal-bool = { level = "allow", priority = 2 } # maybe
option-map-unit-fn = { level = "allow", priority = 2 } # stylistic
stable_sort_primitive = { level = "allow", priority = 2 } # prefer stable sort
too-many-arguments = { level = "allow", priority = 2 } # (Turning this on would lead to)
type_complexity = { level = "allow", priority = 2 } # raison d'etre
unit_arg = { level = "allow", priority = 2 } # stylistic
unnecessary_cast = { level = "allow", priority = 2 } # Types may change
useless_conversion = { level = "allow", priority = 2 } # Types may change
while_immutable_condition = { level = "allow", priority = 2 } # false positives
zero-prefixed-literal = { level = "allow", priority = 2 } # 00_1000_000
# =============================================================================
# Workspace dependencies
#
# Mirrors polkadot-sdk's [workspace.dependencies] at branch `stable2603`:
# every SDK crate is declared with `default-features = false` and third-party
# crates carry no features here. Features are opted in at the consuming crate.
# =============================================================================
[workspace.dependencies]
# --- Third-party (crates.io) ---
clap = { version = "4.5.13" }
codec = { version = "3.7.5", default-features = false, package = "parity-scale-codec" }
futures = { version = "0.3.31" }
hex-literal = { version = "0.4.1" }
jsonrpsee = { version = "0.24.10" }
log = { version = "0.4.22", default-features = false }
scale-info = { version = "2.11.6", default-features = false }
serde_json = { version = "1.0.132", default-features = false }
# --- Frontier (polkadot-evm) ---
# Runtime primitives
fp-account = { git = "https://github.com/polkadot-evm/frontier", branch = "stable2603", default-features = false, features = ["serde"] }
fp-ethereum = { git = "https://github.com/polkadot-evm/frontier", branch = "stable2603", default-features = false }
fp-evm = { git = "https://github.com/polkadot-evm/frontier", branch = "stable2603", default-features = false }
fp-rpc = { git = "https://github.com/polkadot-evm/frontier", branch = "stable2603", default-features = false }
fp-self-contained = { git = "https://github.com/polkadot-evm/frontier", branch = "stable2603", default-features = false }
# Runtime pallets
pallet-base-fee = { git = "https://github.com/polkadot-evm/frontier", branch = "stable2603", default-features = false }
pallet-dynamic-fee = { git = "https://github.com/polkadot-evm/frontier", branch = "stable2603", default-features = false }
pallet-ethereum = { git = "https://github.com/polkadot-evm/frontier", branch = "stable2603", default-features = false }
pallet-evm = { git = "https://github.com/polkadot-evm/frontier", branch = "stable2603", default-features = false }
pallet-evm-chain-id = { git = "https://github.com/polkadot-evm/frontier", branch = "stable2603", default-features = false }
pallet-evm-precompile-modexp = { git = "https://github.com/polkadot-evm/frontier", branch = "stable2603", default-features = false }
pallet-evm-precompile-sha3fips = { git = "https://github.com/polkadot-evm/frontier", branch = "stable2603", default-features = false }
pallet-evm-precompile-simple = { git = "https://github.com/polkadot-evm/frontier", branch = "stable2603", default-features = false }
# Node-side client crates
fc-api = { git = "https://github.com/polkadot-evm/frontier", branch = "stable2603" }
fc-consensus = { git = "https://github.com/polkadot-evm/frontier", branch = "stable2603" }
fc-db = { git = "https://github.com/polkadot-evm/frontier", branch = "stable2603", default-features = false }
fc-mapping-sync = { git = "https://github.com/polkadot-evm/frontier", branch = "stable2603", default-features = false }
fc-rpc = { git = "https://github.com/polkadot-evm/frontier", branch = "stable2603", default-features = false }
fc-rpc-core = { git = "https://github.com/polkadot-evm/frontier", branch = "stable2603" }
fc-storage = { git = "https://github.com/polkadot-evm/frontier", branch = "stable2603" }
# --- Polkadot SDK — Cumulus (used by Frontier for storage-proof-size host fn) ---
cumulus-primitives-proof-size-hostfunction = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
# --- Polkadot SDK — Substrate primitives (sp-*) ---
sp-api = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
sp-block-builder = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
sp-blockchain = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
sp-consensus = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
sp-consensus-babe = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
sp-consensus-grandpa = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
sp-core = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
sp-genesis-builder = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
sp-inherents = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
sp-io = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
sp-keyring = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
sp-keystore = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
sp-offchain = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
sp-runtime = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
sp-session = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
sp-staking = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
sp-storage = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
sp-timestamp = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
sp-transaction-pool = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
sp-version = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
# --- Polkadot SDK — FRAME ---
frame-election-provider-support = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
frame-executive = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
frame-metadata-hash-extension = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
frame-support = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
frame-system = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
frame-system-rpc-runtime-api = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
pallet-authorship = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
pallet-babe = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
pallet-balances = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
pallet-conviction-voting = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
pallet-grandpa = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
pallet-identity = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
pallet-im-online = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
pallet-multisig = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
pallet-offences = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
pallet-preimage = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
pallet-proxy = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
pallet-referenda = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
pallet-scheduler = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
pallet-session = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
pallet-staking = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
pallet-staking-reward-curve = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
pallet-staking-runtime-api = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
pallet-timestamp = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
pallet-transaction-payment = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
pallet-treasury = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
pallet-transaction-payment-rpc = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
pallet-transaction-payment-rpc-runtime-api = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
pallet-utility = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
# --- Polkadot SDK — Client crates (sc-*) ---
sc-basic-authorship = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
sc-cli = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
sc-client-api = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
sc-consensus = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
sc-consensus-babe = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
sc-consensus-babe-rpc = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
sc-consensus-grandpa = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
sc-consensus-grandpa-rpc = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
sc-executor = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
sc-network = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
sc-network-sync = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
sc-offchain = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
sc-rpc = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
sc-service = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
sc-telemetry = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
sc-transaction-pool = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
sc-transaction-pool-api = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
substrate-build-script-utils = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
substrate-frame-rpc-system = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
substrate-wasm-builder = { git = "https://github.com/paritytech/polkadot-sdk", branch = "stable2603", default-features = false }
# --- Internal ---
substrate-tutorial-keyring = { path = "keyring", default-features = false }
substrate-tutorial-runtime = { path = "runtime", default-features = false }
# =============================================================================
# Profiles
# =============================================================================
[profile.release]
panic = "unwind"
opt-level = 3
[profile.production]
inherits = "release"
lto = "fat"
codegen-units = 1