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

Feature Request: Facilitate enumerating protobuf plugin options in schema registry

Aperta
#1,703 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
5/5
Tempo stimato
Più di una settimana
Idoneità per principianti
25/100
Tipo di issue
Funzionalità
Chiarezza
Da chiarire
Stato di attività
Ferma
Ambito
documentation

Direzione di ricerca

Inizia esaminando il contenuto della landing page del plugin e l'esempio buf.plugin.yaml collegato nel repository bufbuild/plugins. Confronta i due ambiti proposti —i link alla documentazione per gli autori e le opzioni enumerate— e chiarisci quale dei due è previsto prima di identificare i metadati del plugin interessati e una definizione verificabile di completamento.

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

Descrizione

Feature Request: Make Plugin Registry Documentation more useful and easier to maintain

This could be one of two things, depending on how ambitious:

  1. For every protobuf plugin, provide a link to the docs for the projec that owns/authored the plugin
  2. For every protobuf plugin, provide a list of the options (like a man page sort of thing)

WAIT, WAIT, WAIT ... OR we define our own data modeling language to define how we document and describe ALL possible values for ALL POSSIBLE options that could be... no, no... nevermind. Let's just stick with those first two.

I think I got spoiled by some of the nice documentation that was available from some of the more curated protobuf plugins.

I think I then conflated that with the Buf Schema Registry, so it could tell me what all the options were for any particular version of a particular protoc plugin.

For example, protoc-gen-go when run with --help provides a link to the exhaustive, and somewhat helpful: https://protobuf.dev/reference/go/go-generated where it mentions that all these options exist:

--go_opt=paths=source_relative
--go_opt=module=example.com/validator
--go_opt=M${PROTO_FILE}=${GO_IMPORT_PATH}
--go_opt=default_api_level=API_HYBRID
--go_opt=apilevelMhello.proto=API_HYBRID

but when I go to: https://buf.build/protocolbuffers/go?version=v1.36.4 I don't even see that documentation link, let alone a copy of the documentation, or some sort of summary of possible options. I really thought I did remember seeing something along those lines in the past. Maybe for one of the other plugins? I asked in Slack and Josh Humphries gave me this suggestion:

It can provide all of this information, but none of it is automatic since plugins don't have any sort of "interrogation" mode, where we could run a plugin binary and ask it for its options.
When it does provide this information, it will be on the plugin landing page, like the link you provided. In the public BSR (for free and team plans), we (Buf) curates the set of plugins and maintains the information that shows up on that page. That is all in an open-source repo here: https://github.com/bufbuild/plugins
It is possible that some of those plugin READMEs did contain information about plugin options. IIRC, the description field in buf.plugin.yaml (example) can be Markdown. But I'm not sure if it really changed and, if so, when. It is possible you've worked with a private BSR (pro or enterprise plan) that had custom plugins with that sort of documentation?

I think the challenge with keeping such docs in these curated plugins is just that it can trivially get out of sync with the actual plugin implementation as new versions are released. Perhaps we should at least add a link/URL to docs for the project that owns/authored the plugin.
Consider filing an issue at that bufbuild/plugins repo about fleshing out the description, at least with a link to other plugin docs. Maybe that will start a useful discussion on the subject or reveal other reasons why we don't already have it.

Lingua principale
Dockerfile
Stelle
74
Fork
24
Merge medio
3h 54m
PR unite (30g)
62

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.

Altre issue di bufbuild/plugins

Tutte le issue di bufbuild/plugins

Issue simili

Altre issue su Documentation

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.