[blivet master 2/3] Force __str__ to return str.
David Shea
dshea at redhat.com
Wed Oct 15 20:05:19 UTC 2014
On 10/15/2014 04:00 PM, Anne Mulhern wrote:
>
>
>
> ----- Original Message -----
>> From: "David Shea" <dshea at redhat.com>
>> To: anaconda-patches at lists.fedorahosted.org
>> Sent: Wednesday, October 15, 2014 11:32:38 AM
>> Subject: [blivet master 2/3] Force __str__ to return str.
>>
>> Explicitly cast __str__ results to str any time there is an ambiguity
>> in type the result string may be. Add __unicode__ methods so that when
>> these objects are converted to unicode they don't need to go through
>> encoding conversions.
>> ---
>> blivet/deviceaction.py | 10 +++++++++-
>> blivet/devices/device.py | 9 ++++++++-
>> blivet/partitioning.py | 19 +++++++++++++++++--
>> blivet/partspec.py | 11 ++++++++++-
>> blivet/size.py | 10 +++++++++-
>> blivet/util.py | 48
>> ++++++++++++++++++++++++++++++++++++++++++++++--
>> blivet/zfcp.py | 10 +++++++++-
>> 7 files changed, 108 insertions(+), 9 deletions(-)
>>
> <-- SNIP -->
>
>>
>> diff --git a/blivet/util.py b/blivet/util.py
>> index 90b8515..fa62261 100644
>> --- a/blivet/util.py
>> +++ b/blivet/util.py
>> @@ -14,8 +14,6 @@ from contextlib import contextmanager
>>
>> import six
>>
>> -from .size import Size
>> -
>> import logging
>> log = logging.getLogger("blivet")
>> program_log = logging.getLogger("program")
>> @@ -144,6 +142,8 @@ def total_memory():
>>
>> :rtype: :class:`~.size.Size`
>> """
>> + from .size import Size
>> +
>> lines = open("/proc/meminfo").readlines()
>> for line in lines:
>> if line.startswith("MemTotal:"):
>> @@ -324,6 +324,8 @@ def numeric_type(num):
>> Return the number if the type is sensible or raise ValueError
>> if not.
>> """
>> + from .size import Size
>> +
>> if num is None:
>> num = 0
>> elif not isinstance(num, (six.integer_types, float, Size, Decimal)):
>> @@ -382,6 +384,48 @@ def canonicalize_UUID(a_uuid):
>> """
>> return str(uuid.UUID(a_uuid.replace(':', '')))
> When I do an import with method scope instead of file scope,
> I usually am asked to add a comment at the import site explaining why.
Fair enough. Added:
# import locally to avoid a cycle with size importing util
above each.
More information about the anaconda-patches
mailing list