Skip to content

Dependency conflict with latest grpc/protobuf when using opentelemetry-exporter-otlp-proto-grpc #4563

Open
@vraychev

Description

@vraychev

Describe your environment

OS: does not matter
Python version: 3.12
SDK version: 1.32.1
API version: 1.32.1

What happened?

The opentelemetry-exporter-otlp-proto-grpc==1.32.1 pip package imports opentelemetry-proto==1.33.0.dev, which forces protobuf < 6.0 here:
https://github.com/open-telemetry/opentelemetry-python/blob/main/opentelemetry-proto/pyproject.toml#L30

Unfortunately, this means one cannot use recent versions of grpc (e.g. 1.72), because they use protobuf==6.30.2, which is incompatible.

Steps to Reproduce

Create requirements.txt with

...
opentelemetry-api>=1.32.1
opentelemetry-instrumentation-grpc
opentelemetry-sdk>=1.32.1
opentelemetry-exporter-otlp-proto-grpc>=1.32.1
protobuf==6.30.2

fails with errors like:

ERROR: Cannot install -r requirements.txt (line 16), -r requirements.txt (line 17), -r requirements.txt (line 28), opentelemetry-exporter-otlp-proto-grpc and protobuf==6.30.2 because these package versions have conflicting dependencies.

Expected Result

I would expect the constraint to be relaxed to say < 7.0

https://github.com/open-telemetry/opentelemetry-python/blob/main/opentelemetry-proto/pyproject.toml#L30

Actual Result

Install fails.

Additional context

No response

Would you like to implement a fix?

None

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions