medibloc / panacea-core

MediBloc Blockchain Core
https://medibloc.com
Other
60 stars 19 forks source link

feat: define a `medibloc/panacea-core` BSR repository #628

Closed youngjoon-lee closed 1 year ago

youngjoon-lee commented 1 year ago

I WILL OPEN A WORKSHOP ABOUT BUF. NO WORRIES.

I defined a new medibloc/panacea-core BSR (Buf Schema Registry) repository: https://buf.build/medibloc/panacea-core, so that other Go projects (such as panacea-oracle) can import proto files defined in this repository.

The Buf also has a dependency management, and Cosmos team already published their proto files in BSR: https://buf.build/cosmos/cosmos-sdk. But unfortunately, their BSR repository is available only for Cosmos SDK v0.46+: https://github.com/cosmos/cosmos-sdk/tree/v0.47.0-rc2/proto#sdk-x-buf. So, we should keep third-party proto files in this git repo until we upgrade Cosmos SDK to v0.46+. These third-party proto files are also pushed to our BSR, but will be deleted once we use Cosmos SDK v0.46+.

gyuguen commented 1 year ago

Do all proto files need to exist in the proto folder to use this? I ask because the third_party is all moved

youngjoon-lee commented 1 year ago

Do all proto files need to exist in the proto folder to use this? I ask because the third_party is all moved

Yes. Basically, there's no -I flag for Buf: https://docs.buf.build/tour/configure-and-build#configure-buf. It assumes that all proto files are under the proto/ directory where the buf.yaml is located. There might be some tricks to include proto files in other directories such as our previous third_party/, but I thought it's okay to simply move all proto files under the proto/.