dreamworksanimation / usdmanager

USD Manager
http://www.usdmanager.org
Apache License 2.0
321 stars 60 forks source link

Python 3 comptibility going forwards #27

Closed jonjondev closed 2 years ago

jonjondev commented 2 years ago

Hi @mds-dwa, thank you for looking over our PRs - we've been hoping to align our internal changes with the upstream repository.

Internally we keep everything Py2/3 compatible, which at the moment looks like v0.12.1 with a handful of code compatibility modifications alongside Qt v5.12.5. Looking at the python3 branch, I was wondering if there was an intention to retain that compatibility going forward? It would also definitely be great at some point to get the project onto Qt v5.15.x, in step with the VFX Reference Platform.

Thanks for looking after this project, it's an incredibly useful tool!

mds-dwa commented 2 years ago

I am hoping to keep the python3 branch in sync, though it occasionally falls by the wayside. I'm sure at some point enough new features will only work with python3 or Qt5 that it becomes the main branch, but that's likely a long way out. At one point, I was thinking something like six could help keep all the code in a single branch for python 2 and 3, but since the .qrc file gets compiled with either pyrcc4 or pyrcc5 on our end based on python 2 vs. 3, I think it has to stay separate for most people, without some changes to the build/release process here.

Regarding Qt5, it should already be compatible, but there are some newer features in Qt5 we could start leveraging if we ditched Qt4 completely. Do let me know if I'm wrong about that!

jonjondev commented 2 years ago

It's compatible for Qt5 - just had to patch in the corresponding images_rc.py is all I was noting. In terms of Python 2/3 compat, we have it working, so I might PR the last of the modifications we made to get there at some point.