1+ [workspace ]
2+ resolver = " 2"
3+ members = [" crates/rollkit" ]
4+
5+ [workspace .package ]
6+ version = " 0.1.0"
7+ edition = " 2021"
8+ rust-version = " 1.82"
9+ license = " MIT OR Apache-2.0"
10+ homepage = " https://github.com/rollkit/lumen"
11+ repository = " https://github.com/rollkit/lumen"
12+ authors = [" Rollkit Contributors" ]
13+
14+ [workspace .dependencies ]
15+ # Reth dependencies - Using the latest stable versions
16+ reth = { version = " 1.1.3" , default-features = false }
17+ reth-cli-util = { version = " 1.1.3" , default-features = false }
18+ reth-ethereum-cli = { version = " 1.1.3" , default-features = false }
19+ reth-ethereum = { version = " 1.1.3" , default-features = false }
20+ reth-node-builder = { version = " 1.1.3" , default-features = false }
21+ reth-chainspec = { version = " 1.1.3" , default-features = false }
22+ reth-ethereum-payload-builder = { version = " 1.1.3" , default-features = false }
23+ reth-payload-primitives = { version = " 1.1.3" , default-features = false }
24+ reth-primitives = { version = " 1.1.3" , default-features = false }
25+ reth-primitives-traits = { version = " 1.1.3" , default-features = false }
26+ reth-node-api = { version = " 1.1.3" , default-features = false }
27+ reth-provider = { version = " 1.1.3" , default-features = false }
28+ reth-payload-builder = { version = " 1.1.3" , default-features = false }
29+ reth-basic-payload-builder = { version = " 1.1.3" , default-features = false }
30+ reth-engine-local = { version = " 1.1.3" , default-features = false }
31+ reth-revm = { version = " 1.1.3" , default-features = false }
32+ reth-trie-db = { version = " 1.1.3" , default-features = false }
33+ reth-node-types = { version = " 1.1.3" , default-features = false }
34+ reth-payload-builder-primitives = { version = " 1.1.3" , default-features = false }
35+ reth-execution-types = { version = " 1.1.3" , default-features = false }
36+ reth-evm-ethereum = { version = " 1.1.3" , default-features = false }
37+ reth-evm = { version = " 1.1.3" , default-features = false }
38+ reth-errors = { version = " 1.1.3" , default-features = false }
39+ reth-node-core = { version = " 1.1.3" , default-features = false }
40+ reth-rpc-builder = { version = " 1.1.3" , default-features = false }
41+ reth-rpc-api = { version = " 1.1.3" , default-features = false }
42+ reth-rpc-engine-api = { version = " 1.1.3" , default-features = false }
43+ reth-engine-primitives = { version = " 1.1.3" , default-features = false }
44+ reth-ethereum-primitives = { version = " 1.1.3" , default-features = false }
45+
46+ # Test dependencies
47+ reth-testing-utils = { version = " 1.1.3" , default-features = false }
48+ reth-db = { version = " 1.1.3" , default-features = false }
49+ reth-transaction-pool = { version = " 1.1.3" , default-features = false }
50+ reth-consensus = { version = " 1.1.3" , default-features = false }
51+ reth-tasks = { version = " 1.1.3" , default-features = false }
52+ reth-tracing = { version = " 1.1.3" , default-features = false }
53+
54+ # Alloy dependencies
55+ alloy-rpc-types = { version = " 0.7.3" , default-features = false }
56+ alloy-rpc-types-engine = { version = " 0.7.3" , default-features = false }
57+ alloy-primitives = { version = " 0.8" , default-features = false }
58+ alloy-eips = { version = " 0.7.3" , default-features = false }
59+ alloy-consensus = { version = " 0.7.3" , default-features = false }
60+ alloy-rlp = { version = " 0.3" , default-features = false }
61+ alloy-genesis = { version = " 0.7.3" , default-features = false }
62+
63+ # Core dependencies
64+ eyre = " 0.6"
65+ tracing = " 0.1"
66+ tokio = { version = " 1.38" , features = [" full" ] }
67+ serde = { version = " 1.0" , features = [" derive" ] }
68+ serde_json = " 1.0"
69+ thiserror = " 2.0"
70+ async-trait = " 0.1"
71+ futures = " 0.3"
72+ clap = { version = " 4.5" , features = [" derive" , " env" ] }
73+
74+ # Additional dependencies
75+ reqwest = { version = " 0.11" , features = [" json" ] }
76+ chrono = { version = " 0.4" , features = [" serde" ] }
77+ rand = " 0.8"
78+ tempfile = " 3.10"
79+ hex = " 0.4"
80+
81+ [workspace .lints ]
82+ rust.missing_debug_implementations = " warn"
83+ rust.missing_docs = " warn"
84+ rust.rust_2018_idioms = { level = " deny" , priority = -1 }
85+ rust.unreachable_pub = " warn"
86+ rust.unused_must_use = " deny"
87+ rustdoc.all = " warn"
88+ rust.unnameable-types = " warn"
89+
90+ [workspace .lints .clippy ]
91+ # These are some of clippy's nursery (i.e., experimental) lints that we like.
92+ # By default, nursery lints are allowed. Some of the lints below have made good
93+ # suggestions which we fixed. The others didn't have any findings, so we can
94+ # assume they don't have that many false positives. Let's enable them to
95+ # prevent future problems.
96+ borrow_as_ptr = " warn"
97+ branches_sharing_code = " warn"
98+ clear_with_drain = " warn"
99+ cloned_instead_of_copied = " warn"
100+ collection_is_never_read = " warn"
101+ derive_partial_eq_without_eq = " warn"
102+ doc_markdown = " warn"
103+ empty_line_after_doc_comments = " warn"
104+ empty_line_after_outer_attr = " warn"
105+ enum_glob_use = " warn"
106+ equatable_if_let = " warn"
107+ explicit_into_iter_loop = " warn"
108+ explicit_iter_loop = " warn"
109+ flat_map_option = " warn"
110+ from_iter_instead_of_collect = " warn"
111+ if_not_else = " warn"
112+ implicit_clone = " warn"
113+ imprecise_flops = " warn"
114+ iter_on_empty_collections = " warn"
115+ iter_on_single_items = " warn"
116+ iter_with_drain = " warn"
117+ iter_without_into_iter = " warn"
118+ large_stack_frames = " warn"
119+ manual_assert = " warn"
120+ manual_clamp = " warn"
121+ manual_is_variant_and = " warn"
122+ manual_string_new = " warn"
123+ match_same_arms = " warn"
124+ missing_const_for_fn = " warn"
125+ mutex_integer = " warn"
126+ naive_bytecount = " warn"
127+ needless_bitwise_bool = " warn"
128+ needless_continue = " warn"
129+ needless_for_each = " warn"
130+ needless_pass_by_ref_mut = " warn"
131+ nonstandard_macro_braces = " warn"
132+ option_as_ref_cloned = " warn"
133+ or_fun_call = " warn"
134+ path_buf_push_overwrite = " warn"
135+ read_zero_byte_vec = " warn"
136+ redundant_clone = " warn"
137+ redundant_else = " warn"
138+ single_char_pattern = " warn"
139+ string_lit_as_bytes = " warn"
140+ string_lit_chars_any = " warn"
141+ suboptimal_flops = " warn"
142+ suspicious_operation_groupings = " warn"
143+ trailing_empty_array = " warn"
144+ trait_duplication_in_bounds = " warn"
145+ transmute_undefined_repr = " warn"
146+ trivial_regex = " warn"
147+ tuple_array_conversions = " warn"
148+ type_repetition_in_bounds = " warn"
149+ uninhabited_references = " warn"
150+ unnecessary_self_imports = " warn"
151+ unnecessary_struct_initialization = " warn"
152+ unnested_or_patterns = " warn"
153+ unused_peekable = " warn"
154+ unused_rounding = " warn"
155+ use_self = " warn"
156+ useless_let_if_seq = " warn"
157+ while_float = " warn"
158+ zero_sized_map_values = " warn"
159+
160+ # These are nursery lints which have findings. Allow them for now. Some are not
161+ # quite mature enough for use in our codebase and some we don't really want.
162+ # Explicitly listing should make it easier to fix in the future.
163+ as_ptr_cast_mut = " allow"
164+ cognitive_complexity = " allow"
165+ debug_assert_with_mut_call = " allow"
166+ fallible_impl_from = " allow"
167+ future_not_send = " allow"
168+ needless_collect = " allow"
169+ non_send_fields_in_send_ty = " allow"
170+ redundant_pub_crate = " allow"
171+ significant_drop_in_scrutinee = " allow"
172+ significant_drop_tightening = " allow"
173+ too_long_first_doc_paragraph = " allow"
174+
175+ [profile .release ]
176+ opt-level = 3
177+ lto = " thin"
178+ strip = " debuginfo"
0 commit comments