D3954: mail: cope with Py3 unicode antics on email addresses
Yuya Nishihara
yuya at tcha.org
Tue Jul 17 13:09:56 UTC 2018
> - return email.utils.formataddr((name, addr))
> + return pycompat.bytesurl(
> + email.utils.formataddr((name, addr.decode('ascii'))))
Maybe this would bring unicode to Python 2.
> def addressencode(ui, address, charsets=None, display=False):
> '''Turns address into RFC-2047 compliant header.'''
> if display or not address:
> return address or ''
> - name, addr = email.utils.parseaddr(address)
> + name, addr = email.utils.parseaddr(pycompat.strurl(address))
strurl() is too strict to convert a user input. `encoding.strfromlocal()`
can be used instead.
> result = []
> - for name, addr in email.utils.getaddresses(addrs):
> + for name, addr in email.utils.getaddresses(
> + [pycompat.strurl(a) for a in addrs]):
Same here.
More information about the Mercurial-devel
mailing list