← All tasks
pythongrpc/grpc #41933Not a task: not reproduced

`grpcio-status` is (marked) incompatible with the newest Protobuf versions

envgap__grpc__grpc-41933

01 / FAILURE SIGNATURE

As reported upstream

ERROR: pip's dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts.
Not a benchmark task.
  • In a clean container the reported failure did not reproduce, or the known fix did not make the project run.

02 / ENVIRONMENT RECIPE

Base commit
451521c025803d6bdcf3a8c4917d1fb36d320f25
Manifest
src/python/grpcio_status/setup.py
Reproduce
Awaiting issue-specific recipe
Run under trace
Awaiting a meaningful runtime command

03 / ORIGINAL ISSUE TEXT

grpc/grpc #41933 · read the original issue
### What version of gRPC and what language are you using?
grpcio and grpcio-status at 1.78.0, Python

### What operating system (Linux, Windows,...) and version?
Linux

### What runtime / compiler are you using (e.g. python version or version of gcc)
Python 3.13.12

### What did you do?
In a fresh venv, run:

```
pip install grpcio-status
```

I then have the following state (output of pipdeptree):

```
grpcio-status==1.78.0
├── protobuf [required: >=6.31.1,<7.0.0, installed: 6.33.6]
├── grpcio [required: >=1.78.0, installed: 1.78.0]
│   └── typing_extensions [required: ~=4.12, installed: 4.15.0]
└── googleapis-common-protos [required: >=1.5.5, installed: 1.73.0]
    └── protobuf [required: >=3.20.2,<7.0.0,!=4.21.5,!=4.21.4,!=4.21.3,!=4.21.2,!=4.21.1, installed: 6.33.6]
```

Now try to install a recent version of protobuf:

```
pip install protobuf==7.34.0
```
### What did you expect to see?

No problem / error

### What did you see instead?

```
ERROR: pip's dependency resolver does not currently take into account all the packages that are installed. This behaviour is the source of the following dependency conflicts.
grpcio-status 1.78.0 requires protobuf<7.0.0,>=6.31.1, but you have protobuf 7.34.0 which is incompatible.
googleapis-common-protos 1.73.0 requires protobuf!=4.21.1,!=4.21.2,!=4.21.3,!=4.21.4,!=4.21.5,<7.0.0,>=3.20.2, but you have protobuf 7.34.0 which is incompatible.
```

This version conflict error is caused by the `grpcio-status` package [requiring](https://github.com/grpc/grpc/blob/4f623df3319df7e39a89fa2f4a198d43744917b7/src/python/grpcio_status/setup.py#L57
) `protobuf<7.0.0`

Can that requirement be removed? I assume that `grpcio-status` works perfectly well with the newest Protobuf version.

### Anything else we should know about your project / environment?

In my local venv the install of `protobuf==7.34.0` succeeds despite the version conflict error. But in our real  environment which uses  a `requirements.in` file and `pip-compile` this is a hard blocker.

`googleapis-common-protos` has the same `protobuf<7.0.0` requirement in its metadata. I'll file a separate ticket over there.
Continue on GitHub ↗

04 / LABELS

Labels from the report text only; not yet run

No supported category has been assigned.

Label rules and the text that matched
[]