pycapnp icon indicating copy to clipboard operation
pycapnp copied to clipboard

to_bytes_packed() non-deterministic behavior in python3.6

Open philipkim-bc opened this issue 5 years ago • 5 comments

In python3.6, when serializing to a bytestream using to_bytes_packed(), the resulting bytestream differs from the previous bytestream when using the exact same input.

In python2, the bytestream does not differ from the previous bytestream while using the exact same input.

This was observed by comparing the lengths of the resulting bytestreams.

Is this an intended functionality for the to_bytes_packed() method in python3.6?

philipkim-bc avatar Sep 24 '19 00:09 philipkim-bc

Do you have an example of what's different?

haata avatar Jan 10 '20 02:01 haata

Note https://github.com/capnproto/pycapnp/blob/2e6d7be/setup.py#L232 says Python 3.6 isnt supported, and CI only builds py3.7-3.9. https://github.com/capnproto/pycapnp/blob/master/tox.ini completely disagrees.

jayvdb avatar May 03 '21 03:05 jayvdb

As a note, I myself haven't used tox at all with pycapnp (i.e. needs to be cleaned up).

haata avatar May 03 '21 11:05 haata

I tried using py36, and the asyncio bits fail badly. @philipkim-bc , are you able to use a later Python?

jayvdb avatar Jun 01 '21 10:06 jayvdb

This looks to be the same underlying problem as https://github.com/capnproto/pycapnp/issues/189

jayvdb avatar Jun 01 '21 11:06 jayvdb