Feature idea for handling large merge requests


TLDR - I made a chrome extension to help with large merge requests. I’m wondering if others think it’s useful and if so how to make an official feature request to remove the need for it.

GitHub - wboult/gitlab-merge-request-tools: A Chrome extension to help with large MRs in Gitlab (readme has a Gif)

I work at a company that use Gitlab internally. I fairly regularly get given extremely large merge requests that I need to review (sometimes these are genuinely large new features and often they are big sweeping refactors).

I’ve found that as soon as the number of files changed for an MR goes above 50, or the number of lines changed goes above the 1,000 mark I have two issues:

  1. A really noticeable drop in browser performance, due purely to the huge amount of content being displayed in the page. Pretty much every click is followed by a few seconds lag, which is frustrating

  2. It’s difficult to navigate the files in a logical order (e.g. api, then actual code, then tests).

The idea of the extension is to expose some simple filters (similar to the filter already provided with the tree view). These filters hide any diff files that don’t match, as well as filtering the tree view on the left. The hiding is doing using jquery which is just “display: none”. This allows me to approach the MR in a structured way and also allows me to keep the browser performance at a reasonable level as I go.

Keen for feedback, as I’ve struggled to find many others reporting similar issues or requesting these features!