Review on a new crate: scaphandre v0.1.0

Hi the wonderful Rust community !

I just released a crate that I would love feedbacks and advices about: scaphandre. (https://crates.io/crates/scaphandre)

The goal of the project is to provide a monitoring agent dedicated to measure (electrical) power consumption, that matches standards of monitoring, especially in the "cloud native" world.

A key goal about this project is to make it as efficient and lightweight as possible. I'd love to hear your thoughts especially on that part. Quality of the code too, of course.

It's more a binary crate than a library for now, but I'd like to improve it to make it nice to use as a library too in a near future.

Thanks a lot, I'll be thrilled to discuss with you about those topics.

2 Likes

Welcome to Rust!

What a nice project page: it has a cute logo, a road map and a diagram! Congratulations :wink:

I've skimmed through the code a bit and noticed that you're passing around ArgMatches. This results in constructs like if let = Some(...) and some clone() that could be avoided if you change it to a custom struct.
There is a nice crate called structopt that could help. (Note that this will be included in clap in the future)

You can also try out cargo clippy that could give you some more tips.

1 Like

Hi,

Thanks a lot for those advices :slight_smile:
I will think about what could replace ArgMatches, this makes totally sense. (and have a look to structopt)

I run cargo clippy regularily so I already apply those tips.

Thanks again !

1 Like