• 
      

    Add server-side filtering for repositories on "New Review Request"

    Review Request #12140 — Created March 11, 2022 and submitted — Latest diff uploaded

    Information

    Review Board
    release-3.0.x
    95b4c81...

    Reviewers

    The "New Review Request" page was designed for smaller servers in mind,
    since in our heads, most people on large servers are (correctly) using
    RBTools. To wit, it was loading the entirety of the repository list into
    the sidebar of the page, and then providing client-side search of the
    names. On servers with very large numbers of repositories, this would
    cause major delays and even timeouts.

    This change fixes all that up to be much better. Rather than loading all
    repositories, we load only the first 25. Instead of the special "File
    attachments only" repository being something that is done in the view,
    it happens entirely client-side. And the "Filter" search box will now
    make queries to the API to regenerate the collection of repositories,
    rather than just filtering the full collection on the client.

    This required adding a few new data fields to the repository API, as
    well as the new "q" query parameter to the list API.

    Created a bunch of different repositories on my local system. Typed some
    stuff in the repository filter field and saw appropriate network
    requests and that the repository collection was reloaded with the
    returned results.