hgkw/updatekw.py
author Christian Ebert <blacktrash@gmx.net>
Thu, 14 Dec 2006 08:57:40 +0100
branchupdatehook
changeset 5 85d1f5bf7cfc
child 19 d1f478aa61c5
permissions -rw-r--r--
updatehook branch: add kwexpander and updatekw modules WARNING: Do not use this branch for production! Update hook changes to working directory are detected by hg. The only /hook/ to escape hg's attention seems to be pretxcommit. And that probably only due to bug. Kept branch for archiving purposes.

# $Hg: updatekw.py,v$

from hgkw import kwexpander

def updatekw(ui=None, repo=None, hooktype='', **args):
    '''Important: returns False on success, True on failure.'''

    if not ui or not repo or hooktype != 'update':
        # bail out with error
        return True

    parent1 = repo.dirstate.parents()[0]
    node = repo.changectx(parent1)

    (modified, added, removed, deleted,
            unknown, ignored, clean) = repo.status(node1=parent1)

    candidates = modified + added + clean

    return kwexpander.expandkw(ui, repo, parent1, node, candidates)