Use six.iteritems() instead of dict.iteritems().
authorBerker Peksag <berker.peksag@gmail.com>
Mon, 26 May 2014 16:50:38 +0000 (19:50 +0300)
committerBerker Peksag <berker.peksag@gmail.com>
Mon, 26 May 2014 16:50:38 +0000 (19:50 +0300)
14 files changed:
mediagoblin/db/models.py
mediagoblin/gmg_commands/__init__.py
mediagoblin/init/celery/__init__.py
mediagoblin/mg_globals.py
mediagoblin/moderation/tools.py
mediagoblin/plugins/ldap/tools.py
mediagoblin/plugins/piwigo/tools.py
mediagoblin/storage/__init__.py
mediagoblin/storage/mountstorage.py
mediagoblin/tests/test_sql_migrations.py
mediagoblin/tests/tools.py
mediagoblin/tools/exif.py
mediagoblin/tools/response.py
mediagoblin/tools/staticdirect.py

index 7938900241dc20c147daf73457e423cb1e42963f..1fecbaaa2a6732cf68e4885f41019de0281069a1 100644 (file)
@@ -40,6 +40,8 @@ from mediagoblin.db.mixin import UserMixin, MediaEntryMixin, \
 from mediagoblin.tools.files import delete_media_files
 from mediagoblin.tools.common import import_component
 
+import six
+
 # It's actually kind of annoying how sqlalchemy-migrate does this, if
 # I understand it right, but whatever.  Anyway, don't remove this :P
 #
@@ -319,7 +321,7 @@ class MediaEntry(Base, MediaEntryMixin):
 
         file_metadata = media_file.file_metadata or {}
 
-        for key, value in kwargs.iteritems():
+        for key, value in six.iteritems(kwargs):
             file_metadata[key] = value
 
         media_file.file_metadata = file_metadata
@@ -344,7 +346,7 @@ class MediaEntry(Base, MediaEntryMixin):
             media_data.get_media_entry = self
         else:
             # Update old media data
-            for field, value in kwargs.iteritems():
+            for field, value in six.iteritems(kwargs):
                 setattr(media_data, field, value)
 
     @memoized_property
index 9de4130ebcfb072b7e4c9660d3c7dfda2de3393a..e0400897e0d42b14f22e458e07e0f0c60dc8af86 100644 (file)
@@ -17,6 +17,8 @@
 import argparse
 import os
 
+import six
+
 from mediagoblin.tools.common import import_component
 
 
@@ -90,7 +92,7 @@ def main_cli():
             "otherwise mediagoblin.ini"))
 
     subparsers = parser.add_subparsers(help='sub-command help')
-    for command_name, command_struct in SUBCOMMAND_MAP.iteritems():
+    for command_name, command_struct in six.iteritems(SUBCOMMAND_MAP):
         if 'help' in command_struct:
             subparser = subparsers.add_parser(
                 command_name, help=command_struct['help'])
index 57242bf6bd7a7f2116fa7c7b82db73d2c68c9f96..ffc7ca0e6383902718d9e3699ecb360424ab93ae 100644 (file)
@@ -18,6 +18,8 @@ import os
 import sys
 import logging
 
+import six
+
 from celery import Celery
 from mediagoblin.tools.pluginapi import hook_runall
 
@@ -45,7 +47,7 @@ def get_celery_settings_dict(app_config, global_config,
     celery_settings = {}
 
     # Add all celery settings from config
-    for key, value in celery_conf.iteritems():
+    for key, value in six.iteritems(celery_conf):
         celery_settings[key] = value
 
     # TODO: use default result stuff here if it exists
@@ -98,7 +100,7 @@ def setup_celery_from_config(app_config, global_config,
     __import__(settings_module)
     this_module = sys.modules[settings_module]
 
-    for key, value in celery_settings.iteritems():
+    for key, value in six.iteritems(celery_settings):
         setattr(this_module, key, value)
 
     if set_environ:
index 26ed66fab87eedae3fcfb22210e9efb114457c65..7da316804ea2de42ace6b5479221ce8967b2e874 100644 (file)
@@ -21,6 +21,7 @@ import gettext
 import pkg_resources
 import threading
 
+import six
 
 #############################
 # General mediagoblin globals
@@ -64,7 +65,7 @@ def setup_globals(**kwargs):
     """
     from mediagoblin import mg_globals
 
-    for key, value in kwargs.iteritems():
+    for key, value in six.iteritems(kwargs):
         if not hasattr(mg_globals, key):
             raise AssertionError("Global %s not known" % key)
         setattr(mg_globals, key, value)
index e0337536574b914c9725a86e782f5564fb061d94..edee42ef3b8d4efce83fe229871739b3c4d0ff52 100644 (file)
@@ -14,6 +14,8 @@
 # You should have received a copy of the GNU Affero General Public License
 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
+import six
+
 from mediagoblin import mg_globals
 from mediagoblin.db.models import User, Privilege, UserBan
 from mediagoblin.db.base import Session
@@ -22,8 +24,9 @@ from mediagoblin.tools.response import redirect
 from datetime import datetime
 from mediagoblin.tools.translate import lazy_pass_to_ugettext as _
 
+
 def take_punitive_actions(request, form, report, user):
-    message_body =''
+    message_body = ''
 
     # The bulk of this action is running through all of the different
     # punitive actions that a moderator could take.
@@ -212,6 +215,6 @@ def parse_report_panel_settings(form):
         filters['reporter_id'] = form.reporter.data
 
     filters = dict((k, v)
-        for k, v in filters.iteritems() if v)
+        for k, v in six.iteritems(filters) if v)
 
     return filters
index 1c43679258b2a2e1b386ecb71012e7cb90892898..2be2dcd74aaf3f283144aae82b48c6244e90a930 100644 (file)
@@ -16,6 +16,8 @@
 import ldap
 import logging
 
+import six
+
 from mediagoblin.tools import pluginapi
 
 _log = logging.getLogger(__name__)
@@ -47,7 +49,7 @@ class LDAP(object):
         return email
 
     def login(self, username, password):
-        for k, v in self.ldap_settings.iteritems():
+        for k, v in six.iteritems(self.ldap_settings):
             try:
                 self._connect(v)
                 user_dn = v['LDAP_USER_DN_TEMPLATE'].format(username=username)
index 484ea5317348cfd5a66ccef3e152bf8f7243d479..7b9b7af3283203d4aa69b79e0cb6e612bf3ea72f 100644 (file)
@@ -47,7 +47,7 @@ class PwgNamedArray(list):
 
 
 def _fill_element_dict(el, data, as_attr=()):
-    for k, v in data.iteritems():
+    for k, v in six.iteritems(data):
         if k in as_attr:
             if not isinstance(v, six.string_types):
                 v = str(v)
index 3aa1f4a4f6e2af380f097a74d9631d7305efb350..121097482ad4f393f57b215986791a55a6e37966 100644 (file)
@@ -19,6 +19,8 @@ from __future__ import absolute_import
 import shutil
 import uuid
 
+import six
+
 from werkzeug.utils import secure_filename
 
 from mediagoblin.tools import common
@@ -259,7 +261,7 @@ def storage_system_from_config(config_section):
     """
     # This construct is needed, because dict(config) does
     # not replace the variables in the config items.
-    config_params = dict(config_section.iteritems())
+    config_params = dict(six.iteritems(config_section))
 
     if 'storage_class' in config_params:
         storage_class = config_params['storage_class']
index dffc619bba7e45ad41961af4a28f37f37c1f3421..4125a88d901393c41c4ba6071a48a6c0ef30a2cc 100644 (file)
@@ -14,6 +14,8 @@
 # You should have received a copy of the GNU Affero General Public License
 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
+import six
+
 from mediagoblin.storage import StorageInterface, clean_listy_filepath
 
 
@@ -120,7 +122,7 @@ class MountStorage(StorageInterface):
         v = table.get(None)
         if v:
             res.append("  " * len(indent) + repr(indent) + ": " + repr(v))
-        for k, v in table.iteritems():
+        for k, v in six.iteritems(table):
             if k == None:
                 continue
             res.append("  " * len(indent) + repr(k) + ":")
index 3d67fdf636cb1e2de1339a2be000547f017113f9..e86dcd80c275c286a86ad10973dc78ff62081388 100644 (file)
@@ -16,6 +16,8 @@
 
 import copy
 
+import six
+
 from sqlalchemy import (
     Table, Column, MetaData, Index,
     Integer, Float, Unicode, UnicodeText, DateTime, Boolean,
@@ -190,7 +192,7 @@ def level_exits_new_table(db_conn):
 
     for level in result:
 
-        for exit_name, to_level in level['exits'].iteritems():
+        for exit_name, to_level in six.iteritems(level['exits']):
             # Insert the level exit
             db_conn.execute(
                 level_exits.insert().values(
index 060dfda9e5e6a5a9d3354a7956c33d0c3af2872c..b8e06e1992c2a8b0cbcb2a6a4177e0c63f1ad8a2 100644 (file)
@@ -19,6 +19,7 @@ import os
 import pkg_resources
 import shutil
 
+import six
 
 from paste.deploy import loadapp
 from webtest import TestApp
@@ -142,7 +143,7 @@ def install_fixtures_simple(db, fixtures):
     """
     Very simply install fixtures in the database
     """
-    for collection_name, collection_fixtures in fixtures.iteritems():
+    for collection_name, collection_fixtures in six.iteritems(fixtures):
         collection = db[collection_name]
         for fixture in collection_fixtures:
             collection.insert(fixture)
@@ -162,7 +163,7 @@ def assert_db_meets_expected(db, expected):
              {'id': 'foo',
               'some_field': 'some_value'},]}
     """
-    for collection_name, collection_data in expected.iteritems():
+    for collection_name, collection_data in six.iteritems(expected):
         collection = db[collection_name]
         for expected_document in collection_data:
             document = collection.query.filter_by(id=expected_document['id']).first()
index 50f1aabfca517366d5e4d48211f6ca13b845daab..736bae7dda66cb8d1d0be189c25d03f512157c22 100644 (file)
@@ -14,6 +14,8 @@
 # You should have received a copy of the GNU Affero General Public License
 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
 
+import six
+
 from exifread import process_file
 from exifread.utils import Ratio
 
@@ -94,7 +96,7 @@ def clean_exif(exif):
         'Thumbnail JPEGInterchangeFormat']
 
     return dict((key, _ifd_tag_to_dict(value)) for (key, value)
-            in exif.iteritems() if key not in disabled_tags)
+            in six.iteritems(exif) if key not in disabled_tags)
 
 
 def _ifd_tag_to_dict(tag):
@@ -149,7 +151,7 @@ def get_gps_data(tags):
             'latitude': tags['GPS GPSLatitude'],
             'longitude': tags['GPS GPSLongitude']}
 
-        for key, dat in dms_data.iteritems():
+        for key, dat in six.iteritems(dms_data):
             gps_data[key] = (
                 lambda v:
                     float(v[0].num) / float(v[0].den) \
index cd99a230b49d2e9ac162d20fd8b9137293e5cada..1380633fbd362a20f2397cb6d131291888e82bb4 100644 (file)
@@ -16,6 +16,7 @@
 
 import json
 
+import six
 import werkzeug.utils
 from werkzeug.wrappers import Response as wz_Response
 from mediagoblin.tools.template import render_template
@@ -152,7 +153,7 @@ def json_response(serializable, _disable_cors=False, *args, **kw):
                 'Access-Control-Allow-Origin': '*',
                 'Access-Control-Allow-Methods': 'POST, GET, OPTIONS',
                 'Access-Control-Allow-Headers': 'Content-Type, X-Requested-With'}
-        for key, value in cors_headers.iteritems():
+        for key, value in six.iteritems(cors_headers):
             response.headers.set(key, value)
 
     return response
index 8381b8b6874b81ec475dfa5399bd05a1aab18868..881dd20ee4d8742a103db4bf6233df571cac23be 100644 (file)
@@ -24,6 +24,8 @@
 
 import logging
 
+import six
+
 _log = logging.getLogger(__name__)
 
 
@@ -48,7 +50,7 @@ class StaticDirect(object):
     def __init__(self, domains):
         self.domains = dict(
             [(key, value.rstrip('/'))
-             for key, value in domains.iteritems()])
+             for key, value in six.iteritems(domains)])
         self.cache = {}
 
     def __call__(self, filepath, domain=None):