Mercurial > hg
view tests/mocktime.py @ 42659:701341f57ceb stable
curses: do not setlocale() at import time (issue5261)
setlocale() can break date formatting/parsing functions because they are
locale dependent. We should avoid doing setlocale() as possible.
This patch moves setlocale() just before curses.wrapper(), which function
is documented to "initialize curses." I don't know the details about the
curses initialization, but I *think* this would work as well.
Maybe we can extract a curses setup function later.
https://www.mercurial-scm.org/pipermail/mercurial-devel/2019-February/128788.html
author | Yuya Nishihara <yuya@tcha.org> |
---|---|
date | Thu, 25 Jul 2019 21:28:29 +0900 |
parents | 12b355964de8 |
children | 2372284d9457 |
line wrap: on
line source
from __future__ import absolute_import import os import time class mocktime(object): def __init__(self, increment): self.time = 0 self.increment = [float(s) for s in increment.split()] self.pos = 0 def __call__(self): self.time += self.increment[self.pos % len(self.increment)] self.pos += 1 return self.time def uisetup(ui): time.time = mocktime(os.environ.get('MOCKTIME', '0.1'))