annotate mercurial/node.py @ 1980:dfb796786337

use HG10UN header for uncompressed bundle - use HG10UN instead of HG11 for uncompressed bundles header - check HG10BZ for compressed bundle - better error handling for invalid header some notes: - people who created uncompressed bundle will no longer be able to use them (it could be fixed with hand-editing) - older hg cannot detect an uncompressed bundle (bzip2 decompression will fail).
author Benoit Boissinot <benoit.boissinot@ens-lyon.org>
date Tue, 21 Mar 2006 06:03:33 +0100
parents bf4e7ef08741
children fe1689273f84
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
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
142b5d5ec9cc Break apart hg.py
mpm@selenic.com
parents:
diff changeset
4 Copyright 2005 Matt Mackall <mpm@selenic.com>
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
1541
bf4e7ef08741 fixed some stuff pychecker shows, marked unclear/wrong stuff with XXX
twaldmann@thinkmo.de
parents: 1091
diff changeset
10 import binascii
1089
142b5d5ec9cc Break apart hg.py
mpm@selenic.com
parents:
diff changeset
11
142b5d5ec9cc Break apart hg.py
mpm@selenic.com
parents:
diff changeset
12 nullid = "\0" * 20
142b5d5ec9cc Break apart hg.py
mpm@selenic.com
parents:
diff changeset
13
142b5d5ec9cc Break apart hg.py
mpm@selenic.com
parents:
diff changeset
14 def hex(node):
142b5d5ec9cc Break apart hg.py
mpm@selenic.com
parents:
diff changeset
15 return binascii.hexlify(node)
142b5d5ec9cc Break apart hg.py
mpm@selenic.com
parents:
diff changeset
16
142b5d5ec9cc Break apart hg.py
mpm@selenic.com
parents:
diff changeset
17 def bin(node):
142b5d5ec9cc Break apart hg.py
mpm@selenic.com
parents:
diff changeset
18 return binascii.unhexlify(node)
142b5d5ec9cc Break apart hg.py
mpm@selenic.com
parents:
diff changeset
19
142b5d5ec9cc Break apart hg.py
mpm@selenic.com
parents:
diff changeset
20 def short(node):
142b5d5ec9cc Break apart hg.py
mpm@selenic.com
parents:
diff changeset
21 return hex(node[:6])