bufbuild / buf

The best way of working with Protocol Buffers.
https://buf.build
Apache License 2.0
8.49k stars 247 forks source link

Add buf inspect command to print information on types in a clean way similar to ls-files #3101

Open remyleone opened 1 week ago

remyleone commented 1 week ago

Feature

As a maintainer of custom generator I would like to have a view of all the different types that I'm using in my protobuf files.

It would be helpful to see what protobuf files are using which kind of types.

buf ls-types my_proto.proto

In case some types are deprecated, it would be helpful to be able to locate them.

Having statistics about the most used kind of types could also be helpful.

buf ls-types --report my_proto.proto
12 string
8 int
1 google.type.Decimal

Where am I using one of? What are all the packages that are presents

buf ls-packages
buf ls-methods

Where am I using particular features of protobuf (about such and such editions for instance). Having this kind of inventory could really help maintenance locate usage and plan migration accordingly.

bufdev commented 1 week ago

This is a fair feature request - at first glance, I'd recommend collapsing this down into a buf inspect sub-command`, we will want to think about the UX a little bit. Give us a bit to think about that and we'll get back to you.