python-troveclient/troveclient/apiclient
Marcin Piwowarczyk 4021a1062b Fix python3 compatibility issues
While executing functional tests in trove project, with baseptyhon
python3 in change [1], there appears few incompatibilities
in troveclient.

All of them are directly related to differences in PY3 version.

This change removes these issues and will allow to execute functional
tests seamlessly.

Change details:
  * troveclient/compat/base.py - dict.iteritems was removed in PY3
    because dict.items now does the thing dict.iteritems did in PY2
  * troveclient/compat/client.py - json.loads expects string, and
    PY3 doesnt convert bytes to string. We have to use explicity call
    decode() which will decode given bytes to string
  * troveclient/apiclient/base.py - to avoid infinite recursion
    exception raised when pickling class attributes

[1] I9ee34642c700d1e6ba9c2f3891b7fa1f7f7e1e1d

Change-Id: I8989fd4798e80eae27408017e1543819a68b4ab1
Signed-off-by: Marcin Piwowarczyk <m.piwowarczy@samsung.com>
2018-08-31 12:51:32 +00:00
..
__init__.py move old apiclient code out of openstack/common 2016-11-10 10:02:08 -05:00
auth.py turn on warning-is-error for documentation builds 2017-07-13 10:39:32 -05:00
base.py Fix python3 compatibility issues 2018-08-31 12:51:32 +00:00
client.py turn on warning-is-error for documentation builds 2017-07-13 10:39:32 -05:00
exceptions.py Handle error response for webob>=1.6.0 2018-02-06 16:00:59 +08:00