Non-member post from invalid address throws mailman.interfaces.address.InvalidEmailAddressError and shunts message.
In processing a post from a nonmember and trying to create an address
record for the non-member, we get the following
Apr 14 15:22:23 2016 (22482) Uncaught runner exception: yeah1.in@tingame247
Apr 14 15:22:23 2016 (22482) Traceback (most recent call last):
File "/usr/local/lib/python3.4/dist-packages/mailman-3.1.0-py3.4.egg/mailman/core/runner.py", line 161, in _one_iteration
self._process_one_file(msg, msgdata)
File "/usr/local/lib/python3.4/dist-packages/mailman-3.1.0-py3.4.egg/mailman/core/runner.py", line 254, in _process_one_file
keepqueued = self._dispose(mlist, msg, msgdata)
File "/usr/local/lib/python3.4/dist-packages/mailman-3.1.0-py3.4.egg/mailman/runners/incoming.py", line 52, in _dispose
user_manager.create_address(sender)
File "/usr/local/lib/python3.4/dist-packages/mailman-3.1.0-py3.4.egg/mailman/database/transaction.py", line 85, in wrapper
return function(args[0], config.db.store, *args[1:], **kws)
File "/usr/local/lib/python3.4/dist-packages/mailman-3.1.0-py3.4.egg/mailman/model/usermanager.py", line 116, in create_address
address = Address(email, display_name)
File "<string>", line 4, in __init__
File "/usr/local/lib/python3.4/dist-packages/SQLAlchemy-1.0.12-py3.4-linux-x86_64.egg/sqlalchemy/orm/state.py", line 306, in _initialize_instance
manager.dispatch.init_failure(self, args, kwargs)
File "/usr/local/lib/python3.4/dist-packages/SQLAlchemy-1.0.12-py3.4-linux-x86_64.egg/sqlalchemy/util/langhelpers.py", line 60, in __exit__
compat.reraise(exc_type, exc_value, exc_tb)
File "/usr/local/lib/python3.4/dist-packages/SQLAlchemy-1.0.12-py3.4-linux-x86_64.egg/sqlalchemy/util/compat.py", line 184, in reraise
raise value
File "/usr/local/lib/python3.4/dist-packages/SQLAlchemy-1.0.12-py3.4-linux-x86_64.egg/sqlalchemy/orm/state.py", line 303, in _initialize_instance
return manager.original_init(*mixed[1:], **kwargs)
File "/usr/local/lib/python3.4/dist-packages/mailman-3.1.0-py3.4.egg/mailman/model/address.py", line 55, in __init__
getUtility(IEmailValidator).validate(email)
File "/usr/local/lib/python3.4/dist-packages/mailman-3.1.0-py3.4.egg/mailman/email/validate.py", line 60, in validate
raise InvalidEmailAddressError(email)
mailman.interfaces.address.InvalidEmailAddressError: yeah1.in@tingame247
Apr 14 15:22:23 2016 (22482) SHUNTING: 1460647343.461715+caff126e87dfc011b7b64323def1f315a4660b58
This situation should be handled more gracefully.