hesperides
hesperides copied to clipboard
Les versions des modules retournées par /perform_search ne sont pas triées de la plus récente à la plus ancienne
Actuellement les résultats de recherches sont limités à 10 par la requête Mongo qui impose un tri lexicographique.
Si on veut faire du vrai tri par semantic versioning cela signifie :
- ne plus paginer les résultats de requête dans
onSearchModulesQueryet faire le tri en Java - implémenter ce tri côté frontend pour ordonner les suggestions d'auto-complétion dans la barre de recherche de module
Problème lié à la recherche et rapporté par un utilisateur : l'utilisateur ne retrouve pas, via la recherche, un module qu'il vient de créer (releaser), même en saisissant le nom et la version exacts du module. La raison est que le nom et la version du module recherché sont inclus dans le nom et la version d'au moins 10 autres modules.
Je pense que le tri doit se faire côté back et directement dans la requête pour des raisons de performances (via la limite du nombre de résultats).
Ce que je suggère c'est de mettre en priorité le ou les résultats dont la recherche correspond exactement à la clé de la techno, du module ou de la plateforme.
Une autre option serait de mettre en place un système de pagination (ou "Afficher plus de résultats") des résultats de la recherche côté front et back.
Une solution de contournement temporaire consiste à suffixer la recherche par $ => utilisation d'une regex 🤐
Un premier fix a été implémenté : https://github.com/voyages-sncf-technologies/hesperides/pull/676
Je conserve ce ticket ouvert pour implémenter un véritable tri basé sur le semantic versioning
Vu avec @Lucas-C cette issue est moins prioritaire puisqu'un fix temporaire a été apporté.