Github PR Organizer & Formatter

Organizes and tabs PRs to make it easier to see what to prioritize.

Tendrás que instalar una extensión para tu navegador como Tampermonkey, Greasemonkey o Violentmonkey si quieres utilizar este script.

You will need to install an extension such as Tampermonkey to install this script.

Tendrás que instalar una extensión como Tampermonkey o Violentmonkey para instalar este script.

Necesitarás instalar una extensión como Tampermonkey o Userscripts para instalar este script.

Tendrás que instalar una extensión como Tampermonkey antes de poder instalar este script.

Necesitarás instalar una extensión para administrar scripts de usuario si quieres instalar este script.

(Ya tengo un administrador de scripts de usuario, déjame instalarlo)

Tendrás que instalar una extensión como Stylus antes de poder instalar este script.

Tendrás que instalar una extensión como Stylus antes de poder instalar este script.

Tendrás que instalar una extensión como Stylus antes de poder instalar este script.

Para poder instalar esto tendrás que instalar primero una extensión de estilos de usuario.

Para poder instalar esto tendrás que instalar primero una extensión de estilos de usuario.

Para poder instalar esto tendrás que instalar primero una extensión de estilos de usuario.

(Ya tengo un administrador de estilos de usuario, déjame instalarlo)

Autor
HappyViking
Instalaciones diarias
0
Instalaciones totales
7
Calificaciones
0 0 0
Versión
1.8.0
Creado
30/8/2023
Actualizado
4/6/2024
Tamaño
172 KB
Licencia
MIT
Funciona en

If you're interested in the source code:

https://github.com/andersonaddo/greasyfork-userscripts/tree/main/github-pr-formatter

This script makes use of GraphQL queries to fetch more information on PRs. When the script realizes you're on the /pulls page of your repo, it queries the GraphQL api to fetch more PR info. To do this, it'll need a Github Access Token to do the queries in your name. Only read access to repos is needed. You can decide to use Github's new fine-grained tokens, but not all Github teams allow that (which matters, if you're using this for work like I do). The classic Github tokens have a better chance of being supported by your Github team.

Regardless of which repo's /pulls page you're on and which arguments you're searching against, this script always uses the same arguments to query the GraphQL:

is:open is:pr involves:@me archived:false repo:${repo}

where repo is also something you provide on setup once the script is supplied.

The script caps the number of PRs it fetches from the api. If there's any PR being shown on the /pulls page that wasn't in the api response (whether the script reached it's cap or the PR doesn't match the predefined query), the script just won't sort it (so it won't be put under any header and won't be given any badges).

There are 3 headers:

  • Requires Attention:

    • PRs that are yours with but have no assignee
    • PRs that are yours with changes requested
    • PRs that are yours that have a failing CI test who's title doesn't contain a whitelisted substring (you can add those in the userscript settings)
    • PRs that have requested a [new] review from you.
  • Others - Yours: PRs that are yours but don't require attention

  • Others - Misc: PRs that are not yours and don't require attention

The settings for this userscript will be in the footer of Github on any repo's /pulls page.