##// END OF EJS Templates
mq: use dirstateguard instead of dirstate.invalidate (qrefresh)...
mq: use dirstateguard instead of dirstate.invalidate (qrefresh) Before this patch, "mq.queue.refresh()" uses "dirstate.invalidate()" as a kind of "restore .hg/dirstate to the original status" during a failure. 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" during a failure even if "dirstate.write()" is executed before a failure. This patch also removes "beginparentchage()" and "endparentchange()", because "dirstateguard" makes them useless. 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:

r20045:b3684fd2 default
r24997:12f3c714 default
Show More
test-filecache.py.out
60 lines | 1.1 KiB | text/plain | TextLexer
/ tests / test-filecache.py.out
basic:
* neither file exists
creating
* neither file still exists
* empty file x created
creating
* file x changed size
creating
* nothing changed with either file
* file x changed inode
creating
* empty file y created
creating
* file y changed size
creating
* file y changed inode
creating
* both files changed inode
creating
fakeuncacheable:
* neither file exists
creating
* neither file still exists
creating
* empty file x created
creating
* file x changed size
creating
* nothing changed with either file
creating
* file x changed inode
creating
* empty file y created
creating
* file y changed size
creating
* file y changed inode
creating
* both files changed inode
creating
repository tip rolled back to revision -1 (undo commit)
working directory now based on revision -1
repository tip rolled back to revision -1 (undo commit)
working directory now based on revision -1
setbeforeget:
* neither file exists
string set externally
* file x created
creating
string from function
* string set externally again
string 2 set externally
* file y created
creating
string from function