summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorXavier Morel <xmo@odoo.com>2017-05-10 16:34:36 +0200
committerXavier Morel <xmo@odoo.com>2017-05-12 16:15:40 +0200
commit07ab8b6cd2b44aeb91dadc35adf5f4b19f1399b2 (patch)
treee11bc7b07e68ff4ee0a07c1a786abd2f3abe27a8
parent3dd3790597e84186d922b798aa8bb4650513ce4b (diff)
[FIX] P3: Exception.message removed
-rw-r--r--addons/auth_signup/controllers/main.py4
-rw-r--r--addons/base_import/models/base_import.py4
-rw-r--r--addons/gamification/models/goal.py6
-rw-r--r--addons/hw_escpos/controllers/main.py2
-rw-r--r--addons/mail/models/mail_mail.py2
-rw-r--r--addons/payment_ogone/controllers/main.py2
-rw-r--r--addons/web/controllers/main.py4
-rw-r--r--addons/website_slides/controllers/main.py2
-rw-r--r--odoo/addons/base/ir/ir_model.py2
-rw-r--r--odoo/addons/base/ir/ir_qweb/assetsbundle.py4
-rw-r--r--odoo/addons/base/ir/ir_ui_view.py2
-rw-r--r--odoo/loglevels.py2
-rw-r--r--odoo/service/wsgi_server.py19
-rw-r--r--odoo/tools/xml_utils.py2
14 files changed, 26 insertions, 31 deletions
diff --git a/addons/auth_signup/controllers/main.py b/addons/auth_signup/controllers/main.py
index db636797d12..825a880b62c 100644
--- a/addons/auth_signup/controllers/main.py
+++ b/addons/auth_signup/controllers/main.py
@@ -38,7 +38,7 @@ class AuthSignupHome(Home):
if request.env["res.users"].sudo().search([("login", "=", qcontext.get("login"))]):
qcontext["error"] = _("Another user is already registered using this email address.")
else:
- _logger.error(e.message)
+ _logger.error("%s", e)
qcontext['error'] = _("Could not create a new account.")
return request.render('auth_signup.signup', qcontext)
@@ -64,7 +64,7 @@ class AuthSignupHome(Home):
qcontext['error'] = _("Could not reset your password")
_logger.exception('error when resetting password')
except Exception as e:
- qcontext['error'] = e.message or e.name
+ qcontext['error'] = str(e)
response = request.render('auth_signup.reset_password', qcontext)
response.headers['X-Frame-Options'] = 'DENY'
diff --git a/addons/base_import/models/base_import.py b/addons/base_import/models/base_import.py
index 0b6b534a28a..35262774bf4 100644
--- a/addons/base_import/models/base_import.py
+++ b/addons/base_import/models/base_import.py
@@ -617,9 +617,9 @@ class Import(models.TransientModel):
try:
line[index] = dt.strftime(dt.strptime(ustr(line[index]).encode('utf-8'), user_format), server_format)
except ValueError as e:
- raise ValueError(_("Column %s contains incorrect values. Error in line %d: %s") % (name, num + 1, ustr(e.message)))
+ raise ValueError(_("Column %s contains incorrect values. Error in line %d: %s") % (name, num + 1, e))
except Exception as e:
- raise ValueError(_("Error Parsing Date [%s:L%d]: %s") % (name, num + 1, ustr(e.message)))
+ raise ValueError(_("Error Parsing Date [%s:L%d]: %s") % (name, num + 1, e))
elif field['type'] in ('float', 'monetary') and name in import_fields:
# Parse float, sometimes float values from file have currency symbol or () to denote a negative value
diff --git a/addons/gamification/models/goal.py b/addons/gamification/models/goal.py
index 89f037d55d3..56c447dd9d4 100644
--- a/addons/gamification/models/goal.py
+++ b/addons/gamification/models/goal.py
@@ -87,7 +87,9 @@ class GoalDefinition(models.Model):
# dummy search to make sure the domain is valid
Obj.search_count(domain)
except (ValueError, SyntaxError) as e:
- msg = e.message or (e.msg + '\n' + e.text)
+ msg = e
+ if isinstance(e, SyntaxError):
+ msg = (e.msg + '\n' + e.text)
raise exceptions.UserError(_("The domain for the definition %s seems incorrect, please check it.\n\n%s") % (definition.name, msg))
return True
@@ -105,7 +107,7 @@ class GoalDefinition(models.Model):
_("The model configuration for the definition %s seems incorrect, please check it.\n\n%s not stored") % (definition.name, definition.field_id.name))
except KeyError as e:
raise exceptions.UserError(
- _("The model configuration for the definition %s seems incorrect, please check it.\n\n%s not found") % (definition.name, e.message))
+ _("The model configuration for the definition %s seems incorrect, please check it.\n\n%s not found") % (definition.name, e))
@api.model
def create(self, vals):
diff --git a/addons/hw_escpos/controllers/main.py b/addons/hw_escpos/controllers/main.py
index e55dc57af5a..6c929ca2f26 100644
--- a/addons/hw_escpos/controllers/main.py
+++ b/addons/hw_escpos/controllers/main.py
@@ -81,7 +81,7 @@ class EscposDriver(Thread):
try:
description = usb.util.get_string(printer, 256, printer.iManufacturer) + " " + usb.util.get_string(printer, 256, printer.iProduct)
except Exception as e:
- _logger.error("Can not get printer description: %s" % (e.message or repr(e)))
+ _logger.error("Can not get printer description: %s" % e)
description = 'Unknown printer'
connected.append({
'vendor': printer.idVendor,
diff --git a/addons/mail/models/mail_mail.py b/addons/mail/models/mail_mail.py
index 8517274205b..3f206424e07 100644
--- a/addons/mail/models/mail_mail.py
+++ b/addons/mail/models/mail_mail.py
@@ -326,7 +326,7 @@ class MailMail(models.Model):
res = IrMailServer.send_email(
msg, mail_server_id=mail.mail_server_id.id, smtp_session=smtp_session)
except AssertionError as error:
- if error.message == IrMailServer.NO_VALID_RECIPIENT:
+ if str(error) == IrMailServer.NO_VALID_RECIPIENT:
# No valid recipient found for this particular
# mail item -> ignore error to avoid blocking
# delivery to next recipients, if any. If this is
diff --git a/addons/payment_ogone/controllers/main.py b/addons/payment_ogone/controllers/main.py
index 2dfa2747ab8..53150686f25 100644
--- a/addons/payment_ogone/controllers/main.py
+++ b/addons/payment_ogone/controllers/main.py
@@ -41,7 +41,7 @@ class OgoneController(http.Controller):
acq.s2s_process(post)
except Exception as e:
# synthax error: 'CHECK ERROR: |Not a valid date\n\n50001111: None'
- error = e.message.splitlines()[0].split('|')[-1] or ''
+ error = str(e).splitlines()[0].split('|')[-1] or ''
return werkzeug.utils.redirect(post.get('return_url', '/') + (error and '#error=%s' % werkzeug.url_quote(error) or ''))
@http.route(['/payment/ogone/s2s/feedback'], auth='none', csrf=False)
diff --git a/addons/web/controllers/main.py b/addons/web/controllers/main.py
index f00c6ff5122..105c8ab7841 100644
--- a/addons/web/controllers/main.py
+++ b/addons/web/controllers/main.py
@@ -1053,7 +1053,7 @@ class Binary(http.Controller):
args = [len(data), ufile.filename,
ufile.content_type, base64.b64encode(data)]
except Exception as e:
- args = [False, e.message]
+ args = [False, str(e)]
return out % (json.dumps(callback), json.dumps(args))
@http.route('/web/binary/upload_attachment', type='http', auth="user")
@@ -1647,4 +1647,4 @@ class ReportController(http.Controller):
@http.route(['/report/check_wkhtmltopdf'], type='json', auth="user")
def check_wkhtmltopdf(self):
- return request.env['ir.actions.report'].get_wkhtmltopdf_state() \ No newline at end of file
+ return request.env['ir.actions.report'].get_wkhtmltopdf_state()
diff --git a/addons/website_slides/controllers/main.py b/addons/website_slides/controllers/main.py
index 6385c84069a..adc6aeaad39 100644
--- a/addons/website_slides/controllers/main.py
+++ b/addons/website_slides/controllers/main.py
@@ -319,7 +319,7 @@ class WebsiteSlides(http.Controller):
return {'error': e.name}
except Exception as e:
_logger.error(e)
- return {'error': _('Internal server error, please try again later or contact administrator.\nHere is the error message: %s') % e.message}
+ return {'error': _('Internal server error, please try again later or contact administrator.\nHere is the error message: %s') % e}
return {'url': "/slides/slide/%s" % (slide_id.id)}
# --------------------------------------------------
diff --git a/odoo/addons/base/ir/ir_model.py b/odoo/addons/base/ir/ir_model.py
index 2ff66b455de..374ff5edc15 100644
--- a/odoo/addons/base/ir/ir_model.py
+++ b/odoo/addons/base/ir/ir_model.py
@@ -406,7 +406,7 @@ class IrModelFields(models.Model):
try:
field = self._related_field()
except UserError as e:
- return {'warning': {'title': _("Warning"), 'message': e.message}}
+ return {'warning': {'title': _("Warning"), 'message': e}}
self.ttype = field.type
self.relation = field.comodel_name
self.readonly = True
diff --git a/odoo/addons/base/ir/ir_qweb/assetsbundle.py b/odoo/addons/base/ir/ir_qweb/assetsbundle.py
index 19902e78d1b..6a8ad84c9dd 100644
--- a/odoo/addons/base/ir/ir_qweb/assetsbundle.py
+++ b/odoo/addons/base/ir/ir_qweb/assetsbundle.py
@@ -524,7 +524,7 @@ class JavascriptAsset(WebAsset):
try:
return super(JavascriptAsset, self)._fetch_content()
except AssetError as e:
- return "console.error(%s);" % json.dumps(e.message)
+ return "console.error(%s);" % json.dumps(str(e))
def to_html(self):
if self.url:
@@ -573,7 +573,7 @@ class StylesheetAsset(WebAsset):
return content
except AssetError as e:
- self.bundle.css_errors.append(e.message)
+ self.bundle.css_errors.append(str(e))
return ''
def minify(self):
diff --git a/odoo/addons/base/ir/ir_ui_view.py b/odoo/addons/base/ir/ir_ui_view.py
index 0a709985ff6..3e674b02a48 100644
--- a/odoo/addons/base/ir/ir_ui_view.py
+++ b/odoo/addons/base/ir/ir_ui_view.py
@@ -1200,4 +1200,4 @@ actual arch.
try:
self.browse(vid)._check_xml()
except Exception as e:
- self.raise_view_error("Can't validate view:\n%s" % (e.message or repr(e)), vid)
+ self.raise_view_error("Can't validate view:\n%s" % e, vid)
diff --git a/odoo/loglevels.py b/odoo/loglevels.py
index 400f08e1a8f..8c0242867d2 100644
--- a/odoo/loglevels.py
+++ b/odoo/loglevels.py
@@ -92,8 +92,6 @@ def ustr(value, hint_encoding='utf-8', errors='strict'):
def exception_to_unicode(e):
- if (sys.version_info[:2] < (2,6)) and hasattr(e, 'message'):
- return ustr(e.message)
if hasattr(e, 'args'):
return "\n".join((ustr(a) for a in e.args))
try:
diff --git a/odoo/service/wsgi_server.py b/odoo/service/wsgi_server.py
index afcac829856..46c589157c1 100644
--- a/odoo/service/wsgi_server.py
+++ b/odoo/service/wsgi_server.py
@@ -85,17 +85,12 @@ def xmlrpc_handle_exception_int(e):
fault = xmlrpclib.Fault(RPC_FAULT_CODE_APPLICATION_ERROR, formatted_info)
response = xmlrpclib.dumps(fault, allow_none=False, encoding=None)
else:
- if hasattr(e, 'message') and e.message == 'AccessDenied': # legacy
- fault = xmlrpclib.Fault(RPC_FAULT_CODE_ACCESS_DENIED, str(e))
- response = xmlrpclib.dumps(fault, allow_none=False, encoding=None)
- #InternalError
- else:
- info = sys.exc_info()
- # Which one is the best ?
- formatted_info = "".join(traceback.format_exception(*info))
- #formatted_info = odoo.tools.exception_to_unicode(e) + '\n' + info
- fault = xmlrpclib.Fault(RPC_FAULT_CODE_APPLICATION_ERROR, formatted_info)
- response = xmlrpclib.dumps(fault, allow_none=None, encoding=None)
+ info = sys.exc_info()
+ # Which one is the best ?
+ formatted_info = "".join(traceback.format_exception(*info))
+ #formatted_info = odoo.tools.exception_to_unicode(e) + '\n' + info
+ fault = xmlrpclib.Fault(RPC_FAULT_CODE_APPLICATION_ERROR, formatted_info)
+ response = xmlrpclib.dumps(fault, allow_none=None, encoding=None)
return response
def xmlrpc_handle_exception_string(e):
@@ -116,7 +111,7 @@ def xmlrpc_handle_exception_string(e):
elif isinstance(e, odoo.exceptions.DeferredException):
info = e.traceback
formatted_info = "".join(traceback.format_exception(*info))
- fault = xmlrpclib.Fault(odoo.tools.ustr(e.message), formatted_info)
+ fault = xmlrpclib.Fault(odoo.tools.ustr(e), formatted_info)
response = xmlrpclib.dumps(fault, allow_none=False, encoding=None)
#InternalError
else:
diff --git a/odoo/tools/xml_utils.py b/odoo/tools/xml_utils.py
index df4c5669644..b7c03a87f53 100644
--- a/odoo/tools/xml_utils.py
+++ b/odoo/tools/xml_utils.py
@@ -13,4 +13,4 @@ def check_with_xsd(tree_or_str, xsd_path):
except etree.DocumentInvalid as xml_errors:
#import UserError only here to avoid circular import statements with tools.func being imported in exceptions.py
from odoo.exceptions import UserError
- raise UserError('\n'.join([e.message for e in xml_errors.error_log]))
+ raise UserError('\n'.join(str(e) for e in xml_errors.error_log))