summaryrefslogtreecommitdiff
path: root/baserockimport/exts/importer_python_common.py
diff options
context:
space:
mode:
Diffstat (limited to 'baserockimport/exts/importer_python_common.py')
-rw-r--r--baserockimport/exts/importer_python_common.py20
1 files changed, 11 insertions, 9 deletions
diff --git a/baserockimport/exts/importer_python_common.py b/baserockimport/exts/importer_python_common.py
index b2e7c51..eedc81b 100644
--- a/baserockimport/exts/importer_python_common.py
+++ b/baserockimport/exts/importer_python_common.py
@@ -23,6 +23,15 @@ from importer_base import ImportExtension
PYPI_URL = 'http://pypi.python.org/pypi'
+def get_releases(client, package_name):
+ try:
+ # True here just means show hidden releases
+ releases = client.package_releases(package_name, True)
+ except Exception as e:
+ error("Couldn't fetch release data:", e)
+
+ return releases
+
def warn(*args, **kwargs):
print('%s:' % sys.argv[0], *args, file=sys.stderr, **kwargs)
@@ -60,10 +69,11 @@ def name_or_closest(client, package_name):
#
# so look for both the hyphenated version that is passed to this function
# and the underscored version.
+ package_name = package_name.replace('_', '-')
underscored_package_name = package_name.replace('-', '_')
for name in [package_name, underscored_package_name]:
- results = client.package_releases(name)
+ results = get_releases(client, name)
if len(results) > 0:
logging.debug('Found package %s' % name)
@@ -88,12 +98,4 @@ def name_or_closest(client, package_name):
return results[0]['name'] if len(results) > 0 else None
-# We subclass the ImportExtension to setup the logger,
-# so that we can send logs to the import tool's log
-class PythonExtension(ImportExtension):
- def __init__(self):
- super(PythonExtension, self).__init__()
- def process_args(self, _):
- import __main__
- __main__.main()