##// END OF EJS Templates
sparse: reliably avoid writing to store without a lock...
sparse: reliably avoid writing to store without a lock With the code as written before this patch we can still end up writing to store in `debugsparse`. Obviously we'll write to it if by accident a store requirement is modified, but more importantly we write to it if another concurrent transaction modifies the requirements file on disk. We can't rule this out since we're not holding the store lock, so it's better to explicitly pass a permission to write instead of inferring it based on file contents.

File last commit:

r49730:6000f5b2 default
r52699:95cdc01f default
Show More
mergeutil.py
18 lines | 463 B | text/x-python | PythonLexer
Augie Fackler
checkunresolved: move to new package to help avoid import cycles...
r30494 # mergeutil.py - help for merge processing in mercurial
#
Raphaël Gomès
contributor: change mentions of mpm to olivia...
r47575 # Copyright 2005-2007 Olivia Mackall <olivia@selenic.com>
Augie Fackler
checkunresolved: move to new package to help avoid import cycles...
r30494 #
# This software may be used and distributed according to the terms of the
# GNU General Public License version 2 or any later version.
from .i18n import _
Augie Fackler
formatting: blacken the codebase...
r43346 from . import error
Augie Fackler
checkunresolved: move to new package to help avoid import cycles...
r30494
def checkunresolved(ms):
Augie Fackler
cleanup: use mergestate.unresolvedcount() instead of bool(list(unresolved()))...
r47070 if ms.unresolvedcount():
Martin von Zweigbergk
errors: raise StateError when there are unresolves merge conflicts...
r46528 raise error.StateError(
Martin von Zweigbergk
cleanup: join string literals that are already on one line...
r43387 _(b"unresolved merge conflicts (see 'hg help resolve')")
Augie Fackler
formatting: blacken the codebase...
r43346 )