Closed slingshotvfx closed 9 months ago
It would be great if this could be merged in. We had to do the same fix to get the API to load in 3.12.1.
We first tried to change the way moves
was imported, by doing from .lib.six import moves
, and then picking out the classes and functions one by one as such:
map = moves.map
httpcookie_jar = moves.httpcookie_jar
urllib = moves.urllib
but once the code hit urllib
, it crashed deep in the internals of six.py
, which indicates that six.py
is not compatible.
We were able to confirm the non-compatibility of six 1.13.0
, which is what is shipped with the Shotgun API, by installing six 1.13.0
directly into Python 3.12.1, and reproducing the error by doing from six.moves import urllib
.
This does not fail under Python 3.11 and below.
Upgrading to six
to 1.16.0
inside the Shotgun API solves that problem.
@slingshotvfx thank you for your contribution. Our team has reviewed this and since we're dropping support for Python 2, six
will also be removed anytime.
Updates six.py, which fixes:
in python 3.12