-
Notifications
You must be signed in to change notification settings - Fork 0
/
Cargo.toml
118 lines (107 loc) · 4.41 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
[workspace.package]
version = "0.0.1"
edition = "2021"
rust-version = "1.79"
[workspace]
members = [
"programs",
"programs/square-root",
"zkvm-utils",
]
# Explicitly set the resolver to version 2, which is the default for packages with edition >= 2021
# https://doc.rust-lang.org/edition-guide/rust-2021/default-cargo-resolver.html
resolver = "2"
[workspace.lints]
rust.missing_debug_implementations = "warn"
rust.missing_docs = "warn"
rust.unreachable_pub = "warn"
rust.unused_must_use = "deny"
rust.rust_2018_idioms = { level = "deny", priority = -1 }
rustdoc.all = "warn"
[workspace.lints.clippy]
# These are some of clippy's nursery (i.e., experimental) lints that we like.
# By default, nursery lints are allowed. Some of the lints below have made good
# suggestions which we fixed. The others didn't have any findings, so we can
# assume they don't have that many false positives. Let's enable them to
# prevent future problems.
branches_sharing_code = "warn"
clear_with_drain = "warn"
derive_partial_eq_without_eq = "warn"
empty_line_after_outer_attr = "warn"
equatable_if_let = "warn"
imprecise_flops = "warn"
iter_on_empty_collections = "warn"
iter_with_drain = "warn"
large_stack_frames = "warn"
manual_clamp = "warn"
mutex_integer = "warn"
needless_pass_by_ref_mut = "warn"
nonstandard_macro_braces = "warn"
or_fun_call = "warn"
path_buf_push_overwrite = "warn"
read_zero_byte_vec = "warn"
redundant_clone = "warn"
suboptimal_flops = "warn"
suspicious_operation_groupings = "warn"
trailing_empty_array = "warn"
trait_duplication_in_bounds = "warn"
transmute_undefined_repr = "warn"
trivial_regex = "warn"
tuple_array_conversions = "warn"
uninhabited_references = "warn"
unused_peekable = "warn"
unused_rounding = "warn"
useless_let_if_seq = "warn"
use_self = "warn"
missing_const_for_fn = "warn"
empty_line_after_doc_comments = "warn"
iter_on_single_items = "warn"
match_same_arms = "warn"
doc_markdown = "warn"
unnecessary_struct_initialization = "warn"
string_lit_as_bytes = "warn"
explicit_into_iter_loop = "warn"
explicit_iter_loop = "warn"
type_repetition_in_bounds = "warn"
flat_map_option = "warn"
manual_assert = "warn"
manual_string_new = "warn"
naive_bytecount = "warn"
needless_bitwise_bool = "warn"
zero_sized_map_values = "warn"
single_char_pattern = "warn"
needless_continue = "warn"
enum_glob_use = "warn"
# These are nursery lints which have findings. Allow them for now. Some are not
# quite mature enough for use in our codebase and some we don't really want.
# Explicitly listing should make it easier to fix in the future.
as_ptr_cast_mut = "allow"
blocks_in_conditions = "allow"
cognitive_complexity = "allow"
collection_is_never_read = "allow"
debug_assert_with_mut_call = "allow"
fallible_impl_from = "allow"
future_not_send = "allow"
needless_collect = "allow"
non_send_fields_in_send_ty = "allow"
redundant_pub_crate = "allow"
significant_drop_in_scrutinee = "allow"
significant_drop_tightening = "allow"
[workspace.dependencies]
anyhow = { version = "1", default-features = false }
alloy = { version = "0.2", features = ["signer-local"], default-features = false }
alloy-primitives = { version = "0.7", default-features = false }
alloy-sol-types = { version = "0.7", default-features = false }
clap = { version = "4", features = ["derive"] }
ivm-abi = { git = "https://github.com/InfinityVM/InfinityVM.git", branch = "dylan/sp1-porting" }
# TODO: Update these to main after merging SP1 feature branch
ivm-proto = { git = "https://github.com/InfinityVM/InfinityVM.git", branch = "dylan/sp1-porting" }
ivm-sp1-utils = { git = "https://github.com/InfinityVM/InfinityVM.git", branch = "dylan/sp1-porting" }
ivm-zkvm = { git = "https://github.com/InfinityVM/InfinityVM.git", branch = "dylan/sp1-porting" }
ivm-zkvm-executor = { git = "https://github.com/InfinityVM/InfinityVM.git", branch = "dylan/sp1-porting" }
k256 = { version = "0.13", default-features = false }
sp1-zkvm = { git = "https://github.com/succinctlabs/sp1.git", rev = "37629f6afd54c08180889d71777824c7e48642d3", features = ["libm", "lib"], default-features = false }
sp1-sdk = { git = "https://github.com/succinctlabs/sp1.git", rev = "37629f6afd54c08180889d71777824c7e48642d3", features = ["network"], default-features = false }
sp1-helper = { git = "https://github.com/succinctlabs/sp1.git", rev = "37629f6afd54c08180889d71777824c7e48642d3", default-features = false }
sp1-build = "3.1.0"
tokio = { version = "1", features = ["rt-multi-thread", "macros", "sync", "time"], default-features = false }