1
+ [workspace ]
2
+
3
+ resolver = " 2"
4
+
5
+ members = [
6
+ " m2/rollup" ,
7
+ " m2/stf" ,
8
+ # protocol units
9
+ " protocol-units/sov-aptos" ,
10
+ " protocol-units/sov-modules/sov-aptos-vm" ,
11
+ # "protocol-units/rest-to-json-rpc"
12
+ ]
13
+
14
+ [workspace .features ]
15
+ sov-aptos = [" experimental" ]
16
+ defailt = [" m2/rollup" ]
17
+
18
+ [workspace .package ]
19
+ version = " 0.3.0"
20
+ edition = " 2021"
21
+ license = " MIT OR Apache-2.0"
22
+ authors = [" Movement Labs" ]
23
+ repository = " www.github.com/movementlabs"
24
+ homepage = " www.homepage.com"
25
+ publish = false
26
+ rust-version = " 1.73"
27
+
28
+ [workspace .dependencies ]
29
+ auto_impl = " 1.2.0"
30
+ chrono = " 0.4.37"
31
+ serde = { version = " 1.0.192" , features = [" derive" , " rc" ] }
32
+ serde_json = { version = " 1.0.81" , features = [
33
+ " preserve_order" ,
34
+ " arbitrary_precision" ,
35
+ ] } # Note: arbitrary_precision is required to parse u256 in JSON
36
+ anyhow = " 1.0.68"
37
+ derive_more = { version = " 0.99.11" , default-features = false }
38
+ bytes = { version = " 1.2.1" , default-features = false }
39
+ clap = { version = " 4.4.10" , features = [" derive" ] }
40
+ hex = { version = " 0.4.3" , default-features = false , features = [" alloc" , " serde" ] }
41
+ async-trait = " 0.1.71"
42
+ borsh = { version = " 0.10.3" , features = [" rc" , " bytes" ] }
43
+ tracing = " 0.1.40"
44
+ tokio = { version = " 1.35.1" , features = [" full" ] }
45
+ tempfile = " 3.5"
46
+ fail = " 0.5.1"
47
+ jsonrpsee = { version = " 0.20.1" , features = [" jsonrpsee-types" ] }
48
+ proptest = { version = " 1.3.1" , default-features = false , features = [" alloc" ] }
49
+ poem-openapi = { version = " =2.0.11" , features = [" swagger-ui" , " url" ] }
50
+ schemars = { version = " 0.8.16" , features = [" derive" ] }
51
+ thiserror = " 1.0.50"
52
+ x25519-dalek = " 1.0.1"
53
+ rand = " 0.7.3"
54
+ rand_core = " 0.5.1"
55
+
56
+ # Sovereign Labs dependencies
57
+ sov-modules-api = { git = " ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git" , rev = " 517e99e558513e24983d8d09ef16a73675ea1a1b" }
58
+ sov-state = { git = " ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git" , rev = " 517e99e558513e24983d8d09ef16a73675ea1a1b" }
59
+ sov-accounts = { git = " ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git" , rev = " 517e99e558513e24983d8d09ef16a73675ea1a1b" }
60
+ sov-bank = { git = " ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git" , rev = " 517e99e558513e24983d8d09ef16a73675ea1a1b" }
61
+ sov-ledger-rpc = { git = " ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git" , rev = " 517e99e558513e24983d8d09ef16a73675ea1a1b" }
62
+ sov-sequencer-registry = { git = " ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git" , rev = " 517e99e558513e24983d8d09ef16a73675ea1a1b" }
63
+ sov-modules-stf-blueprint = { git = " ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git" , rev = " 517e99e558513e24983d8d09ef16a73675ea1a1b" }
64
+ sov-modules-rollup-blueprint = { git = " ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git" , rev = " 517e99e558513e24983d8d09ef16a73675ea1a1b" }
65
+ sov-stf-runner = { git = " ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git" , rev = " 517e99e558513e24983d8d09ef16a73675ea1a1b" }
66
+ sov-db = { git = " ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git" , rev = " 517e99e558513e24983d8d09ef16a73675ea1a1b" }
67
+ sov-sequencer = { git = " ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git" , rev = " 517e99e558513e24983d8d09ef16a73675ea1a1b" }
68
+ sov-rollup-interface = { git = " ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git" , rev = " 517e99e558513e24983d8d09ef16a73675ea1a1b" }
69
+ sov-risc0-adapter = { git = " ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git" , rev = " 517e99e558513e24983d8d09ef16a73675ea1a1b" }
70
+ sov-mock-zkvm = { git = " ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git" , rev = " 517e99e558513e24983d8d09ef16a73675ea1a1b" }
71
+ sov-first-read-last-write-cache = { git = " ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git" , rev = " 517e99e558513e24983d8d09ef16a73675ea1a1b" }
72
+ sov-cli = { git = " ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git" , rev = " 517e99e558513e24983d8d09ef16a73675ea1a1b" }
73
+ sov-mock-da = { git = " ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git" , rev = " 517e99e558513e24983d8d09ef16a73675ea1a1b" }
74
+ sov-celestia-adapter = { git = " ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git" , rev = " 517e99e558513e24983d8d09ef16a73675ea1a1b" }
75
+ sov-prover-storage-manager = { git = " ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git" , rev = " 517e99e558513e24983d8d09ef16a73675ea1a1b" }
76
+ sov-chain-state = { git = " ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git" , rev = " 517e99e558513e24983d8d09ef16a73675ea1a1b" }
77
+ sov-test-utils = { git = " ssh://git@github.com/Sovereign-Labs/sovereign-sdk-wip.git" , rev = " 517e99e558513e24983d8d09ef16a73675ea1a1b" }
78
+
79
+ risc0-build = " 0.20"
80
+
81
+ # aptos dependencies
82
+ ethereum-types = " 0.14.1"
83
+ ethers = " =2.0.10"
84
+ ethers-core = { version = " =2.0.10" , default-features = false }
85
+ ethers-contract = " =2.0.10"
86
+ ethers-providers = { version = " =2.0.10" , default-features = false }
87
+ ethers-signers = { version = " =2.0.10" , default-features = false }
88
+ ethers-middleware = { version = " =2.0.10" , default-features = false }
89
+
90
+ # Aptos dependencies
91
+ # We use a forked version so that we can override dependency versions. This is required
92
+ # to be avoid depenedency conflicts with other Sovereign Labs crates.
93
+ aptos-vm = { git = " file://PWD/vendors/aptos-monza" }
94
+ aptos-sdk = { git = " file://PWD/vendors/aptos-monza" }
95
+ aptos-consensus-types = { git = " file://PWD/vendors/aptos-monza" }
96
+ aptos-crypto = { git = " file://PWD/vendors/aptos-monza" }
97
+ aptos-db = { git = " file://PWD/vendors/aptos-monza" }
98
+ aptos-api-types = { git = " file://PWD/vendors/aptos-monza" }
99
+ aptos-types = { git = " file://PWD/vendors/aptos-monza" }
100
+ aptos-api = { git = " file://PWD/vendors/aptos-monza" }
101
+ aptos-storage-interface = { git = " file://PWD/vendors/aptos-monza" }
102
+ aptos-block-executor = { git = " file://PWD/vendors/aptos-monza" }
103
+ aptos-vm-types = { git = " file://PWD/vendors/aptos-monza" }
104
+ aptos-vm-logging = { git = " file://PWD/vendors/aptos-monza" }
105
+ aptos-language-e2e-tests = { git = " file://PWD/vendors/aptos-monza" }
106
+ aptos-framework = { git = " file://PWD/vendors/aptos-monza" }
107
+ aptos-config = { git = " file://PWD/vendors/aptos-monza" }
108
+ aptos-vm-genesis = { git = " file://PWD/vendors/aptos-monza" }
109
+ aptos-executor = { git = " file://PWD/vendors/aptos-monza" }
110
+ aptos-executor-types = { git = " file://PWD/vendors/aptos-monza" }
111
+ aptos-executor-test-helpers = { git = " file://PWD/vendors/aptos-monza" }
112
+ aptos-bitvec = { git = " file://PWD/vendors/aptos-monza" }
113
+
114
+ move-binary-format = { git = " https://github.com/diem/move" }
115
+ move-table-extension = { git = " https://github.com/diem/move" }
116
+ move-core-types = { git = " https://github.com/diem/move" }
117
+
118
+ # https://github.com/paradigmxyz/reth/tree/c0655fed8915490f82d4acf8900a16a10554cbfb
119
+ reth-primitives = { git = " https://github.com/paradigmxyz/reth" , rev = " c0655fed8915490f82d4acf8900a16a10554cbfb" , default-features = false }
120
+ reth-interfaces = { git = " https://github.com/paradigmxyz/reth" , rev = " c0655fed8915490f82d4acf8900a16a10554cbfb" }
121
+ reth-rpc-types = { git = " https://github.com/paradigmxyz/reth" , rev = " c0655fed8915490f82d4acf8900a16a10554cbfb" }
122
+ reth-rpc-types-compat = { git = " https://github.com/paradigmxyz/reth" , rev = " c0655fed8915490f82d4acf8900a16a10554cbfb" }
123
+ reth-revm = { git = " https://github.com/paradigmxyz/reth" , rev = " c0655fed8915490f82d4acf8900a16a10554cbfb" }
124
+
125
+ # Matches reth dependency. Using exact revision for matching our tightly coupled usage of both reth and revm crates
126
+ revm = { version = " 5.0.0" , default-features = false , features = [" serde" ] }
127
+ # Used just to be safe about breaking changes
128
+ revm-primitives = { version = " =2.0.0" , default-features = false }
129
+ secp256k1 = { version = " 0.27" , default-features = false , features = [" global-context" , " rand-std" , " recovery" ] }
130
+
131
+ [workspace .lints .rust ]
132
+ dead_code = " deny"
133
+ unused_imports = " deny"
134
+ non_ascii_idents = " deny" # Bad for readability and it can also be a security vulnerability
135
+
136
+ # In case you need inspiration for new lints to add to the list, this is a good
137
+ # reference: <https://github.com/EmbarkStudios/rust-ecosystem/blob/6783ae1573d62f3f5439b8ff9e04bec191ec2eaf/lints.toml>.
138
+ [workspace .lints .clippy ]
139
+ debug_assert_with_mut_call = " deny"
140
+ inefficient_to_string = " deny"
141
+ map_flatten = " deny"
142
+ manual_ok_or = " deny"
143
+ doc_link_with_quotes = " deny"
144
+ match_same_arms = " deny"
145
+ semicolon_if_nothing_returned = " deny"
146
+
147
+ [patch .crates-io ]
148
+ merlin = { git = " https://github.com/aptos-labs/merlin" }
149
+ x25519-dalek = { git = " https://github.com/aptos-labs/x25519-dalek" , branch = " zeroize_v1" }
150
+ sha2 = { git = " https://github.com/risc0/RustCrypto-hashes" , tag = " sha2-v0.10.8-risczero.0" }
151
+ ed25519-dalek = { git = " https://github.com/risc0/curve25519-dalek" , tag = " curve25519-4.1.0-risczero.1" }
0 commit comments