Skip to contentSkip to conversation

Support python3 dictionary access.

PATCH New Lee Duncan 4 participants 4 messages Apr 13, 2018 – Apr 17, 2018 NVMe

lore
Share & tools
lore

Lee Duncan

author
#0 lore raw

PATCH 1/1 Support python3 dictionary access.

Support python2 and python3 dictionary
access by using the 'python-six' module's
iteritems() function.

Also, add info to the README about supporting
both Python2 and Python3.

Signed-off-by Lee Duncan <lduncan at suse.com>
---
 README        | 8 +++++---
 nvmet/nvme.py | 3 ++-
 2 files changed, 7 insertions(+), 4 deletions(-)
README +5 -3
index cd4bd7838637..920a4ad40d91 100644
@@ -14,9 +14,11 @@ using setup.py.
 
 Common Package Dependencies and Problems
 -----------------------------------------
-nvmetcli uses the 'python-six' and 'pyparsing' packages
-(running nvmetcli without these packages may produce
-hard-to-decipher errors).
+Both python2 and python3 are supported via use of the
+'python-six' package. 
+
+nvmetcli uses the 'pyparsing' package -- running nvmetcli
+without this package may produce hard-to-decipher errors.
 
 Usage
 -----
nvmet/nvme.py +2 -1
index c245a4240dd9..8253ea9264b7 100644
@@ -23,6 +23,7 @@ import stat
 import uuid
 import json
 from glob import iglob as glob
+from six import iteritems
 
 DEFAULT_SAVE_FILE = '/etc/nvmet/config.json'
 
@@ -219,7 +220,7 @@ class CFSNode(object):
 
     def _setup_attrs(self, attr_dict, err_func):
         for group in self.attr_groups:
-            for name, value in attr_dict.get(group, {}).iteritems():
+            for name, value in iteritems(attr_dict.get(group, {})):
                 try:
                     self.set_attr(group, name, value)
                 except CFSError as e:
Signature · 1 line
2.13.6
maintainer
#1 lore raw

PATCH 1/1 Support python3 dictionary access.

Reviewed-by Sagi Grimberg <sagi at grimberg.me>
#2 lore raw

PATCH 1/1 Support python3 dictionary access.

In reply to Lee Duncan

Thanks for digging into this!

Reviewed-by Johannes Thumshirn <jthumshirn at suse.de>
Signature · 6 lines
Johannes Thumshirn                                          Storage
jthumshirn at suse.de                                +49 911 74053 689
SUSE LINUX GmbH, Maxfeldstr. 5, 90409 N?rnberg
GF: Felix Imend?rffer, Jane Smithard, Graham Norton
HRB 21284 (AG N?rnberg)
Key fingerprint = EC38 9CAB C2C4 F25D 8600 D0D0 0393 969D 2D76 0850