Use newer form of catching exceptions

autopep8 -i --select=W602
Also some other minor deprecated syntax changes, like "while 1".
I did not commit the less obvious changes.
This commit is contained in:
Laurent Bachelier 2013-07-27 15:13:48 +02:00
commit a6ad7e83ff
72 changed files with 151 additions and 154 deletions

View file

@ -351,7 +351,7 @@ class BaseApplication(object):
def create_logging_file_handler(self, filename):
try:
stream = open(filename, 'w')
except IOError, e:
except IOError as e:
self.logger.error('Unable to create the logging file: %s' % e)
sys.exit(1)
else:
@ -383,7 +383,7 @@ class BaseApplication(object):
try:
app = klass()
except BackendsConfig.WrongPermissions, e:
except BackendsConfig.WrongPermissions as e:
print >>sys.stderr, e
sys.exit(1)
@ -396,10 +396,10 @@ class BaseApplication(object):
sys.exit(0)
except EOFError:
sys.exit(0)
except ConfigError, e:
except ConfigError as e:
print >>sys.stderr, 'Configuration error: %s' % e
sys.exit(1)
except CallErrors, e:
except CallErrors as e:
app.bcall_errors_handler(e)
sys.exit(1)
finally:

View file

@ -194,7 +194,7 @@ class ConsoleApplication(BaseApplication):
def run(klass, args=None):
try:
super(ConsoleApplication, klass).run(args)
except BackendNotFound, e:
except BackendNotFound as e:
print 'Error: Backend "%s" not found.' % e
sys.exit(1)
@ -223,7 +223,7 @@ class ConsoleApplication(BaseApplication):
def register_backend(self, name, ask_add=True):
try:
backend = self.weboob.modules_loader.get_or_load_module(name)
except ModuleLoadError, e:
except ModuleLoadError as e:
backend = None
if not backend:
@ -240,7 +240,7 @@ class ConsoleApplication(BaseApplication):
website = 'on website %s' % backend.website
else:
website = 'with backend %s' % backend.name
while 1:
while True:
asked_config = False
for key, prop in backend.klass.ACCOUNT_REGISTER_PROPERTIES.iteritems():
if not asked_config:
@ -254,7 +254,7 @@ class ConsoleApplication(BaseApplication):
print '-----------------------------%s' % ('-' * len(website))
try:
backend.klass.register_account(account)
except AccountRegisterError, e:
except AccountRegisterError as e:
print u'%s' % e
if self.ask('Do you want to try again?', default=True):
continue
@ -275,7 +275,7 @@ class ConsoleApplication(BaseApplication):
def install_module(self, name):
try:
self.weboob.repositories.install(name)
except ModuleInstallError, e:
except ModuleInstallError as e:
print >>sys.stderr, 'Unable to install module "%s": %s' % (name, e)
return False
@ -307,7 +307,7 @@ class ConsoleApplication(BaseApplication):
items.update(params)
params = items
config = module.config.load(self.weboob, bname, name, params, nofail=True)
except ModuleLoadError, e:
except ModuleLoadError as e:
print >>sys.stderr, 'Unable to load module "%s": %s' % (name, e)
return 1
@ -441,7 +441,7 @@ class ConsoleApplication(BaseApplication):
try:
v.set(line)
except ValueError, e:
except ValueError as e:
print >>sys.stderr, u'Error: %s' % e
else:
break

View file

@ -37,15 +37,14 @@ class FormattersLoader(object):
def get_available_formatters(self):
l = set(self.formatters.iterkeys())
l = l.union(self.BUILTINS)
l = list(l)
l.sort()
l = sorted(l)
return l
def build_formatter(self, name):
if not name in self.formatters:
try:
self.formatters[name] = self.load_builtin_formatter(name)
except ImportError, e:
except ImportError as e:
FormattersLoader.BUILTINS.remove(name)
raise FormatterLoadError('Unable to load formatter "%s": %s' % (name, e))
return self.formatters[name]()

View file

@ -170,7 +170,7 @@ class BackendCfg(QDialog):
pd.setWindowModality(Qt.WindowModal)
try:
self.weboob.repositories.update(pd)
except ModuleInstallError, err:
except ModuleInstallError as err:
QMessageBox.critical(self, self.tr('Update error'),
unicode(self.tr('Unable to update modules: %s' % (err))),
QMessageBox.Ok)
@ -206,7 +206,7 @@ class BackendCfg(QDialog):
try:
self.weboob.repositories.install(minfo, pd)
except ModuleInstallError, err:
except ModuleInstallError as err:
QMessageBox.critical(self, self.tr('Install error'),
unicode(self.tr('Unable to install module %s: %s' % (minfo.name, err))),
QMessageBox.Ok)
@ -442,7 +442,7 @@ class BackendCfg(QDialog):
try:
value = qtvalue.get_value()
except ValueError, e:
except ValueError as e:
QMessageBox.critical(self, self.tr('Invalid value'),
unicode(self.tr('Invalid value for field "%s":<br /><br />%s')) % (field.label, e))
return
@ -507,7 +507,7 @@ class BackendCfg(QDialog):
for key, widget in props_widgets.iteritems():
try:
v = widget.get_value()
except ValueError, e:
except ValueError as e:
QMessageBox.critical(self, self.tr('Invalid value'),
unicode(self.tr('Invalid value for field "%s":<br /><br />%s')) % (key, e))
end = False
@ -517,7 +517,7 @@ class BackendCfg(QDialog):
if end:
try:
module.klass.register_account(account)
except AccountRegisterError, e:
except AccountRegisterError as e:
QMessageBox.critical(self, self.tr('Error during register'),
unicode(self.tr('Unable to register account %s:<br /><br />%s')) % (website, e))
end = False

View file

@ -150,12 +150,12 @@ class QtApplication(QApplication, BaseApplication):
return Weboob(scheduler=QtScheduler(self))
def load_backends(self, *args, **kwargs):
while 1:
while True:
try:
return BaseApplication.load_backends(self, *args, **kwargs)
except VersionsMismatchError, e:
except VersionsMismatchError as e:
msg = 'Versions of modules mismatch with version of weboob.'
except ConfigError, e:
except ConfigError as e:
msg = unicode(e)
res = QMessageBox.question(None, 'Configuration error', u'%s\n\nDo you want to update repositories?' % msg, QMessageBox.Yes|QMessageBox.No)
@ -168,7 +168,7 @@ class QtApplication(QApplication, BaseApplication):
pd.setWindowModality(Qt.WindowModal)
try:
self.weboob.update(pd)
except ModuleInstallError, err:
except ModuleInstallError as err:
QMessageBox.critical(None, self.tr('Update error'),
unicode(self.tr('Unable to update repositories: %s' % err)),
QMessageBox.Ok)

View file

@ -174,7 +174,7 @@ class ReplApplication(Cmd, ConsoleApplication):
id = '%s@%s' % (obj.id, obj.backend)
try:
return ConsoleApplication.parse_id(self, id, unique_backend)
except BackendNotGiven, e:
except BackendNotGiven as e:
backend_name = None
while not backend_name:
print 'This command works with an unique backend. Availables:'
@ -206,7 +206,7 @@ class ReplApplication(Cmd, ConsoleApplication):
try:
backend = self.weboob.get_backend(obj.backend)
return backend.fillobj(obj, fields)
except UserError, e:
except UserError as e:
self.bcall_error_handler(backend, e, '')
_id, backend_name = self.parse_id(_id)
@ -355,11 +355,11 @@ class ReplApplication(Cmd, ConsoleApplication):
try:
try:
return super(ReplApplication, self).onecmd(line)
except CallErrors, e:
except CallErrors as e:
self.bcall_errors_handler(e)
except BackendNotGiven, e:
except BackendNotGiven as e:
print >>sys.stderr, 'Error: %s' % str(e)
except NotEnoughArguments, e:
except NotEnoughArguments as e:
print >>sys.stderr, 'Error: not enough arguments. %s' % str(e)
except (KeyboardInterrupt, EOFError):
# ^C during a command process doesn't exit application.
@ -739,7 +739,7 @@ class ReplApplication(Cmd, ConsoleApplication):
else:
try:
self.condition = ResultsCondition(line)
except ResultsConditionError, e:
except ResultsConditionError as e:
print >>sys.stderr, '%s' % e
return 2
else:
@ -977,7 +977,7 @@ class ReplApplication(Cmd, ConsoleApplication):
caps=ICapCollection):
if res:
collections.append(res)
except CallErrors, errors:
except CallErrors as errors:
for backend, error, backtrace in errors.errors:
if isinstance(error, CollectionNotFound):
pass
@ -1006,7 +1006,7 @@ class ReplApplication(Cmd, ConsoleApplication):
collections.append(res)
else:
objects.append(res)
except CallErrors, errors:
except CallErrors as errors:
for backend, error, backtrace in errors.errors:
if isinstance(error, CollectionNotFound):
pass
@ -1034,7 +1034,7 @@ class ReplApplication(Cmd, ConsoleApplication):
if len(self.objects) == 0 and len(self.collections) == 0:
try:
self.objects, self.collections = self._fetch_objects(objs=self.COLLECTION_OBJECTS)
except CallErrors, errors:
except CallErrors as errors:
for backend, error, backtrace in errors.errors:
if isinstance(error, CollectionNotFound):
pass
@ -1062,7 +1062,7 @@ class ReplApplication(Cmd, ConsoleApplication):
"""
try:
self.formatter = self.formatters_loader.build_formatter(name)
except FormatterLoadError, e:
except FormatterLoadError as e:
print >>sys.stderr, '%s' % e
if self.DEFAULT_FORMATTER == name:
self.DEFAULT_FORMATTER = ReplApplication.DEFAULT_FORMATTER
@ -1098,9 +1098,9 @@ class ReplApplication(Cmd, ConsoleApplication):
fields = None
try:
self.formatter.format(obj=result, selected_fields=fields, alias=alias)
except FieldNotFound, e:
except FieldNotFound as e:
print >>sys.stderr, e
except MandatoryFieldsNotFound, e:
except MandatoryFieldsNotFound as e:
print >>sys.stderr, '%s Hint: select missing fields or use another formatter (ex: multiline).' % e
def flush(self):

View file

@ -163,7 +163,7 @@ class BackendConfig(ValuesDict):
field = copy(field)
try:
field.load(cfg.instname, value, cfg.weboob.callbacks)
except ValueError, v:
except ValueError as v:
if not nofail:
raise BaseBackend.ConfigError(
'Backend(%s): Configuration error for field "%s": %s' % (cfg.instname, name, v))

View file

@ -55,7 +55,7 @@ from weboob.tools.parsers import get_parser
# Try to load cookies
try:
from .firefox_cookies import FirefoxCookieJar
except ImportError, e:
except ImportError as e:
warning("Unable to store cookies: %s" % e)
HAVE_COOKIES = False
else:
@ -281,7 +281,7 @@ class StandardBrowser(mechanize.Browser):
try:
return self._openurl(*args, **kwargs)
except (mechanize.BrowserStateError, mechanize.response_seek_wrapper,
urllib2.HTTPError, urllib2.URLError, BadStatusLine, ssl.SSLError), e:
urllib2.HTTPError, urllib2.URLError, BadStatusLine, ssl.SSLError) as e:
if isinstance(e, mechanize.BrowserStateError) and hasattr(self, 'home'):
self.home()
return self._openurl(*args, **kwargs)
@ -289,7 +289,7 @@ class StandardBrowser(mechanize.Browser):
raise self.get_exception(e)('%s (url="%s")' % (e, args and args[0] or 'None'))
else:
return None
except BrowserRetry, e:
except BrowserRetry as e:
return self._openurl(*args, **kwargs)
def get_exception(self, e):
@ -426,7 +426,7 @@ class StandardBrowser(mechanize.Browser):
if isinstance(is_list, (list, tuple)):
try:
value = [self.str(is_list.index(args[label]))]
except ValueError, e:
except ValueError as e:
if args[label]:
print >>sys.stderr, '[%s] %s: %s' % (label, args[label], e)
return
@ -555,10 +555,10 @@ class BaseBrowser(StandardBrowser):
nologin = kwargs.pop('nologin', False)
try:
self._change_location(mechanize.Browser.submit(self, *args, **kwargs), no_login=nologin)
except (mechanize.response_seek_wrapper, urllib2.HTTPError, urllib2.URLError, BadStatusLine, ssl.SSLError), e:
except (mechanize.response_seek_wrapper, urllib2.HTTPError, urllib2.URLError, BadStatusLine, ssl.SSLError) as e:
self.page = None
raise self.get_exception(e)(e)
except (mechanize.BrowserStateError, BrowserRetry), e:
except (mechanize.BrowserStateError, BrowserRetry) as e:
raise BrowserUnavailable(e)
def is_on_page(self, pageCls):
@ -587,10 +587,10 @@ class BaseBrowser(StandardBrowser):
"""
try:
self._change_location(mechanize.Browser.follow_link(self, *args, **kwargs))
except (mechanize.response_seek_wrapper, urllib2.HTTPError, urllib2.URLError, BadStatusLine, ssl.SSLError), e:
except (mechanize.response_seek_wrapper, urllib2.HTTPError, urllib2.URLError, BadStatusLine, ssl.SSLError) as e:
self.page = None
raise self.get_exception(e)('%s (url="%s")' % (e, args and args[0] or 'None'))
except (mechanize.BrowserStateError, BrowserRetry), e:
except (mechanize.BrowserStateError, BrowserRetry) as e:
self.home()
raise BrowserUnavailable(e)
@ -622,7 +622,7 @@ class BaseBrowser(StandardBrowser):
if not self.page or not args or self.page.url != args[0]:
keep_kwargs['no_login'] = True
self.location(*keep_args, **keep_kwargs)
except (mechanize.response_seek_wrapper, urllib2.HTTPError, urllib2.URLError, BadStatusLine, ssl.SSLError), e:
except (mechanize.response_seek_wrapper, urllib2.HTTPError, urllib2.URLError, BadStatusLine, ssl.SSLError) as e:
self.page = None
raise self.get_exception(e)('%s (url="%s")' % (e, args and args[0] or 'None'))
except mechanize.BrowserStateError:
@ -758,7 +758,7 @@ class HTTPSConnection2(httplib.HTTPSConnection):
self.sock = ssl.wrap_socket(sock, self.key_file, self.cert_file, ssl_version=proto)
self._HOSTS['%s:%s' % (self.host, self.port)] = [proto]
return
except ssl.SSLError, e:
except ssl.SSLError as e:
sock.close()
raise e

View file

@ -20,7 +20,7 @@
try:
import sqlite3 as sqlite
except ImportError, e:
except ImportError as e:
from pysqlite2 import dbapi2 as sqlite
from mechanize import CookieJar, Cookie
@ -39,7 +39,7 @@ class FirefoxCookieJar(CookieJar):
def __connect(self):
try:
db = sqlite.connect(database=self.sqlite_file, timeout=10.0)
except sqlite.OperationalError, err:
except sqlite.OperationalError as err:
print 'Unable to open %s database: %s' % (self.sqlite_file, err)
return None

View file

@ -152,7 +152,7 @@ class FrenchTransaction(Transaction):
self.rdate = datetime.datetime(yy, mm, dd, int(args['HH']), int(args['MM']))
else:
self.rdate = datetime.date(yy, mm, dd)
except ValueError, e:
except ValueError as e:
self._logger.warning('Unable to date in label %r: %s' % (self.raw, e))
return

View file

@ -83,7 +83,7 @@ def _findall(text, substr):
# Also finds overlaps
sites = []
i = 0
while 1:
while True:
j = text.find(substr, i)
if j == -1:
break
@ -153,10 +153,10 @@ class LinearDateGuesser(object):
In case initialization still fails with max_year, this function raises
a ValueError.
"""
while 1:
while True:
try:
return date(start_year, month, day)
except ValueError, e:
except ValueError as e:
if start_year == max_year:
raise e
start_year += cmp(max_year, start_year)

View file

@ -41,7 +41,7 @@ def retry(ExceptionToCheck, tries=4, delay=3, backoff=2):
return f(*args, **kwargs)
try_one_last_time = False
break
except ExceptionToCheck, e:
except ExceptionToCheck as e:
logging.debug(u'%s, Retrying in %d seconds...' % (e, mdelay))
time.sleep(mdelay)
mtries -= 1