# HG changeset patch # User Franz Glasner # Date 1742990440 -3600 # Node ID 0cabc543950573fc60055d17c7ed319028905ef9 # Parent 49ecfff4f319cec54520d597aa76fb2d927eef5b treesum: Remove CRC32Output completely diff -r 49ecfff4f319 -r 0cabc5439505 cutils/treesum.py --- a/cutils/treesum.py Wed Mar 26 12:56:19 2025 +0100 +++ b/cutils/treesum.py Wed Mar 26 13:00:40 2025 +0100 @@ -1243,52 +1243,6 @@ return name -class CRC32Output(object): - - """Wrapper for a minimal binary file contextmanager that calculates - the CRC32 of the written bytes on the fly. - - Also acts as context manager proxy for the given context manager. - - """ - - __slots__ = ("_fp_cm", "_fp", "_crc32") - - def __init__(self, fp_cm): - self._fp_cm = fp_cm - self._fp = None - self.resetdigest() - - def __enter__(self): - assert self._fp is None - self._fp = self._fp_cm.__enter__() - return self - - def __exit__(self, *args): - rv = self._fp_cm.__exit__(*args) - self._fp = None - return rv - - def write(self, what): - self._fp.write(what) - self._crc32.update(what) - - def flush(self): - self._fp.flush() - - def resetdigest(self): - """Reset the current CRC digest""" - self._crc32 = crc32() - - def hexcrcdigest(self): - """ - - :rtype: str - - """ - return self._crc32.hexdigest() - - def normalized_compatible_mode_str(mode): # XXX FIXME: Windows and "executable" modebits = stat.S_IMODE(mode)