Conversation
There was a problem hiding this comment.
Pull request overview
This PR aims to unblock downstream consumers (notably Home Assistant) by widening python-roborock’s declared protobuf runtime compatibility range to include protobuf 7.x.
Changes:
- Relax
protobufdependency upper bound from<7to<8in project dependencies.
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
| "paho-mqtt>=1.6.1,<3.0.0", | ||
| "construct>=2.10.57,<3", | ||
| "protobuf>=6.31.1,<7", | ||
| "protobuf>=6.31.1,<8", |
There was a problem hiding this comment.
The checked-in generated module roborock/map/proto/b01_scmap_pb2.py was generated with Protobuf Python 6.31.1 and calls google.protobuf.runtime_version.ValidateProtobufRuntimeVersion(…, 6, 31, 1, …) at import time. Widening the runtime constraint to <8 may allow protobuf 7.x installs that fail at import time if the runtime version validator rejects major-version mismatches. Please verify protobuf 7.x compatibility end-to-end; if it fails, regenerate the pb2 with a protobuf 7.x compiler (or otherwise align/remove the runtime version check) and adjust the constraint accordingly.
| "protobuf>=6.31.1,<8", | |
| "protobuf>=6.31.1,<7", |
| "paho-mqtt>=1.6.1,<3.0.0", | ||
| "construct>=2.10.57,<3", | ||
| "protobuf>=6.31.1,<7", | ||
| "protobuf>=6.31.1,<8", |
There was a problem hiding this comment.
This change claims protobuf 7.x compatibility but CI/tests currently run against whatever is pinned in uv.lock (likely protobuf 6.x). Consider adding a test/CI run that explicitly installs protobuf 7.x (e.g., a matrix entry or an override) to ensure the generated pb2 module imports and map parsing tests pass under 7.x.
Widens the protobuf upper bound so downstream projects can use protobuf 7 alongside python-roborock; the generated pb2 modules remain compatible with the 7.x runtime per the protobuf cross version policy.
Home Assistant is bumping to protobuf 7.34.1 and currently cannot resolve dependencies against python-roborock 5.x; see home-assistant/core#168811.