forked from unionlabs/union
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathCargo.toml
More file actions
560 lines (511 loc) · 30 KB
/
Cargo.toml
File metadata and controls
560 lines (511 loc) · 30 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
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
[workspace]
resolver = "2"
# NOTE: All paths must be listed out (i.e. no globs) since ifd is still broken in nix (still can't import the output of `cargo metadata` :( ). See crane.nix for where this is used.
members = [
"cosmwasm/token-factory-api",
"cosmwasm/app/ucs03-zkgm",
"cosmwasm/multicall",
"cosmwasm/lst",
"cosmwasm/lst-staker",
"cosmwasm/core",
"cosmwasm/core/msg",
"cosmwasm/core/light-client-interface",
"devnet-compose",
"e2e/ensure-blocks",
"generated/rust/protos",
# "generated/rust/aptos-move-ibc",
"lib/beacon-api",
"lib/cometbft-rpc",
"lib/cosmos-client",
"lib/cometbft-types",
"lib/concurrent-keyring",
"lib/gnark-key-parser",
"lib/gnark-mimc",
"lib/ics23",
"lib/macros",
"lib/pg-queue",
"lib/subset-of-derive",
"lib/arbitrum-types",
"lib/arbitrum-client",
"lib/bob-types",
"lib/base-client",
"lib/bob-client",
"lib/serde-utils",
"lib/ssz",
"lib/ssz/tests-generator",
"lib/ssz-derive",
"lib/unionlabs",
"lib/unionlabs-primitives",
"lib/unionlabs-encoding",
"lib/galois-rpc",
"lib/cosmos-sdk-event",
"lib/frissitheto",
"lib/parlia-types",
"lib/ibc-solidity",
"lib/base-verifier",
"lib/bob-verifier",
"lib/arbitrum-verifier",
"lib/cometbls-groth16-verifier",
"lib/ethereum-sync-protocol",
"lib/ethereum-sync-protocol-types",
"lib/evm-storage-verifier",
"lib/parlia-verifier",
"lib/tendermint-verifier",
"lib/base-light-client-types",
"lib/bob-light-client-types",
"lib/arbitrum-light-client-types",
"lib/berachain-light-client-types",
"lib/cometbls-light-client-types",
"lib/tendermint-light-client-types",
"lib/ethereum-light-client-types",
"lib/ethermint-light-client-types",
"lib/movement-light-client-types",
"lib/parlia-light-client-types",
"lib/trusted-mpt-light-client-types",
"lib/attested-light-client-types",
"lib/state-lens-ics23-mpt-light-client-types",
"lib/state-lens-ics23-ics23-light-client-types",
"lib/state-lens-ics23-smt-light-client-types",
"lib/proof-lens-light-client-types",
"lib/sui-light-client-types",
"lib/sui-utils",
"cosmwasm/deployer",
"cosmwasm/lightclient/arbitrum",
"cosmwasm/lightclient/base",
"cosmwasm/lightclient/berachain",
"cosmwasm/lightclient/bob",
"cosmwasm/lightclient/cometbls",
"cosmwasm/lightclient/ethereum",
"cosmwasm/lightclient/ethermint",
"cosmwasm/lightclient/tendermint",
# "cosmwasm/lightclient/movement",
"cosmwasm/lightclient/parlia",
"cosmwasm/lightclient/trusted-mpt",
"cosmwasm/lightclient/attested",
"cosmwasm/lightclient/starknet",
"cosmwasm/lightclient/state-lens-ics23-mpt",
"cosmwasm/lightclient/proof-lens",
# "cosmwasm/lightclient/state-lens-ics23-smt",
"cosmwasm/lightclient/state-lens-ics23-ics23",
"cosmwasm/lightclient/sui",
"tools/devnet-utils",
"tools/build-evm-deployer-tx",
"tools/parse-wasm-client-type",
"tools/tidy",
# "tools/move-bindgen",
"tools/rustfmt-sort",
"lib/move-bindgen-derive",
"unionvisor",
"voyager",
"lib/voyager-message",
"lib/voyager-vm",
"lib/voyager-rpc",
"lib/voyager-core",
"lib/voyager-primitives",
"voyager/modules/state/cosmwasm",
"voyager/modules/state/evm",
# "voyager/modules/state/movement",
"voyager/modules/state/sui",
"voyager/modules/proof/attested",
"voyager/modules/proof/cosmwasm",
"voyager/modules/proof/ethermint",
"voyager/modules/proof/evm-mpt",
"voyager/modules/proof/parlia",
# "voyager/modules/proof/movement",
"voyager/modules/proof/sui",
"voyager/modules/client/base",
"voyager/modules/client/bob",
"voyager/modules/client/arbitrum",
"voyager/modules/client/cometbls",
"voyager/modules/client/ethereum",
# "voyager/modules/client/movement",
"voyager/modules/client/parlia",
"voyager/modules/client/tendermint",
"voyager/modules/client/ethermint",
"voyager/modules/client/state-lens/ics23-mpt",
"voyager/modules/client/state-lens/ics23-ics23",
"voyager/modules/client/state-lens/ics23-smt",
"voyager/modules/client/proof-lens",
"voyager/modules/client/sui",
"voyager/modules/client/trusted-mpt",
"voyager/modules/client/attested",
"voyager/modules/client-bootstrap/base",
"voyager/modules/client-bootstrap/bob",
"voyager/modules/client-bootstrap/arbitrum",
"voyager/modules/client-bootstrap/cometbls",
"voyager/modules/client-bootstrap/ethereum",
# "voyager/modules/client-bootstrap/movement",
"voyager/modules/client-bootstrap/parlia",
"voyager/modules/client-bootstrap/tendermint",
"voyager/modules/client-bootstrap/ethermint",
"voyager/modules/client-bootstrap/trusted-mpt",
"voyager/modules/client-bootstrap/state-lens/ics23-mpt",
"voyager/modules/client-bootstrap/state-lens/ics23-smt",
"voyager/modules/client-bootstrap/state-lens/ics23-ics23",
"voyager/modules/client-bootstrap/proof-lens",
"voyager/modules/client-bootstrap/sui",
"voyager/modules/client-bootstrap/attested",
"voyager/modules/finality/base",
"voyager/modules/finality/bob",
"voyager/modules/finality/arbitrum",
"voyager/modules/finality/berachain",
"voyager/modules/finality/cometbls",
"voyager/modules/finality/ethereum",
# "voyager/modules/finality/movement",
"voyager/modules/finality/parlia",
"voyager/modules/finality/tendermint",
"voyager/modules/finality/trusted-evm",
"voyager/modules/finality/sui",
"voyager/modules/finality/attested-evm",
"voyager/plugins/client-update/base",
"voyager/plugins/client-update/bob",
"voyager/plugins/client-update/arbitrum",
"voyager/plugins/client-update/berachain",
"voyager/plugins/client-update/cometbls",
"voyager/plugins/client-update/ethereum",
# "voyager/plugins/client-update/movement",
"voyager/plugins/client-update/parlia",
"voyager/plugins/client-update/tendermint",
"voyager/plugins/client-update/ethermint",
"voyager/plugins/client-update/state-lens",
"voyager/plugins/client-update/proof-lens",
"voyager/plugins/client-update/sui",
"voyager/plugins/client-update/trusted-mpt",
"voyager/plugins/client-update/attested",
"voyager/plugins/periodic-client-update",
"voyager/plugins/event-source/cosmwasm",
"voyager/plugins/event-source/evm",
# "voyager/plugins/event-source/movement",
"voyager/plugins/event-source/sui",
"voyager/plugins/event-source/starknet",
"voyager/plugins/transaction/cosmos",
"voyager/plugins/transaction/evm",
# "voyager/plugins/transaction/aptos",
"voyager/plugins/transaction/sui",
"voyager/plugins/packet-filter",
"voyager/plugins/packet-index",
"voyager/plugins/packet-batch",
"voyager/plugins/transaction-batch",
"voyager/plugins/transaction-batch-proof-lens",
"voyager/plugins/packet-timeout",
"voyager/plugins/zkgm-filter",
"voyager/plugins/sui-ibc-app",
"voyager/plugins/sui-packet-timeout",
"voyager/plugins/attestor/evm",
"drip",
# "lib/aptos-verifier",
"lib/reconnecting-jsonrpc-ws-client",
"lib/subset-of",
"lib/beacon-api-types",
"mpc/shared",
"mpc/client",
"mpc/coordinator",
"lib/ibc-union-spec",
"lib/ibc-classic-spec",
"lib/state-lens-light-client-types",
"lib/create3",
"cosmwasm/osmosis-tokenfactory-token-minter",
"cosmwasm/cw20-token-minter",
"cosmwasm/cw-account",
"cosmwasm/access-manager",
"cosmwasm/access-managed",
"cosmwasm/cw-escrow-vault",
"cosmwasm/cw-unionversal-token",
"cosmwasm/ucs03-zkgm-token-minter-api",
"cosmwasm/osmosis-tokenfactory-token-owner",
"cosmwasm/cw20-base",
"cosmwasm/cw20-wrapped-tokenfactory",
"cosmwasm/on-zkgm-call-proxy",
"lib/fork-schedules",
"lib/depolama",
"lib/embed-commit",
"lib/embed-commit/verifier",
"lib/ucs04",
"lib/deployments",
"lib/consensus-primitives",
"lib/solidity-slot",
"tools/u",
"lib/chain-kitchen",
"tools/json-schema-to-nixos-module-options",
"lib/voyager-types",
"lib/voyager-client",
"lib/voyager-plugin",
"lib/voyager-sdk",
"lib/voyager-plugin-protocol",
"lib/wasm-client-type",
"lib/sui-verifier",
"lib/ucs03-zkgm-packet",
"tools/update-deployments",
"tools/union-test",
"lib/cw20-ctx",
"lib/ucs03-zkgmable",
"lib/ucs03-solvable",
"lib/access-manager-types",
"e2e/access-manager-tests",
"e2e/access-managed-example",
"lib/aptos-types",
"lib/cosmos-signer",
"lib/starknet-storage-verifier",
"cosmwasm/upgradable",
"cosmwasm/pausable",
"cosmwasm/gatekeeper",
"cosmwasm/proxy-account-factory",
"lib/starknet-verifier",
"lib/starknet-types",
"lib/starknet-light-client-types",
"lib/cosmwasm-event",
]
[workspace.package]
authors = ["Union Labs"]
edition = "2024"
license-file = "LICENSE"
publish = false
repository = "https://github.com/unionlabs/union"
[workspace.metadata.cargo-machete]
ignored = ["embed-commit"]
[workspace.lints.clippy]
disallowed_types = "deny"
module_inception = "allow" # it's useful sometimes
module_name_repetitions = "allow" # dumb lint
[workspace.lints.rust]
unexpected_cfgs = { level = "warn", check-cfg = ['cfg(coverage_nightly)'] }
# [workspace.lints.rust]
# unused_crate_dependencies = "warn"
[workspace.lints.rustdoc]
broken-intra-doc-links = "deny"
[profile.release]
lto = "fat"
[profile.wasm-release]
codegen-units = 1 # prefer efficiency to compile time
debug = false # no debug data
debug-assertions = false # prune debug assertions
incremental = false # no incremental builds
inherits = "release"
lto = true # link time optimization
opt-level = "z" # optimize for size ("s" may also work)
panic = "abort" # use simple panics
rpath = false # no run-time search path
strip = true
[workspace.dependencies]
access-managed = { path = "cosmwasm/access-managed", default-features = false }
access-managed-example = { path = "e2e/access-managed-example", default-features = false }
access-manager = { path = "cosmwasm/access-manager", default-features = false }
access-manager-types = { path = "lib/access-manager-types", default-features = false }
aptos-types = { path = "lib/aptos-types", default-features = false }
arbitrum-client = { path = "lib/arbitrum-client", default-features = false }
arbitrum-light-client-types = { path = "lib/arbitrum-light-client-types", default-features = false }
arbitrum-types = { path = "lib/arbitrum-types", default-features = false }
arbitrum-verifier = { path = "lib/arbitrum-verifier", default-features = false }
attested-light-client = { path = "cosmwasm/lightclient/attested", default-features = false }
attested-light-client-types = { path = "lib/attested-light-client-types", default-features = false }
base-client = { path = "lib/base-client", default-features = false }
base-light-client-types = { path = "lib/base-light-client-types", default-features = false }
base-verifier = { path = "lib/base-verifier", default-features = false }
beacon-api = { path = "lib/beacon-api", default-features = false }
beacon-api-types = { path = "lib/beacon-api-types", default-features = false }
berachain-light-client-types = { path = "lib/berachain-light-client-types", default-features = false }
bob-client = { path = "lib/bob-client", default-features = false }
bob-light-client-types = { path = "lib/bob-light-client-types", default-features = false }
bob-types = { path = "lib/bob-types", default-features = false }
bob-verifier = { path = "lib/bob-verifier", default-features = false }
cometbft-rpc = { path = "lib/cometbft-rpc", default-features = false }
cometbft-types = { path = "lib/cometbft-types", default-features = false }
cometbls-groth16-verifier = { path = "lib/cometbls-groth16-verifier", default-features = false }
cometbls-light-client = { path = "cosmwasm/lightclient/cometbls", default-features = false }
cometbls-light-client-types = { path = "lib/cometbls-light-client-types", default-features = false }
concurrent-keyring = { path = "lib/concurrent-keyring", default-features = false }
consensus-primitives = { path = "lib/consensus-primitives", default-features = false }
cosmos-client = { path = "lib/cosmos-client", default-features = false }
cosmos-sdk-event = { path = "lib/cosmos-sdk-event", default-features = false }
cosmos-signer = { path = "lib/cosmos-signer", default-features = false }
cosmwasm-event = { path = "lib/cosmwasm-event", default-features = false }
create3 = { path = "lib/create3", default-features = false }
cw-account = { path = "cosmwasm/cw-account", default-features = false }
cw-escrow-vault = { path = "cosmwasm/cw-escrow-vault", default-features = false }
cw20-base = { path = "cosmwasm/cw20-base", default-features = false }
cw20-ctx = { path = "lib/cw20-ctx", default-features = false }
cw20-token-minter = { path = "cosmwasm/cw20-token-minter", default-features = false }
cw20-wrapped-tokenfactory = { path = "cosmwasm/cw20-wrapped-tokenfactory", default-features = false }
deployments = { path = "lib/deployments", default-features = false }
depolama = { path = "lib/depolama", default-features = false }
embed-commit = { path = "lib/embed-commit", default-features = false }
embed-commit-verifier = { path = "lib/embed-commit/verifier", default-features = false }
ethereum-light-client = { path = "cosmwasm/lightclient/ethereum", default-features = false }
ethereum-light-client-types = { path = "lib/ethereum-light-client-types", default-features = false }
ethereum-sync-protocol = { path = "lib/ethereum-sync-protocol", default-features = false }
ethereum-sync-protocol-types = { path = "lib/ethereum-sync-protocol-types", default-features = false }
ethermint-light-client-types = { path = "lib/ethermint-light-client-types", default-features = false }
evm-storage-verifier = { path = "lib/evm-storage-verifier", default-features = false }
fork-schedules = { path = "lib/fork-schedules", default-features = false }
frissitheto = { path = "lib/frissitheto", default-features = false }
galois-rpc = { path = "lib/galois-rpc", default-features = false }
gnark-key-parser = { path = "lib/gnark-key-parser", default-features = false }
gnark-mimc = { path = "lib/gnark-mimc", default-features = false }
ibc-classic-spec = { path = "lib/ibc-classic-spec", default-features = false }
ibc-solidity = { path = "lib/ibc-solidity", default-features = false }
ibc-union = { path = "cosmwasm/core", default-features = false }
ibc-union-light-client = { path = "cosmwasm/core/light-client-interface", default-features = false }
ibc-union-msg = { path = "cosmwasm/core/msg", default-features = false }
ibc-union-spec = { path = "lib/ibc-union-spec", default-features = false }
ics23 = { path = "lib/ics23", default-features = false }
lst = { path = "cosmwasm/lst", default-features = false }
lst-staker = { path = "cosmwasm/lst-staker", default-features = false }
macros = { path = "lib/macros", default-features = false }
move-core-types = { git = "https://github.com/mystenlabs/sui", default-features = false }
movement-light-client-types = { path = "lib/movement-light-client-types", default-features = false }
mpc-shared = { path = "mpc/shared", default-features = false }
on-zkgm-call-proxy = { path = "cosmwasm/on-zkgm-call-proxy", default-features = false }
osmosis-tokenfactory-token-minter = { path = "cosmwasm/osmosis-tokenfactory-token-minter", default-features = false }
parlia-light-client-types = { path = "lib/parlia-light-client-types", default-features = false }
parlia-types = { path = "lib/parlia-types", default-features = false }
parlia-verifier = { path = "lib/parlia-verifier", default-features = false }
pausable = { path = "cosmwasm/pausable", default-features = false }
pg-queue = { path = "lib/pg-queue", default-features = false }
proof-lens-light-client = { path = "cosmwasm/lightclient/proof-lens", default-features = false }
proof-lens-light-client-types = { path = "lib/proof-lens-light-client-types", default-features = false }
protos = { path = "generated/rust/protos", default-features = false }
reconnecting-jsonrpc-ws-client = { path = "lib/reconnecting-jsonrpc-ws-client", default-features = false }
serde-utils = { path = "lib/serde-utils", default-features = false }
solidity-slot = { path = "lib/solidity-slot", default-features = false }
ssz = { path = "lib/ssz", default-features = false }
ssz-derive = { path = "lib/ssz-derive", default-features = false }
starknet-light-client-types = { path = "lib/starknet-light-client-types", default-features = false }
starknet-storage-verifier = { path = "lib/starknet-storage-verifier", default-features = false }
starknet-types = { path = "lib/starknet-types", default-features = false }
starknet-verifier = { path = "lib/starknet-verifier", default-features = false }
state-lens-ics23-ics23-light-client-types = { path = "lib/state-lens-ics23-ics23-light-client-types", default-features = false }
state-lens-ics23-mpt-light-client = { path = "cosmwasm/lightclient/state-lens-ics23-mpt", default-features = false }
state-lens-ics23-mpt-light-client-types = { path = "lib/state-lens-ics23-mpt-light-client-types", default-features = false }
state-lens-ics23-smt-light-client-types = { path = "lib/state-lens-ics23-smt-light-client-types", default-features = false }
state-lens-light-client-types = { path = "lib/state-lens-light-client-types", default-features = false }
subset-of = { path = "lib/subset-of", default-features = false }
subset-of-derive = { path = "lib/subset-of-derive", default-features = false }
sui-light-client-types = { path = "lib/sui-light-client-types", default-features = false }
sui-sdk = { git = "https://github.com/mystenlabs/sui", default-features = false }
sui-utils = { path = "lib/sui-utils", default-features = false }
sui-verifier = { path = "lib/sui-verifier", default-features = false }
tendermint-light-client = { path = "cosmwasm/lightclient/tendermint", default-features = false }
tendermint-light-client-types = { path = "lib/tendermint-light-client-types", default-features = false }
tendermint-verifier = { path = "lib/tendermint-verifier", default-features = false }
token-factory-api = { path = "cosmwasm/token-factory-api", default-features = false }
trusted-mpt-light-client-types = { path = "lib/trusted-mpt-light-client-types", default-features = false }
ucs03-solvable = { path = "lib/ucs03-solvable", default-features = false }
ucs03-zkgm = { path = "cosmwasm/app/ucs03-zkgm", default-features = false }
ucs03-zkgm-packet = { path = "lib/ucs03-zkgm-packet", default-features = false }
ucs03-zkgm-token-minter-api = { path = "cosmwasm/ucs03-zkgm-token-minter-api", default-features = false }
ucs03-zkgmable = { path = "lib/ucs03-zkgmable", default-features = false }
ucs04 = { path = "lib/ucs04", default-features = false }
unionlabs = { path = "lib/unionlabs", default-features = false, features = ["proto"] } # TODO: Properly feature gate proto in unionlabs
unionlabs-encoding = { path = "lib/unionlabs-encoding", default-features = false }
unionlabs-primitives = { path = "lib/unionlabs-primitives", default-features = false }
upgradable = { path = "cosmwasm/upgradable", default-features = false }
voyager-client = { path = "lib/voyager-client", default-features = false }
voyager-core = { path = "lib/voyager-core", default-features = false }
voyager-message = { path = "lib/voyager-message", default-features = false }
voyager-plugin = { path = "lib/voyager-plugin", default-features = false }
voyager-plugin-protocol = { path = "lib/voyager-plugin-protocol", default-features = false }
voyager-plugin-transaction-batch = { path = "voyager/plugins/transaction-batch", default-features = false }
voyager-primitives = { path = "lib/voyager-primitives", default-features = false }
voyager-rpc = { path = "lib/voyager-rpc", default-features = false }
voyager-sdk = { path = "lib/voyager-sdk", default-features = false }
voyager-transaction-plugin-sui = { path = "voyager/plugins/transaction/sui", default-features = false }
voyager-types = { path = "lib/voyager-types", default-features = false }
voyager-vm = { path = "lib/voyager-vm", default-features = false }
wasm-client-type = { path = "lib/wasm-client-type", default-features = false }
# aptos-move-ibc = { path = "generated/rust/aptos-move-ibc", default-features = false }
# aptos-verifier = { path = "lib/aptos-verifier", default-features = false }
# move-bindgen = { path = "tools/move-bindgen", default-features = false }
# move-bindgen-derive = { path = "lib/move-bindgen-derive", default-features = false }
# =====================
# external dependencies
# =====================
alloy = { version = "1.0", default-features = false }
alloy-primitives = { version = "1.1", default-features = false }
alloy-sol-types = { version = "1.1", default-features = true }
anyhow = { version = "1" }
async-sqlite = { version = "0.4.0", default-features = false }
axum = { version = "0.8", default-features = false }
base64 = { version = "0.22", default-features = false }
bcs = { version = "0.1.6", default-features = false }
bincode = { git = "https://git.sr.ht/~benluelo/bincode", branch = "add-automatically-derived" } # std is used by all dependants
bip32 = { version = "0.5.3", default-features = false }
bitvec = { version = "1.0.1", default-features = false }
borsh = { version = "1.5.7", default-features = false }
bs58 = { version = "0.5.1", default-features = false }
bytemuck = { version = "1.23.0", default-features = false }
chrono = { version = "0.4.41", default-features = false }
clap = { version = "4.5.39", default-features = false, features = ["std"] } # clap has a fake std feature that is required to be enabled by default
color-eyre = { version = "0.6.5", default-features = false }
cosmwasm-schema = { version = "2.2.2", default-features = false }
cosmwasm-std = { version = "2.2.2", default-features = false, features = ["std"] } # cosmwasm-std has a fake std feature that is requried to be enabled by default
crossbeam-queue = { version = "0.3.12", default-features = false }
cw-orch = { version = "0.27.0", default-features = false }
cw-storage-plus = { version = "2.0.0", default-features = false }
cw-utils = { version = "2.0.0", default-features = true }
cw20 = { version = "2.0.0", default-features = true }
derive_more = { version = "2.1.1", default-features = false }
ed25519-dalek = { version = "2.1.1", default-features = false }
either = { version = "1.15.0", default-features = false }
enumorph = { version = "0.1.2", default-features = false }
ethabi = { version = "18.0.0", default-features = false }
fastcrypto = { git = "https://github.com/MystenLabs/fastcrypto", rev = "4db0e90c732bbf7420ca20de808b698883148d9c", default-features = false }
futures = { version = "0.3.31", default-features = false }
generic-array = { version = "0.14.7", default-features = false }
hex = { version = "0.4.3", default-features = false }
hex-literal = { version = "1.1.0", default-features = false }
itertools = { version = "0.13" }
jsonrpsee = { version = "0.26.0", default-features = false }
lazy_static = { version = "1.5.0", default-features = false }
moka = { version = "0.12.10", default-features = false }
num-bigint = { version = "0.4", default-features = false }
opentelemetry = { version = "0.31.0", default-features = false }
opentelemetry-otlp = { version = "0.31.0", default-features = false }
opentelemetry_sdk = { version = "0.31.0", default-features = false }
pathfinder-crypto = { version = "0.21.3", default-features = false }
primitive-types = { version = "0.12.2", default-features = false }
proc-macro2 = { version = "1.0.95", default-features = true }
prost = { version = "0.12.6", default-features = false }
quote = { version = "1.0.40" }
rand = { version = "0.8", default-features = false }
reqwest = { version = "0.11.27", default-features = false }
reth-ipc = { git = "https://github.com/paradigmxyz/reth", default-features = false }
ripemd = { version = "0.1.3", default-features = false }
rlp = { version = "0.5.2", default-features = false }
ruint = { version = "1.17.0", default-features = false }
schemars = { version = "0.8.22", default-features = false }
serde = { version = "1.0.219", default-features = false }
serde-json-wasm = { version = "1.0.1", default-features = false }
serde_json = { version = "1.0.140", default-features = false, features = ["alloc"] } # serde-json requires one of "std" or "alloc"
serde_with = { version = "3.12.0", default-features = false, features = ["macros"] }
sha2 = { version = "0.10.9", default-features = false }
sha3 = { version = "0.10.8", default-features = false }
sqlx = { version = "0.8.6", default-features = false }
starknet = { version = "0.17.0", default-features = false }
starknet-crypto = { version = "0.8.1", default-features = false }
static_assertions = { git = "https://github.com/nvzqz/static-assertions" } # https://github.com/nvzqz/static-assertions/pull/28
strum = { version = "0.27", default-features = false }
subtle-encoding = { version = "0.5.1", default-features = false }
syn = { version = "2", default-features = false }
thiserror = { version = "2.0.12", default-features = false }
time = { version = "0.3.41", default-features = false }
tokio = { version = "1.45.1", default-features = false }
tokio-util = { version = "0.7.15", default-features = false }
toml = { version = "0.8.22", default-features = false }
tonic = { version = "0.10", default-features = false }
tower = { version = "0.5", default-features = false }
tower-http = { version = "0.6.4", default-features = false }
tracing = { version = "0.1.41", default-features = false }
tracing-subscriber = { version = "0.3", default-features = false, features = ["fmt", "ansi"] }
typenum = { version = "1.18.0", default-features = false }
# tracing-opentelemetry = { version = "0.30.0", default-features = false }
# aptos-crypto = { git = "https://github.com/unionlabs/aptos-core" } # https://github.com/aptos-labs/aptos-core/pull/12636
# aptos-rest-client = { git = "https://github.com/unionlabs/aptos-core" } # https://github.com/aptos-labs/aptos-core/pull/12636
# aptos-types = { git = "https://github.com/unionlabs/aptos-core" } # https://github.com/aptos-labs/aptos-core/pull/12636
# move-core-types = { git = "https://github.com/unionlabs/aptos-core" }
[patch.crates-io]
# arbitrary = { git = "https://github.com/unionlabs/arbitrary" }
serde-json-wasm = { git = "https://github.com/benluelo/serde-json-wasm", branch = "impl-collect-str" }
# parity-secp256k1 = { git = "https://github.com/paritytech/rust-secp256k1" }
# # https://aptos.dev/en/build/sdks/rust-sdk
# merlin = { git = "https://github.com/aptos-labs/merlin" }
# x25519-dalek = { git = "https://github.com/aptos-labs/x25519-dalek", branch = "zeroize_v1" }