This repo contains the BanyanDB public client Protocol Buffer / gRPC definitions, plus a small toolchain to:
apache/skywalking-banyandb)proto/banyandb/v1/Protos are synced from the Apache SkyWalking BanyanDB repository:
apache/skywalking-banyandbapi/proto/banyandb/<module>/v1/*.protoLocally, this repo maintains a consolidated, client-friendly layout:
proto/banyandb/v1/banyandb-common.protoproto/banyandb/v1/banyandb-database.protoproto/banyandb/v1/banyandb-measure.protoproto/banyandb/v1/banyandb-model.protoproto/banyandb/v1/banyandb-property.protoproto/banyandb/v1/banyandb-stream.protoproto/banyandb/v1/banyandb-trace.protoThese files are produced by scripts/sync_proto.py, which also rewrites imports to match the merged layout.
scripts/sync_proto.py)./mvnw (recommended) or a system mvnIf you use ./mvnw and hit a permission error, run:
chmod +x mvnw
make sync-proto-dry-run
Or directly (with extra options):
python3 scripts/sync_proto.py --branch main --dry-run
Interactive (asks for confirmation):
make sync-proto
Non-interactive (useful in automation):
python3 scripts/sync_proto.py --branch main --force
python3 scripts/sync_proto.py --branch main --module common --module measure --force
Valid modules are: common, database, measure, model, property, stream, trace.
Run the workflow “Sync Proto Files” (.github/workflows/sync-proto.yml) with an optional branch input (defaults to main).
The fastest correctness check after syncing is to generate Java from the protos and compile:
make compile
This runs mvn clean compile (preferring ./mvnw if present), which:
proto/**/*.proto into target/generated-sources/target/classes/This is also what CI runs in “Verify Proto Files” (.github/workflows/verify-proto.yml).
make clean
. ├── proto/ │ └── banyandb/ │ └── v1/ # Consolidated (synced) proto files ├── scripts/ │ └── sync_proto.py # Sync + merge tool (pulls from upstream GitHub) ├── pom.xml # Java compile verification (protoc + javac via Maven) ├── mvnw # Maven wrapper (preferred) ├── Makefile # Convenience targets └── README.md
This project adheres to the Contributor Covenant code of conduct. By participating, you are expected to uphold this code. Please follow the REPORTING GUIDELINES to report unacceptable behavior.
dev-subscribe@skywalking.apache.org, follow the reply to subscribe the mail list.Request to join SkyWalking slack mail to the mail list(dev@skywalking.apache.org), we will invite you in.