Closed bestia-dev closed 3 years ago
https://github.com/serayuzgur/crates/issues/69#issuecomment-636679232 :
I think that "searching" for a crate is more than simply choosing one from the auto-completion drop-down. It is an important step and you want to avoid problems here. Making it too easy is missleading, I think. I would rather have a handy fast accessible link to open the search on crates.io and lib.rs. There is much to read about a crate than only a crate name, version and description. I imagine this workflow:
reader_for = ""
Move the cursor on ""
and vscode extension crates
shows.
There is no Available versions, because this name is not a crate.
But it has new commands:
The first link simply opens https://crates.io/search?q=reader_for
The second link simply opens https://lib.rs/search?q=reader_for
I find the crate I want reader_for_microxml
, read about it and manually copy/paste the name to cargo.toml.Now I have the correct name and version reader_for_microxml = "1.1.7"
.
If I go on the version number the extension opens like this:
I can:
All this commands are simple URL-s. There is no need for any additional data to get or extension behaviour to modify. Very simple.
Originally posted by @LucianoBestia in https://github.com/serayuzgur/crates/issues/69#issuecomment-636679232
https://github.com/serayuzgur/crates https://github.com/serayuzgur/crates/issues/72
I am thinking aloud now. What is important when the developer wants to change the version of a dependency? He should read some information what changed and if there are problems with the new version. Reading the documentation is fine, but it is just like commercials. The author will always say the best for his product. Sometimes he does not know better. Sometimes he is lazy. I don't want to go in extreme where evil people want to do harm. That is rare, but is not impossible.
I like the idea of cargo-crev: https://github.com/crev-dev/cargo-crev a system of trusted reviews from other developers. If enough people say a version is ok it is probably ok. If some people say an explicit version has big problems it probably has and should be avoided. There are reviews, issues and advisories in cargo-crev.
I am building (slowly) a web interface cargo_crev_web. Try it here: https://bestia.dev/cargo_crev_web/query/num-traits
I think that your extension crates is the best place for the developer to find this information before he actually updates the version of a dependency.