From 94d91e6e066bde645ab724e566bd8ddcdd690439 Mon Sep 17 00:00:00 2001 From: "ChangBo Guo(gcb)" Date: Sat, 22 Feb 2014 11:33:29 +0800 Subject: [PATCH] Remove dependent module py3kcompat Module py3kcompat was removed from oslo-incubator, we can use six directly. Change-Id: Ib75c8963b9429d67a3c09cd0b4815379693e250a Closes-Bug: #1280033 --- dashboard/parameters.py | 4 +- openstack-common.conf | 1 - .../openstack/common/py3kcompat/__init__.py | 0 .../openstack/common/py3kcompat/urlutils.py | 67 ------------------- stackalytics/processor/launchpad_utils.py | 5 +- stackalytics/processor/main.py | 6 +- stackalytics/processor/mls.py | 6 +- stackalytics/processor/utils.py | 7 +- 8 files changed, 15 insertions(+), 81 deletions(-) delete mode 100644 stackalytics/openstack/common/py3kcompat/__init__.py delete mode 100644 stackalytics/openstack/common/py3kcompat/urlutils.py diff --git a/dashboard/parameters.py b/dashboard/parameters.py index 85fafce35..3003217dd 100644 --- a/dashboard/parameters.py +++ b/dashboard/parameters.py @@ -14,9 +14,9 @@ # limitations under the License. import flask +from six.moves.urllib import parse from stackalytics.openstack.common import log as logging -from stackalytics.openstack.common.py3kcompat import urlutils LOG = logging.getLogger(__name__) @@ -68,7 +68,7 @@ def get_parameter(kwargs, singular_name, plural_name=None, use_default=True): if (not p) and plural_name: p = flask.request.args.get(plural_name) if p: - return urlutils.unquote_plus(p).split(',') + return parse.unquote_plus(p).split(',') elif use_default: default = get_default(singular_name) return [default] if default else [] diff --git a/openstack-common.conf b/openstack-common.conf index 1c1cdd4f1..f0d88dfdf 100644 --- a/openstack-common.conf +++ b/openstack-common.conf @@ -3,7 +3,6 @@ module=importutils module=jsonutils module=log -module=py3kcompat module=timeutils # The base module to hold the copy of oslo-incubator diff --git a/stackalytics/openstack/common/py3kcompat/__init__.py b/stackalytics/openstack/common/py3kcompat/__init__.py deleted file mode 100644 index e69de29bb..000000000 diff --git a/stackalytics/openstack/common/py3kcompat/urlutils.py b/stackalytics/openstack/common/py3kcompat/urlutils.py deleted file mode 100644 index 84e457a44..000000000 --- a/stackalytics/openstack/common/py3kcompat/urlutils.py +++ /dev/null @@ -1,67 +0,0 @@ -# -# Copyright 2013 Canonical Ltd. -# All Rights Reserved. -# -# Licensed under the Apache License, Version 2.0 (the "License"); you may -# not use this file except in compliance with the License. You may obtain -# a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT -# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the -# License for the specific language governing permissions and limitations -# under the License. -# - -""" -Python2/Python3 compatibility layer for OpenStack -""" - -import six - -if six.PY3: - # python3 - import urllib.error - import urllib.parse - import urllib.request - - urlencode = urllib.parse.urlencode - urljoin = urllib.parse.urljoin - quote = urllib.parse.quote - quote_plus = urllib.parse.quote_plus - parse_qsl = urllib.parse.parse_qsl - unquote = urllib.parse.unquote - unquote_plus = urllib.parse.unquote_plus - urlparse = urllib.parse.urlparse - urlsplit = urllib.parse.urlsplit - urlunsplit = urllib.parse.urlunsplit - SplitResult = urllib.parse.SplitResult - - urlopen = urllib.request.urlopen - URLError = urllib.error.URLError - pathname2url = urllib.request.pathname2url -else: - # python2 - import urllib - import urllib2 - import urlparse - - urlencode = urllib.urlencode - quote = urllib.quote - quote_plus = urllib.quote_plus - unquote = urllib.unquote - unquote_plus = urllib.unquote_plus - - parse = urlparse - parse_qsl = parse.parse_qsl - urljoin = parse.urljoin - urlparse = parse.urlparse - urlsplit = parse.urlsplit - urlunsplit = parse.urlunsplit - SplitResult = parse.SplitResult - - urlopen = urllib2.urlopen - URLError = urllib2.URLError - pathname2url = urllib.pathname2url diff --git a/stackalytics/processor/launchpad_utils.py b/stackalytics/processor/launchpad_utils.py index ad892a6c5..7b415b189 100644 --- a/stackalytics/processor/launchpad_utils.py +++ b/stackalytics/processor/launchpad_utils.py @@ -15,8 +15,9 @@ import httplib +from six.moves.urllib import parse + from stackalytics.openstack.common import log as logging -from stackalytics.openstack.common.py3kcompat import urlutils from stackalytics.processor import utils @@ -41,7 +42,7 @@ def lp_profile_by_email(email): def lp_module_exists(module): uri = LP_URI_DEVEL % module - parsed_uri = urlutils.urlparse(uri) + parsed_uri = parse.urlparse(uri) conn = httplib.HTTPConnection(parsed_uri.netloc) conn.request('GET', parsed_uri.path) res = conn.getresponse() diff --git a/stackalytics/processor/main.py b/stackalytics/processor/main.py index 103500c36..8ae79c47e 100644 --- a/stackalytics/processor/main.py +++ b/stackalytics/processor/main.py @@ -18,10 +18,10 @@ import collections from oslo.config import cfg import psutil import six +from six.moves.urllib import parse import yaml from stackalytics.openstack.common import log as logging -from stackalytics.openstack.common.py3kcompat import urlutils from stackalytics.processor import config from stackalytics.processor import default_data_processor from stackalytics.processor import lp @@ -103,7 +103,7 @@ def process_repo(repo, runtime_storage_inst, record_processor_inst): for branch in branches: LOG.debug('Processing repo %s, branch %s', uri, branch) - vcs_key = 'vcs:' + str(urlutils.quote_plus(uri) + ':' + branch) + vcs_key = 'vcs:' + str(parse.quote_plus(uri) + ':' + branch) last_id = runtime_storage_inst.get_by_key(vcs_key) commit_iterator = vcs_inst.log(branch, last_id) @@ -118,7 +118,7 @@ def process_repo(repo, runtime_storage_inst, record_processor_inst): LOG.debug('Processing reviews for repo %s, branch %s', uri, branch) - rcs_key = 'rcs:' + str(urlutils.quote_plus(uri) + ':' + branch) + rcs_key = 'rcs:' + str(parse.quote_plus(uri) + ':' + branch) last_id = runtime_storage_inst.get_by_key(rcs_key) review_iterator = rcs_inst.log(branch, last_id) diff --git a/stackalytics/processor/mls.py b/stackalytics/processor/mls.py index 99a263c44..34db9a3be 100644 --- a/stackalytics/processor/mls.py +++ b/stackalytics/processor/mls.py @@ -20,9 +20,9 @@ import re import StringIO import six +from six.moves.urllib import parse from stackalytics.openstack.common import log as logging -from stackalytics.openstack.common.py3kcompat import urlutils from stackalytics.processor import utils @@ -59,12 +59,12 @@ def _get_mail_archive_links(uri): content = utils.read_uri(uri) links = set(re.findall(r'\shref\s*=\s*[\'"]([^\'"]*\.txt\.gz)', content, flags=re.IGNORECASE)) - return [urlutils.urljoin(uri, link) for link in links] + return [parse.urljoin(uri, link) for link in links] def _link_content_changed(link, runtime_storage_inst): LOG.debug('Check changes for mail archive located at uri: %s', link) - parsed_uri = urlutils.urlparse(link) + parsed_uri = parse.urlparse(link) conn = httplib.HTTPConnection(parsed_uri.netloc) conn.request('HEAD', parsed_uri.path) res = conn.getresponse() diff --git a/stackalytics/processor/utils.py b/stackalytics/processor/utils.py index 67468ddeb..7942d4e97 100644 --- a/stackalytics/processor/utils.py +++ b/stackalytics/processor/utils.py @@ -21,9 +21,10 @@ import time import iso8601 import six +from six.moves.urllib import parse +from six.moves.urllib import request from stackalytics.openstack.common import log as logging -from stackalytics.openstack.common.py3kcompat import urlutils LOG = logging.getLogger(__name__) @@ -68,7 +69,7 @@ def check_email_validity(email): def read_uri(uri): try: - fd = urlutils.urlopen(uri) + fd = request.urlopen(uri) raw = fd.read() fd.close() return raw @@ -169,4 +170,4 @@ def add_index(sequence, start=1, item_filter=lambda x: True): def safe_encode(s): - return urlutils.quote_plus(s.encode('utf-8')) + return parse.quote_plus(s.encode('utf-8'))