diff options
author | Cyril Roelandt <cyril.roelandt@enovance.com> | 2014-02-10 16:25:24 +0100 |
---|---|---|
committer | Cyril Roelandt <cyril.roelandt@enovance.com> | 2014-02-10 17:45:23 +0100 |
commit | 23a2292b9dc3e68529cd9045f564b79f4e84f036 (patch) | |
tree | 5ec1b53bbdff4e2e3b8e0685a0eecf1b80e9fb12 /ceilometerclient/openstack/common/strutils.py | |
parent | 3f289a1dd904874c0fc6afe0c6dd14ecb5da4c04 (diff) | |
download | python-ceilometerclient-23a2292b9dc3e68529cd9045f564b79f4e84f036.tar.gz |
Sync with Oslo
This fixes a bunch os Python3-related issues, linked to iteritems(), urllib,
encoding, etc.
This is now up-to-date with 6827012438c7c88e0f54803f33c612684cf34e86 in Oslo.
Change-Id: Id8c265d76abfd8ede5575d3903f612ad1ea46643
Diffstat (limited to 'ceilometerclient/openstack/common/strutils.py')
-rw-r--r-- | ceilometerclient/openstack/common/strutils.py | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/ceilometerclient/openstack/common/strutils.py b/ceilometerclient/openstack/common/strutils.py index bf2a1c0..23b117e 100644 --- a/ceilometerclient/openstack/common/strutils.py +++ b/ceilometerclient/openstack/common/strutils.py @@ -23,7 +23,7 @@ import unicodedata import six -from ceilometerclient.openstack.common.gettextutils import _ # noqa +from ceilometerclient.openstack.common.gettextutils import _ # Used for looking up extensions of text @@ -152,11 +152,17 @@ def safe_encode(text, incoming=None, sys.getdefaultencoding()) if isinstance(text, six.text_type): - return text.encode(encoding, errors) + if six.PY3: + return text.encode(encoding, errors).decode(incoming) + else: + return text.encode(encoding, errors) elif text and encoding != incoming: # Decode text before encoding it with `encoding` text = safe_decode(text, incoming, errors) - return text.encode(encoding, errors) + if six.PY3: + return text.encode(encoding, errors).decode(incoming) + else: + return text.encode(encoding, errors) return text |