It’s common to say some packages are “heavy” or “light-weight”, but what does it actually mean?
I’d like to help judge weight of dependencies on crates.rs, but how to quantify and display that information?
I’m considering things such:
- Measure compiled size of it as a dynamic library.
- Measure compile time.
- Count number of lines of code,
- probably normalized by rustfmt,
- with extra weight for inlined and monomorphised functions,
- maybe weighted by cyclomatic complexity?
- Look at size of compressed crate file.
Is any of them good enough? (there will be exceptions in every case, so which one has least bad exceptions?)
Could multiple values be used together? How to blend them and display that?
Any other ways to measure the weight?