mercurial/node.py
author Thomas Arendsen Hein <thomas@intevation.de>
Fri, 08 Sep 2006 09:36:18 +0200
changeset 3072 bc3fe3b5b785
parent 2859 345bac2bc4ec
child 3578 3b4e00cba57a
permissions -rw-r--r--
Never apply string formatting to generated errors with util.Abort. Otherwise error messages containing % chars yield errors or worse. Fixed (hopefully) all users of util.Abort.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
1089
142b5d5ec9cc Break apart hg.py
mpm@selenic.com
parents:
diff changeset
     1
"""
142b5d5ec9cc Break apart hg.py
mpm@selenic.com
parents:
diff changeset
     2
node.py - basic nodeid manipulation for mercurial
142b5d5ec9cc Break apart hg.py
mpm@selenic.com
parents:
diff changeset
     3
2859
345bac2bc4ec update copyrights.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 2470
diff changeset
     4
Copyright 2005, 2006 Matt Mackall <mpm@selenic.com>
1089
142b5d5ec9cc Break apart hg.py
mpm@selenic.com
parents:
diff changeset
     5
142b5d5ec9cc Break apart hg.py
mpm@selenic.com
parents:
diff changeset
     6
This software may be used and distributed according to the terms
142b5d5ec9cc Break apart hg.py
mpm@selenic.com
parents:
diff changeset
     7
of the GNU General Public License, incorporated herein by reference.
142b5d5ec9cc Break apart hg.py
mpm@selenic.com
parents:
diff changeset
     8
"""
142b5d5ec9cc Break apart hg.py
mpm@selenic.com
parents:
diff changeset
     9
2470
fe1689273f84 use demandload more.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 1541
diff changeset
    10
from demandload import demandload
fe1689273f84 use demandload more.
Vadim Gelfer <vadim.gelfer@gmail.com>
parents: 1541
diff changeset
    11
demandload(globals(), "binascii")
1089
142b5d5ec9cc Break apart hg.py
mpm@selenic.com
parents:
diff changeset
    12
142b5d5ec9cc Break apart hg.py
mpm@selenic.com
parents:
diff changeset
    13
nullid = "\0" * 20
142b5d5ec9cc Break apart hg.py
mpm@selenic.com
parents:
diff changeset
    14
142b5d5ec9cc Break apart hg.py
mpm@selenic.com
parents:
diff changeset
    15
def hex(node):
142b5d5ec9cc Break apart hg.py
mpm@selenic.com
parents:
diff changeset
    16
    return binascii.hexlify(node)
142b5d5ec9cc Break apart hg.py
mpm@selenic.com
parents:
diff changeset
    17
142b5d5ec9cc Break apart hg.py
mpm@selenic.com
parents:
diff changeset
    18
def bin(node):
142b5d5ec9cc Break apart hg.py
mpm@selenic.com
parents:
diff changeset
    19
    return binascii.unhexlify(node)
142b5d5ec9cc Break apart hg.py
mpm@selenic.com
parents:
diff changeset
    20
142b5d5ec9cc Break apart hg.py
mpm@selenic.com
parents:
diff changeset
    21
def short(node):
142b5d5ec9cc Break apart hg.py
mpm@selenic.com
parents:
diff changeset
    22
    return hex(node[:6])