testcontainers / testcontainers/testcontainers-java

Combine many dependabot PRs into one

Aperta
#4,172 2 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

type/housekeeping
Lingua principale
Java
Stelle
8.7k
Fork
1.9k
Merge medio
2g 17h
PR unite (30g)
9

Descrizione

#4135 explored a scripted approach (running client side) of combining multiple PRs into one.

The motivation is that the sheer volume of dependabot PRs creates a weekly multi-hour merge chore, as well as obscuring real PRs by real people - both of which are terrible.

https://github.com/dependabot/dependabot-core/issues/1190 looks like it won't happen any time soon.

https://www.hrvey.com/blog/combine-dependabot-prs looks very promising and I think we should give it a try instead of my previous script attempt. I'd like to verify:

  • that, as seen in #4135, we can have the release notes updates automatically. We'd need to:
    • enable merge commits in this repo, and make sure we use them when merging the combined PR
    • (I think) update our release-drafter workflow triggers, so that pull request events trigger release drafter. Even if not required, we should probably do that anyway.
  • that merge conflicts are not too big a problem. We'll likely seem them occurring with changes in adjacent lines in build.gradle files, which may or may not be a nuisance.
    • if merge conflicts are a problem, I have written a dirt-simple git merge driver script which seems to work well enough for build.gradle files - perhaps we could explore using this.

Guida per i contributori

Apri la guida per i contributori

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Direzione di ricerca

Inizia esaminando #4135 e il workflow release-drafter menzionato nell'issue. Verifica se la combinazione di Dependabot PRs con merge commits aggiorna correttamente le release notes, quindi valuta i conflitti di merge nei file build.gradle; il lavoro è completato quando il workflow è affidabile e i conflitti sono gestibili.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
git, github-actions
Ambito
build-system, ci-cd, release
Tipo di issue
Funzionalità
Difficoltà
4/5
Tempo stimato
3-5 giorni
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
28/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.