pygazebo
pygazebo copied to clipboard
Final python3 fixes
Protobuf finally pushed a compatible package up to pypi, so this PR adds the final bits of support for Python 3.
Fixes #6 . It'd be great if you could tag a release with these, and push it out to pypi.
Coverage remained the same when pulling 0184d92d7920faf968716d47abd99547f428b510 on virtuald:py3 into 42574231133b5962e6320f654a66d0cbd6019c17 on jpieper:develop.
First, "make lint" now complains about whitespace errors.
Second, it isn't really practical to release something with an "==" version requirement. As soon as protobuf releases a new version, it will get increasingly hard to find the exact version mentioned. Is their any harm in switching to the ">=" comparison now? Presumably alpha1 compares as newer than bare 3.0.0?
The current version of pip will not install an alpha release unless the user specifies --pre, or if there is an == dependency, thus why I selected that.
Once protobuf releases a new version, then this package gets updated to not use == and we're good.
I'll fix the whitespace errors.
Ok, I've fixed the lint errors.
Coverage remained the same when pulling 741588c2176edd74b8926ff01dbb9d748a4bfbb2 on virtuald:py3 into 42574231133b5962e6320f654a66d0cbd6019c17 on jpieper:develop.
Coverage remained the same when pulling 741588c2176edd74b8926ff01dbb9d748a4bfbb2 on virtuald:py3 into 42574231133b5962e6320f654a66d0cbd6019c17 on jpieper:develop.
Thanks for the lint fixes! As you said, I'll wait to pull until protobuf makes its release.
Python3 cross compatability issues:
Here is the issue, while this code works with Python 2 and Python 3, it only works using asyncio on both platform. That would be fine if asyncio's very syntax is not compatible between Python 2 and Python 3. As such, I cannot get the example code to run on Python 3. There may be some additional issues with the compatibility between Python 2 and 3 here. I have already shared some examples of script that will not work between versions that employ Trollius to the owner of this fork.
Perhaps changing Trollius to the default wrapper of asyncio would help?
Isn't the protobuf version on pip compatible with python3 now?
When will this issue be merged with the main branch?
Well, as it happens, I haven't really used pygazebo in many years and don't have much incentive to test changes at this point. You're of course free to fork it and merge these python3 changes if you like!