0xMiden / 0xMiden/node

Minimize duplicate dependencies

オープン
#1,024 コメント 3 件 リアクション 0 件 担当者 1 名 @TomasArrachea に割り当て済み GitHub で見る
主要言語
Rust
スター
104
フォーク
138
平均マージ
1日 13時間
マージ済み PR(30日)
56

説明

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.

コントリビューションガイド

コントリビューションガイドを開く

評価

この issue はまだ評価されていません。

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。