0xMiden / 0xMiden/node

Minimize duplicate dependencies

Ouverte
#1,024 3 commentaires 0 réactions 1 personne assignée Assignée à @TomasArrachea Voir sur GitHub
Langage dominant
Rust
Étoiles
104
Forks
138
Merge moyen
1 j 13 h
PR mergées (30 j)
56

Description

Our lockfile contains duplicates of fairly large dependencies e.g. `thiserror`, `protobuf` and `http`.

We should try minimize these insofar as possible.

Such packages can be identified using `cargo tree -d`, though be aware this will include duplicate packages that are feature orthogonal e.g. it shows our miden deps multiple times - at least I think the `async` feature is the cause of this.

As an example for `clap` we find

```
$ cargo tree -d

....
clap v3.2.25 (*)

clap v4.5.40
├── miden-faucet v0.10.0 (/home/mirko/Projects/node/bin/faucet)
├── miden-node v0.10.0 (/home/mirko/Projects/node/bin/node)
├── miden-node-stress-test v0.10.0 (/home/mirko/Projects/node/bin/stress-test)
└── miden-proving-service v0.10.0 (/home/mirko/Projects/node/bin/proving-service)
...
```

And investigating further:

```
$ cargo tree -i clap@3

clap v3.2.25
├── pingora-core v0.5.0
│ ├── miden-proving-service v0.10.0 (/home/mirko/Projects/node/bin/proving-service)
│ ├── pingora v0.5.0
│ │ └── miden-proving-service v0.10.0 (/home/mirko/Projects/node/bin/proving-service)
│ ├── pingora-cache v0.5.0
│ │ └── pingora-proxy v0.5.0
│ │ ├── miden-proving-service v0.10.0 (/home/mirko/Projects/node/bin/proving-service)
│ │ └── pingora v0.5.0 (*)
│ ├── pingora-load-balancing v0.5.0
│ │ └── pingora v0.5.0 (*)
│ └── pingora-proxy v0.5.0 (*)
└── pingora-proxy v0.5.0 (*)
```

and

```
$ cargo tree -i clap@4

clap v4.5.40
├── miden-faucet v0.10.0 (/home/mirko/Projects/node/bin/faucet)
├── miden-node v0.10.0 (/home/mirko/Projects/node/bin/node)
├── miden-node-stress-test v0.10.0 (/home/mirko/Projects/node/bin/stress-test)
└── miden-proving-service v0.10.0 (/home/mirko/Projects/node/bin/proving-service)
```

aka `pingora` uses an older version of `clap` than we do. In this case its unlikely that there is much we can do about it since its upstream lagging a bit.

It would be good to comb through these instances and try collapse our lockfile insofar as possible.

Guide de contribution

Ouvrir le guide de contribution

Évaluation

Cette issue n'a pas encore été évaluée.

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.