Mercurial > public > mercurial-scm > hg
comparison mercurial/mail.py @ 43506:9f70512ae2cf
cleanup: remove pointless r-prefixes on single-quoted strings
This is the promised second step on single-quoted strings. These had
existed because our source transformer didn't turn r'' into b'', so we
had tagged some strings as r-strings to get "native" strings on both
Pythons. Now that the transformer is gone, we can dispense with this
nonsense.
Methodology:
I ran
hg locate 'set:added() or modified() or clean()' | egrep '.*\.py$' | xargs egrep --color=never -n -- \[\^b\]\[\^a-z\]r\'\[\^\'\\\\\]\*\'\[\^\'\
in an emacs grep-mode buffer, and then used a keyboard macro to
iterate over the results and remove the r prefix as needed.
# skip-blame removing unneeded r prefixes left over from Python 3 migration.
Differential Revision: https://phab.mercurial-scm.org/D7306
author | Augie Fackler <augie@google.com> |
---|---|
date | Fri, 08 Nov 2019 11:19:20 -0800 |
parents | 3b31ee5388f3 |
children | 67b4439c09b2 |
comparison
equal
deleted
inserted
replaced
43505:47fac1692ede | 43506:9f70512ae2cf |
---|---|
92 self.keyfile, | 92 self.keyfile, |
93 self.certfile, | 93 self.certfile, |
94 ui=self._ui, | 94 ui=self._ui, |
95 serverhostname=self._host, | 95 serverhostname=self._host, |
96 ) | 96 ) |
97 self.file = new_socket.makefile(r'rb') | 97 self.file = new_socket.makefile('rb') |
98 return new_socket | 98 return new_socket |
99 | 99 |
100 | 100 |
101 def _pyhastls(): | 101 def _pyhastls(): |
102 """Returns true iff Python has TLS support, false otherwise.""" | 102 """Returns true iff Python has TLS support, false otherwise.""" |
199 def _mbox(mbox, sender, recipients, msg): | 199 def _mbox(mbox, sender, recipients, msg): |
200 '''write mails to mbox''' | 200 '''write mails to mbox''' |
201 fp = open(mbox, b'ab+') | 201 fp = open(mbox, b'ab+') |
202 # Should be time.asctime(), but Windows prints 2-characters day | 202 # Should be time.asctime(), but Windows prints 2-characters day |
203 # of month instead of one. Make them print the same thing. | 203 # of month instead of one. Make them print the same thing. |
204 date = time.strftime(r'%a %b %d %H:%M:%S %Y', time.localtime()) | 204 date = time.strftime('%a %b %d %H:%M:%S %Y', time.localtime()) |
205 fp.write( | 205 fp.write( |
206 b'From %s %s\n' | 206 b'From %s %s\n' |
207 % (encoding.strtolocal(sender), encoding.strtolocal(date)) | 207 % (encoding.strtolocal(sender), encoding.strtolocal(date)) |
208 ) | 208 ) |
209 fp.write(msg) | 209 fp.write(msg) |
401 def addrlistencode(ui, addrs, charsets=None, display=False): | 401 def addrlistencode(ui, addrs, charsets=None, display=False): |
402 '''Turns a list of addresses into a list of RFC-2047 compliant headers. | 402 '''Turns a list of addresses into a list of RFC-2047 compliant headers. |
403 A single element of input list may contain multiple addresses, but output | 403 A single element of input list may contain multiple addresses, but output |
404 always has one address per item''' | 404 always has one address per item''' |
405 for a in addrs: | 405 for a in addrs: |
406 assert isinstance(a, bytes), r'%r unexpectedly not a bytestr' % a | 406 assert isinstance(a, bytes), '%r unexpectedly not a bytestr' % a |
407 if display: | 407 if display: |
408 return [a.strip() for a in addrs if a.strip()] | 408 return [a.strip() for a in addrs if a.strip()] |
409 | 409 |
410 result = [] | 410 result = [] |
411 for name, addr in email.utils.getaddresses( | 411 for name, addr in email.utils.getaddresses( |
434 ep = email.parser.Parser() | 434 ep = email.parser.Parser() |
435 # disable the "universal newlines" mode, which isn't binary safe. | 435 # disable the "universal newlines" mode, which isn't binary safe. |
436 # I have no idea if ascii/surrogateescape is correct, but that's | 436 # I have no idea if ascii/surrogateescape is correct, but that's |
437 # what the standard Python email parser does. | 437 # what the standard Python email parser does. |
438 fp = io.TextIOWrapper( | 438 fp = io.TextIOWrapper( |
439 fp, encoding=r'ascii', errors=r'surrogateescape', newline=chr(10) | 439 fp, encoding='ascii', errors='surrogateescape', newline=chr(10) |
440 ) | 440 ) |
441 try: | 441 try: |
442 return ep.parse(fp) | 442 return ep.parse(fp) |
443 finally: | 443 finally: |
444 fp.detach() | 444 fp.detach() |