mirror of
https://git.launchpad.net/ubuntu-dev-tools
synced 2025-05-14 18:31:29 +00:00
pull-debian-source: convert to Python 3
This has the (desired) side effect of fixing the guessing of the correct encoding in dsc files when not UTF-8. Presumably this is because Python 3 has some improvements in that area. Since it's what we want, I see no need to dig further. LP: #1700846
This commit is contained in:
parent
a761ccfc72
commit
0291ad07b0
@ -1,4 +1,4 @@
|
|||||||
#!/usr/bin/python
|
#!/usr/bin/python3
|
||||||
#
|
#
|
||||||
# pull-debian-source -- pull a source package from Launchpad
|
# pull-debian-source -- pull a source package from Launchpad
|
||||||
# Copyright (C) 2011, Stefano Rivera <stefanor@ubuntu.com>
|
# Copyright (C) 2011, Stefano Rivera <stefanor@ubuntu.com>
|
||||||
@ -19,7 +19,8 @@
|
|||||||
import json
|
import json
|
||||||
import optparse
|
import optparse
|
||||||
import sys
|
import sys
|
||||||
import urllib2
|
import urllib.request
|
||||||
|
import urllib.error
|
||||||
|
|
||||||
from distro_info import DebianDistroInfo, DistroDataOutdated
|
from distro_info import DebianDistroInfo, DistroDataOutdated
|
||||||
|
|
||||||
@ -54,17 +55,17 @@ def source_package_for(binary, release):
|
|||||||
"""Query DDE to find the source package for a particular binary"""
|
"""Query DDE to find the source package for a particular binary"""
|
||||||
try:
|
try:
|
||||||
release = DebianDistroInfo().codename(release, default=release)
|
release = DebianDistroInfo().codename(release, default=release)
|
||||||
except DistroDataOutdated, e:
|
except DistroDataOutdated as e:
|
||||||
Logger.warn(e)
|
Logger.warn(e)
|
||||||
url = ('http://dde.debian.net/dde/q/udd/dist/d:debian/r:%s/p:%s/?t=json'
|
url = ('http://dde.debian.net/dde/q/udd/dist/d:debian/r:%s/p:%s/?t=json'
|
||||||
% (release, binary))
|
% (release, binary))
|
||||||
data = None
|
data = None
|
||||||
try:
|
try:
|
||||||
data = json.load(urllib2.urlopen(url))['r']
|
data = json.load(urllib.request.urlopen(url))['r']
|
||||||
except urllib2.URLError, e:
|
except urllib.error.URLError as e:
|
||||||
Logger.error('Unable to retrieve package information from DDE: '
|
Logger.error('Unable to retrieve package information from DDE: '
|
||||||
'%s (%s)', url, str(e))
|
'%s (%s)', url, str(e))
|
||||||
except ValueError, e:
|
except ValueError as e:
|
||||||
Logger.error('Unable to parse JSON response from DDE: '
|
Logger.error('Unable to parse JSON response from DDE: '
|
||||||
'%s (%s)', url, str(e))
|
'%s (%s)', url, str(e))
|
||||||
if not data:
|
if not data:
|
||||||
@ -132,8 +133,8 @@ def main():
|
|||||||
mirrors=[options.debian_mirror,
|
mirrors=[options.debian_mirror,
|
||||||
options.debsec_mirror])
|
options.debsec_mirror])
|
||||||
try:
|
try:
|
||||||
srcpkg.pull()
|
srcpkg.pull(verify_signature=options.verify_signature)
|
||||||
except DownloadError, e:
|
except DownloadError as e:
|
||||||
Logger.error('Failed to download: %s', str(e))
|
Logger.error('Failed to download: %s', str(e))
|
||||||
sys.exit(1)
|
sys.exit(1)
|
||||||
if not options.download_only:
|
if not options.download_only:
|
||||||
|
Loading…
x
Reference in New Issue
Block a user