-
Notifications
You must be signed in to change notification settings - Fork 54
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Improve crate searching #19
Comments
see here for a nice description of how crates.io handles this - rust-lang/crates.io#1270 this is using some postgres features, so it might be hard to generalise over all backends. What is the advantage to users of the crate of being able to use multiple backing databases? |
Hello, I used to use Alexandrie as a frontend to a mirror of crates.io. Though with few crates current search might be enough when searching through the whole mirror isn't working. For instance, when searching |
Hi ! I wholeheartedly agree that the search experience is not great right now, exact matches are not favored and there is no relevancy criteria of any sort taken into account. Expanding and improving search is something that I'd like to get around to, because I think it would be good to allow things like searching based on crate descriptions, keywords or categories. Using a system like Elasticsearch would indeed considerably improve the experience but I worry that this would be yet another moving part in an already quite involved deployment process (we already have 3 separate pieces that users need to configure: the registry itself, the git index, and the database). I'm thinking maybe we can use one of the full text search engines that are implemented in Rust to have it directly integrated into the registry itself (like Meilisearch, or Tantivy). I hope to have a stab at something like that rather soon. |
I agree with your concern having another system, it might be not worth the trouble to have a fourth external softwate. I chose elastic because I was quite familiar with it and I already had a small cluster. |
Hello, @Hirevo , |
Currently, crate searching, both in the frontend and the programmatic API, has limitations:
"serde json"
won't yield "serde_json" as a matchThis issue will serve as the place where improvements to the search mechanism, like addressing these limitations, can be discussed.
The text was updated successfully, but these errors were encountered: