forked from paritytech/substrate
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathCargo.toml
652 lines (643 loc) · 30 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
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
[workspace]
resolver = "2"
members = [
#"bin/node-template/node",
#"bin/node-template/pallets/template",
"bin/node-template/runtime",
#"bin/node/bench",
#"bin/node/cli",
#"bin/node/test-runner-example",
#"bin/node/executor",
#"bin/node/primitives",
#"bin/node/rpc",
#"bin/node/rpc-client",
#"bin/node/runtime",
#"bin/node/testing",
#"bin/utils/chain-spec-builder",
#"bin/utils/subkey",
"client/api",
"client/authority-discovery",
"client/basic-authorship",
"client/basic-authorship-ver",
"client/beefy",
"client/beefy/rpc",
"client/block-builder",
"client/block-builder-ver",
"client/chain-spec",
"client/chain-spec/derive",
"client/cli",
"client/consensus/aura",
"client/consensus/babe",
"client/consensus/babe/rpc",
"client/consensus/common",
"client/consensus/epochs",
"client/consensus/manual-seal",
"client/consensus/pow",
"client/consensus/slots",
"client/consensus/uncles",
"client/db",
"client/executor",
"client/executor/common",
"client/executor/runtime-test",
"client/executor/wasmi",
"client/executor/wasmtime",
"client/finality-grandpa",
"client/informant",
"client/keystore",
"client/network",
"client/network-gossip",
"client/network/bitswap",
"client/network/common",
"client/network/light",
"client/network/sync",
"client/network/test",
"client/offchain",
"client/peerset",
"client/allocator",
"client/proposer-metrics",
"client/rpc",
"client/rpc-api",
"client/rpc-servers",
"client/rpc-spec-v2",
"client/service",
"client/service/test",
"client/state-db",
"client/sysinfo",
"client/sync-state-rpc",
"client/telemetry",
"client/tracing",
"client/tracing/proc-macro",
"client/transaction-pool",
"client/transaction-pool/api",
"client/utils",
"frame/alliance",
"frame/assets",
"frame/atomic-swap",
"frame/aura",
"frame/authority-discovery",
"frame/authorship",
"frame/babe",
"frame/bags-list",
"frame/bags-list/fuzzer",
"frame/bags-list/remote-tests",
"frame/balances",
"frame/beefy",
"frame/beefy-mmr",
"frame/beefy-mmr/primitives",
"frame/benchmarking",
"frame/bounties",
"frame/child-bounties",
"frame/collective",
"frame/collective-mangata",
"frame/contracts",
"frame/contracts/primitives",
"frame/conviction-voting",
"frame/democracy",
"frame/fast-unstake",
"frame/try-runtime",
"frame/election-provider-multi-phase",
"frame/election-provider-support",
"frame/election-provider-support/benchmarking",
"frame/election-provider-support/solution-type",
"frame/election-provider-support/solution-type/fuzzer",
"frame/examples/basic",
"frame/examples/offchain-worker",
"frame/examples/parallel",
"frame/executive",
"frame/gilt",
"frame/grandpa",
"frame/identity",
"frame/im-online",
"frame/indices",
"frame/lottery",
"frame/membership",
"frame/merkle-mountain-range",
"frame/merkle-mountain-range/rpc",
"frame/multisig",
"frame/nicks",
"frame/node-authorization",
"frame/offences",
"frame/preimage",
"frame/proxy",
"frame/nomination-pools",
"frame/nomination-pools/benchmarking",
"frame/nomination-pools/test-staking",
"frame/nomination-pools/runtime-api",
"frame/randomness-collective-flip",
"frame/ranked-collective",
"frame/recovery",
"frame/referenda",
"frame/remark",
"frame/scheduler",
"frame/scored-pool",
"frame/session",
"frame/session/benchmarking",
"frame/society",
"frame/staking",
"frame/staking/reward-curve",
"frame/staking/reward-fn",
"frame/state-trie-migration",
"frame/sudo",
"frame/sudo-mangata",
"frame/support",
"frame/support/procedural",
"frame/support/procedural/tools",
"frame/support/procedural/tools/derive",
"frame/support/test",
"frame/support/test/compile_pass",
"frame/system",
"frame/system/benchmarking",
"frame/system/rpc/runtime-api",
"frame/timestamp",
"frame/transaction-payment",
"frame/transaction-payment/asset-tx-payment",
"frame/transaction-payment/rpc",
"frame/transaction-payment/rpc/runtime-api",
"frame/transaction-storage",
"frame/treasury",
"frame/tips",
"frame/uniques",
"frame/utility",
"frame/vesting",
"frame/whitelist",
"frame/vesting-mangata",
"primitives/api",
"primitives/api/proc-macro",
"primitives/api/test",
"primitives/application-crypto",
"primitives/application-crypto/test",
"primitives/arithmetic",
"primitives/arithmetic/fuzzer",
"primitives/authority-discovery",
"primitives/authorship",
"primitives/beefy",
"primitives/block-builder",
"primitives/blockchain",
"primitives/consensus/aura",
"primitives/consensus/babe",
"primitives/consensus/common",
"primitives/mangata-types",
"primitives/consensus/pow",
"primitives/consensus/vrf",
"primitives/core",
"primitives/core/hashing",
"primitives/core/hashing/proc-macro",
"primitives/database",
"primitives/debug-derive",
"primitives/externalities",
"primitives/ver-api",
"primitives/finality-grandpa",
"primitives/inherents",
"primitives/io",
"primitives/keyring",
"primitives/keystore",
"primitives/maybe-compressed-blob",
"primitives/merkle-mountain-range",
"primitives/npos-elections",
"primitives/npos-elections/fuzzer",
"primitives/offchain",
"primitives/panic-handler",
"primitives/rpc",
"primitives/runtime",
"primitives/runtime-interface",
"primitives/runtime-interface/proc-macro",
"primitives/runtime-interface/test",
"primitives/runtime-interface/test-wasm",
"primitives/runtime-interface/test-wasm-deprecated",
"primitives/sandbox",
"primitives/serializer",
"primitives/session",
"primitives/shuffler",
"primitives/staking",
"primitives/state-machine",
"primitives/std",
"primitives/storage",
"primitives/tasks",
"primitives/test-primitives",
"primitives/timestamp",
"primitives/tracing",
"primitives/transaction-pool",
"primitives/transaction-storage-proof",
"primitives/trie",
"primitives/version",
"primitives/ver",
"primitives/version/proc-macro",
"primitives/wasm-interface",
"primitives/weights",
"test-utils/client",
"test-utils/derive",
"test-utils/runtime",
"test-utils/runtime/client",
"test-utils/runtime/transaction-pool",
"test-utils/test-crate",
"utils/build-script-utils",
"utils/fork-tree",
"utils/frame/benchmarking-cli",
"utils/frame/remote-externalities",
"utils/frame/frame-utilities-cli",
"utils/frame/try-runtime/cli",
"utils/frame/rpc/state-trie-migration-rpc",
"utils/frame/rpc/support",
"utils/frame/rpc/system",
"utils/frame/generate-bags",
"utils/frame/generate-bags/node-runtime",
"utils/frame/rpc/client",
"utils/prometheus",
"utils/wasm-builder",
]
# The list of dependencies below (which can be both direct and indirect dependencies) are crates
# that are suspected to be CPU-intensive, and that are unlikely to require debugging (as some of
# their debug info might be missing) or to require to be frequently recompiled. We compile these
# dependencies with `opt-level=3` even in "dev" mode in order to make "dev" mode more usable.
# The majority of these crates are cryptographic libraries.
#
# Note that this does **not** affect crates that depend on Substrate. In other words, if you add
# a dependency on Substrate, you have to copy-paste this list in your own `Cargo.toml` (assuming
# that you want the same list). This list is only relevant when running `cargo build` from within
# the Substrate workspace.
#
# If you see an error mentioning "profile package spec ... did not match any packages", it
# probably concerns this list.
#
# This list is ordered alphabetically.
[profile.dev.package]
blake2 = { opt-level = 3 }
blake2-rfc = { opt-level = 3 }
blake2b_simd = { opt-level = 3 }
chacha20poly1305 = { opt-level = 3 }
cranelift-codegen = { opt-level = 3 }
cranelift-wasm = { opt-level = 3 }
crc32fast = { opt-level = 3 }
crossbeam-deque = { opt-level = 3 }
crypto-mac = { opt-level = 3 }
curve25519-dalek = { opt-level = 3 }
ed25519-zebra = { opt-level = 3 }
flate2 = { opt-level = 3 }
futures-channel = { opt-level = 3 }
hashbrown = { opt-level = 3 }
hash-db = { opt-level = 3 }
hmac = { opt-level = 3 }
httparse = { opt-level = 3 }
integer-sqrt = { opt-level = 3 }
k256 = { opt-level = 3 }
keccak = { opt-level = 3 }
libm = { opt-level = 3 }
librocksdb-sys = { opt-level = 3 }
libsecp256k1 = { opt-level = 3 }
libz-sys = { opt-level = 3 }
mio = { opt-level = 3 }
nalgebra = { opt-level = 3 }
num-bigint = { opt-level = 3 }
parking_lot = { opt-level = 3 }
parking_lot_core = { opt-level = 3 }
percent-encoding = { opt-level = 3 }
primitive-types = { opt-level = 3 }
ring = { opt-level = 3 }
rustls = { opt-level = 3 }
secp256k1 = { opt-level = 3 }
sha2 = { opt-level = 3 }
sha3 = { opt-level = 3 }
smallvec = { opt-level = 3 }
snow = { opt-level = 3 }
twox-hash = { opt-level = 3 }
uint = { opt-level = 3 }
wasmi = { opt-level = 3 }
x25519-dalek = { opt-level = 3 }
yamux = { opt-level = 3 }
zeroize = { opt-level = 3 }
[profile.release]
# Substrate runtime requires unwinding.
panic = "unwind"
# patch generated by ./scripts/dev_manifest.sh
[patch."https://github.com/mangata-finance/substrate"]
sp-debug-derive = { path = "../substrate/primitives/debug-derive" }
sp-tasks = { path = "../substrate/primitives/tasks" }
extrinsic-shuffler = { path = "../substrate/primitives/shuffler" }
sp-authorship = { path = "../substrate/primitives/authorship" }
sp-storage = { path = "../substrate/primitives/storage" }
sp-timestamp = { path = "../substrate/primitives/timestamp" }
sp-trie = { path = "../substrate/primitives/trie" }
sp-block-builder = { path = "../substrate/primitives/block-builder" }
sp-keystore = { path = "../substrate/primitives/keystore" }
sp-panic-handler = { path = "../substrate/primitives/panic-handler" }
sp-database = { path = "../substrate/primitives/database" }
sp-transaction-storage-proof = { path = "../substrate/primitives/transaction-storage-proof" }
# sp-npos-elections-solution-type = { path = "../substrate/primitives/npos-elections/solution-type" }
sp-npos-elections = { path = "../substrate/primitives/npos-elections" }
sp-serializer = { path = "../substrate/primitives/serializer" }
sp-version-proc-macro = { path = "../substrate/primitives/version/proc-macro" }
sp-version = { path = "../substrate/primitives/version" }
sp-application-crypto = { path = "../substrate/primitives/application-crypto" }
sp-wasm-interface = { path = "../substrate/primitives/wasm-interface" }
ver-api = { path = "../substrate/primitives/ver-api" }
sp-maybe-compressed-blob = { path = "../substrate/primitives/maybe-compressed-blob" }
sp-tracing = { path = "../substrate/primitives/tracing" }
sp-std = { path = "../substrate/primitives/std" }
sp-offchain = { path = "../substrate/primitives/offchain" }
sp-state-machine = { path = "../substrate/primitives/state-machine" }
sp-keyring = { path = "../substrate/primitives/keyring" }
sp-externalities = { path = "../substrate/primitives/externalities" }
beefy-primitives = { path = "../substrate/primitives/beefy" }
sp-session = { path = "../substrate/primitives/session" }
sp-runtime-interface-proc-macro = { path = "../substrate/primitives/runtime-interface/proc-macro" }
sp-runtime-interface = { path = "../substrate/primitives/runtime-interface" }
sp-core-hashing-proc-macro = { path = "../substrate/primitives/core/hashing/proc-macro" }
sp-core-hashing = { path = "../substrate/primitives/core/hashing" }
sp-core = { path = "../substrate/primitives/core" }
sp-arithmetic = { path = "../substrate/primitives/arithmetic" }
sp-inherents = { path = "../substrate/primitives/inherents" }
sp-runtime = { path = "../substrate/primitives/runtime" }
sp-consensus-slots = { path = "../substrate/primitives/consensus/slots" }
sp-consensus-babe = { path = "../substrate/primitives/consensus/babe" }
sp-consensus-aura = { path = "../substrate/primitives/consensus/aura" }
sp-consensus-vrf = { path = "../substrate/primitives/consensus/vrf" }
sp-consensus = { path = "../substrate/primitives/consensus/common" }
sp-ver = { path = "../substrate/primitives/ver" }
sp-rpc = { path = "../substrate/primitives/rpc" }
sp-authority-discovery = { path = "../substrate/primitives/authority-discovery" }
sp-transaction-pool = { path = "../substrate/primitives/transaction-pool" }
sp-io = { path = "../substrate/primitives/io" }
sp-staking = { path = "../substrate/primitives/staking" }
sp-finality-grandpa = { path = "../substrate/primitives/finality-grandpa" }
sp-api-proc-macro = { path = "../substrate/primitives/api/proc-macro" }
sp-api = { path = "../substrate/primitives/api" }
sp-blockchain = { path = "../substrate/primitives/blockchain" }
sc-allocator = { path = "../substrate/client/allocator" }
sc-cli = { path = "../substrate/client/cli" }
sc-executor-wasmtime = { path = "../substrate/client/executor/wasmtime" }
sc-executor-wasmi = { path = "../substrate/client/executor/wasmi" }
sc-executor = { path = "../substrate/client/executor" }
sc-executor-common = { path = "../substrate/client/executor/common" }
sc-block-builder = { path = "../substrate/client/block-builder" }
sc-rpc-server = { path = "../substrate/client/rpc-servers" }
sc-keystore = { path = "../substrate/client/keystore" }
sc-telemetry = { path = "../substrate/client/telemetry" }
sc-network-gossip = { path = "../substrate/client/network-gossip" }
sc-basic-authorship-ver = { path = "../substrate/client/basic-authorship-ver" }
sc-state-db = { path = "../substrate/client/state-db" }
sc-service = { path = "../substrate/client/service" }
sc-client-db = { path = "../substrate/client/db" }
sc-rpc-api = { path = "../substrate/client/rpc-api" }
sc-basic-authorship = { path = "../substrate/client/basic-authorship" }
sc-block-builder-ver = { path = "../substrate/client/block-builder-ver" }
sc-sync-state-rpc = { path = "../substrate/client/sync-state-rpc" }
sc-tracing-proc-macro = { path = "../substrate/client/tracing/proc-macro" }
sc-tracing = { path = "../substrate/client/tracing" }
sc-chain-spec = { path = "../substrate/client/chain-spec" }
sc-chain-spec-derive = { path = "../substrate/client/chain-spec/derive" }
sc-offchain = { path = "../substrate/client/offchain" }
sc-utils = { path = "../substrate/client/utils" }
beefy-gadget = { path = "../substrate/client/beefy" }
beefy-gadget-rpc = { path = "../substrate/client/beefy/rpc" }
sc-proposer-metrics = { path = "../substrate/client/proposer-metrics" }
sc-consensus-slots = { path = "../substrate/client/consensus/slots" }
sc-consensus-babe = { path = "../substrate/client/consensus/babe" }
sc-consensus-babe-rpc = { path = "../substrate/client/consensus/babe/rpc" }
sc-consensus-epochs = { path = "../substrate/client/consensus/epochs" }
sc-consensus-uncles = { path = "../substrate/client/consensus/uncles" }
sc-consensus-aura = { path = "../substrate/client/consensus/aura" }
sc-consensus = { path = "../substrate/client/consensus/common" }
sc-rpc = { path = "../substrate/client/rpc" }
sc-authority-discovery = { path = "../substrate/client/authority-discovery" }
sc-informant = { path = "../substrate/client/informant" }
sc-transaction-pool = { path = "../substrate/client/transaction-pool" }
sc-transaction-pool-api = { path = "../substrate/client/transaction-pool/api" }
sc-finality-grandpa = { path = "../substrate/client/finality-grandpa" }
sc-finality-grandpa-rpc = { path = "../substrate/client/finality-grandpa/rpc" }
sc-client-api = { path = "../substrate/client/api" }
sc-peerset = { path = "../substrate/client/peerset" }
sc-network = { path = "../substrate/client/network" }
substrate-test-client = { path = "../substrate/test-utils/client" }
substrate-wasm-builder = { path = "../substrate/utils/wasm-builder" }
substrate-prometheus-endpoint = { path = "../substrate/utils/prometheus" }
substrate-build-script-utils = { path = "../substrate/utils/build-script-utils" }
fork-tree = { path = "../substrate/utils/fork-tree" }
frame-benchmarking-cli = { path = "../substrate/utils/frame/benchmarking-cli" }
remote-externalities = { path = "../substrate/utils/frame/remote-externalities" }
try-runtime-cli = { path = "../substrate/utils/frame/try-runtime/cli" }
substrate-frame-rpc-system = { path = "../substrate/utils/frame/rpc/system" }
pallet-vesting-mangata = { path = "../substrate/frame/vesting-mangata" }
#pallet-mmr-primitives = { path = "../substrate/frame/merkle-mountain-range/primitives" }
pallet-mmr = { path = "../substrate/frame/merkle-mountain-range" }
pallet-mmr-rpc = { path = "../substrate/frame/merkle-mountain-range/rpc" }
pallet-transaction-payment = { path = "../substrate/frame/transaction-payment" }
pallet-transaction-payment-rpc = { path = "../substrate/frame/transaction-payment/rpc" }
pallet-transaction-payment-rpc-runtime-api = { path = "../substrate/frame/transaction-payment/rpc/runtime-api" }
pallet-authorship = { path = "../substrate/frame/authorship" }
pallet-identity = { path = "../substrate/frame/identity" }
pallet-timestamp = { path = "../substrate/frame/timestamp" }
pallet-membership = { path = "../substrate/frame/membership" }
pallet-babe = { path = "../substrate/frame/babe" }
pallet-offences = { path = "../substrate/frame/offences" }
pallet-nicks = { path = "../substrate/frame/nicks" }
pallet-im-online = { path = "../substrate/frame/im-online" }
pallet-utility = { path = "../substrate/frame/utility" }
pallet-sudo = { path = "../substrate/frame/sudo" }
pallet-bags-list = { path = "../substrate/frame/bags-list" }
frame-system = { path = "../substrate/frame/system" }
frame-system-rpc-runtime-api = { path = "../substrate/frame/system/rpc/runtime-api" }
frame-support-procedural = { path = "../substrate/frame/support/procedural" }
frame-support-procedural-tools = { path = "../substrate/frame/support/procedural/tools" }
frame-support-procedural-tools-derive = { path = "../substrate/frame/support/procedural/tools/derive" }
frame-support = { path = "../substrate/frame/support" }
pallet-aura = { path = "../substrate/frame/aura" }
beefy-merkle-tree = { path = "../substrate/frame/beefy-mmr/primitives" }
pallet-beefy-mmr = { path = "../substrate/frame/beefy-mmr" }
pallet-vesting = { path = "../substrate/frame/vesting" }
frame-benchmarking = { path = "../substrate/frame/benchmarking" }
pallet-preimage = { path = "../substrate/frame/preimage" }
pallet-democracy = { path = "../substrate/frame/democracy" }
frame-executive = { path = "../substrate/frame/executive" }
pallet-treasury = { path = "../substrate/frame/treasury" }
pallet-indices = { path = "../substrate/frame/indices" }
pallet-gilt = { path = "../substrate/frame/gilt" }
pallet-election-provider-multi-phase = { path = "../substrate/frame/election-provider-multi-phase" }
pallet-tips = { path = "../substrate/frame/tips" }
frame-try-runtime = { path = "../substrate/frame/try-runtime" }
pallet-recovery = { path = "../substrate/frame/recovery" }
pallet-beefy = { path = "../substrate/frame/beefy" }
pallet-collective = { path = "../substrate/frame/collective" }
pallet-session = { path = "../substrate/frame/session" }
pallet-bounties = { path = "../substrate/frame/bounties" }
pallet-elections-phragmen = { path = "../substrate/frame/elections-phragmen" }
pallet-scheduler = { path = "../substrate/frame/scheduler" }
pallet-authority-discovery = { path = "../substrate/frame/authority-discovery" }
frame-election-provider-support = { path = "../substrate/frame/election-provider-support" }
pallet-staking-reward-curve = { path = "../substrate/frame/staking/reward-curve" }
pallet-staking = { path = "../substrate/frame/staking" }
pallet-staking-reward-fn = { path = "../substrate/frame/staking/reward-fn" }
pallet-grandpa = { path = "../substrate/frame/grandpa" }
pallet-proxy = { path = "../substrate/frame/proxy" }
pallet-balances = { path = "../substrate/frame/balances" }
pallet-multisig = { path = "../substrate/frame/multisig" }
pallet-society = { path = "../substrate/frame/society" }
# patch generated by ./scripts/dev_manifest.sh
[patch."https://github.com/paritytech/substrate"]
sp-debug-derive = { path = "../substrate/primitives/debug-derive" }
sp-tasks = { path = "../substrate/primitives/tasks" }
extrinsic-shuffler = { path = "../substrate/primitives/shuffler" }
sp-authorship = { path = "../substrate/primitives/authorship" }
sp-storage = { path = "../substrate/primitives/storage" }
sp-timestamp = { path = "../substrate/primitives/timestamp" }
sp-trie = { path = "../substrate/primitives/trie" }
sp-block-builder = { path = "../substrate/primitives/block-builder" }
sp-keystore = { path = "../substrate/primitives/keystore" }
sp-panic-handler = { path = "../substrate/primitives/panic-handler" }
sp-database = { path = "../substrate/primitives/database" }
sp-transaction-storage-proof = { path = "../substrate/primitives/transaction-storage-proof" }
# sp-npos-elections-solution-type = { path = "../substrate/primitives/npos-elections/solution-type" }
sp-npos-elections = { path = "../substrate/primitives/npos-elections" }
sp-serializer = { path = "../substrate/primitives/serializer" }
sp-version-proc-macro = { path = "../substrate/primitives/version/proc-macro" }
sp-version = { path = "../substrate/primitives/version" }
sp-application-crypto = { path = "../substrate/primitives/application-crypto" }
sp-wasm-interface = { path = "../substrate/primitives/wasm-interface" }
ver-api = { path = "../substrate/primitives/ver-api" }
sp-maybe-compressed-blob = { path = "../substrate/primitives/maybe-compressed-blob" }
sp-tracing = { path = "../substrate/primitives/tracing" }
sp-std = { path = "../substrate/primitives/std" }
sp-offchain = { path = "../substrate/primitives/offchain" }
sp-state-machine = { path = "../substrate/primitives/state-machine" }
sp-keyring = { path = "../substrate/primitives/keyring" }
sp-externalities = { path = "../substrate/primitives/externalities" }
beefy-primitives = { path = "../substrate/primitives/beefy" }
sp-session = { path = "../substrate/primitives/session" }
sp-runtime-interface-proc-macro = { path = "../substrate/primitives/runtime-interface/proc-macro" }
sp-runtime-interface = { path = "../substrate/primitives/runtime-interface" }
sp-core-hashing-proc-macro = { path = "../substrate/primitives/core/hashing/proc-macro" }
sp-core-hashing = { path = "../substrate/primitives/core/hashing" }
sp-core = { path = "../substrate/primitives/core" }
sp-arithmetic = { path = "../substrate/primitives/arithmetic" }
sp-inherents = { path = "../substrate/primitives/inherents" }
sp-runtime = { path = "../substrate/primitives/runtime" }
sp-consensus-slots = { path = "../substrate/primitives/consensus/slots" }
sp-consensus-babe = { path = "../substrate/primitives/consensus/babe" }
sp-consensus-aura = { path = "../substrate/primitives/consensus/aura" }
sp-consensus-vrf = { path = "../substrate/primitives/consensus/vrf" }
sp-consensus = { path = "../substrate/primitives/consensus/common" }
sp-ver = { path = "../substrate/primitives/ver" }
sp-rpc = { path = "../substrate/primitives/rpc" }
sp-authority-discovery = { path = "../substrate/primitives/authority-discovery" }
sp-transaction-pool = { path = "../substrate/primitives/transaction-pool" }
sp-io = { path = "../substrate/primitives/io" }
sp-staking = { path = "../substrate/primitives/staking" }
sp-finality-grandpa = { path = "../substrate/primitives/finality-grandpa" }
sp-api-proc-macro = { path = "../substrate/primitives/api/proc-macro" }
sp-api = { path = "../substrate/primitives/api" }
sp-blockchain = { path = "../substrate/primitives/blockchain" }
sc-allocator = { path = "../substrate/client/allocator" }
sc-cli = { path = "../substrate/client/cli" }
sc-executor-wasmtime = { path = "../substrate/client/executor/wasmtime" }
sc-executor-wasmi = { path = "../substrate/client/executor/wasmi" }
sc-executor = { path = "../substrate/client/executor" }
sc-executor-common = { path = "../substrate/client/executor/common" }
sc-block-builder = { path = "../substrate/client/block-builder" }
sc-rpc-server = { path = "../substrate/client/rpc-servers" }
sc-keystore = { path = "../substrate/client/keystore" }
sc-telemetry = { path = "../substrate/client/telemetry" }
sc-network-gossip = { path = "../substrate/client/network-gossip" }
sc-basic-authorship-ver = { path = "../substrate/client/basic-authorship-ver" }
sc-state-db = { path = "../substrate/client/state-db" }
sc-service = { path = "../substrate/client/service" }
sc-client-db = { path = "../substrate/client/db" }
sc-rpc-api = { path = "../substrate/client/rpc-api" }
sc-basic-authorship = { path = "../substrate/client/basic-authorship" }
sc-block-builder-ver = { path = "../substrate/client/block-builder-ver" }
sc-sync-state-rpc = { path = "../substrate/client/sync-state-rpc" }
sc-tracing-proc-macro = { path = "../substrate/client/tracing/proc-macro" }
sc-tracing = { path = "../substrate/client/tracing" }
sc-chain-spec = { path = "../substrate/client/chain-spec" }
sc-chain-spec-derive = { path = "../substrate/client/chain-spec/derive" }
sc-offchain = { path = "../substrate/client/offchain" }
sc-utils = { path = "../substrate/client/utils" }
beefy-gadget = { path = "../substrate/client/beefy" }
beefy-gadget-rpc = { path = "../substrate/client/beefy/rpc" }
sc-proposer-metrics = { path = "../substrate/client/proposer-metrics" }
sc-consensus-slots = { path = "../substrate/client/consensus/slots" }
sc-consensus-babe = { path = "../substrate/client/consensus/babe" }
sc-consensus-babe-rpc = { path = "../substrate/client/consensus/babe/rpc" }
sc-consensus-epochs = { path = "../substrate/client/consensus/epochs" }
sc-consensus-uncles = { path = "../substrate/client/consensus/uncles" }
sc-consensus-aura = { path = "../substrate/client/consensus/aura" }
sc-consensus = { path = "../substrate/client/consensus/common" }
sc-rpc = { path = "../substrate/client/rpc" }
sc-authority-discovery = { path = "../substrate/client/authority-discovery" }
sc-informant = { path = "../substrate/client/informant" }
sc-transaction-pool = { path = "../substrate/client/transaction-pool" }
sc-transaction-pool-api = { path = "../substrate/client/transaction-pool/api" }
sc-finality-grandpa = { path = "../substrate/client/finality-grandpa" }
sc-finality-grandpa-rpc = { path = "../substrate/client/finality-grandpa/rpc" }
sc-client-api = { path = "../substrate/client/api" }
sc-peerset = { path = "../substrate/client/peerset" }
sc-network = { path = "../substrate/client/network" }
substrate-test-client = { path = "../substrate/test-utils/client" }
substrate-wasm-builder = { path = "../substrate/utils/wasm-builder" }
substrate-prometheus-endpoint = { path = "../substrate/utils/prometheus" }
substrate-build-script-utils = { path = "../substrate/utils/build-script-utils" }
fork-tree = { path = "../substrate/utils/fork-tree" }
frame-benchmarking-cli = { path = "../substrate/utils/frame/benchmarking-cli" }
remote-externalities = { path = "../substrate/utils/frame/remote-externalities" }
try-runtime-cli = { path = "../substrate/utils/frame/try-runtime/cli" }
substrate-frame-rpc-system = { path = "../substrate/utils/frame/rpc/system" }
pallet-vesting-mangata = { path = "../substrate/frame/vesting-mangata" }
#pallet-mmr-primitives = { path = "../substrate/frame/merkle-mountain-range/primitives" }
pallet-mmr = { path = "../substrate/frame/merkle-mountain-range" }
pallet-mmr-rpc = { path = "../substrate/frame/merkle-mountain-range/rpc" }
pallet-transaction-payment = { path = "../substrate/frame/transaction-payment" }
pallet-transaction-payment-rpc = { path = "../substrate/frame/transaction-payment/rpc" }
pallet-transaction-payment-rpc-runtime-api = { path = "../substrate/frame/transaction-payment/rpc/runtime-api" }
pallet-authorship = { path = "../substrate/frame/authorship" }
pallet-identity = { path = "../substrate/frame/identity" }
pallet-timestamp = { path = "../substrate/frame/timestamp" }
pallet-membership = { path = "../substrate/frame/membership" }
pallet-babe = { path = "../substrate/frame/babe" }
pallet-offences = { path = "../substrate/frame/offences" }
pallet-nicks = { path = "../substrate/frame/nicks" }
pallet-im-online = { path = "../substrate/frame/im-online" }
pallet-utility = { path = "../substrate/frame/utility" }
pallet-sudo = { path = "../substrate/frame/sudo" }
pallet-bags-list = { path = "../substrate/frame/bags-list" }
frame-system = { path = "../substrate/frame/system" }
frame-system-rpc-runtime-api = { path = "../substrate/frame/system/rpc/runtime-api" }
frame-support-procedural = { path = "../substrate/frame/support/procedural" }
frame-support-procedural-tools = { path = "../substrate/frame/support/procedural/tools" }
frame-support-procedural-tools-derive = { path = "../substrate/frame/support/procedural/tools/derive" }
frame-support = { path = "../substrate/frame/support" }
pallet-aura = { path = "../substrate/frame/aura" }
beefy-merkle-tree = { path = "../substrate/frame/beefy-mmr/primitives" }
pallet-beefy-mmr = { path = "../substrate/frame/beefy-mmr" }
pallet-vesting = { path = "../substrate/frame/vesting" }
frame-benchmarking = { path = "../substrate/frame/benchmarking" }
pallet-preimage = { path = "../substrate/frame/preimage" }
pallet-democracy = { path = "../substrate/frame/democracy" }
frame-executive = { path = "../substrate/frame/executive" }
pallet-treasury = { path = "../substrate/frame/treasury" }
pallet-indices = { path = "../substrate/frame/indices" }
pallet-gilt = { path = "../substrate/frame/gilt" }
pallet-election-provider-multi-phase = { path = "../substrate/frame/election-provider-multi-phase" }
pallet-tips = { path = "../substrate/frame/tips" }
frame-try-runtime = { path = "../substrate/frame/try-runtime" }
pallet-recovery = { path = "../substrate/frame/recovery" }
pallet-beefy = { path = "../substrate/frame/beefy" }
pallet-collective = { path = "../substrate/frame/collective" }
pallet-session = { path = "../substrate/frame/session" }
pallet-bounties = { path = "../substrate/frame/bounties" }
pallet-elections-phragmen = { path = "../substrate/frame/elections-phragmen" }
pallet-scheduler = { path = "../substrate/frame/scheduler" }
pallet-authority-discovery = { path = "../substrate/frame/authority-discovery" }
frame-election-provider-support = { path = "../substrate/frame/election-provider-support" }
pallet-staking-reward-curve = { path = "../substrate/frame/staking/reward-curve" }
pallet-staking = { path = "../substrate/frame/staking" }
pallet-staking-reward-fn = { path = "../substrate/frame/staking/reward-fn" }
pallet-grandpa = { path = "../substrate/frame/grandpa" }
pallet-proxy = { path = "../substrate/frame/proxy" }
pallet-balances = { path = "../substrate/frame/balances" }
pallet-multisig = { path = "../substrate/frame/multisig" }
pallet-society = { path = "../substrate/frame/society" }
[profile.production]
inherits = "release"
# Sacrifice compile speed for execution speed by using optimization flags:
# https://doc.rust-lang.org/rustc/linker-plugin-lto.html
lto = "fat"
# https://doc.rust-lang.org/rustc/codegen-options/index.html#codegen-units
codegen-units = 1