Hello m-l, Nate,

First thanks for the answer, it gives much needed information.

I investigated the code further. What Nate says seems
to be right. Discover uses a KNewStuff backend, which
in turn uses Attica.

Now, the thing is, the sorting order is passed from KNewStuff
to Attica. As Attica ends up (REST) calling a provider (if I 
got that well), the sort is done by that provider...

So, although we're interested in the sort order which is
visible in Discover, the sort is actually done in the
providers, far away from Discover.

Now, since Discover aggregates results from several providers,
I'd say that the responsibility for the sort order must be in
Discover since it has to sort and to prioritize the results 
from the various provider (that is, it's Discover which has 
to decide what package/theme/newstuff/... is most relevant 
to the user who started the search).

But still the "relevancy" aspect of it stays beyond my 
understanding. How is that defined ?

Does this make sense ?

I ask that for two reasons :

1/ it's an indirect way to validate I understand the way 
   Discover works
2/ I make sure I won't change things that will lead to 
   architectural dead ends... (I love to give some time 
   to KDE, but that time is not exactly plenty :-) )

Thanks !

Stéphane



> Le 8 avril 2020 à 18:07, Nate Graham <n...@kde.org> a écrit :
> 
> 
> See https://bugs.kde.org/show_bug.cgi?id=407588. This was supposed to 
> have been fixed in AppStream itself, at least for apps. And I can 
> confirm the fix with the latest version of APpStream--again, at least 
> for apps.
> 
> However I can see that the problem is still present for non-apps, such 
> as the "Titanium" GTK2 theme, where I can reproduce the issue, as you 
> indicate. Looks like the sorting may need to be adjusted in the KNS 
> backend specifically, or elsein the KNewStuff framework itself.
> 
> Nate
> 
> 
> 
> On 4/8/20 3:10 AM, S. Champailler wrote:
> > Hello Aleix, hello KDE dev's, <mailto:aleix...@kde.org>
> > 
> > I wanted to modify Discover a bit. Here's the thing :
> > 
> > In KDE Neon, I run Discover. I search for a package named "Titanium". 
> > The result list has Titanium and some other packages in it (which is 
> > fine). However, the first item in that list is not named Titanium at all 
> > (I guess it's a match based, say, on the description).
> > 
> > I'd like to modify the sort order so that if a package has an exact name 
> > match, then it appears on top of the search results.
> > 
> > I've already looked at the code (and built it !)) and seen that the 
> > current sort is determined by the m_sortByRelevancy boolean. It seems to 
> > me that when that boolean is True, then no specific sort happens; not 
> > 100% sure.
> > 
> > Before going any further, I'd like to make sure my idea doesn't 
> > contradict some of the initial design of Discover. So, does it ?
> > 
> > Best regards,
> > 
> > Stéphane
>

Reply via email to