-
Notifications
You must be signed in to change notification settings - Fork 99
Open
Labels
Description
Description of issue
The nimi-python packages contain duplicate protobuf codegen for session.proto. This only works when the duplicated codegen is exactly identical across all installed packages; if any package has a slightly different version of this codegen, users will get an error such as
ERROR: Exception calling application: Couldn't build proto file into descriptor pool: duplicate symbol 'nidevice_grpc.SessionInitializationBehavior'
The path forward is to add a dependency on https://pypi.org/project/ni.grpcdevice.v1.proto/ to the grpc extra. This will single-source the codegen for session.proto. See ni/ni-apis-python#75 for more details.
System report
N/A
Steps to reproduce issue
- Rebuild one package to use the latest version of https://github.com/ni/ni-apis/blob/main/ni/grpcdevice/v1/session.proto
- Install the rebuilt package along with one of the previously released packages.
- Create gRPC sessions using both of the packages. You will get an error when loading the gRPC stubs.