riok / Kreya

Kreya is a GUI client for gRPC and REST APIs with innovative features for environments, authorizations and more.
https://kreya.app
279 stars 5 forks source link

"Open Operation" Search Unusable #194

Closed bitm0de closed 2 months ago

bitm0de commented 5 months ago

Describe the bug The "Open Operation" quick search results are terribly inaccurate. It seems to be looking at characters too far apart with its fuzzy search functionality. I have an operation named exactly "SetAlarm" and it doesn't find it anywhere in the search results. It will find everything else not even closely related to my keyword.

To Reproduce Steps to reproduce the behavior:

  1. Use search (with a decent number of importers (6 in my case) that have at least 50 operations each.

Expected behavior Search results are accurate/relevant.

Screenshots image

Environment (if possible, copy the information from the error dialog or the About menu):

CommonGuy commented 5 months ago

Yes, this needs fixing.

CommonGuy commented 4 months ago

We just released Kreya 1.13.1-alpha.1, which should fix this issue.

If you want to test this, go to Kreya -> About -> change the release channel to Alpha -> Check for updates -> Relaunch

CommonGuy commented 4 months ago

Kreya 1.13.1 has been released, which should make the search more accurate

bitm0de commented 4 months ago

image

CommonGuy commented 4 months ago

I am unable to reproduce this on 1.13.1:

grafik

CommonGuy commented 4 months ago

Did you make sure that you are in the "Open operation" quick action (shortcut Primary+O)? It is very easy to accidentally hit the "quick action overview" (shortcut Primary+K) and trying to enter the operation name there, which of course does not show any operations.

bitm0de commented 4 months ago

Yeah I'm using the Open Operation (Ctrl + O) shortcut.

From your screenshot, why is it highlighting the R in the beginning? That shouldn't match for the "SetAlarm" character sequence.

CommonGuy commented 4 months ago

I found the error: We use fuse.js for searching, as that allows for fuzzy search. However, it looks like it only matches the first 60 characters by default: https://www.fusejs.io/api/options.html#ignorelocation. Your operation path (probably something like very/long/directory/names/SetAlarm) exceeds that limit, so it doesn't show up in search.

As for the current behaviour, we want to allow users to find operations in directory, for example an operation name "Delete" in the directory "Books" can be found with "delete book", the spelling does not have to be accurate. In the previous release, the threshold was set way too high, resulting in too many unrelated matches.

We are going to fix this, sorry for the inconvenience.

CommonGuy commented 3 months ago

A fix for this has been implemented and was released with the newest beta release. It will be included in the next stable version.

CommonGuy commented 2 months ago

Kreya 1.14 has been released