Mercurial > public > mercurial-scm > hg
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, |