-
Notifications
You must be signed in to change notification settings - Fork 15
Expand file tree
/
Copy pathCargo.toml
More file actions
114 lines (98 loc) · 3.59 KB
/
Cargo.toml
File metadata and controls
114 lines (98 loc) · 3.59 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
[package]
name = "elements-miniscript"
version = "0.4.0"
authors = ["Andrew Poelstra <apoelstra@wpsoftware.net>, Sanket Kanjalkar <sanket1729@gmail.com>"]
repository = "https://github.com/ElementsProject/elements-miniscript"
description = "Elements Miniscript: Miniscript, but for elements"
license = "CC0-1.0"
keywords = [ "crypto", "bitcoin", "miniscript", "script" ]
readme = "README.md"
homepage = "https://github.com/rust-bitcoin/rust-miniscript/"
edition = "2018"
rust-version = "1.63.0"
[features]
compiler = []
trace = []
serde = ["actual-serde", "bitcoin/serde", "elements/serde"]
rand = ["bitcoin/rand"]
base64 = ["bitcoin/base64", "elements/base64"]
[dependencies]
bitcoin = "0.32.0"
elements = "0.25.0"
bitcoin-miniscript = { package = "miniscript", version = "12.0" }
simplicity = { package = "simplicity-lang", version = "0.3.0", optional = true }
# Do NOT use this as a feature! Use the `serde` feature instead.
actual-serde = { package = "serde", version = "1.0", optional = true }
[target.wasm32-unknown-unknown.dev-dependencies]
getrandom = { version = "0.2", features = ["js"] }
[dev-dependencies]
serde_json = "1.0"
actual-rand = { package = "rand", version = "0.8.4"}
serde_test = "1.0.147"
bitcoin = { version = "0.32.0", features = ["base64"] }
secp256k1 = { version = "0.29.0", features = ["rand-std"] }
actual-base64 = { package = "base64", version = "0.13.0" }
[[example]]
name = "htlc"
required-features = ["compiler"]
[[example]]
name = "parse"
[[example]]
name = "sign_multisig"
[[example]]
name = "verify_tx"
[[example]]
name = "xpub_descriptors"
[[example]]
name = "taproot"
required-features = ["compiler"]
[[example]]
name = "psbt_sign_finalize"
required-features = ["base64"]
[workspace]
members = ["bitcoind-tests", "fuzz"]
[lints.rust]
unexpected_cfgs = { level = "deny", check-cfg = ['cfg(miniscript_bench)'] }
[lints.clippy]
# Exclude lints we don't think are valuable.
needless_question_mark = "allow" # https://github.com/rust-bitcoin/rust-bitcoin/pull/2134
manual_range_contains = "allow" # More readable than clippy's format.
uninlined_format_args = "allow" # This is a subjective style choice.
float_cmp = "allow" # Bitcoin floats are typically limited to 8 decimal places and we want them exact.
match_bool = "allow" # Adds extra indentation and LOC.
match_same_arms = "allow" # Collapses things that are conceptually unrelated to each other.
must_use_candidate = "allow" # Useful for audit but many false positives.
similar_names = "allow" # Too many (subjectively) false positives.
# Exhaustive list of pedantic clippy lints
assigning_clones = "warn"
borrow_as_ptr = "warn"
cast_lossless = "warn"
cast_possible_truncation = "allow" # All casts should include a code comment (except test code).
cast_possible_wrap = "allow" # Same as above re code comment.
cast_precision_loss = "warn"
cast_ptr_alignment = "warn"
cast_sign_loss = "allow" # All casts should include a code comment (except in test code).
invalid_upcast_comparisons = "warn"
option_as_ref_cloned = "warn"
ptr_as_ptr = "warn"
ptr_cast_constness = "warn"
ref_as_ptr = "warn"
ref_binding_to_reference = "warn"
ref_option_ref = "warn"
same_functions_in_if_condition = "warn"
should_panic_without_expect = "warn"
single_char_pattern = "warn"
stable_sort_primitive = "warn"
str_split_at_newline = "warn"
string_add_assign = "warn"
transmute_ptr_to_ptr = "warn"
trivially_copy_pass_by_ref = "warn"
unchecked_duration_subtraction = "warn"
unicode_not_nfc = "warn"
unnecessary_box_returns = "warn"
unnecessary_join = "warn"
unnecessary_literal_bound = "warn"
unnecessary_wraps = "warn"
unsafe_derive_deserialize = "warn"
unused_async = "warn"
unused_self = "warn"