##// END OF EJS Templates
mq: use dirstateguard instead of dirstate.invalidate (qpush)...
mq: use dirstateguard instead of dirstate.invalidate (qpush) Before this patch, "mq.queue.apply()" uses "dirstate.invalidate()" as a kind of "restore .hg/dirstate to the original status" during afailure. But it just discards changes in memory, and doesn't actually restore ".hg/dirstate". Then, it can't work as expected, if "dirstate.write()" is executed while processing. This patch uses "dirstateguard" instead of "dirstate.invalidate()" to restore ".hg/dirstate" at failure even if "dirstate.write()" is executed before failure. This is a part of preparations to fix the issue that the recent (in memory) dirstate isn't visible to external processes (e.g. "precommit" hook).

File last commit:

r24505:031947ba default
r24996:58308dde default
Show More
sitecustomize.py
16 lines | 510 B | text/x-python | PythonLexer
Gregory Szorc
run-tests: collect aggregate code coverage...
r24505 import os
if os.environ.get('COVERAGE_PROCESS_START'):
try:
import coverage
import random
# uuid is better, but not available in Python 2.4.
covpath = os.path.join(os.environ['COVERAGE_DIR'],
'cov.%s' % random.randrange(0, 1000000000000))
cov = coverage.coverage(data_file=covpath, auto_data=True)
cov._warn_no_data = False
cov._warn_unimported_source = False
cov.start()
except ImportError:
pass