Details
-
Improvement
-
Status: Closed
-
Major
-
Resolution: Fixed
-
None
-
None
Description
In python 2 and python 3, string and unicode is handled in very different ways.
py3: str is unicode (no such type), it is not bytes.
py2: str is not unicode, it is (aliased by) bytes.
Because of this, while Thrift RPC API handles them as str for both cases, it is unicode for python3 users but bytes for python2 users.
So a user who starts using Thrift + python2 is likely to write code that passes bytes to Thrift API.
The code is broken when she/he wants to use the code with Thrift + python3.
We should avoid this by changing this now before the first release of Thrift + Python3.
Attachments
Issue Links
- relates to
-
THRIFT-3500 Protocols in Python 2 do not treat Strings as unicode.
- Open
-
THRIFT-1857 Python 3.X Support
- Closed
-
THRIFT-3438 Enable py:new_style by default
- Closed