# HG changeset patch # User Yuya Nishihara # Date 1506508061 -32400 # Node ID b76937fafe8aad2c0e2bba23b1d129bdaa41e48e # Parent 7508a7dc95c1a22a882f6cd05083ca469991edc8 py3: work around bytes/unicode divergence in parsedate() diff -r 7508a7dc95c1 -r b76937fafe8a mercurial/util.py --- a/mercurial/util.py Wed Sep 27 19:13:43 2017 +0900 +++ b/mercurial/util.py Wed Sep 27 19:27:41 2017 +0900 @@ -2056,12 +2056,12 @@ The date may be a "unixtime offset" string or in one of the specified formats. If the date already is a (unixtime, offset) tuple, it is returned. - >>> parsedate(b' today ') == parsedate(\ - datetime.date.today().strftime('%b %d')) + >>> parsedate(b' today ') == parsedate( + ... datetime.date.today().strftime('%b %d').encode('ascii')) True - >>> parsedate(b'yesterday ') == parsedate((datetime.date.today() -\ - datetime.timedelta(days=1)\ - ).strftime('%b %d')) + >>> parsedate(b'yesterday ') == parsedate( + ... (datetime.date.today() - datetime.timedelta(days=1) + ... ).strftime('%b %d').encode('ascii')) True >>> now, tz = makedate() >>> strnow, strtz = parsedate(b'now') @@ -2083,10 +2083,12 @@ if date == 'now' or date == _('now'): return makedate() if date == 'today' or date == _('today'): - date = datetime.date.today().strftime('%b %d') + date = datetime.date.today().strftime(r'%b %d') + date = encoding.strtolocal(date) elif date == 'yesterday' or date == _('yesterday'): date = (datetime.date.today() - - datetime.timedelta(days=1)).strftime('%b %d') + datetime.timedelta(days=1)).strftime(r'%b %d') + date = encoding.strtolocal(date) try: when, offset = map(int, date.split(' ')) diff -r 7508a7dc95c1 -r b76937fafe8a tests/test-doctest.py --- a/tests/test-doctest.py Wed Sep 27 19:13:43 2017 +0900 +++ b/tests/test-doctest.py Wed Sep 27 19:27:41 2017 +0900 @@ -69,7 +69,7 @@ testmod('mercurial.templater') testmod('mercurial.ui') testmod('mercurial.url') -testmod('mercurial.util', py3=False) # py3: multiple bytes/unicode issues +testmod('mercurial.util') testmod('mercurial.util', testtarget='platform') testmod('hgext.convert.convcmd') testmod('hgext.convert.cvsps')