Hello community, here is the log from the commit of package python-lz4 for openSUSE:Factory checked in at 2019-02-08 12:15:15 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Comparing /work/SRC/openSUSE:Factory/python-lz4 (Old) and /work/SRC/openSUSE:Factory/.python-lz4.new.28833 (New) ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Package is "python-lz4" Fri Feb 8 12:15:15 2019 rev:4 rq:672551 version:2.1.6 Changes: -------- --- /work/SRC/openSUSE:Factory/python-lz4/python-lz4.changes 2018-11-08 09:47:33.981165039 +0100 +++ /work/SRC/openSUSE:Factory/.python-lz4.new.28833/python-lz4.changes 2019-02-08 12:15:21.893425195 +0100 @@ -1,0 +2,26 @@ +Thu Feb 7 18:37:13 UTC 2019 - Todd R <toddrme2...@gmail.com> + +- Disable tests. They timeout randomly. + +------------------------------------------------------------------- +Tue Feb 5 18:37:24 UTC 2019 - Todd R <toddrme2...@gmail.com> + +- Version update to 2.1.6 + * This release contains no user facing changes, but does include a built wheel built for Python 2.7 on OSX. + * This release follows some re-working of the CI/CD infrastructure, and integration with the codecov service. +- Version update to 2.1.5 + * This release contains no functional changes other than changes to the Appveyor configuration for publishing wheels. +- Version update to 2.1.4 + * This release contains no functional changes other than changes to the Travis configuration for publishing wheels. +- Version update to 2.1.3 + * A simplification of the tox.ini file (thanks to @jdufresne) + * More robust checking for pkgconfig availability (#158, thanks to @raymondEhlers) + * Integration of cibuildwheel into travis builds so as to build and publish binary wheels for Linux and OSX (fixes #99 , #144 , #153) + * Only require pytest-runner if pytest/test is being called (fixes #161) + * Blacklists version 3.3.0 of pytest which has a bug that can cause the tests to fail. +- Version update to 2.1.2 + * Improves the speed of importing the module by avoiding the use of pkg_resources (#154) - thanks to @cgohike) + * Fixes some flake8 warnings + * Resolves a small issue with the test suite when detecting memory usage increases + +------------------------------------------------------------------- Old: ---- lz4-2.1.1.tar.gz New: ---- lz4-2.1.6.tar.gz ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ Other differences: ------------------ ++++++ python-lz4.spec ++++++ --- /var/tmp/diff_new_pack.kgyi8s/_old 2019-02-08 12:15:22.689424897 +0100 +++ /var/tmp/diff_new_pack.kgyi8s/_new 2019-02-08 12:15:22.689424897 +0100 @@ -1,7 +1,7 @@ # # spec file for package python-lz4 # -# Copyright (c) 2018 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2019 SUSE LINUX GmbH, Nuernberg, Germany. # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -17,35 +17,36 @@ %{?!python_module:%define python_module() python-%{**} python3-%{**}} -%define modname lz4 -Name: python-%{modname} -Version: 2.1.1 +Name: python-lz4 +Version: 2.1.6 Release: 0 Summary: LZ4 Bindings for Python License: BSD-3-Clause Group: Development/Languages/Python URL: https://github.com/python-lz4/python-lz4 -Source: https://files.pythonhosted.org/packages/source/l/lz4/%{modname}-%{version}.tar.gz +Source: https://files.pythonhosted.org/packages/source/l/lz4/lz4-%{version}.tar.gz BuildRequires: %{python_module devel} BuildRequires: %{python_module pkgconfig} BuildRequires: %{python_module psutil} -BuildRequires: %{python_module pytest-runner} BuildRequires: %{python_module pytest} -BuildRequires: %{python_module setuptools_scm} +BuildRequires: %{python_module pytest-cov} +BuildRequires: %{python_module pytest-runner} BuildRequires: %{python_module setuptools} -Requires: python-psutil +BuildRequires: %{python_module setuptools_scm} +BuildRequires: fdupes BuildRequires: python-rpm-macros BuildRequires: python2-future +Requires: python-psutil %ifpython2 Requires: python2-future %endif %python_subpackages %description -This package provides python bindings for the lz4 compression library +This package provides python bindings for the lz4 compression library. %prep -%setup -q -n %{modname}-%{version} +%setup -q -n lz4-%{version} # do not set -O3 sed -i -e '/-O3/d' setup.py @@ -55,14 +56,17 @@ %install %python_install +%python_expand %fdupes %{buildroot}%{$python_sitearch} -%check -%python_exec setup.py test +# Tests timeout +# %%check +# export CFLAGS="%%{optflags}" +# %%python_exec setup.py test %files %{python_files} %license LICENSE %doc README.rst -%{python_sitearch}/%{modname}/ -%{python_sitearch}/%{modname}-%{version}-py*.egg-info/ +%{python_sitearch}/lz4/ +%{python_sitearch}/lz4-%{version}-py*.egg-info/ %changelog ++++++ lz4-2.1.1.tar.gz -> lz4-2.1.6.tar.gz ++++++ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lz4-2.1.1/PKG-INFO new/lz4-2.1.6/PKG-INFO --- old/lz4-2.1.1/PKG-INFO 2018-10-13 13:49:16.000000000 +0200 +++ new/lz4-2.1.6/PKG-INFO 2018-12-19 17:47:50.000000000 +0100 @@ -1,6 +1,6 @@ Metadata-Version: 2.1 Name: lz4 -Version: 2.1.1 +Version: 2.1.6 Summary: LZ4 Bindings for Python Home-page: https://github.com/python-lz4/python-lz4 Author: Jonathan Underwood @@ -25,6 +25,11 @@ :target: https://readthedocs.org/projects/python-lz4/ :alt: Documentation + .. image:: https://codecov.io/gh/python-lz4/python-lz4/branch/codecov/graph/badge.svg + :target: https://codecov.io/gh/python-lz4/python-lz4 + :alt: CodeCov + + Introduction ============ This package provides python bindings for the `LZ4 compression library @@ -83,5 +88,6 @@ Classifier: Programming Language :: Python :: 3.6 Classifier: Programming Language :: Python :: 3.7 Requires-Python: >=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.* -Provides-Extra: flake8 +Provides-Extra: docs Provides-Extra: tests +Provides-Extra: flake8 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lz4-2.1.1/README.rst new/lz4-2.1.6/README.rst --- old/lz4-2.1.1/README.rst 2018-10-13 13:45:30.000000000 +0200 +++ new/lz4-2.1.6/README.rst 2018-12-19 17:43:32.000000000 +0100 @@ -17,6 +17,11 @@ :target: https://readthedocs.org/projects/python-lz4/ :alt: Documentation +.. image:: https://codecov.io/gh/python-lz4/python-lz4/branch/codecov/graph/badge.svg + :target: https://codecov.io/gh/python-lz4/python-lz4 + :alt: CodeCov + + Introduction ============ This package provides python bindings for the `LZ4 compression library diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lz4-2.1.1/lz4/__init__.py new/lz4-2.1.6/lz4/__init__.py --- old/lz4-2.1.1/lz4/__init__.py 2018-10-13 13:45:30.000000000 +0200 +++ new/lz4-2.1.6/lz4/__init__.py 2018-12-19 17:43:32.000000000 +0100 @@ -1,10 +1,16 @@ -from pkg_resources import get_distribution, DistributionNotFound -try: - __version__ = get_distribution(__name__).version -except DistributionNotFound: - # package is not installed - pass +# Although the canonical way to get the package version is using pkg_resources +# as below, this turns out to be very slow on systems with lots of packages. +# So, until that is remedied, we'll import the version from a local file +# created by setuptools_scm. +# from pkg_resources import get_distribution, DistributionNotFound +# try: +# __version__ = get_distribution(__name__).version +# except DistributionNotFound: +# # package is not installed +# pass + +from .version import version as __version__ VERSION = __version__ diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lz4-2.1.1/lz4/frame/_compression.py new/lz4-2.1.6/lz4/frame/_compression.py --- old/lz4-2.1.1/lz4/frame/_compression.py 2018-10-13 13:45:30.000000000 +0200 +++ new/lz4-2.1.6/lz4/frame/_compression.py 2018-12-19 17:43:32.000000000 +0100 @@ -87,8 +87,9 @@ # return any data. In this case, try again after reading another block. while True: if self._decompressor.eof: - rawblock = (self._decompressor.unused_data or - self._fp.read(BUFFER_SIZE)) + rawblock = ( + self._decompressor.unused_data or self._fp.read(BUFFER_SIZE) + ) if not rawblock: break # Continue to next stream. diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lz4-2.1.1/lz4/version.py new/lz4-2.1.6/lz4/version.py --- old/lz4-2.1.1/lz4/version.py 2018-10-13 13:49:16.000000000 +0200 +++ new/lz4-2.1.6/lz4/version.py 2018-12-19 17:47:49.000000000 +0100 @@ -1,4 +1,4 @@ # coding: utf-8 # file generated by setuptools_scm # don't change, don't track in version control -version = '2.1.1' +version = '2.1.6' diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lz4-2.1.1/lz4.egg-info/PKG-INFO new/lz4-2.1.6/lz4.egg-info/PKG-INFO --- old/lz4-2.1.1/lz4.egg-info/PKG-INFO 2018-10-13 13:49:16.000000000 +0200 +++ new/lz4-2.1.6/lz4.egg-info/PKG-INFO 2018-12-19 17:47:49.000000000 +0100 @@ -1,6 +1,6 @@ Metadata-Version: 2.1 Name: lz4 -Version: 2.1.1 +Version: 2.1.6 Summary: LZ4 Bindings for Python Home-page: https://github.com/python-lz4/python-lz4 Author: Jonathan Underwood @@ -25,6 +25,11 @@ :target: https://readthedocs.org/projects/python-lz4/ :alt: Documentation + .. image:: https://codecov.io/gh/python-lz4/python-lz4/branch/codecov/graph/badge.svg + :target: https://codecov.io/gh/python-lz4/python-lz4 + :alt: CodeCov + + Introduction ============ This package provides python bindings for the `LZ4 compression library @@ -83,5 +88,6 @@ Classifier: Programming Language :: Python :: 3.6 Classifier: Programming Language :: Python :: 3.7 Requires-Python: >=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.* -Provides-Extra: flake8 +Provides-Extra: docs Provides-Extra: tests +Provides-Extra: flake8 diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lz4-2.1.1/lz4.egg-info/requires.txt new/lz4-2.1.6/lz4.egg-info/requires.txt --- old/lz4-2.1.1/lz4.egg-info/requires.txt 2018-10-13 13:49:16.000000000 +0200 +++ new/lz4-2.1.6/lz4.egg-info/requires.txt 2018-12-19 17:47:49.000000000 +0100 @@ -1,7 +1,13 @@ +future + +[docs] +sphinx>=1.6.0 +sphinx_bootstrap_theme [flake8] flake8 [tests] -pytest +pytest!=3.3.0 psutil +pytest-cov diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lz4-2.1.1/setup.py new/lz4-2.1.6/setup.py --- old/lz4-2.1.1/setup.py 2018-10-13 13:45:30.000000000 +0200 +++ new/lz4-2.1.6/setup.py 2018-12-19 17:43:32.000000000 +0100 @@ -13,15 +13,17 @@ liblz4_found = False py3c_found = False try: - import pkgconfig + from pkgconfig import installed as pkgconfig_installed + from pkgconfig import cflags as pkgconfig_cflags + from pkgconfig import libs as pkgconfig_libs except ImportError: # pkgconfig is not installed. It will be installed by setup_requires. pass else: - def pkgconfig_installed(lib, required_version, default): + def pkgconfig_installed_check(lib, required_version, default): installed = default try: - installed = pkgconfig.installed(lib, required_version) + installed = pkgconfig_installed(lib, required_version) except EnvironmentError: # Windows, no pkg-config present pass @@ -31,8 +33,8 @@ # Bundled version of liblz4 will be used pass return installed - liblz4_found = pkgconfig_installed('liblz4', LZ4_REQUIRED_VERSION, default=False) - py3c_found = pkgconfig_installed('py3c', PY3C_REQUIRED_VERSION, default=False) + liblz4_found = pkgconfig_installed_check('liblz4', LZ4_REQUIRED_VERSION, default=False) + py3c_found = pkgconfig_installed_check('py3c', PY3C_REQUIRED_VERSION, default=False) # Set up the extension modules. If a system wide lz4 library is found, and is @@ -93,9 +95,9 @@ extra_compile_args = ['/Ot', '/Wall'] elif compiler in ('unix', 'mingw32'): if liblz4_found: - extra_link_args.append(pkgconfig.libs('liblz4')) - if pkgconfig.cflags('liblz4'): - extra_compile_args.append(pkgconfig.cflags('liblz4')) + extra_link_args.append(pkgconfig_libs('liblz4')) + if pkgconfig_cflags('liblz4'): + extra_compile_args.append(pkgconfig_cflags('liblz4')) else: extra_compile_args = [ '-O3', @@ -139,11 +141,18 @@ # refer to it for the tests_require and the extras_require arguments # to setup below. The latter enables us to use pip install .[tests] to # install testing dependencies. +# Note: pytest 3.3.0 contains a bug with null bytes in parameter IDs: +# https://github.com/pytest-dev/pytest/issues/2957 tests_require = [ - 'pytest', + 'pytest!=3.3.0', 'psutil', + 'pytest-cov', ], +# Only require pytest-runner if actually running the tests +needs_pytest = {'pytest', 'test', 'ptr'}.intersection(sys.argv) +pytest_runner = ['pytest-runner'] if needs_pytest else [] + # Finally call setup with the extension modules as defined above. setup( name='lz4', @@ -154,8 +163,7 @@ setup_requires=[ 'setuptools_scm', 'pkgconfig', - 'pytest-runner', - ], + ] + pytest_runner, install_requires=install_requires, description="LZ4 Bindings for Python", long_description=open('README.rst', 'r').read(), @@ -171,6 +179,10 @@ tests_require=tests_require, extras_require={ 'tests': tests_require, + 'docs': [ + 'sphinx >= 1.6.0', + 'sphinx_bootstrap_theme', + ], 'flake8': [ 'flake8', ] diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lz4-2.1.1/tests/block/conftest.py new/lz4-2.1.6/tests/block/conftest.py --- old/lz4-2.1.1/tests/block/conftest.py 2018-10-13 13:45:30.000000000 +0200 +++ new/lz4-2.1.6/tests/block/conftest.py 2018-12-19 17:43:32.000000000 +0100 @@ -92,13 +92,19 @@ return request.param +dictionary = [ + None, + (0, 0), + (100, 200), + (0, 8 * 1024), + os.urandom(8 * 1024) +] + + @pytest.fixture( - params=[ - None, - (0, 0), - (100, 200), - (0, 8 * 1024), - os.urandom(8 * 1024) + params=dictionary, + ids=[ + 'dictionary' + str(i) for i in range(len(dictionary)) ] ) def dictionary(request): diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lz4-2.1.1/tests/block/test_block_1.py new/lz4-2.1.6/tests/block/test_block_1.py --- old/lz4-2.1.1/tests/block/test_block_1.py 2018-10-13 13:45:30.000000000 +0200 +++ new/lz4-2.1.6/tests/block/test_block_1.py 2018-12-19 17:43:32.000000000 +0100 @@ -125,16 +125,25 @@ input_data), dict=dict1) == input_data -def test_known_decompress(): - assert(lz4.block.decompress( - b'\x00\x00\x00\x00\x00') == - b'') - assert(lz4.block.decompress( - b'\x01\x00\x00\x00\x10 ') == - b' ') - assert(lz4.block.decompress( - b'h\x00\x00\x00\xff\x0bLorem ipsum dolor sit amet\x1a\x006P amet') == - b'Lorem ipsum dolor sit amet' * 4) - assert(lz4.block.decompress( - b'\xb0\xb3\x00\x00\xff\x1fExcepteur sint occaecat cupidatat non proident.\x00' + (b'\xff' * 180) + b'\x1ePident') == - b'Excepteur sint occaecat cupidatat non proident' * 1000) +def test_known_decompress_1(): + input = b'\x00\x00\x00\x00\x00' + output = b'' + assert lz4.block.decompress(input) == output + + +def test_known_decompress_2(): + input = b'\x01\x00\x00\x00\x10 ' + output = b' ' + assert lz4.block.decompress(input) == output + + +def test_known_decompress_3(): + input = b'h\x00\x00\x00\xff\x0bLorem ipsum dolor sit amet\x1a\x006P amet' + output = b'Lorem ipsum dolor sit amet' * 4 + assert lz4.block.decompress(input) == output + + +def test_known_decompress_4(): + input = b'\xb0\xb3\x00\x00\xff\x1fExcepteur sint occaecat cupidatat non proident.\x00' + (b'\xff' * 180) + b'\x1ePident' + output = b'Excepteur sint occaecat cupidatat non proident' * 1000 + assert lz4.block.decompress(input) == output diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lz4-2.1.1/tests/frame/test_frame_5.py new/lz4-2.1.6/tests/frame/test_frame_5.py --- old/lz4-2.1.1/tests/frame/test_frame_5.py 2018-10-13 13:45:30.000000000 +0200 +++ new/lz4-2.1.6/tests/frame/test_frame_5.py 2018-12-19 17:43:32.000000000 +0100 @@ -1,6 +1,8 @@ import lz4.frame import pytest +MEM_INCREASE_LIMIT = (1024 * 25) + test_data = [ (b'a' * 1024 * 1024), ] @@ -32,7 +34,7 @@ if prev_snapshot: stats = snapshot.compare_to(prev_snapshot, 'lineno') - assert stats[0].size_diff < (1024 * 15) + assert stats[0].size_diff < MEM_INCREASE_LIMIT prev_snapshot = snapshot @@ -56,7 +58,7 @@ if prev_snapshot: stats = snapshot.compare_to(prev_snapshot, 'lineno') - assert stats[0].size_diff < (1024 * 15) + assert stats[0].size_diff < MEM_INCREASE_LIMIT prev_snapshot = snapshot @@ -79,7 +81,7 @@ if prev_snapshot: stats = snapshot.compare_to(prev_snapshot, 'lineno') - assert stats[0].size_diff < (1024 * 15) + assert stats[0].size_diff < MEM_INCREASE_LIMIT prev_snapshot = snapshot diff -urN '--exclude=CVS' '--exclude=.cvsignore' '--exclude=.svn' '--exclude=.svnignore' old/lz4-2.1.1/tox.ini new/lz4-2.1.6/tox.ini --- old/lz4-2.1.1/tox.ini 2018-10-13 13:45:30.000000000 +0200 +++ new/lz4-2.1.6/tox.ini 2018-12-19 17:43:32.000000000 +0100 @@ -1,20 +1,32 @@ [tox] -envlist = py +envlist = py,flake8,docs +minversion = 2.4.0 [testenv] -deps=.[tests] +extras = tests passenv = * # setenv = PYTHONMALLOC = pymalloc # PYTHONMALLOCSTATS = 'yes' +usedevelop = True commands= - pytest --tb=long -l tests/block/test_block_0.py - pytest --tb=long -l tests/block/test_block_1.py - pytest --tb=long -l tests/block/test_block_2.py - pytest --tb=long -l tests/frame/test_frame_0.py - pytest --tb=long -l tests/frame/test_frame_1.py - pytest --tb=long -l tests/frame/test_frame_2.py - pytest --tb=long -l tests/frame/test_frame_3.py - pytest --tb=long -l tests/frame/test_frame_4.py - pytest --tb=long -l tests/frame/test_frame_5.py - pytest --tb=long -l tests/frame/test_frame_6.py - pytest --tb=long -l tests/frame/test_frame_7.py + pytest --cov=lz4 --tb=long {posargs} + +[pytest] +addopts = -x --tb=long --showlocals + + +[testenv:flake8] +extras = flake8 +passenv = * +commands = + flake8 lz4 setup.py tests + +[flake8] +ignore = E501 + +[testenv:docs] +usedevelop = True +whitelist_externals=make +extras = docs +commands = + make -C docs doctest html \ No newline at end of file