logo

Rust crates reviews

Cryptographically verifiable, distributed dependency reviews

crate: take_mut

https://lib.rs/crates/take_mut/

Add the last reviewed version to Cargo.toml / [dependencies]:

take_mut = "0.2.2"

Filter reviews clicking on the numbers in the summary.

Full column names in tooltip hints: rating Negative, rating Neutral, rating Positive, rating Strong, thoroughness, understanding, reviews count.

Neg
Neu
Pos
Str
tho
und
rev
1
1
1
1
crate version
rating
date
reviewer
thoroughness, understanding
take_mut 0.2.2
neutral
2019-11-22
medium, medium
issues:
medium

The whole idea of the crate -- having a variable unitialized for a while,
then return something back later on seems a bit unnatural for the whole Rust
type system. This can be seen by the fact that certain cornercases are
handled by not merely panicking, but outright aborting the whole process.

I didn't manage to find a way to break safety guarantees using the crate and
I tried to find a loophole quite hard. But considering how questionable
things it does, I'd really like to see some kind of proof or semi-formal
argument saying why it is safe. Such thing is not included in the source
code, unfortunately.

The repository doesn't seem to have a recent activity and the last release is
2 years ago, but it's hard to say if it's abandoned or simply considered
finished.

I've also found a resource leak (that is somewhat unlikely to get triggered
in real-world usage).

Therefore, I'd be somewhat wary using this myself and would need a good
reason to reach for this crate -- certainly not just for convenience.

© bestia.dev 2023, MIT License, Version: 2023.608.1636

Open source repository for this web app: https://github.com/bestia-dev/cargo_crev_web/