# William Woodruff - Things I Hate About Rust, Redux (Highlights)

## Metadata
**Cover**:: https://readwise-assets.s3.amazonaws.com/static/images/article0.00998d930354.png
**Source**:: #from/readwise
**Zettel**:: #zettel/fleeting
**Status**:: #x
**Authors**:: [[William Woodruff]]
**Full Title**:: Things I Hate About Rust, Redux
**Category**:: #articles #readwise/articles
**Category Icon**:: 📰
**URL**:: [blog.yossarian.net](https://blog.yossarian.net/2022/03/10/Things-I-hate-about-Rust-redux)
**Host**:: [[blog.yossarian.net]]
**Highlighted**:: [[2022-03-16]]
**Created**:: [[2022-09-26]]
## Highlights
### IntoIterator is too overloaded
- The downside is comprehension: absent of context, an into_iter() could be doing any of the
above3, leaving it to me (or any other poor soul) to read further into the iterator’s
consumer to determine what’s actually going on.
### It’s difficult to write “high-assurance” Rust
- Rust standard library and ecosystem are full of panics that almost never
occur, panics that are only specified informally
### Integration tests feel bolted on
- Cargo doesn’t understand how to run integration tests against a binary-only crate
- More annoyingly: because each file under tests/ is its own binary, Rust’s otherwise
excellent dead code detection does not work correctly on integration tests.
### Bonus: cargo install is too eager
- Unlike cargo build,
cargo install ignores Cargo.lock by default,
### Wrapup and honorable(?) mentions