theseus-os/Theseus

Use Cargo's workspace dependency feature

Opened this issue · 0 comments

Theseus tries to minimise different versions of the same dependency to minimise the size of the final image. However, this makes updating dependencies a hassle as all the different Cargo.toml files must be updated.

Cargo has a feature called workspace dependencies, which would allow us to define the versions once in the root Cargo.toml, and then inherit that version in crates in the workspace. Note that due to excludes in the root Cargo.toml, none of the benchmark or testing related crates could inherit dependencies, but that's not a big concern.

Initially mentioned by @NathanRoyer on Discord.