comparison mercurial/revlog.py @ 46852:fbfb1d6d8459

revlog: fix error about unknown compression format in py3 In py2, the error is something like: abort: unknown compression type 'x'! In py3, we get the following unhelpful message: abort: unknown compression type <memory at 0x7f4650b5cdc8>! Switch to something like: abort: unknown compression type 78! Differential Revision: https://phab.mercurial-scm.org/D10318
author Valentin Gatien-Baron <vgatien-baron@janestreet.com>
date Tue, 06 Apr 2021 13:49:19 -0400
parents d4ba4d51f85f
children 34e1fa4b548a
comparison
equal deleted inserted replaced
46851:3aa78f2aea48 46852:fbfb1d6d8459
11 and O(changes) merge between branches. 11 and O(changes) merge between branches.
12 """ 12 """
13 13
14 from __future__ import absolute_import 14 from __future__ import absolute_import
15 15
16 import binascii
16 import collections 17 import collections
17 import contextlib 18 import contextlib
18 import errno 19 import errno
19 import io 20 import io
20 import os 21 import os
2294 try: 2295 try:
2295 engine = util.compengines.forrevlogheader(t) 2296 engine = util.compengines.forrevlogheader(t)
2296 compressor = engine.revlogcompressor(self._compengineopts) 2297 compressor = engine.revlogcompressor(self._compengineopts)
2297 self._decompressors[t] = compressor 2298 self._decompressors[t] = compressor
2298 except KeyError: 2299 except KeyError:
2299 raise error.RevlogError(_(b'unknown compression type %r') % t) 2300 raise error.RevlogError(
2301 _(b'unknown compression type %s') % binascii.hexlify(t)
2302 )
2300 2303
2301 return compressor.decompress(data) 2304 return compressor.decompress(data)
2302 2305
2303 def _addrevision( 2306 def _addrevision(
2304 self, 2307 self,