Mercurial > hg
view mercurial/txnutil.py @ 31827:220d4bffd23e
run-tests: prevent a (glob) declaration from reordering (?) lines
Previously, if a series of optional output lines marked with '(?)' had a (glob)
in one of the first lines, the output would be reordered such that it came last
if none of the lines were output. The (re) declaration wasn't affected, which
was helpful in figuring this out. There were no tests for '(re) (?)' so add
that to make sure everything plays nice.
author | Matt Harbison <matt_harbison@yahoo.com> |
---|---|
date | Wed, 05 Apr 2017 22:00:33 -0400 |
parents | 206532700213 |
children | 2372284d9457 |
line wrap: on
line source
# txnutil.py - transaction related utilities # # Copyright FUJIWARA Katsunori <foozy@lares.dti.ne.jp> and others # # This software may be used and distributed according to the terms of the # GNU General Public License version 2 or any later version. from __future__ import absolute_import import errno from . import ( encoding, ) def mayhavepending(root): '''return whether 'root' may have pending changes, which are visible to this process. ''' return root == encoding.environ.get('HG_PENDING') def trypending(root, vfs, filename, **kwargs): '''Open file to be read according to HG_PENDING environment variable This opens '.pending' of specified 'filename' only when HG_PENDING is equal to 'root'. This returns '(fp, is_pending_opened)' tuple. ''' if mayhavepending(root): try: return (vfs('%s.pending' % filename, **kwargs), True) except IOError as inst: if inst.errno != errno.ENOENT: raise return (vfs(filename, **kwargs), False)