##// END OF EJS Templates
zstandard: vendor python-zstandard 0.10.1...
zstandard: vendor python-zstandard 0.10.1 This was just released. The upstream source distribution from PyPI was extracted. Unwanted files were removed. The clang-format ignore list was updated to reflect the new source of files. setup.py was updated to pass a new argument to python-zstandard's function for returning an Extension instance. Upstream had to change to use relative paths because Python 3.7's packaging doesn't seem to like absolute paths when defining sources, includes, etc. The default relative path calculation is relative to setup_zstd.py which is different from the directory of Mercurial's setup.py. The project contains a vendored copy of zstandard 1.3.6. The old version was 1.3.4. The API should be backwards compatible and nothing in core should need adjusted. However, there is a new "chunker" API that we may find useful in places where we want to emit compressed chunks of a fixed size. There are a pair of bug fixes in 0.10.0 with regards to compressobj() and decompressobj() when block flushing is used. I actually found these bugs when introducing these APIs in Mercurial! But existing Mercurial code is not affected because we don't perform block flushing. # no-check-commit because 3rd party code has different style guidelines Differential Revision: https://phab.mercurial-scm.org/D4911

File last commit:

r40157:73fef626 default
r40157:73fef626 default
Show More
test_module_attributes.py
64 lines | 1.8 KiB | text/x-python | PythonLexer
Gregory Szorc
zstd: vendor python-zstandard 0.5.0...
r30435 from __future__ import unicode_literals
Gregory Szorc
zstandard: vendor python-zstandard 0.9.0...
r37513 import unittest
Gregory Szorc
zstd: vendor python-zstandard 0.5.0...
r30435
Gregory Szorc
zstandard: vendor python-zstandard 0.9.0...
r37513 import zstandard as zstd
Gregory Szorc
zstd: vendor python-zstandard 0.5.0...
r30435
Gregory Szorc
zstd: vendor python-zstandard 0.7.0...
r30895 from . common import (
make_cffi,
)
@make_cffi
Gregory Szorc
zstd: vendor python-zstandard 0.5.0...
r30435 class TestModuleAttributes(unittest.TestCase):
def test_version(self):
Gregory Szorc
zstandard: vendor python-zstandard 0.10.1...
r40157 self.assertEqual(zstd.ZSTD_VERSION, (1, 3, 6))
self.assertEqual(zstd.__version__, '0.10.1')
Gregory Szorc
zstd: vendor python-zstandard 0.5.0...
r30435
def test_constants(self):
self.assertEqual(zstd.MAX_COMPRESSION_LEVEL, 22)
self.assertEqual(zstd.FRAME_HEADER, b'\x28\xb5\x2f\xfd')
def test_hasattr(self):
attrs = (
Gregory Szorc
zstandard: vendor python-zstandard 0.9.0...
r37513 'CONTENTSIZE_UNKNOWN',
'CONTENTSIZE_ERROR',
Gregory Szorc
zstd: vendor python-zstandard 0.5.0...
r30435 'COMPRESSION_RECOMMENDED_INPUT_SIZE',
'COMPRESSION_RECOMMENDED_OUTPUT_SIZE',
'DECOMPRESSION_RECOMMENDED_INPUT_SIZE',
'DECOMPRESSION_RECOMMENDED_OUTPUT_SIZE',
'MAGIC_NUMBER',
Gregory Szorc
zstandard: vendor python-zstandard 0.10.1...
r40157 'BLOCKSIZELOG_MAX',
'BLOCKSIZE_MAX',
Gregory Szorc
zstd: vendor python-zstandard 0.5.0...
r30435 'WINDOWLOG_MIN',
'WINDOWLOG_MAX',
'CHAINLOG_MIN',
'CHAINLOG_MAX',
'HASHLOG_MIN',
'HASHLOG_MAX',
'HASHLOG3_MAX',
'SEARCHLOG_MIN',
'SEARCHLOG_MAX',
'SEARCHLENGTH_MIN',
'SEARCHLENGTH_MAX',
'TARGETLENGTH_MIN',
Gregory Szorc
zstandard: vendor python-zstandard 0.10.1...
r40157 'TARGETLENGTH_MAX',
Gregory Szorc
zstandard: vendor python-zstandard 0.9.0...
r37513 'LDM_MINMATCH_MIN',
'LDM_MINMATCH_MAX',
'LDM_BUCKETSIZELOG_MAX',
Gregory Szorc
zstd: vendor python-zstandard 0.5.0...
r30435 'STRATEGY_FAST',
'STRATEGY_DFAST',
'STRATEGY_GREEDY',
'STRATEGY_LAZY',
'STRATEGY_LAZY2',
'STRATEGY_BTLAZY2',
'STRATEGY_BTOPT',
Gregory Szorc
zstandard: vendor python-zstandard 0.9.0...
r37513 'STRATEGY_BTULTRA',
'DICT_TYPE_AUTO',
'DICT_TYPE_RAWCONTENT',
'DICT_TYPE_FULLDICT',
Gregory Szorc
zstd: vendor python-zstandard 0.5.0...
r30435 )
for a in attrs:
Gregory Szorc
zstd: vendor python-zstandard 0.7.0...
r30895 self.assertTrue(hasattr(zstd, a), a)