Closed puddly closed 2 months ago
Looks like there was a pretty big bug with the old types:
(Pdb) t.uint16_t.deserialize(b'\x06')
(6, b'')
This should not have deserialized.
All modified and coverable lines are covered by tests :white_check_mark:
Project coverage is 99.67%. Comparing base (
bf634b5
) to head (49a1c15
).
:umbrella: View full report in Codecov by Sentry.
:loudspeaker: Have feedback on the report? Share it here.
It looks like the integer parsing problem is pretty widespread. This branch runs for me on EZSP v13 but it needs to be runtime tested on all previous protocols too...
Tested with protocol versions 4, 8, and 13. I think this is fine to merge.
Python 3.12.3 recently released and (again) changed the behavior of the
enum
module: https://github.com/python/cpython/issues/116040Zigpy isn't affected so I've replaced all bellows types with zigpy types to hopefully avoid these issues in the future.