I never used Rust. Looking at the code, I see a "Cargo.toml" file that reminds me of composer.json and package.json in that it seems to contain dependencies.
Where are these pulled from? Is this the same game as with other dependency managers in that you blindly trust a tree of code written by random people?
If you still have issues with it, Cargo (Rust's package manager) has the option to use alternative package repositories, so you can host your own repository of packages[1] if you so choose. I haven't looked too far into it, so I don't know how painless it is to replace the default one or set up a mirror for packages you trust, but someone on Reddit claims to do just that at their company [2].
I wish Rust made it easier to know who the author of a package is (i.e. namespace packages so it's clear in the Cargo.toml), but I do think they've done a better job at designing crates.io than some other package repositories (i.e. npm).
You list the packages and trust their authors. That's pretty much the definition of software packages - unless you've got a sandbox for dependencies. What other model do you have in mind?
They're pulled from crates.io. I suppose it works as every other dependency manager, except that you can't have a left-pad because crates can't be removed.
In this specific case, most dependencies are authored by people well-known and trusted in the community. The Rust standard library is pretty well-rounded (not compared to Python sense, but it's not like JavaScript either), so they're not something like left-pad or is-odd.
You have there an error handling crate by the second most prolific Rust compiler contributor (if the counts are correct), an OAuth client, an HTTP one, a interactive line editor (like readline), _the_ serialization library in the ecosystem with its JSON support crate, a TOML config parser, the URL parser used by Servo and a crate for determining user paths on Unix.
what universe are you living in that you don't have to trust code written by randoms? nobody has the time to evaluate every transitive dependency. you take a small risk of getting hit by a car when you cross the road, and you take a small risk of a bad dependency when you want to create substantive software
Where are these pulled from? Is this the same game as with other dependency managers in that you blindly trust a tree of code written by random people?