52 + if (popularities_dirty)
53 + yield update_popularities ();
Check for cancellation after here?
91 + popularity_map[uri] = relevancy--;
Should the decrement not be moved to the outermost for-loop? If one event has many apps they should all rank alike, no?
139 + results.results.sort_with_data ((a, b) =>
140 + {
141 + int rel_a = a.relevancy / 10;
142 + int rel_b = b.relevancy / 10;
...
Can you add a comment explaining the sorting please (also noting the rounding trick)? For the uninitiated this will look like dark magic.
I was wondering if it would be a significant speed increase if you simply iterated the results GSList but then inserted the hits sorted in a GSequence. I don't know the performance profile of sorting a GSList, but I'd assume it to be weak... But this prolly clashes with code elsewhere expecting the glist..?
184 + /* Make sure fresh install learns quickly */
185 + if (popularity_map.size <= 5) popularities_dirty = true;
52 + if (popularities_ dirty)
53 + yield update_popularities ();
Check for cancellation after here?
91 + popularity_map[uri] = relevancy--;
Should the decrement not be moved to the outermost for-loop? If one event has many apps they should all rank alike, no?
139 + results. results. sort_with_ data ((a, b) =>
140 + {
141 + int rel_a = a.relevancy / 10;
142 + int rel_b = b.relevancy / 10;
...
Can you add a comment explaining the sorting please (also noting the rounding trick)? For the uninitiated this will look like dark magic.
I was wondering if it would be a significant speed increase if you simply iterated the results GSList but then inserted the hits sorted in a GSequence. I don't know the performance profile of sorting a GSList, but I'd assume it to be weak... But this prolly clashes with code elsewhere expecting the glist..?
184 + /* Make sure fresh install learns quickly */ map.size <= 5) popularities_dirty = true;
185 + if (popularity_
Like this tweak. Clever you are!