From 40068aecb50d4345986d05d5d05d5a0bffbb38e7 Mon Sep 17 00:00:00 2001 From: Amit <43564590+amitvadhel@users.noreply.github.com> Date: Fri, 10 May 2019 19:05:31 +0300 Subject: [PATCH] INCR-232: Run python-modernize and isort on common/djangoapps/track (#20513) --- common/djangoapps/track/admin.py | 2 ++ common/djangoapps/track/contexts.py | 2 ++ common/djangoapps/track/event_transaction_utils.py | 2 ++ common/djangoapps/track/middleware.py | 7 +++++-- common/djangoapps/track/models.py | 2 ++ common/djangoapps/track/segment.py | 3 ++- common/djangoapps/track/shim.py | 2 ++ common/djangoapps/track/tracker.py | 7 +++++-- common/djangoapps/track/transformers.py | 11 +++++++---- common/djangoapps/track/urls.py | 2 ++ common/djangoapps/track/utils.py | 2 ++ 11 files changed, 33 insertions(+), 9 deletions(-) diff --git a/common/djangoapps/track/admin.py b/common/djangoapps/track/admin.py index f450a92324..a0a3b20c6a 100644 --- a/common/djangoapps/track/admin.py +++ b/common/djangoapps/track/admin.py @@ -2,6 +2,8 @@ django admin pages for courseware model ''' +from __future__ import absolute_import + from django.contrib import admin from track.models import TrackingLog diff --git a/common/djangoapps/track/contexts.py b/common/djangoapps/track/contexts.py index 377b9b76f6..0954a8b548 100644 --- a/common/djangoapps/track/contexts.py +++ b/common/djangoapps/track/contexts.py @@ -1,4 +1,6 @@ """Generates common contexts""" +from __future__ import absolute_import + import logging from opaque_keys import InvalidKeyError diff --git a/common/djangoapps/track/event_transaction_utils.py b/common/djangoapps/track/event_transaction_utils.py index 6c24f9ede2..5a7d0938e9 100644 --- a/common/djangoapps/track/event_transaction_utils.py +++ b/common/djangoapps/track/event_transaction_utils.py @@ -2,6 +2,8 @@ Helper functions to access and update the id and type used in event tracking. """ +from __future__ import absolute_import + from uuid import UUID, uuid4 from openedx.core.lib.cache_utils import get_cache diff --git a/common/djangoapps/track/middleware.py b/common/djangoapps/track/middleware.py index 99a1c0e975..6ccb7617af 100644 --- a/common/djangoapps/track/middleware.py +++ b/common/djangoapps/track/middleware.py @@ -6,6 +6,8 @@ framework. """ +from __future__ import absolute_import + import hashlib import hmac import json @@ -13,10 +15,11 @@ import logging import re import sys +import six from django.conf import settings +from eventtracking import tracker from ipware.ip import get_ip -from eventtracking import tracker from track import contexts, views log = logging.getLogger(__name__) @@ -137,7 +140,7 @@ class TrackMiddleware(object): 'username': self.get_username(request), 'ip': self.get_request_ip_address(request), } - for header_name, context_key in META_KEY_TO_CONTEXT_KEY.iteritems(): + for header_name, context_key in six.iteritems(META_KEY_TO_CONTEXT_KEY): # HTTP headers may contain Latin1 characters. Decoding using Latin1 encoding here # avoids encountering UnicodeDecodeError exceptions when these header strings are # output to tracking logs. diff --git a/common/djangoapps/track/models.py b/common/djangoapps/track/models.py index c59cf6502a..c4fbb76c2a 100644 --- a/common/djangoapps/track/models.py +++ b/common/djangoapps/track/models.py @@ -1,2 +1,4 @@ # pylint: disable=unused-import, missing-docstring +from __future__ import absolute_import + from track.backends.django import TrackingLog diff --git a/common/djangoapps/track/segment.py b/common/djangoapps/track/segment.py index de73bf24b0..3a010d99ca 100644 --- a/common/djangoapps/track/segment.py +++ b/common/djangoapps/track/segment.py @@ -8,11 +8,12 @@ required by server-side events. To use, call "from track import segment", then call segment.track() or segment.identify(). """ -from urlparse import urlunsplit +from __future__ import absolute_import import analytics from django.conf import settings from eventtracking import tracker +from six.moves.urllib.parse import urlunsplit def track(user_id, event_name, properties=None, context=None): diff --git a/common/djangoapps/track/shim.py b/common/djangoapps/track/shim.py index 5773539f94..b4446bff43 100644 --- a/common/djangoapps/track/shim.py +++ b/common/djangoapps/track/shim.py @@ -1,5 +1,7 @@ """Map new event context values to old top-level field values. Ensures events can be parsed by legacy parsers.""" +from __future__ import absolute_import + import json from .transformers import EventTransformerRegistry diff --git a/common/djangoapps/track/tracker.py b/common/djangoapps/track/tracker.py index a3614c76e9..42ea290972 100644 --- a/common/djangoapps/track/tracker.py +++ b/common/djangoapps/track/tracker.py @@ -18,9 +18,12 @@ below:: """ +from __future__ import absolute_import + import inspect from importlib import import_module +import six from django.conf import settings from track.backends import BaseBackend @@ -41,7 +44,7 @@ def _initialize_backends_from_django_settings(): config = getattr(settings, 'TRACKING_BACKENDS', {}) - for name, values in config.iteritems(): + for name, values in six.iteritems(config): # Ignore empty values to turn-off default tracker backends if values: engine = values['ENGINE'] @@ -86,7 +89,7 @@ def send(event): """ - for name, backend in backends.iteritems(): + for name, backend in six.iteritems(backends): backend.send(event) diff --git a/common/djangoapps/track/transformers.py b/common/djangoapps/track/transformers.py index 75a943f773..634a93cca6 100644 --- a/common/djangoapps/track/transformers.py +++ b/common/djangoapps/track/transformers.py @@ -5,9 +5,12 @@ by name (or name prefix) in the EventTransformerRegistry, which is used to apply them to the appropriate events. """ +from __future__ import absolute_import + import json import logging +import six from opaque_keys import InvalidKeyError from opaque_keys.edx.keys import UsageKey @@ -46,7 +49,7 @@ class DottedPathMapping(object): def __getitem__(self, key): if key in self._match_registry: return self._match_registry[key] - if isinstance(key, basestring): + if isinstance(key, six.string_types): # Reverse-sort the keys to find the longest matching prefix. for prefix in sorted(self._prefix_registry, reverse=True): if key.startswith(prefix): @@ -87,7 +90,7 @@ class DottedPathMapping(object): Return the keys of the mapping, including both exact matches and prefix matches. """ - return self._match_registry.keys() + self._prefix_registry.keys() + return list(self._match_registry.keys()) + list(self._prefix_registry.keys()) class EventTransformerRegistry(object): @@ -220,7 +223,7 @@ class EventTransformer(dict): Create a data version of self[u'event'] at self.event """ if u'event' in self: - if isinstance(self[u'event'], basestring): + if isinstance(self[u'event'], six.string_types): self.event = json.loads(self[u'event']) else: self.event = self[u'event'] @@ -231,7 +234,7 @@ class EventTransformer(dict): Keep the same format we were originally given. """ - if isinstance(self.get(u'event'), basestring): + if isinstance(self.get(u'event'), six.string_types): self[u'event'] = json.dumps(self.event) else: self[u'event'] = self.event diff --git a/common/djangoapps/track/urls.py b/common/djangoapps/track/urls.py index b1ada5a3ad..e014c198aa 100644 --- a/common/djangoapps/track/urls.py +++ b/common/djangoapps/track/urls.py @@ -2,6 +2,8 @@ URLs for track app """ +from __future__ import absolute_import + from django.conf import settings from django.conf.urls import url diff --git a/common/djangoapps/track/utils.py b/common/djangoapps/track/utils.py index 9a20fe249e..8a6c42aea9 100644 --- a/common/djangoapps/track/utils.py +++ b/common/djangoapps/track/utils.py @@ -1,5 +1,7 @@ """Utility functions and classes for track backends""" +from __future__ import absolute_import + import json from datetime import date, datetime