mercurial/node.py
author Pierre-Yves David <pierre-yves.david@ens-lyon.org>
Tue, 16 Oct 2012 23:12:07 +0200
changeset 17802 a421459b83c0
parent 10263 25e572394f5c
child 25737 1a5211f2f87f
permissions -rw-r--r--
test: use proper subclassing in `test-issue2137.t`. To use changelog filtering on the repository, we plan to use "proxy" object that perfectly mock a repository but with a filtered changelog. Altering the `repo.commit` function using `extensions.wrapfunction` will prevent the logic to propagate to the proxy class by the mean of inheritance. We changes the extension to use subclassing as expectable.

# node.py - basic nodeid manipulation for mercurial
#
# Copyright 2005, 2006 Matt Mackall <mpm@selenic.com>
#
# This software may be used and distributed according to the terms of the
# GNU General Public License version 2 or any later version.

import binascii

nullrev = -1
nullid = "\0" * 20

# This ugly style has a noticeable effect in manifest parsing
hex = binascii.hexlify
bin = binascii.unhexlify

def short(node):
    return hex(node[:6])