From 9067267ad0bf9c1b6fdd4b6f77865f80c7c6c548 Mon Sep 17 00:00:00 2001 From: Duncan Macleod Date: Fri, 12 Apr 2019 08:25:44 -0700 Subject: [PATCH 1/2] use backports configparser for python<3.6 in order to simplify imports, we should use the backport package `configparser` --- bin/gw_summary | 3 +-- bin/gwsumm-plot-guardian | 2 +- gwsumm/config.py | 2 +- gwsumm/data/timeseries.py | 5 +---- gwsumm/plot/segments.py | 2 +- gwsumm/plot/sei.py | 3 +-- gwsumm/segments.py | 8 ++++---- gwsumm/state/core.py | 5 +---- gwsumm/tabs/builtin.py | 2 +- gwsumm/tabs/core.py | 2 +- gwsumm/tabs/data.py | 11 +++++------ gwsumm/tabs/etg.py | 2 +- gwsumm/tabs/gracedb.py | 5 +---- gwsumm/tabs/guardian.py | 5 +---- gwsumm/tabs/management.py | 5 +---- gwsumm/tabs/sei.py | 5 +---- gwsumm/tests/test_config.py | 2 +- gwsumm/tests/test_plot.py | 5 +---- requirements.txt | 1 + setup.py | 1 + 20 files changed, 27 insertions(+), 49 deletions(-) diff --git a/bin/gw_summary b/bin/gw_summary index fd254b57..9c3ab06c 100644 --- a/bin/gw_summary +++ b/bin/gw_summary @@ -47,12 +47,11 @@ import os import re import warnings from collections import OrderedDict +from configparser import (DEFAULTSECT, NoOptionError, NoSectionError) try: from urllib.parse import urlparse - from configparser import (DEFAULTSECT, NoOptionError, NoSectionError) except ImportError: # python < 3 from urlparse import urlparse - from ConfigParser import (DEFAULTSECT, NoOptionError, NoSectionError) from dateutil.relativedelta import relativedelta diff --git a/bin/gwsumm-plot-guardian b/bin/gwsumm-plot-guardian index b3ebeadf..2bfa1a93 100755 --- a/bin/gwsumm-plot-guardian +++ b/bin/gwsumm-plot-guardian @@ -11,9 +11,9 @@ import argparse import os import re from collections import OrderedDict +from configparser import DEFAULTSECT from six import text_type -from six.moves.configparser import DEFAULTSECT from matplotlib import use use('agg') diff --git a/gwsumm/config.py b/gwsumm/config.py index bcc219c8..28c6c112 100644 --- a/gwsumm/config.py +++ b/gwsumm/config.py @@ -19,6 +19,7 @@ """Thin wrapper around configparser """ +import configparser import os.path import re from collections import OrderedDict @@ -27,7 +28,6 @@ from six import string_types from six.moves import ( StringIO, - configparser, http_client as httplib, ) diff --git a/gwsumm/data/timeseries.py b/gwsumm/data/timeseries.py index ab8f09df..6b64ff24 100644 --- a/gwsumm/data/timeseries.py +++ b/gwsumm/data/timeseries.py @@ -28,12 +28,9 @@ from math import (floor, ceil) from time import sleep from collections import OrderedDict +from configparser import (NoSectionError, NoOptionError) from six.moves import reduce -from six.moves.configparser import ( - NoSectionError, - NoOptionError, -) from six.moves.urllib.parse import urlparse from astropy import units diff --git a/gwsumm/plot/segments.py b/gwsumm/plot/segments.py index 44ade237..d41b2eeb 100644 --- a/gwsumm/plot/segments.py +++ b/gwsumm/plot/segments.py @@ -25,9 +25,9 @@ from itertools import (cycle, combinations) from numbers import Number from collections import OrderedDict +from configparser import NoOptionError from six import string_types -from six.moves.configparser import NoOptionError import numpy diff --git a/gwsumm/plot/sei.py b/gwsumm/plot/sei.py index e164f656..36aa086f 100644 --- a/gwsumm/plot/sei.py +++ b/gwsumm/plot/sei.py @@ -20,8 +20,7 @@ """ import re - -from six.moves.configparser import NoOptionError +from configparser import NoOptionError from matplotlib.pyplot import subplots from matplotlib.ticker import NullLocator diff --git a/gwsumm/segments.py b/gwsumm/segments.py index 46bc3798..ad6b0d34 100644 --- a/gwsumm/segments.py +++ b/gwsumm/segments.py @@ -24,16 +24,16 @@ import sys import warnings from collections import OrderedDict - -from six import string_types -from six.moves import reduce -from six.moves.configparser import ( +from configparser import ( DEFAULTSECT, ConfigParser, NoSectionError, NoOptionError, ) +from six import string_types +from six.moves import reduce + from astropy.io.registry import IORegistryError from gwpy.segments import (DataQualityFlag, DataQualityDict, diff --git a/gwsumm/state/core.py b/gwsumm/state/core.py index cb2caae8..5fd850e6 100644 --- a/gwsumm/state/core.py +++ b/gwsumm/state/core.py @@ -22,10 +22,7 @@ import datetime import re import operator -try: - from configparser import (NoOptionError, DEFAULTSECT) -except ImportError: # python < 3 - from ConfigParser import (NoOptionError, DEFAULTSECT) +from configparser import (NoOptionError, DEFAULTSECT) from astropy.time import Time diff --git a/gwsumm/tabs/builtin.py b/gwsumm/tabs/builtin.py index d59efa17..d5a6aae3 100644 --- a/gwsumm/tabs/builtin.py +++ b/gwsumm/tabs/builtin.py @@ -29,9 +29,9 @@ import os.path import warnings +from configparser import NoOptionError from six import string_types -from six.moves.configparser import NoOptionError from MarkupPy import markup diff --git a/gwsumm/tabs/core.py b/gwsumm/tabs/core.py index 6499d7c5..664bef16 100644 --- a/gwsumm/tabs/core.py +++ b/gwsumm/tabs/core.py @@ -36,10 +36,10 @@ import os import re from collections import OrderedDict +from configparser import NoOptionError from shutil import copyfile from six import string_types -from six.moves.configparser import NoOptionError from six.moves.urllib.parse import urlparse from MarkupPy import markup diff --git a/gwsumm/tabs/data.py b/gwsumm/tabs/data.py index 661a8989..23d83709 100644 --- a/gwsumm/tabs/data.py +++ b/gwsumm/tabs/data.py @@ -28,16 +28,15 @@ import os.path import getpass import re - -from copy import copy -from datetime import timedelta - -from six.moves import StringIO -from six.moves.configparser import ( +from configparser import ( ConfigParser, NoOptionError, NoSectionError, ) +from copy import copy +from datetime import timedelta + +from six.moves import StringIO from MarkupPy import markup diff --git a/gwsumm/tabs/etg.py b/gwsumm/tabs/etg.py index b3cf645e..8b74f8fa 100644 --- a/gwsumm/tabs/etg.py +++ b/gwsumm/tabs/etg.py @@ -20,10 +20,10 @@ """ import os +from configparser import NoOptionError from warnings import warn from six import string_types -from six.moves.configparser import NoOptionError from MarkupPy import markup diff --git a/gwsumm/tabs/gracedb.py b/gwsumm/tabs/gracedb.py index d1030099..ac4830cb 100644 --- a/gwsumm/tabs/gracedb.py +++ b/gwsumm/tabs/gracedb.py @@ -20,10 +20,7 @@ """ from collections import OrderedDict -try: - from configparser import NoOptionError -except ImportError: # python < 3 - from ConfigParser import NoOptionError +from configparser import NoOptionError from MarkupPy import markup diff --git a/gwsumm/tabs/guardian.py b/gwsumm/tabs/guardian.py index dc8582c0..e52005b0 100644 --- a/gwsumm/tabs/guardian.py +++ b/gwsumm/tabs/guardian.py @@ -21,10 +21,7 @@ import re from collections import OrderedDict -try: - from configparser import NoOptionError -except ImportError: - from ConfigParser import NoOptionError +from configparser import NoOptionError from dateutil import tz diff --git a/gwsumm/tabs/management.py b/gwsumm/tabs/management.py index 832bac89..f8c7437d 100644 --- a/gwsumm/tabs/management.py +++ b/gwsumm/tabs/management.py @@ -21,10 +21,7 @@ import re from collections import OrderedDict -try: - from configparser import NoOptionError -except ImportError: - from ConfigParser import NoOptionError +from configparser import NoOptionError from glue.lal import Cache diff --git a/gwsumm/tabs/sei.py b/gwsumm/tabs/sei.py index 344f8dc5..4bc64986 100644 --- a/gwsumm/tabs/sei.py +++ b/gwsumm/tabs/sei.py @@ -24,10 +24,7 @@ import os import re from collections import OrderedDict -try: - from configparser import NoOptionError -except ImportError: # python < 3 - from ConfigParser import NoOptionError +from configparser import NoOptionError from dateutil import tz diff --git a/gwsumm/tests/test_config.py b/gwsumm/tests/test_config.py index 34a1ef76..efb05386 100644 --- a/gwsumm/tests/test_config.py +++ b/gwsumm/tests/test_config.py @@ -22,9 +22,9 @@ import os.path import tempfile from collections import OrderedDict +from configparser import (DEFAULTSECT, ConfigParser) from six.moves import StringIO -from six.moves.configparser import (DEFAULTSECT, ConfigParser) import pytest diff --git a/gwsumm/tests/test_plot.py b/gwsumm/tests/test_plot.py index 8f90a506..2b9c896a 100644 --- a/gwsumm/tests/test_plot.py +++ b/gwsumm/tests/test_plot.py @@ -22,10 +22,7 @@ import os -try: - from configparser import ConfigParser -except ImportError: # python < 3 - from ConfigParser import ConfigParser +from configparser import ConfigParser from matplotlib import use use('agg') # noqa diff --git a/requirements.txt b/requirements.txt index b722d3a5..a44df8f6 100644 --- a/requirements.txt +++ b/requirements.txt @@ -20,6 +20,7 @@ pygments MarkupPy gwdetchar>=0.4.0 gwpy>=0.14.2 +configparser ; python_version < '3.6' # optional extras (not module-level imports) pykerberos diff --git a/setup.py b/setup.py index 572d89f5..592991ba 100644 --- a/setup.py +++ b/setup.py @@ -85,6 +85,7 @@ 'pygments', 'MarkupPy', 'gwdetchar>=0.4.0', + 'configparser ; python_version < \'3.6\'', ] if sys.version < '3': install_requires.append('enum34') From 5b77c3ffb0408b92205961ede494422f1eb7fce5 Mon Sep 17 00:00:00 2001 From: Duncan Macleod Date: Fri, 12 Apr 2019 08:26:46 -0700 Subject: [PATCH 2/2] cleaned up dependency statement for enum34 --- requirements.txt | 2 +- setup.py | 3 +-- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/requirements.txt b/requirements.txt index a44df8f6..ee753b7a 100644 --- a/requirements.txt +++ b/requirements.txt @@ -4,7 +4,7 @@ libsass jsmin # core requirements -enum34 ; python_version < '3' +enum34 ; python_version < '3.4' python-dateutil lxml numpy>=1.10 diff --git a/setup.py b/setup.py index 592991ba..6a3d4577 100644 --- a/setup.py +++ b/setup.py @@ -86,9 +86,8 @@ 'MarkupPy', 'gwdetchar>=0.4.0', 'configparser ; python_version < \'3.6\'', + 'enum34 ; python_version < \'3.4\'' ] -if sys.version < '3': - install_requires.append('enum34') # testing requirements if {'pytest', 'test'}.intersection(sys.argv):