diff --git a/gracedb/api/v1/events/views.py b/gracedb/api/v1/events/views.py index 1321a43efc3ff91d750f34a904b4f993a1fb98fd..eebfa6a289765bab6a0b91bc1dbe7d98daa17a7b 100644 --- a/gracedb/api/v1/events/views.py +++ b/gracedb/api/v1/events/views.py @@ -4,9 +4,9 @@ import logging import os import shutil try: - from io import StringIO -except ImportError: # python < 3 from StringIO import StringIO +except ImportError: # python >= 3 + from io import StringIO from django.conf import settings from django.contrib.auth.models import User, Permission, Group as DjangoGroup diff --git a/gracedb/core/middleware/profiling.py b/gracedb/core/middleware/profiling.py index 6e6b0254de16ce389d528db3e07b8440bb006df2..b78257d8c763cde05c586527f40748e142ccc82c 100644 --- a/gracedb/core/middleware/profiling.py +++ b/gracedb/core/middleware/profiling.py @@ -7,9 +7,9 @@ import os import re import tempfile try: - from io import StringIO -except ImportError: # python < 3 from StringIO import StringIO +except ImportError: # python >= 3 + from io import StringIO import hotshot, hotshot.stats diff --git a/gracedb/events/migrations/0036_populate_voevent_fields.py b/gracedb/events/migrations/0036_populate_voevent_fields.py index f5da68f22e319554e3eb894bdf29c81dfd1f6ba3..32ac1bacbf9c3ce7e799bf6d4b4b6140fd029dbe 100644 --- a/gracedb/events/migrations/0036_populate_voevent_fields.py +++ b/gracedb/events/migrations/0036_populate_voevent_fields.py @@ -1,7 +1,10 @@ # -*- coding: utf-8 -*- # Generated by Django 1.11.20 on 2019-06-10 16:58 from __future__ import unicode_literals -from cStringIO import StringIO +try: + from StringIO import StringIO +except ImportError: # python >= 3 + from io import StringIO from hashlib import sha1 import os from lxml import etree @@ -66,7 +69,7 @@ def get_datadir(event_or_superevent): hash_input = str(event_or_superevent.id) if event_or_superevent.__class__.__name__.lower() == 'superevent': hash_input = 'superevent' + hash_input - hdf = StringIO(sha1(hash_input).hexdigest()) + hdf = StringIO(sha1(hash_input.encode()).hexdigest()) # Build up the nodes of the directory structure nodes = [hdf.read(i) for i in settings.GRACEDB_DIR_DIGITS] diff --git a/gracedb/events/models.py b/gracedb/events/models.py index c46b9992af8346460f18a59a841403abea6577d5..05f6ed93d6b72c68f1024e2b050a13a14d566e40 100644 --- a/gracedb/events/models.py +++ b/gracedb/events/models.py @@ -35,7 +35,10 @@ from django.conf import settings import pytz import calendar -from io import StringIO +try: + from StringIO import StringIO +except ImportError: # python >= 3 + from io import StringIO from hashlib import sha1 import shutil @@ -241,11 +244,8 @@ class Event(models.Model): @property def datadir(self): # Create a file-like object which is the SHA-1 hexdigest of the Event's primary key - hid = sha1(str(self.id).encode("utf-8")).hexdigest() - try: - hdf = StringIO(hid.decode("utf-8")) - except AttributeError: # python < 3 - hdf = StringIO(hid) + hid = sha1(str(self.id).encode()).hexdigest() + hdf = StringIO(hid) # Build up the nodes of the directory structure nodes = [hdf.read(i) for i in settings.GRACEDB_DIR_DIGITS] diff --git a/gracedb/events/reports.py b/gracedb/events/reports.py index b6d70420ea155f03bf481a61845c2f5b0c2441bf..01b824b41e9d7f0c23d4dbe2c409c7939f07ccd1 100644 --- a/gracedb/events/reports.py +++ b/gracedb/events/reports.py @@ -30,9 +30,9 @@ from django.utils import timezone import pytz import json try: - from io import StringIO -except ImportError: # python < 3 from StringIO import StringIO +except ImportError: # python >= 3 + from io import StringIO @internal_user_required def histo(request): diff --git a/gracedb/events/translator.py b/gracedb/events/translator.py index 0877df9c2271ebba080c637e50b2dfd2f5243f97..93105fb7464b4c89004ad753f4e134f12515e4cf 100644 --- a/gracedb/events/translator.py +++ b/gracedb/events/translator.py @@ -19,9 +19,9 @@ from core.vfile import VersionedFile import json try: - from io import StringIO -except ImportError: # python < 3 from StringIO import StringIO +except ImportError: # python >= 3 + from io import StringIO from math import sqrt diff --git a/gracedb/superevents/migrations/0004_populate_voevent_fields.py b/gracedb/superevents/migrations/0004_populate_voevent_fields.py index a693ff8355d620ae3e55323cad02a360ecbc3907..2adc34c7f5af9f49d9f9aad4205c8b286f39eee1 100644 --- a/gracedb/superevents/migrations/0004_populate_voevent_fields.py +++ b/gracedb/superevents/migrations/0004_populate_voevent_fields.py @@ -1,7 +1,10 @@ # -*- coding: utf-8 -*- # Generated by Django 1.11.20 on 2019-06-10 16:58 from __future__ import unicode_literals -from cStringIO import StringIO +try: + from StringIO import StringIO +except ImportError: # python >= 3 + from io import StringIO from hashlib import sha1 import os from lxml import etree @@ -62,7 +65,7 @@ def get_datadir(event_or_superevent): hash_input = str(event_or_superevent.id) if event_or_superevent.__class__.__name__.lower() == 'superevent': hash_input = 'superevent' + hash_input - hdf = StringIO(sha1(hash_input).hexdigest()) + hdf = StringIO(sha1(hash_input.encode()).hexdigest()) # Build up the nodes of the directory structure nodes = [hdf.read(i) for i in settings.GRACEDB_DIR_DIGITS] diff --git a/gracedb/superevents/models.py b/gracedb/superevents/models.py index 8156038328437e55c12d68f7788d43bc31d3d919..11b0c9125fde733e7fbe1f74c4c4d772a0bb4097 100644 --- a/gracedb/superevents/models.py +++ b/gracedb/superevents/models.py @@ -1,7 +1,7 @@ try: - from io import StringIO -except ImportError: # python < 3 from StringIO import StringIO +except ImportError: # python >= 3 + from io import StringIO import datetime from hashlib import sha1 import logging @@ -365,7 +365,7 @@ class Superevent(CleanSaveModel, AutoIncrementModel): # object's primary key. We prepend 'superevent' so as to not # have collisions with Event files hash_input = 'superevent' + str(self.id) - hdf = StringIO(sha1(hash_input).hexdigest().decode('utf-8')) + hdf = StringIO(sha1(hash_input.encode()).hexdigest()) # Build up the nodes of the directory structure nodes = [hdf.read(i) for i in settings.GRACEDB_DIR_DIGITS]