Better Protobuf / gRPC Support for Python Python으로 Protobuf 3/ gRPC를 사용 지원을 위한 프로젝트
- Protobuf 3 / gRPC 인터페이스를 파이썬 코드로 자동 생성
- Python 3.7+ 아래 피쳐들 지원함:
async
/await
- 이넘(Enum)
- 데이터 클래스(dataclasses)
- Timezone-aware(시간대 정보를 갖는)
datetime
과timedelta
오브젝트 - 상대 경로 임포트
- Mypy 타입 체크
- Pydantic 모델도 지원
- 레거시 기능과 환경은 지원하지 않음 (e.g. Protobuf 2)
설치
Troubleshooting
optional 필드를 사용할 수 없음? (버전올리면 해결?)
protos/route_guide.proto: is a proto3 file that contains optional fields, but code generator protoc-gen-python_betterproto hasn’t been updated to support optional fields in proto3. Please ask the owner of this code generator to support proto3 optional.—python_betterproto_out: