Skip to content

Commit e65b89f

Browse files
committed
Move common deps into workspace
Signed-off-by: Denis Varlakov <denis@dfns.co>
1 parent 470fb60 commit e65b89f

File tree

7 files changed

+87
-52
lines changed

7 files changed

+87
-52
lines changed

Cargo.toml

+37
Original file line numberDiff line numberDiff line change
@@ -12,3 +12,40 @@ exclude = [
1212
"wasm/nostd",
1313
]
1414

15+
[workspace.dependencies]
16+
generic-array = "0.14"
17+
18+
hex = { version = "0.4", default-features = false }
19+
20+
rand = "0.8"
21+
rand_core = { version = "0.6", default-features = false }
22+
23+
serde = { version = "1", default-features = false }
24+
serde_json = "1"
25+
serde_with = { version = "2", default-features = false }
26+
27+
sha2 = { version = "0.10", default-features = false }
28+
29+
subtle = { version = "2.4", default-features = false }
30+
31+
udigest = { version = "0.2.0", default-features = false }
32+
33+
zeroize = { version = "1", default-features = false }
34+
35+
criterion = "0.5"
36+
generic-tests = "0.1"
37+
serde_test = "1"
38+
rand_dev = "0.1"
39+
40+
[workspace.dependencies.curve25519]
41+
package = "curve25519-dalek"
42+
version = "4"
43+
default-features = false
44+
45+
[patch.crates-io.udigest]
46+
git = "https://github.com/dfns/udigest"
47+
branch = "udigest_as"
48+
49+
[patch.crates-io.udigest-derive]
50+
git = "https://github.com/dfns/udigest"
51+
branch = "udigest_as"

generic-ec-core/Cargo.toml

+5-5
Original file line numberDiff line numberDiff line change
@@ -9,11 +9,11 @@ description = "Core traits of `generic-ec` crate"
99
# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html
1010

1111
[dependencies]
12-
generic-array = "0.14"
13-
subtle = { version = "2.4", default-features = false }
14-
rand_core = { version = "0.6", default-features = false }
15-
zeroize = { version = "1", default-features = false }
16-
serde = { version = "1", default-features = false, features = ["derive"], optional = true }
12+
generic-array.workspace = true
13+
subtle.workspace = true
14+
rand_core.workspace = true
15+
zeroize.workspace = true
16+
serde = { workspace = true, features = ["derive"], optional = true }
1717

1818
[features]
1919
default = []

generic-ec-curves/Cargo.toml

+8-10
Original file line numberDiff line numberDiff line change
@@ -11,30 +11,28 @@ repository = "https://github.com/dfns/generic-ec"
1111
[dependencies]
1212
generic-ec-core = { version = "0.2", path = "../generic-ec-core", default-features = false }
1313

14-
subtle = { version = "2.4", default-features = false }
15-
rand_core = { version = "0.6", default-features = false }
16-
zeroize = { version = "1", default-features = false, features = ["zeroize_derive"] }
14+
subtle.workspace = true
15+
rand_core.workspace = true
16+
zeroize = { workspace = true, features = ["zeroize_derive"] }
1717

1818
elliptic-curve = { version = "0.13", default-features = false, features = ["sec1", "hash2curve"], optional = true }
1919
k256 = { version = "0.13", optional = true, default-features = false, features = ["hash2curve"] }
2020
p256 = { version = "0.13", optional = true, default-features = false, features = ["hash2curve"] }
21-
sha2 = { version = "0.10", default-features = false, optional = true }
21+
sha2 = { workspace = true, optional = true }
2222
stark-curve = { version = "0.1", default-features = false, optional = true }
2323

2424
group = { version = "0.13", default-features = false, optional = true }
2525

2626
[dependencies.curve25519]
27-
package = "curve25519-dalek"
28-
version = "4"
29-
default-features = false
27+
workspace = true
3028
features = ["group", "zeroize", "rand_core", "precomputed-tables"]
3129
optional = true
3230

3331
[dev-dependencies]
34-
rand = "0.8"
35-
rand_dev = "0.1"
32+
rand.workspace = true
33+
rand_dev.workspace = true
3634

37-
criterion = { version = "0.5", features = ["html_reports"] }
35+
criterion = { workspace = true, features = ["html_reports"] }
3836

3937
[features]
4038
default = []

generic-ec-zkp/Cargo.toml

+10-10
Original file line numberDiff line numberDiff line change
@@ -13,24 +13,24 @@ keywords = ["elliptic-curves", "zk-proof"]
1313

1414
[dependencies]
1515
generic-ec = { version = "0.4.0", path = "../generic-ec", default-features = false }
16-
udigest = { version = "0.2.0", features = ["derive"], optional = true }
16+
udigest = { workspace = true, features = ["derive"], optional = true }
1717

18-
subtle = { version = "2.4", default-features = false }
19-
rand_core = { version = "0.6", default-features = false }
18+
subtle.workspace = true
19+
rand_core.workspace = true
2020

21-
serde = { version = "1", default-features = false, features = ["derive"], optional = true }
21+
serde = { workspace = true, features = ["derive"], optional = true }
2222

2323
# We don't depend on this crates directly, but need to specify features to make it compile
24-
generic-array = "0.14"
24+
generic-array.workspace = true
2525

2626
[dev-dependencies]
27-
rand = "0.8"
28-
rand_dev = "0.1"
29-
sha2 = "0.10"
27+
rand.workspace = true
28+
rand_dev.workspace = true
29+
sha2.workspace = true
3030

31-
generic-tests = "0.1"
31+
generic-tests.workspace = true
3232

33-
criterion = { version = "0.5", features = ["html_reports"] }
33+
criterion = { workspace = true, features = ["html_reports"] }
3434

3535
generic-ec = { version = "0.4.0", path = "../generic-ec", default-features = false, features = ["all-curves"] }
3636

generic-ec/Cargo.toml

+17-17
Original file line numberDiff line numberDiff line change
@@ -15,46 +15,46 @@ keywords = ["elliptic-curves"]
1515
[dependencies]
1616
generic-ec-core = { version = "0.2", path = "../generic-ec-core" }
1717
generic-ec-curves = { version = "0.2", path = "../generic-ec-curves", optional = true }
18-
udigest = { version = "0.2.0", features = ["derive"], optional = true }
18+
udigest = { workspace = true, features = ["derive"], optional = true }
1919

20-
subtle = { version = "2.4", default-features = false }
21-
rand_core = { version = "0.6", default-features = false }
22-
zeroize = { version = "1", default-features = false, features = ["zeroize_derive"] }
20+
subtle.workspace = true
21+
rand_core.workspace = true
22+
zeroize = { workspace = true, features = ["zeroize_derive"] }
2323

24-
serde = { version = "1", features = ["derive"], default-features = false, optional = true }
25-
serde_with = { version = "2", features = ["macros"], default-features = false, optional = true }
26-
hex = { version = "0.4", default-features = false, optional = true }
24+
serde = { workspace = true, features = ["derive"], optional = true }
25+
serde_with = { workspace = true, features = ["macros"], optional = true }
26+
hex = { workspace = true, optional = true }
2727

2828
phantom-type = { version = "0.4", default-features = false }
2929

3030
digest = { version = "0.10", default-features = false, optional = true }
31-
rand_hash = { version = "0.1.0", optional = true }
31+
rand_hash = { version = "0.1", optional = true }
3232

3333
# We use this dependency when both `curve-ed25519` and `alloc` features are enabled,
3434
# to provide `generic_ec::multiscalar::Dalek`
35-
curve25519-dalek = { version = "4", default-features = false, optional = true }
35+
curve25519 = { workspace = true, optional = true }
3636

3737
[dev-dependencies]
38-
rand = "0.8"
39-
rand_dev = "0.1"
40-
sha2 = "0.10"
41-
serde_json = "1"
42-
serde_test = "1"
38+
rand.workspace = true
39+
rand_dev.workspace = true
40+
sha2.workspace = true
41+
serde_json.workspace = true
42+
serde_test.workspace = true
4343

44-
generic-tests = "0.1"
44+
generic-tests.workspace = true
4545

4646
[features]
4747
default = ["std", "serde"]
4848
std = ["alloc"]
49-
alloc = ["hex/alloc", "curve25519-dalek?/alloc"]
49+
alloc = ["hex/alloc", "curve25519?/alloc"]
5050
serde = ["dep:serde", "generic-ec-core/serde", "hex", "serde_with"]
5151
udigest = ["dep:udigest"]
5252

5353
curves = ["generic-ec-curves"]
5454
curve-secp256k1 = ["curves", "generic-ec-curves/secp256k1"]
5555
curve-secp256r1 = ["curves", "generic-ec-curves/secp256r1"]
5656
curve-stark = ["curves", "generic-ec-curves/stark"]
57-
curve-ed25519 = ["curves", "generic-ec-curves/ed25519", "curve25519-dalek"]
57+
curve-ed25519 = ["curves", "generic-ec-curves/ed25519", "curve25519"]
5858
all-curves = ["curve-secp256k1", "curve-secp256r1", "curve-stark", "curve-ed25519"]
5959

6060
hash-to-scalar = ["dep:rand_hash", "dep:digest", "udigest"]

tests/Cargo.toml

+9-9
Original file line numberDiff line numberDiff line change
@@ -14,18 +14,18 @@ anyhow = "1"
1414
regex = "1.10"
1515
tabled = { version = "0.15", default-features = false, features = ["std"] }
1616

17-
serde = { version = "1", features = ["derive"] }
18-
serde_with = "2"
19-
serde_test = "1"
20-
serde_json = "1"
21-
hex = "0.4"
17+
serde = { workspace = true, features = ["derive"] }
18+
serde_with.workspace = true
19+
serde_test.workspace = true
20+
serde_json.workspace = true
21+
hex.workspace = true
2222

2323
[dev-dependencies]
24-
generic-tests = "0.1"
25-
rand_dev = "0.1"
26-
rand = "0.8"
24+
generic-tests.workspace = true
25+
rand_dev.workspace = true
26+
rand.workspace = true
2727

28-
criterion = { version = "0.5", features = ["html_reports"] }
28+
criterion = { workspace = true, features = ["html_reports"] }
2929

3030
[features]
3131
default = ["generic-ec/std"]

wasm/wasm-example/Cargo.toml

+1-1
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ crate-type = ["cdylib", "rlib"]
99

1010
[dependencies]
1111
generic-ec = { path = "../../generic-ec", features = ["all-curves"] }
12-
rand_core = { version = "0.6", features = ["getrandom"] }
12+
rand_core = { workspace = true, features = ["getrandom"] }
1313
wasm-bindgen = "0.2.84"
1414
getrandom = { version = "0.2", features = ["js"] }
1515

0 commit comments

Comments
 (0)