tree 8119de632ce984055569fde47c73a9d6554abfbf
parent ca644a6289ba5ef02044b26ad3c64f64f2639571
author Mark Bekhet <mark.bekhet@ericsson.com> 1614797901 -0500
committer Mark Bekhet <bekhet.mark@gmail.com> 1615836713 +0000

Apply a second filter after receiving the initial repo list

Before this change, searching a repository where the prefix is similar
to the name was problematic. It sent a query having two similar
conditions which resolved to one condition. For example, searching for a
project named f/f would send a query inname:f AND inname:f. This is
problematic when listing all the related projects to the filter, which
may not correspond to the user entry. Additional examples are in [1].

Before this change, if the user entered a filter containing a special
character, the query sent to the backend was modified to correspond to
the query language. The reason behind it being that the query language
uses some special characters as operators. Therefore, the result of the
output method was inaccurate and could contain extra data that are not
needed by the user.

This change introduces a second method that compares the filter with the
output list of the fetch method. This second filter takes the original
filter and compares it with each element of the resulting array from the
fetch method. This ensures that the output received by the user matches
their entry.

With this change, users should get the same output as the old UI.

[1] https://groups.google.com/u/0/g/repo-discuss/c/pfxB4_75EL0/m/dfT-nnnMAwAJ

Feature: Issue 12970
Change-Id: I5078237a9648871eb59628d4669ffa0b5b42cc08
