Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

Deduplicate identical remote fetches across `inputs:` entries in buf.gen.yaml

Chiusa
#4,657 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
3/5
Tempo stimato
1-2 giorni
Idoneità per principianti
68/100
Tipo di issue
Funzionalità
Chiarezza
Abbastanza chiara
Stato di attività
Attiva
Stack tecnologico
go
Ambito
build-system, cli

Direzione di ricerca

Inizia tracciando il modo in cui gli input remoti ripetuti provenienti da buf.gen.yaml vengono risolti e recuperati, usando il repository di riproduzione collegato per riprodurre le richieste ripetute. Il lavoro è completato quando ogni remoto identico viene recuperato una sola volta tra tutti gli input e i remoti distinti e i diversi tipi di input, incluso git_repo, continuano a funzionare.

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

Descrizione

Feature
Feature

When a single buf.gen.yaml (v2) declares multiple inputs: entries that resolve to the same remote (tarball, zip_archive, binary_image, etc...), the URL is re-fetched over and over.

It would be nice if this could be deduplicated to be a little more efficient and also avoid spamming the servers.

Usecase

In one of our mono-repos this is a non-issue because our services are all namespace well and we have a single buf.yaml representing everything as one module, but in others each service is treated as an independent module with a buf.yaml in the root listing each by path. When we package up an artifact containing all our .protos as a .tar.gz , or build into a .binpb we have to effectively reuse the same URL for each module we include in our buf.gen.yaml and this results in a bunch of unnecessary rapid hits to our hosts.

We also looked at fetching direct from github too (which would be really nice to avoid publishing artifacts at all), but the same refetching occurs for git_repo and limits us there too. Arguably its worse for that one because our repos are huge and re-pulling over and over is painfully slow.

Resources

While this isn't a bug, I did decide to go ahead and put together a repo to showcase the behavior incase it helps:
https://github.com/is-jonreeves/ghissues-buf-dedupe-remote-inputs

Lingua principale
Go
Stelle
11.5k
Fork
370
Merge medio
3g 2h
PR unite (30g)
35

Preparare l'ambiente

Questo progetto non fornisce container di sviluppo, Dockerfile né guida per i contributori, quindi l'ambiente è a tuo carico: parti dal suo README e consulta la nostra guida al primo contributo per i passaggi generali.

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.

Altre issue di bufbuild/buf

Tutte le issue di bufbuild/buf

Issue simili

Altre issue su Go

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.