hgkw/updatekw.py
author Christian Ebert <blacktrash@gmx.net>
Mon, 18 Dec 2006 01:42:06 +0100
branchupdatehook
changeset 30 bc3bdd329831
parent 28 c7f5821f3513
child 32 b70b38b15fa4
permissions -rw-r--r--
Test for binary

# $Hg$

import kwexpander

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

    if hooktype != 'update':
        # bail out with error
        return True

    n1, n2 = args['parent1'], args['parent2']
    r1 = repo.changelog.lookup(n1)
    if n2:
        r2 = repo.changelog.lookup(n2)
        # next line for debugging only (check merges)
        ui.warn('parent2: %s\n' % n2)
    else:
        r2 = None

    (modified, added, removed, deleted,
            unknown, ignored, clean) = repo.status(node1=r1, node2=r2)
    candidates = modified + added + clean

    if  candidates:
        return kwexpander.expandkw(ui, repo, r1, n1, candidates, update=True)