From d039e870ae55fdd3f2ed8017f7734b86f8b9df56 Mon Sep 17 00:00:00 2001 From: Peter Robinson Date: Tue, 10 Nov 2015 15:19:32 +0000 Subject: [PATCH 01/65] - Rebuilt for https://fedoraproject.org/wiki/Changes/python3.5 --- python-blosc.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/python-blosc.spec b/python-blosc.spec index 46bd331..8090125 100644 --- a/python-blosc.spec +++ b/python-blosc.spec @@ -11,7 +11,7 @@ Summary: Python wrapper for the blosc high performance compressor Name: python-%{module} Version: 1.2.7 -Release: 4%{?dist} +Release: 5%{?dist} License: MIT URL: https://github.com/FrancescAlted/python-blosc Source0: https://pypi.python.org/packages/source/b/%{module}/%{module}-%{version}.tar.gz @@ -78,6 +78,9 @@ PYTHONPATH=%{buildroot}%{python3_sitearch} python3 -c 'import sys, blosc; sys.ex %endif %changelog +* Tue Nov 10 2015 Fedora Release Engineering +- Rebuilt for https://fedoraproject.org/wiki/Changes/python3.5 + * Thu Jun 18 2015 Fedora Release Engineering - 1.2.7-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild From b62540ff25012f23b66a640c755f88b8a9a5245c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= Date: Mon, 16 Nov 2015 13:36:38 -0500 Subject: [PATCH 02/65] Update to 1.2.8 --- .gitignore | 1 + ...to-be-specified-when-running-test-su.patch | 34 --------------- 0002-Propagate-the-result-of-tests.patch | 28 ------------- python-blosc.spec | 42 ++++++++++++------- sources | 2 +- 5 files changed, 29 insertions(+), 78 deletions(-) delete mode 100644 0001-Allow-verbosity-to-be-specified-when-running-test-su.patch delete mode 100644 0002-Propagate-the-result-of-tests.patch diff --git a/.gitignore b/.gitignore index 4be21f8..1c4c1bd 100644 --- a/.gitignore +++ b/.gitignore @@ -3,3 +3,4 @@ /blosc-1.2.4.tar.gz /blosc-1.2.5.tar.gz /blosc-1.2.7.tar.gz +/blosc-1.2.8.tar.gz diff --git a/0001-Allow-verbosity-to-be-specified-when-running-test-su.patch b/0001-Allow-verbosity-to-be-specified-when-running-test-su.patch deleted file mode 100644 index e4d13c8..0000000 --- a/0001-Allow-verbosity-to-be-specified-when-running-test-su.patch +++ /dev/null @@ -1,34 +0,0 @@ -From b6c85062b316ecd4606c64b449fe0c8ec5d2a708 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= -Date: Fri, 29 May 2015 13:15:40 -0400 -Subject: [PATCH 1/2] Allow verbosity to be specified when running test suite - ---- - blosc/test.py | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/blosc/test.py b/blosc/test.py -index c7227451d9..0a12fb0107 100644 ---- a/blosc/test.py -+++ b/blosc/test.py -@@ -177,7 +177,7 @@ class TestCodec(unittest.TestCase): - self.assertRaises(TypeError, blosc.unpack_array, 1.0) - - --def run(): -+def run(verbosity=2): - import blosc - import blosc.toplevel - blosc.print_versions() -@@ -187,7 +187,7 @@ def run(): - - # suite = unittest.TestLoader().discover(start_dir='.', pattern='test*.py') - suite.addTests(unittest.TestLoader().loadTestsFromModule(blosc.toplevel)) -- unittest.TextTestRunner(verbosity=2).run(suite) -+ unittest.TextTestRunner(verbosity=verbosity).run(suite) - - - if __name__ == '__main__': --- -2.1.0 - diff --git a/0002-Propagate-the-result-of-tests.patch b/0002-Propagate-the-result-of-tests.patch deleted file mode 100644 index a148166..0000000 --- a/0002-Propagate-the-result-of-tests.patch +++ /dev/null @@ -1,28 +0,0 @@ -From 16688ab07612e4f022b3118e7a18660ffdfcb106 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= -Date: Fri, 29 May 2015 13:16:52 -0400 -Subject: [PATCH] Propagate the result of tests - -This way things like - python -c 'import sys, blosc; sys.exit(blosc.test())' -actually fail if tests fail. ---- - blosc/test.py | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/blosc/test.py b/blosc/test.py -index 0a12fb0107..760db66296 100644 ---- a/blosc/test.py -+++ b/blosc/test.py -@@ -187,7 +187,7 @@ def run(verbosity=2): - - # suite = unittest.TestLoader().discover(start_dir='.', pattern='test*.py') - suite.addTests(unittest.TestLoader().loadTestsFromModule(blosc.toplevel)) -- unittest.TextTestRunner(verbosity=verbosity).run(suite) -+ assert unittest.TextTestRunner(verbosity=verbosity).run(suite).wasSuccessful() - - - if __name__ == '__main__': --- -2.1.0 - diff --git a/python-blosc.spec b/python-blosc.spec index 8090125..3438bd0 100644 --- a/python-blosc.spec +++ b/python-blosc.spec @@ -8,33 +8,41 @@ # Use the same directory of the main package for subpackage licence and docs %global _docdir_fmt %{name} -Summary: Python wrapper for the blosc high performance compressor +Summary: Python wrapper for the Blosc high performance compressor Name: python-%{module} -Version: 1.2.7 -Release: 5%{?dist} +Version: 1.2.8 +Release: 1%{?dist} License: MIT URL: https://github.com/FrancescAlted/python-blosc Source0: https://pypi.python.org/packages/source/b/%{module}/%{module}-%{version}.tar.gz -Patch0: 0001-Allow-verbosity-to-be-specified-when-running-test-su.patch -Patch1: 0002-Propagate-the-result-of-tests.patch BuildRequires: blosc-devel BuildRequires: python2-devel BuildRequires: numpy -Recommends: numpy %description -Python wrapper for the Blosc high performance compressor. +%{summary}. + +%package -n python2-%{module} +Summary: %{summary} + +%{?python_provide:%python_provide python2-blosc} +%{?fedora:Recommends: numpy} + +%description -n python2-%{module} +%{summary}. %if 0%{?with_python3} %package -n python3-%{module} Summary: Python wrapper for the blosc high performance compressor + BuildRequires: python3-devel BuildRequires: python3-numpy -Recommends: python3-numpy +%{?python_provide:%python_provide python3-blosc} +%{?fedora:Recommends: python3-numpy} %description -n python3-%{module} -Python wrapper for the Blosc high performance compressor. +%{summary}. %endif %prep @@ -45,18 +53,18 @@ sed -i "s|CFLAGS\.append(\"-msse2\")|pass|" setup.py %build export BLOSC_DIR=%{_libdir}/blosc CFLAGS="%{optflags}" -%{__python2} setup.py build +%py2_build %if 0%{?with_python3} -%{__python3} setup.py build +%py3_build %endif %install -%{__python2} setup.py install --prefix=%{_prefix} -O1 --skip-build --root=%{buildroot} +%py2_install %if 0%{?with_python3} -%{__python3} setup.py install --prefix=%{_prefix} -O1 --skip-build --root=%{buildroot} +%py3_install %endif -%files +%files -n python2-%{module} %{python2_sitearch}/blosc/ %{python2_sitearch}/blosc-%{version}*-py*.egg-info %license LICENSES/PYTHON-BLOSC.txt @@ -78,7 +86,11 @@ PYTHONPATH=%{buildroot}%{python3_sitearch} python3 -c 'import sys, blosc; sys.ex %endif %changelog -* Tue Nov 10 2015 Fedora Release Engineering +* Mon Nov 16 2015 Zbigniew Jędrzejewski-Szmek - 1.2.8-1 +- Update to latest version (#1263680) +- Add python2 subpackage following the latest guidelines + +* Tue Nov 10 2015 Fedora Release Engineering - 1.2.7-5 - Rebuilt for https://fedoraproject.org/wiki/Changes/python3.5 * Thu Jun 18 2015 Fedora Release Engineering - 1.2.7-4 diff --git a/sources b/sources index 60d53e0..63e3e9a 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -4661af9ef228971d851852fa3c468416 blosc-1.2.7.tar.gz +d7f505adefd46fbdb50c7b608d5cbdf6 blosc-1.2.8.tar.gz From 4738d2417d37240350700265827c9256e4d48da0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= Date: Mon, 16 Nov 2015 13:36:38 -0500 Subject: [PATCH 03/65] Update to 1.2.8 --- .gitignore | 1 + ...to-be-specified-when-running-test-su.patch | 34 ---------------- 0002-Propagate-the-result-of-tests.patch | 28 ------------- python-blosc.spec | 40 ++++++++++++------- sources | 2 +- 5 files changed, 28 insertions(+), 77 deletions(-) delete mode 100644 0001-Allow-verbosity-to-be-specified-when-running-test-su.patch delete mode 100644 0002-Propagate-the-result-of-tests.patch diff --git a/.gitignore b/.gitignore index 4be21f8..1c4c1bd 100644 --- a/.gitignore +++ b/.gitignore @@ -3,3 +3,4 @@ /blosc-1.2.4.tar.gz /blosc-1.2.5.tar.gz /blosc-1.2.7.tar.gz +/blosc-1.2.8.tar.gz diff --git a/0001-Allow-verbosity-to-be-specified-when-running-test-su.patch b/0001-Allow-verbosity-to-be-specified-when-running-test-su.patch deleted file mode 100644 index e4d13c8..0000000 --- a/0001-Allow-verbosity-to-be-specified-when-running-test-su.patch +++ /dev/null @@ -1,34 +0,0 @@ -From b6c85062b316ecd4606c64b449fe0c8ec5d2a708 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= -Date: Fri, 29 May 2015 13:15:40 -0400 -Subject: [PATCH 1/2] Allow verbosity to be specified when running test suite - ---- - blosc/test.py | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/blosc/test.py b/blosc/test.py -index c7227451d9..0a12fb0107 100644 ---- a/blosc/test.py -+++ b/blosc/test.py -@@ -177,7 +177,7 @@ class TestCodec(unittest.TestCase): - self.assertRaises(TypeError, blosc.unpack_array, 1.0) - - --def run(): -+def run(verbosity=2): - import blosc - import blosc.toplevel - blosc.print_versions() -@@ -187,7 +187,7 @@ def run(): - - # suite = unittest.TestLoader().discover(start_dir='.', pattern='test*.py') - suite.addTests(unittest.TestLoader().loadTestsFromModule(blosc.toplevel)) -- unittest.TextTestRunner(verbosity=2).run(suite) -+ unittest.TextTestRunner(verbosity=verbosity).run(suite) - - - if __name__ == '__main__': --- -2.1.0 - diff --git a/0002-Propagate-the-result-of-tests.patch b/0002-Propagate-the-result-of-tests.patch deleted file mode 100644 index a148166..0000000 --- a/0002-Propagate-the-result-of-tests.patch +++ /dev/null @@ -1,28 +0,0 @@ -From 16688ab07612e4f022b3118e7a18660ffdfcb106 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= -Date: Fri, 29 May 2015 13:16:52 -0400 -Subject: [PATCH] Propagate the result of tests - -This way things like - python -c 'import sys, blosc; sys.exit(blosc.test())' -actually fail if tests fail. ---- - blosc/test.py | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/blosc/test.py b/blosc/test.py -index 0a12fb0107..760db66296 100644 ---- a/blosc/test.py -+++ b/blosc/test.py -@@ -187,7 +187,7 @@ def run(verbosity=2): - - # suite = unittest.TestLoader().discover(start_dir='.', pattern='test*.py') - suite.addTests(unittest.TestLoader().loadTestsFromModule(blosc.toplevel)) -- unittest.TextTestRunner(verbosity=verbosity).run(suite) -+ assert unittest.TextTestRunner(verbosity=verbosity).run(suite).wasSuccessful() - - - if __name__ == '__main__': --- -2.1.0 - diff --git a/python-blosc.spec b/python-blosc.spec index 46bd331..c305f3f 100644 --- a/python-blosc.spec +++ b/python-blosc.spec @@ -8,33 +8,41 @@ # Use the same directory of the main package for subpackage licence and docs %global _docdir_fmt %{name} -Summary: Python wrapper for the blosc high performance compressor +Summary: Python wrapper for the Blosc high performance compressor Name: python-%{module} -Version: 1.2.7 -Release: 4%{?dist} +Version: 1.2.8 +Release: 1%{?dist} License: MIT URL: https://github.com/FrancescAlted/python-blosc Source0: https://pypi.python.org/packages/source/b/%{module}/%{module}-%{version}.tar.gz -Patch0: 0001-Allow-verbosity-to-be-specified-when-running-test-su.patch -Patch1: 0002-Propagate-the-result-of-tests.patch BuildRequires: blosc-devel BuildRequires: python2-devel BuildRequires: numpy -Recommends: numpy %description -Python wrapper for the Blosc high performance compressor. +%{summary}. + +%package -n python2-%{module} +Summary: %{summary} + +%{?python_provide:%python_provide python2-blosc} +%{?fedora:Recommends: numpy} + +%description -n python2-%{module} +%{summary}. %if 0%{?with_python3} %package -n python3-%{module} Summary: Python wrapper for the blosc high performance compressor + BuildRequires: python3-devel BuildRequires: python3-numpy -Recommends: python3-numpy +%{?python_provide:%python_provide python3-blosc} +%{?fedora:Recommends: python3-numpy} %description -n python3-%{module} -Python wrapper for the Blosc high performance compressor. +%{summary}. %endif %prep @@ -45,18 +53,18 @@ sed -i "s|CFLAGS\.append(\"-msse2\")|pass|" setup.py %build export BLOSC_DIR=%{_libdir}/blosc CFLAGS="%{optflags}" -%{__python2} setup.py build +%py2_build %if 0%{?with_python3} -%{__python3} setup.py build +%py3_build %endif %install -%{__python2} setup.py install --prefix=%{_prefix} -O1 --skip-build --root=%{buildroot} +%py2_install %if 0%{?with_python3} -%{__python3} setup.py install --prefix=%{_prefix} -O1 --skip-build --root=%{buildroot} +%py3_install %endif -%files +%files -n python2-%{module} %{python2_sitearch}/blosc/ %{python2_sitearch}/blosc-%{version}*-py*.egg-info %license LICENSES/PYTHON-BLOSC.txt @@ -78,6 +86,10 @@ PYTHONPATH=%{buildroot}%{python3_sitearch} python3 -c 'import sys, blosc; sys.ex %endif %changelog +* Mon Nov 16 2015 Zbigniew Jędrzejewski-Szmek - 1.2.8-1 +- Update to latest version (#1263680) +- Add python2 subpackage following the latest guidelines + * Thu Jun 18 2015 Fedora Release Engineering - 1.2.7-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild diff --git a/sources b/sources index 60d53e0..63e3e9a 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -4661af9ef228971d851852fa3c468416 blosc-1.2.7.tar.gz +d7f505adefd46fbdb50c7b608d5cbdf6 blosc-1.2.8.tar.gz From dd20be5f501ec4bc666b02e99989fc201b138ef2 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 4 Feb 2016 19:07:25 +0000 Subject: [PATCH 04/65] - Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild --- python-blosc.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/python-blosc.spec b/python-blosc.spec index 3438bd0..1b88db6 100644 --- a/python-blosc.spec +++ b/python-blosc.spec @@ -11,7 +11,7 @@ Summary: Python wrapper for the Blosc high performance compressor Name: python-%{module} Version: 1.2.8 -Release: 1%{?dist} +Release: 2%{?dist} License: MIT URL: https://github.com/FrancescAlted/python-blosc Source0: https://pypi.python.org/packages/source/b/%{module}/%{module}-%{version}.tar.gz @@ -86,6 +86,9 @@ PYTHONPATH=%{buildroot}%{python3_sitearch} python3 -c 'import sys, blosc; sys.ex %endif %changelog +* Thu Feb 04 2016 Fedora Release Engineering - 1.2.8-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + * Mon Nov 16 2015 Zbigniew Jędrzejewski-Szmek - 1.2.8-1 - Update to latest version (#1263680) - Add python2 subpackage following the latest guidelines From c8e222785c211c023e584ab3823b8bb40dcffae0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= Date: Sat, 13 Feb 2016 19:10:04 -0500 Subject: [PATCH 05/65] Add dependency on psutil and fix build --- 0001-tests-fix-error-with-new-numpy.patch | 35 +++++++++++++++++++++++ python-blosc.spec | 7 +++++ 2 files changed, 42 insertions(+) create mode 100644 0001-tests-fix-error-with-new-numpy.patch diff --git a/0001-tests-fix-error-with-new-numpy.patch b/0001-tests-fix-error-with-new-numpy.patch new file mode 100644 index 0000000..613f7cc --- /dev/null +++ b/0001-tests-fix-error-with-new-numpy.patch @@ -0,0 +1,35 @@ +From b49ff10a169a0c8e862a5dbe0f4b291cef17f9d0 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Sat, 13 Feb 2016 17:35:36 -0500 +Subject: [PATCH] tests: fix error with new numpy + +ERROR: test_pack_array_exceptions (blosc.test.TestCodec) +---------------------------------------------------------------------- +Traceback (most recent call last): + File "/builddir/build/BUILDROOT/python-blosc-1.2.8-2.fc24.i386/usr/lib/python2.7/site-packages/blosc/test.py", line 195, in test_pack_array_exceptions + strides=(8, 0))[0] + File "/usr/lib/python2.7/site-packages/numpy/lib/stride_tricks.py", line 48, in as_strided + array = np.asarray(DummyArray(interface, base=x)) + File "/usr/lib/python2.7/site-packages/numpy/core/numeric.py", line 482, in asarray + return array(a, dtype, copy=False, order=order) +TypeError: 'float' object cannot be interpreted as an index +--- + blosc/test.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/blosc/test.py b/blosc/test.py +index 8bf9c48600..ce96f5ec6f 100644 +--- a/blosc/test.py ++++ b/blosc/test.py +@@ -185,7 +185,7 @@ class TestCodec(unittest.TestCase): + self.assertRaises(TypeError, blosc.pack_array, 'abc') + self.assertRaises(TypeError, blosc.pack_array, 1.0) + +- items = (blosc.BLOSC_MAX_BUFFERSIZE / 8) + 1 ++ items = (blosc.BLOSC_MAX_BUFFERSIZE // 8) + 1 + one = numpy.ones(1, dtype=numpy.int64) + self.assertRaises(ValueError, blosc.pack_array, one, clevel=-1) + self.assertRaises(ValueError, blosc.pack_array, one, clevel=10) +-- +2.5.0 + diff --git a/python-blosc.spec b/python-blosc.spec index 1b88db6..18583af 100644 --- a/python-blosc.spec +++ b/python-blosc.spec @@ -15,10 +15,12 @@ Release: 2%{?dist} License: MIT URL: https://github.com/FrancescAlted/python-blosc Source0: https://pypi.python.org/packages/source/b/%{module}/%{module}-%{version}.tar.gz +Patch0: 0001-tests-fix-error-with-new-numpy.patch BuildRequires: blosc-devel BuildRequires: python2-devel BuildRequires: numpy +BuildRequires: python2-psutil %description %{summary}. @@ -38,6 +40,7 @@ Summary: Python wrapper for the blosc high performance compressor BuildRequires: python3-devel BuildRequires: python3-numpy +BuildRequires: python3-psutil %{?python_provide:%python_provide python3-blosc} %{?fedora:Recommends: python3-numpy} @@ -86,6 +89,10 @@ PYTHONPATH=%{buildroot}%{python3_sitearch} python3 -c 'import sys, blosc; sys.ex %endif %changelog +* Sat Feb 13 2016 Zbigniew Jędrzejewski-Szmek - 1.2.8-2 +- Add dependency on psutil to check for leaks during build +- Fix build (#1307896) + * Thu Feb 04 2016 Fedora Release Engineering - 1.2.8-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild From a8a9e5fce74a68f5a9cde6981216cea32f75b5bc Mon Sep 17 00:00:00 2001 From: Orion Poplawski Date: Mon, 16 May 2016 13:27:13 -0600 Subject: [PATCH 06/65] Fix provides filter - Use %python3_pkgversion for EPEL7 compatibility --- python-blosc.spec | 47 +++++++++++++++++++---------------------------- 1 file changed, 19 insertions(+), 28 deletions(-) diff --git a/python-blosc.spec b/python-blosc.spec index 18583af..7b31b60 100644 --- a/python-blosc.spec +++ b/python-blosc.spec @@ -1,7 +1,4 @@ -%global with_python3 0%{?fedora} - -%global __provides_filter_from ^%{python_sitearch}/.*\\.so$ -%global __provides_filter_from ^%{python3_sitearch}/.*\\.so$ +%global __provides_exclude_from ^(%{python2_sitearch}|%{python3_sitearch})/.*\\.so$ %global module blosc @@ -11,7 +8,7 @@ Summary: Python wrapper for the Blosc high performance compressor Name: python-%{module} Version: 1.2.8 -Release: 2%{?dist} +Release: 3%{?dist} License: MIT URL: https://github.com/FrancescAlted/python-blosc Source0: https://pypi.python.org/packages/source/b/%{module}/%{module}-%{version}.tar.gz @@ -34,19 +31,17 @@ Summary: %{summary} %description -n python2-%{module} %{summary}. -%if 0%{?with_python3} -%package -n python3-%{module} +%package -n python%{python3_pkgversion}-%{module} Summary: Python wrapper for the blosc high performance compressor -BuildRequires: python3-devel -BuildRequires: python3-numpy -BuildRequires: python3-psutil -%{?python_provide:%python_provide python3-blosc} -%{?fedora:Recommends: python3-numpy} +BuildRequires: python%{python3_pkgversion}-devel +BuildRequires: python%{python3_pkgversion}-numpy +BuildRequires: python%{python3_pkgversion}-psutil +%{?python_provide:%python_provide python%{python3_pkgversion}-blosc} +%{?fedora:Recommends: python%{python3_pkgversion}-numpy} -%description -n python3-%{module} +%description -n python%{python3_pkgversion}-%{module} %{summary}. -%endif %prep %autosetup -n %{module}-%{version} -p1 @@ -57,15 +52,16 @@ sed -i "s|CFLAGS\.append(\"-msse2\")|pass|" setup.py %build export BLOSC_DIR=%{_libdir}/blosc CFLAGS="%{optflags}" %py2_build -%if 0%{?with_python3} %py3_build -%endif %install %py2_install -%if 0%{?with_python3} %py3_install -%endif + +%check +cd / # avoid interference with build dir +PYTHONPATH=%{buildroot}%{python2_sitearch} python -c 'import sys, blosc; sys.exit(blosc.test())' +PYTHONPATH=%{buildroot}%{python3_sitearch} python3 -c 'import sys, blosc; sys.exit(blosc.test())' %files -n python2-%{module} %{python2_sitearch}/blosc/ @@ -73,22 +69,17 @@ export BLOSC_DIR=%{_libdir}/blosc CFLAGS="%{optflags}" %license LICENSES/PYTHON-BLOSC.txt %doc README.rst RELEASE_NOTES.rst -%if 0%{?with_python3} -%files -n python3-%{module} +%files -n python%{python3_pkgversion}-%{module} %{python3_sitearch}/blosc/ %{python3_sitearch}/blosc-%{version}*-py*.egg-info %license LICENSES/PYTHON-BLOSC.txt %doc README.rst RELEASE_NOTES.rst -%endif - -%check -cd / # avoid interference with build dir -PYTHONPATH=%{buildroot}%{python2_sitearch} python -c 'import sys, blosc; sys.exit(blosc.test())' -%if 0%{?with_python3} -PYTHONPATH=%{buildroot}%{python3_sitearch} python3 -c 'import sys, blosc; sys.exit(blosc.test())' -%endif %changelog +* Mon May 16 2016 Orion Poplawski - 1.2.8-3 +- Fix provides filter +- Use %%python3_pkgversion for EPEL7 compatibility + * Sat Feb 13 2016 Zbigniew Jędrzejewski-Szmek - 1.2.8-2 - Add dependency on psutil to check for leaks during build - Fix build (#1307896) From c657fe4594535d19cc2139473ade9472b8307949 Mon Sep 17 00:00:00 2001 From: Orion Poplawski Date: Mon, 16 May 2016 13:30:55 -0600 Subject: [PATCH 07/65] Update to 1.3.2 --- .gitignore | 1 + 0001-tests-fix-error-with-new-numpy.patch | 35 ----------------------- python-blosc.spec | 8 ++++-- sources | 2 +- 4 files changed, 7 insertions(+), 39 deletions(-) delete mode 100644 0001-tests-fix-error-with-new-numpy.patch diff --git a/.gitignore b/.gitignore index 1c4c1bd..5cea332 100644 --- a/.gitignore +++ b/.gitignore @@ -4,3 +4,4 @@ /blosc-1.2.5.tar.gz /blosc-1.2.7.tar.gz /blosc-1.2.8.tar.gz +/blosc-1.3.2.tar.gz diff --git a/0001-tests-fix-error-with-new-numpy.patch b/0001-tests-fix-error-with-new-numpy.patch deleted file mode 100644 index 613f7cc..0000000 --- a/0001-tests-fix-error-with-new-numpy.patch +++ /dev/null @@ -1,35 +0,0 @@ -From b49ff10a169a0c8e862a5dbe0f4b291cef17f9d0 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= -Date: Sat, 13 Feb 2016 17:35:36 -0500 -Subject: [PATCH] tests: fix error with new numpy - -ERROR: test_pack_array_exceptions (blosc.test.TestCodec) ----------------------------------------------------------------------- -Traceback (most recent call last): - File "/builddir/build/BUILDROOT/python-blosc-1.2.8-2.fc24.i386/usr/lib/python2.7/site-packages/blosc/test.py", line 195, in test_pack_array_exceptions - strides=(8, 0))[0] - File "/usr/lib/python2.7/site-packages/numpy/lib/stride_tricks.py", line 48, in as_strided - array = np.asarray(DummyArray(interface, base=x)) - File "/usr/lib/python2.7/site-packages/numpy/core/numeric.py", line 482, in asarray - return array(a, dtype, copy=False, order=order) -TypeError: 'float' object cannot be interpreted as an index ---- - blosc/test.py | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -diff --git a/blosc/test.py b/blosc/test.py -index 8bf9c48600..ce96f5ec6f 100644 ---- a/blosc/test.py -+++ b/blosc/test.py -@@ -185,7 +185,7 @@ class TestCodec(unittest.TestCase): - self.assertRaises(TypeError, blosc.pack_array, 'abc') - self.assertRaises(TypeError, blosc.pack_array, 1.0) - -- items = (blosc.BLOSC_MAX_BUFFERSIZE / 8) + 1 -+ items = (blosc.BLOSC_MAX_BUFFERSIZE // 8) + 1 - one = numpy.ones(1, dtype=numpy.int64) - self.assertRaises(ValueError, blosc.pack_array, one, clevel=-1) - self.assertRaises(ValueError, blosc.pack_array, one, clevel=10) --- -2.5.0 - diff --git a/python-blosc.spec b/python-blosc.spec index 7b31b60..2fd0647 100644 --- a/python-blosc.spec +++ b/python-blosc.spec @@ -7,12 +7,11 @@ Summary: Python wrapper for the Blosc high performance compressor Name: python-%{module} -Version: 1.2.8 -Release: 3%{?dist} +Version: 1.3.2 +Release: 1%{?dist} License: MIT URL: https://github.com/FrancescAlted/python-blosc Source0: https://pypi.python.org/packages/source/b/%{module}/%{module}-%{version}.tar.gz -Patch0: 0001-tests-fix-error-with-new-numpy.patch BuildRequires: blosc-devel BuildRequires: python2-devel @@ -76,6 +75,9 @@ PYTHONPATH=%{buildroot}%{python3_sitearch} python3 -c 'import sys, blosc; sys.ex %doc README.rst RELEASE_NOTES.rst %changelog +* Mon May 16 2016 Orion Poplawski - 1.3.2-1 +- Update to 1.3.2 + * Mon May 16 2016 Orion Poplawski - 1.2.8-3 - Fix provides filter - Use %%python3_pkgversion for EPEL7 compatibility diff --git a/sources b/sources index 63e3e9a..d86c732 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -d7f505adefd46fbdb50c7b608d5cbdf6 blosc-1.2.8.tar.gz +d87100614b8423b542958ba1900c9e7b blosc-1.3.2.tar.gz From ff40db4af9e81b4405d74c4a9c3e9566251e3f4e Mon Sep 17 00:00:00 2001 From: Thibault North Date: Thu, 14 Jul 2016 09:34:48 +0200 Subject: [PATCH 08/65] Update to 1.3.3 --- .gitignore | 1 + python-blosc.spec | 5 ++++- sources | 2 +- 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index 5cea332..fe8bd24 100644 --- a/.gitignore +++ b/.gitignore @@ -5,3 +5,4 @@ /blosc-1.2.7.tar.gz /blosc-1.2.8.tar.gz /blosc-1.3.2.tar.gz +/blosc-1.3.3.tar.gz diff --git a/python-blosc.spec b/python-blosc.spec index 2fd0647..823f87e 100644 --- a/python-blosc.spec +++ b/python-blosc.spec @@ -7,7 +7,7 @@ Summary: Python wrapper for the Blosc high performance compressor Name: python-%{module} -Version: 1.3.2 +Version: 1.3.3 Release: 1%{?dist} License: MIT URL: https://github.com/FrancescAlted/python-blosc @@ -75,6 +75,9 @@ PYTHONPATH=%{buildroot}%{python3_sitearch} python3 -c 'import sys, blosc; sys.ex %doc README.rst RELEASE_NOTES.rst %changelog +* Thu Jul 14 2016 Thibault North - 1.3.3-1 +- Update to 1.3.3 + * Mon May 16 2016 Orion Poplawski - 1.3.2-1 - Update to 1.3.2 diff --git a/sources b/sources index d86c732..4ec517b 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -d87100614b8423b542958ba1900c9e7b blosc-1.3.2.tar.gz +68b96816acd27839487293e0b624c54e blosc-1.3.3.tar.gz From 067b3762fe51a4dbc29a7182c57a2bd93d7fa377 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Tue, 19 Jul 2016 09:07:01 +0000 Subject: [PATCH 09/65] - https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages --- python-blosc.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/python-blosc.spec b/python-blosc.spec index 823f87e..0910f19 100644 --- a/python-blosc.spec +++ b/python-blosc.spec @@ -8,7 +8,7 @@ Summary: Python wrapper for the Blosc high performance compressor Name: python-%{module} Version: 1.3.3 -Release: 1%{?dist} +Release: 2%{?dist} License: MIT URL: https://github.com/FrancescAlted/python-blosc Source0: https://pypi.python.org/packages/source/b/%{module}/%{module}-%{version}.tar.gz @@ -75,6 +75,9 @@ PYTHONPATH=%{buildroot}%{python3_sitearch} python3 -c 'import sys, blosc; sys.ex %doc README.rst RELEASE_NOTES.rst %changelog +* Tue Jul 19 2016 Fedora Release Engineering - 1.3.3-2 +- https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages + * Thu Jul 14 2016 Thibault North - 1.3.3-1 - Update to 1.3.3 From 154283158f98910f26d5f28eba76dbb3cb4c4b42 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= Date: Thu, 28 Jul 2016 16:25:23 -0400 Subject: [PATCH 10/65] Update to 1.4.1 --- python-blosc.spec | 23 ++++++++++++----------- sources | 2 +- 2 files changed, 13 insertions(+), 12 deletions(-) diff --git a/python-blosc.spec b/python-blosc.spec index 0910f19..48e39b3 100644 --- a/python-blosc.spec +++ b/python-blosc.spec @@ -1,5 +1,3 @@ -%global __provides_exclude_from ^(%{python2_sitearch}|%{python3_sitearch})/.*\\.so$ - %global module blosc # Use the same directory of the main package for subpackage licence and docs @@ -7,16 +5,19 @@ Summary: Python wrapper for the Blosc high performance compressor Name: python-%{module} -Version: 1.3.3 -Release: 2%{?dist} +Version: 1.4.1 +Release: 1%{?dist} License: MIT -URL: https://github.com/FrancescAlted/python-blosc -Source0: https://pypi.python.org/packages/source/b/%{module}/%{module}-%{version}.tar.gz +URL: https://github.com/Blosc/python-blosc +Source0: https://github.com/Blosc/python-blosc/archive/v%{version}.tar.gz#/%{module}-%{version}.tar.gz -BuildRequires: blosc-devel +BuildRequires: blosc-devel >= 1.9.0 BuildRequires: python2-devel BuildRequires: numpy BuildRequires: python2-psutil +BuildRequires: python%{python3_pkgversion}-devel +BuildRequires: python%{python3_pkgversion}-numpy +BuildRequires: python%{python3_pkgversion}-psutil %description %{summary}. @@ -33,9 +34,6 @@ Summary: %{summary} %package -n python%{python3_pkgversion}-%{module} Summary: Python wrapper for the blosc high performance compressor -BuildRequires: python%{python3_pkgversion}-devel -BuildRequires: python%{python3_pkgversion}-numpy -BuildRequires: python%{python3_pkgversion}-psutil %{?python_provide:%python_provide python%{python3_pkgversion}-blosc} %{?fedora:Recommends: python%{python3_pkgversion}-numpy} @@ -43,7 +41,7 @@ BuildRequires: python%{python3_pkgversion}-psutil %{summary}. %prep -%autosetup -n %{module}-%{version} -p1 +%autosetup -p1 # Don't enable SSE2 optimizations sed -i "s|CFLAGS\.append(\"-msse2\")|pass|" setup.py @@ -75,6 +73,9 @@ PYTHONPATH=%{buildroot}%{python3_sitearch} python3 -c 'import sys, blosc; sys.ex %doc README.rst RELEASE_NOTES.rst %changelog +* Thu Jul 28 2016 Zbigniew Jędrzejewski-Szmek - 1.4.1-1 +- Update to latest version (#1323008) + * Tue Jul 19 2016 Fedora Release Engineering - 1.3.3-2 - https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages diff --git a/sources b/sources index 4ec517b..f0f7d4a 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -68b96816acd27839487293e0b624c54e blosc-1.3.3.tar.gz +5feb0794cb7f8d8b85d047da108bdaf7 blosc-1.4.1.tar.gz From da31bb87665612137fd606e1586a2f48381bd241 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= Date: Mon, 19 Dec 2016 18:20:37 +0100 Subject: [PATCH 11/65] Rebuild for Python 3.6 --- python-blosc.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/python-blosc.spec b/python-blosc.spec index 48e39b3..93ff173 100644 --- a/python-blosc.spec +++ b/python-blosc.spec @@ -6,7 +6,7 @@ Summary: Python wrapper for the Blosc high performance compressor Name: python-%{module} Version: 1.4.1 -Release: 1%{?dist} +Release: 2%{?dist} License: MIT URL: https://github.com/Blosc/python-blosc Source0: https://github.com/Blosc/python-blosc/archive/v%{version}.tar.gz#/%{module}-%{version}.tar.gz @@ -73,6 +73,9 @@ PYTHONPATH=%{buildroot}%{python3_sitearch} python3 -c 'import sys, blosc; sys.ex %doc README.rst RELEASE_NOTES.rst %changelog +* Mon Dec 19 2016 Miro Hrončok - 1.4.1-2 +- Rebuild for Python 3.6 + * Thu Jul 28 2016 Zbigniew Jędrzejewski-Szmek - 1.4.1-1 - Update to latest version (#1323008) From 3602f24e26109015780e0c7705a197ace9a8981e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Dan=20Hor=C3=A1k?= Date: Thu, 5 Jan 2017 16:05:54 +0100 Subject: [PATCH 12/65] - remove build time CPU detection, fixed build on ppc64/ppc64le and s390(x) --- python-blosc-alt-arch.patch | 38 +++++++++++++++++++++++++++++++++++++ python-blosc.spec | 10 ++++++---- 2 files changed, 44 insertions(+), 4 deletions(-) create mode 100644 python-blosc-alt-arch.patch diff --git a/python-blosc-alt-arch.patch b/python-blosc-alt-arch.patch new file mode 100644 index 0000000..3a7509f --- /dev/null +++ b/python-blosc-alt-arch.patch @@ -0,0 +1,38 @@ +diff -up python-blosc-1.4.1/setup.py.alt-arch python-blosc-1.4.1/setup.py +--- python-blosc-1.4.1/setup.py.alt-arch 2017-01-05 15:53:42.581675095 +0100 ++++ python-blosc-1.4.1/setup.py 2017-01-05 15:54:06.361675095 +0100 +@@ -19,7 +19,6 @@ import sys + from setuptools import Extension + from setuptools import setup + from glob import glob +-import cpuinfo + + ########### Check versions ########## + +@@ -93,26 +93,6 @@ else: + inc_dirs += glob('c-blosc/internal-complibs/zstd*/common') + def_macros += [('HAVE_LZ4', 1), ('HAVE_SNAPPY', 1), ('HAVE_ZLIB', 1), ('HAVE_ZSTD', 1)] + +- # Guess SSE2 or AVX2 capabilities +- cpu_info = cpuinfo.get_cpu_info() +- # SSE2 +- if 'sse2' in cpu_info['flags']: +- print('SSE2 detected') +- CFLAGS.append('-DSHUFFLE_SSE2_ENABLED') +- sources += [f for f in glob('c-blosc/blosc/*.c') if 'sse2' in f] +- if os.name == 'posix': +- CFLAGS.append('-msse2') +- elif os.name == 'nt': +- def_macros += [('__SSE2__', 1)] +- # AVX2 +- if 'avx2' in cpu_info['flags']: +- print('AVX2 detected') +- CFLAGS.append('-DSHUFFLE_AVX2_ENABLED') +- sources += [f for f in glob('c-blosc/blosc/*.c') if 'avx2' in f] +- if os.name == 'posix': +- CFLAGS.append('-mavx2') +- elif os.name == 'nt': +- def_macros += [('__AVX2__', 1)] + + classifiers = """\ + Development Status :: 5 - Production/Stable diff --git a/python-blosc.spec b/python-blosc.spec index 93ff173..fca61c8 100644 --- a/python-blosc.spec +++ b/python-blosc.spec @@ -6,10 +6,12 @@ Summary: Python wrapper for the Blosc high performance compressor Name: python-%{module} Version: 1.4.1 -Release: 2%{?dist} +Release: 3%{?dist} License: MIT URL: https://github.com/Blosc/python-blosc Source0: https://github.com/Blosc/python-blosc/archive/v%{version}.tar.gz#/%{module}-%{version}.tar.gz +# remove the build-time CPU detection +Patch0: python-blosc-alt-arch.patch BuildRequires: blosc-devel >= 1.9.0 BuildRequires: python2-devel @@ -43,9 +45,6 @@ Summary: Python wrapper for the blosc high performance compressor %prep %autosetup -p1 -# Don't enable SSE2 optimizations -sed -i "s|CFLAGS\.append(\"-msse2\")|pass|" setup.py - %build export BLOSC_DIR=%{_libdir}/blosc CFLAGS="%{optflags}" %py2_build @@ -73,6 +72,9 @@ PYTHONPATH=%{buildroot}%{python3_sitearch} python3 -c 'import sys, blosc; sys.ex %doc README.rst RELEASE_NOTES.rst %changelog +* Thu Jan 05 2017 Dan Horák - 1.4.1-3 +- remove build time CPU detection, fixed build on ppc64/ppc64le and s390(x) + * Mon Dec 19 2016 Miro Hrončok - 1.4.1-2 - Rebuild for Python 3.6 From 2cc1a67cc8be63ae29e37594daceb18d9f07f0f8 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 11 Feb 2017 08:29:16 +0000 Subject: [PATCH 13/65] - Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild --- python-blosc.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/python-blosc.spec b/python-blosc.spec index fca61c8..143159a 100644 --- a/python-blosc.spec +++ b/python-blosc.spec @@ -6,7 +6,7 @@ Summary: Python wrapper for the Blosc high performance compressor Name: python-%{module} Version: 1.4.1 -Release: 3%{?dist} +Release: 4%{?dist} License: MIT URL: https://github.com/Blosc/python-blosc Source0: https://github.com/Blosc/python-blosc/archive/v%{version}.tar.gz#/%{module}-%{version}.tar.gz @@ -72,6 +72,9 @@ PYTHONPATH=%{buildroot}%{python3_sitearch} python3 -c 'import sys, blosc; sys.ex %doc README.rst RELEASE_NOTES.rst %changelog +* Sat Feb 11 2017 Fedora Release Engineering - 1.4.1-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + * Thu Jan 05 2017 Dan Horák - 1.4.1-3 - remove build time CPU detection, fixed build on ppc64/ppc64le and s390(x) From ce033720ab26085e8e4bd05a7bead9d7630e0899 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 27 Jul 2017 09:46:10 +0000 Subject: [PATCH 14/65] - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild --- python-blosc.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/python-blosc.spec b/python-blosc.spec index 143159a..a5d45b1 100644 --- a/python-blosc.spec +++ b/python-blosc.spec @@ -6,7 +6,7 @@ Summary: Python wrapper for the Blosc high performance compressor Name: python-%{module} Version: 1.4.1 -Release: 4%{?dist} +Release: 5%{?dist} License: MIT URL: https://github.com/Blosc/python-blosc Source0: https://github.com/Blosc/python-blosc/archive/v%{version}.tar.gz#/%{module}-%{version}.tar.gz @@ -72,6 +72,9 @@ PYTHONPATH=%{buildroot}%{python3_sitearch} python3 -c 'import sys, blosc; sys.ex %doc README.rst RELEASE_NOTES.rst %changelog +* Thu Jul 27 2017 Fedora Release Engineering - 1.4.1-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + * Sat Feb 11 2017 Fedora Release Engineering - 1.4.1-4 - Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild From dfd972f22eeea7d98b22a3c69305cdfe23211b80 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 3 Aug 2017 06:40:55 +0000 Subject: [PATCH 15/65] - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild --- python-blosc.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/python-blosc.spec b/python-blosc.spec index a5d45b1..204f56b 100644 --- a/python-blosc.spec +++ b/python-blosc.spec @@ -6,7 +6,7 @@ Summary: Python wrapper for the Blosc high performance compressor Name: python-%{module} Version: 1.4.1 -Release: 5%{?dist} +Release: 6%{?dist} License: MIT URL: https://github.com/Blosc/python-blosc Source0: https://github.com/Blosc/python-blosc/archive/v%{version}.tar.gz#/%{module}-%{version}.tar.gz @@ -72,6 +72,9 @@ PYTHONPATH=%{buildroot}%{python3_sitearch} python3 -c 'import sys, blosc; sys.ex %doc README.rst RELEASE_NOTES.rst %changelog +* Thu Aug 03 2017 Fedora Release Engineering - 1.4.1-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild + * Thu Jul 27 2017 Fedora Release Engineering - 1.4.1-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild From 99e0de80804c783cfe538039c140626eea3c8d19 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 9 Feb 2018 06:53:41 +0000 Subject: [PATCH 16/65] - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- python-blosc.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/python-blosc.spec b/python-blosc.spec index 204f56b..08b82b9 100644 --- a/python-blosc.spec +++ b/python-blosc.spec @@ -6,7 +6,7 @@ Summary: Python wrapper for the Blosc high performance compressor Name: python-%{module} Version: 1.4.1 -Release: 6%{?dist} +Release: 7%{?dist} License: MIT URL: https://github.com/Blosc/python-blosc Source0: https://github.com/Blosc/python-blosc/archive/v%{version}.tar.gz#/%{module}-%{version}.tar.gz @@ -72,6 +72,9 @@ PYTHONPATH=%{buildroot}%{python3_sitearch} python3 -c 'import sys, blosc; sys.ex %doc README.rst RELEASE_NOTES.rst %changelog +* Fri Feb 09 2018 Fedora Release Engineering - 1.4.1-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + * Thu Aug 03 2017 Fedora Release Engineering - 1.4.1-6 - Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild From 7746a288faafb7afbc57b78c01fc4d2431b31d4c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= Date: Tue, 19 Jun 2018 10:55:33 +0200 Subject: [PATCH 17/65] Rebuilt for Python 3.7 --- python-blosc.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/python-blosc.spec b/python-blosc.spec index 08b82b9..c5d594a 100644 --- a/python-blosc.spec +++ b/python-blosc.spec @@ -6,7 +6,7 @@ Summary: Python wrapper for the Blosc high performance compressor Name: python-%{module} Version: 1.4.1 -Release: 7%{?dist} +Release: 8%{?dist} License: MIT URL: https://github.com/Blosc/python-blosc Source0: https://github.com/Blosc/python-blosc/archive/v%{version}.tar.gz#/%{module}-%{version}.tar.gz @@ -72,6 +72,9 @@ PYTHONPATH=%{buildroot}%{python3_sitearch} python3 -c 'import sys, blosc; sys.ex %doc README.rst RELEASE_NOTES.rst %changelog +* Tue Jun 19 2018 Miro Hrončok - 1.4.1-8 +- Rebuilt for Python 3.7 + * Fri Feb 09 2018 Fedora Release Engineering - 1.4.1-7 - Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild From d7afaf70e0f76aa3c50e168e1eaff5b3a6b98ee5 Mon Sep 17 00:00:00 2001 From: Igor Gnatenko Date: Tue, 10 Jul 2018 15:56:25 +0200 Subject: [PATCH 18/65] add BuildRequires: gcc Reference: https://fedoraproject.org/wiki/Changes/Remove_GCC_from_BuildRoot --- python-blosc.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/python-blosc.spec b/python-blosc.spec index c5d594a..17d9b27 100644 --- a/python-blosc.spec +++ b/python-blosc.spec @@ -13,6 +13,7 @@ Source0: https://github.com/Blosc/python-blosc/archive/v%{version}.tar.gz # remove the build-time CPU detection Patch0: python-blosc-alt-arch.patch +BuildRequires: gcc BuildRequires: blosc-devel >= 1.9.0 BuildRequires: python2-devel BuildRequires: numpy From 7982a07671add765a1d2db365340494c2a0a3bf1 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 13 Jul 2018 23:38:47 +0000 Subject: [PATCH 19/65] - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- python-blosc.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/python-blosc.spec b/python-blosc.spec index 17d9b27..c1bf324 100644 --- a/python-blosc.spec +++ b/python-blosc.spec @@ -6,7 +6,7 @@ Summary: Python wrapper for the Blosc high performance compressor Name: python-%{module} Version: 1.4.1 -Release: 8%{?dist} +Release: 9%{?dist} License: MIT URL: https://github.com/Blosc/python-blosc Source0: https://github.com/Blosc/python-blosc/archive/v%{version}.tar.gz#/%{module}-%{version}.tar.gz @@ -73,6 +73,9 @@ PYTHONPATH=%{buildroot}%{python3_sitearch} python3 -c 'import sys, blosc; sys.ex %doc README.rst RELEASE_NOTES.rst %changelog +* Fri Jul 13 2018 Fedora Release Engineering - 1.4.1-9 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + * Tue Jun 19 2018 Miro Hrončok - 1.4.1-8 - Rebuilt for Python 3.7 From b9ab0a05de29b5764802802a948c8c4baf8f57d4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= Date: Thu, 19 Jul 2018 17:24:20 +0200 Subject: [PATCH 20/65] Update to 1.5.1 --- .gitignore | 10 ++-------- python-blosc-alt-arch.patch | 14 ++++++++------ python-blosc.spec | 11 +++++++---- sources | 2 +- 4 files changed, 18 insertions(+), 19 deletions(-) diff --git a/.gitignore b/.gitignore index fe8bd24..2f401ac 100644 --- a/.gitignore +++ b/.gitignore @@ -1,8 +1,2 @@ -/blosc-1.1.tar.gz -/blosc-1.2.3.tar.gz -/blosc-1.2.4.tar.gz -/blosc-1.2.5.tar.gz -/blosc-1.2.7.tar.gz -/blosc-1.2.8.tar.gz -/blosc-1.3.2.tar.gz -/blosc-1.3.3.tar.gz +/.build-*.log +/blosc-*.tar.gz diff --git a/python-blosc-alt-arch.patch b/python-blosc-alt-arch.patch index 3a7509f..eb999ad 100644 --- a/python-blosc-alt-arch.patch +++ b/python-blosc-alt-arch.patch @@ -1,6 +1,7 @@ -diff -up python-blosc-1.4.1/setup.py.alt-arch python-blosc-1.4.1/setup.py ---- python-blosc-1.4.1/setup.py.alt-arch 2017-01-05 15:53:42.581675095 +0100 -+++ python-blosc-1.4.1/setup.py 2017-01-05 15:54:06.361675095 +0100 +diff --git python-blosc-1.5.1/setup.py~ python-blosc-1.5.1/setup.py +index fbb540c289..93bc0ac0e6 100644 +--- python-blosc-1.5.1/setup.py~ ++++ python-blosc-1.5.1/setup.py @@ -19,7 +19,6 @@ import sys from setuptools import Extension from setuptools import setup @@ -9,8 +10,8 @@ diff -up python-blosc-1.4.1/setup.py.alt-arch python-blosc-1.4.1/setup.py ########### Check versions ########## -@@ -93,26 +93,6 @@ else: - inc_dirs += glob('c-blosc/internal-complibs/zstd*/common') +@@ -94,27 +93,6 @@ else: + inc_dirs += glob('c-blosc/internal-complibs/zstd*') def_macros += [('HAVE_LZ4', 1), ('HAVE_SNAPPY', 1), ('HAVE_ZLIB', 1), ('HAVE_ZSTD', 1)] - # Guess SSE2 or AVX2 capabilities @@ -33,6 +34,7 @@ diff -up python-blosc-1.4.1/setup.py.alt-arch python-blosc-1.4.1/setup.py - CFLAGS.append('-mavx2') - elif os.name == 'nt': - def_macros += [('__AVX2__', 1)] - +- classifiers = """\ Development Status :: 5 - Production/Stable + Intended Audience :: Developers diff --git a/python-blosc.spec b/python-blosc.spec index c1bf324..abd8c39 100644 --- a/python-blosc.spec +++ b/python-blosc.spec @@ -5,8 +5,8 @@ Summary: Python wrapper for the Blosc high performance compressor Name: python-%{module} -Version: 1.4.1 -Release: 9%{?dist} +Version: 1.5.1 +Release: 1%{?dist} License: MIT URL: https://github.com/Blosc/python-blosc Source0: https://github.com/Blosc/python-blosc/archive/v%{version}.tar.gz#/%{module}-%{version}.tar.gz @@ -57,8 +57,8 @@ export BLOSC_DIR=%{_libdir}/blosc CFLAGS="%{optflags}" %check cd / # avoid interference with build dir -PYTHONPATH=%{buildroot}%{python2_sitearch} python -c 'import sys, blosc; sys.exit(blosc.test())' -PYTHONPATH=%{buildroot}%{python3_sitearch} python3 -c 'import sys, blosc; sys.exit(blosc.test())' +PYTHONPATH=%{buildroot}%{python2_sitearch} %__python2 -c 'import sys, blosc; sys.exit(blosc.test())' +PYTHONPATH=%{buildroot}%{python3_sitearch} %__python3 -c 'import sys, blosc; sys.exit(blosc.test())' %files -n python2-%{module} %{python2_sitearch}/blosc/ @@ -73,6 +73,9 @@ PYTHONPATH=%{buildroot}%{python3_sitearch} python3 -c 'import sys, blosc; sys.ex %doc README.rst RELEASE_NOTES.rst %changelog +* Thu Jul 19 2018 Zbigniew Jędrzejewski-Szmek - 1.5.1-1 +- Update to latest version (#1372856) + * Fri Jul 13 2018 Fedora Release Engineering - 1.4.1-9 - Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild diff --git a/sources b/sources index f0f7d4a..9c638c8 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -5feb0794cb7f8d8b85d047da108bdaf7 blosc-1.4.1.tar.gz +SHA512 (blosc-1.5.1.tar.gz) = d0575e05e6e33c86d7b4f1b20bc5b3d5160a883909add26f8bc42887df4fa57d402390fc9a9d3e6b66d569d41f88b20f78883098a015d8b85823e989b7ab076a From 1bf4abfe4d5d05c9af2358addf3791181bc8f7fa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= Date: Wed, 17 Oct 2018 23:13:44 +0200 Subject: [PATCH 21/65] Subpackage python2-blosc has been removed --- python-blosc.spec | 26 +++++--------------------- 1 file changed, 5 insertions(+), 21 deletions(-) diff --git a/python-blosc.spec b/python-blosc.spec index abd8c39..d4b1c63 100644 --- a/python-blosc.spec +++ b/python-blosc.spec @@ -6,7 +6,7 @@ Summary: Python wrapper for the Blosc high performance compressor Name: python-%{module} Version: 1.5.1 -Release: 1%{?dist} +Release: 2%{?dist} License: MIT URL: https://github.com/Blosc/python-blosc Source0: https://github.com/Blosc/python-blosc/archive/v%{version}.tar.gz#/%{module}-%{version}.tar.gz @@ -15,9 +15,7 @@ Patch0: python-blosc-alt-arch.patch BuildRequires: gcc BuildRequires: blosc-devel >= 1.9.0 -BuildRequires: python2-devel BuildRequires: numpy -BuildRequires: python2-psutil BuildRequires: python%{python3_pkgversion}-devel BuildRequires: python%{python3_pkgversion}-numpy BuildRequires: python%{python3_pkgversion}-psutil @@ -25,15 +23,6 @@ BuildRequires: python%{python3_pkgversion}-psutil %description %{summary}. -%package -n python2-%{module} -Summary: %{summary} - -%{?python_provide:%python_provide python2-blosc} -%{?fedora:Recommends: numpy} - -%description -n python2-%{module} -%{summary}. - %package -n python%{python3_pkgversion}-%{module} Summary: Python wrapper for the blosc high performance compressor @@ -48,24 +37,15 @@ Summary: Python wrapper for the blosc high performance compressor %build export BLOSC_DIR=%{_libdir}/blosc CFLAGS="%{optflags}" -%py2_build %py3_build %install -%py2_install %py3_install %check cd / # avoid interference with build dir -PYTHONPATH=%{buildroot}%{python2_sitearch} %__python2 -c 'import sys, blosc; sys.exit(blosc.test())' PYTHONPATH=%{buildroot}%{python3_sitearch} %__python3 -c 'import sys, blosc; sys.exit(blosc.test())' -%files -n python2-%{module} -%{python2_sitearch}/blosc/ -%{python2_sitearch}/blosc-%{version}*-py*.egg-info -%license LICENSES/PYTHON-BLOSC.txt -%doc README.rst RELEASE_NOTES.rst - %files -n python%{python3_pkgversion}-%{module} %{python3_sitearch}/blosc/ %{python3_sitearch}/blosc-%{version}*-py*.egg-info @@ -73,6 +53,10 @@ PYTHONPATH=%{buildroot}%{python3_sitearch} %__python3 -c 'import sys, blosc; sys %doc README.rst RELEASE_NOTES.rst %changelog +* Wed Oct 17 2018 Zbigniew Jędrzejewski-Szmek - 1.5.1-2 +- Subpackage python2-blosc has been removed + See https://fedoraproject.org/wiki/Changes/Mass_Python_2_Package_Removal + * Thu Jul 19 2018 Zbigniew Jędrzejewski-Szmek - 1.5.1-1 - Update to latest version (#1372856) From 7ac9fc7ac1f46bc12e69b52cebec2ae4defe0379 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 2 Feb 2019 05:52:44 +0000 Subject: [PATCH 22/65] - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- python-blosc.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/python-blosc.spec b/python-blosc.spec index d4b1c63..d176a77 100644 --- a/python-blosc.spec +++ b/python-blosc.spec @@ -6,7 +6,7 @@ Summary: Python wrapper for the Blosc high performance compressor Name: python-%{module} Version: 1.5.1 -Release: 2%{?dist} +Release: 3%{?dist} License: MIT URL: https://github.com/Blosc/python-blosc Source0: https://github.com/Blosc/python-blosc/archive/v%{version}.tar.gz#/%{module}-%{version}.tar.gz @@ -53,6 +53,9 @@ PYTHONPATH=%{buildroot}%{python3_sitearch} %__python3 -c 'import sys, blosc; sys %doc README.rst RELEASE_NOTES.rst %changelog +* Sat Feb 02 2019 Fedora Release Engineering - 1.5.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + * Wed Oct 17 2018 Zbigniew Jędrzejewski-Szmek - 1.5.1-2 - Subpackage python2-blosc has been removed See https://fedoraproject.org/wiki/Changes/Mass_Python_2_Package_Removal From 9eb2e9901678c5ce1eb71bc16f6ea5237e7839b8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= Date: Sat, 4 May 2019 19:12:54 +0200 Subject: [PATCH 23/65] Remove some unnecessary macroification --- python-blosc.spec | 15 +++++---------- 1 file changed, 5 insertions(+), 10 deletions(-) diff --git a/python-blosc.spec b/python-blosc.spec index d176a77..a4e4525 100644 --- a/python-blosc.spec +++ b/python-blosc.spec @@ -1,15 +1,10 @@ -%global module blosc - -# Use the same directory of the main package for subpackage licence and docs -%global _docdir_fmt %{name} - Summary: Python wrapper for the Blosc high performance compressor -Name: python-%{module} +Name: python-blosc Version: 1.5.1 Release: 3%{?dist} License: MIT URL: https://github.com/Blosc/python-blosc -Source0: https://github.com/Blosc/python-blosc/archive/v%{version}.tar.gz#/%{module}-%{version}.tar.gz +Source0: https://github.com/Blosc/python-blosc/archive/v%{version}/blosc-%{version}.tar.gz # remove the build-time CPU detection Patch0: python-blosc-alt-arch.patch @@ -23,13 +18,13 @@ BuildRequires: python%{python3_pkgversion}-psutil %description %{summary}. -%package -n python%{python3_pkgversion}-%{module} +%package -n python%{python3_pkgversion}-blosc Summary: Python wrapper for the blosc high performance compressor %{?python_provide:%python_provide python%{python3_pkgversion}-blosc} %{?fedora:Recommends: python%{python3_pkgversion}-numpy} -%description -n python%{python3_pkgversion}-%{module} +%description -n python%{python3_pkgversion}-blosc %{summary}. %prep @@ -46,7 +41,7 @@ export BLOSC_DIR=%{_libdir}/blosc CFLAGS="%{optflags}" cd / # avoid interference with build dir PYTHONPATH=%{buildroot}%{python3_sitearch} %__python3 -c 'import sys, blosc; sys.exit(blosc.test())' -%files -n python%{python3_pkgversion}-%{module} +%files -n python%{python3_pkgversion}-blosc %{python3_sitearch}/blosc/ %{python3_sitearch}/blosc-%{version}*-py*.egg-info %license LICENSES/PYTHON-BLOSC.txt From c3d26207d67db263656e29af77f6ae96bd15af94 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= Date: Sun, 5 May 2019 15:11:25 +0200 Subject: [PATCH 24/65] Update to 1.8.1 --- python-blosc-alt-arch.patch | 40 ------------------------------------- python-blosc.spec | 13 +++++++----- sources | 2 +- 3 files changed, 9 insertions(+), 46 deletions(-) delete mode 100644 python-blosc-alt-arch.patch diff --git a/python-blosc-alt-arch.patch b/python-blosc-alt-arch.patch deleted file mode 100644 index eb999ad..0000000 --- a/python-blosc-alt-arch.patch +++ /dev/null @@ -1,40 +0,0 @@ -diff --git python-blosc-1.5.1/setup.py~ python-blosc-1.5.1/setup.py -index fbb540c289..93bc0ac0e6 100644 ---- python-blosc-1.5.1/setup.py~ -+++ python-blosc-1.5.1/setup.py -@@ -19,7 +19,6 @@ import sys - from setuptools import Extension - from setuptools import setup - from glob import glob --import cpuinfo - - ########### Check versions ########## - -@@ -94,27 +93,6 @@ else: - inc_dirs += glob('c-blosc/internal-complibs/zstd*') - def_macros += [('HAVE_LZ4', 1), ('HAVE_SNAPPY', 1), ('HAVE_ZLIB', 1), ('HAVE_ZSTD', 1)] - -- # Guess SSE2 or AVX2 capabilities -- cpu_info = cpuinfo.get_cpu_info() -- # SSE2 -- if 'sse2' in cpu_info['flags']: -- print('SSE2 detected') -- CFLAGS.append('-DSHUFFLE_SSE2_ENABLED') -- sources += [f for f in glob('c-blosc/blosc/*.c') if 'sse2' in f] -- if os.name == 'posix': -- CFLAGS.append('-msse2') -- elif os.name == 'nt': -- def_macros += [('__SSE2__', 1)] -- # AVX2 -- if 'avx2' in cpu_info['flags']: -- print('AVX2 detected') -- CFLAGS.append('-DSHUFFLE_AVX2_ENABLED') -- sources += [f for f in glob('c-blosc/blosc/*.c') if 'avx2' in f] -- if os.name == 'posix': -- CFLAGS.append('-mavx2') -- elif os.name == 'nt': -- def_macros += [('__AVX2__', 1)] -- - classifiers = """\ - Development Status :: 5 - Production/Stable - Intended Audience :: Developers diff --git a/python-blosc.spec b/python-blosc.spec index a4e4525..1b418e1 100644 --- a/python-blosc.spec +++ b/python-blosc.spec @@ -1,15 +1,13 @@ Summary: Python wrapper for the Blosc high performance compressor Name: python-blosc -Version: 1.5.1 -Release: 3%{?dist} +Version: 1.8.1 +Release: 1%{?dist} License: MIT URL: https://github.com/Blosc/python-blosc Source0: https://github.com/Blosc/python-blosc/archive/v%{version}/blosc-%{version}.tar.gz -# remove the build-time CPU detection -Patch0: python-blosc-alt-arch.patch BuildRequires: gcc -BuildRequires: blosc-devel >= 1.9.0 +BuildRequires: blosc-devel >= 1.16.0 BuildRequires: numpy BuildRequires: python%{python3_pkgversion}-devel BuildRequires: python%{python3_pkgversion}-numpy @@ -20,6 +18,7 @@ BuildRequires: python%{python3_pkgversion}-psutil %package -n python%{python3_pkgversion}-blosc Summary: Python wrapper for the blosc high performance compressor +Requires: blosc%{_isa} >= 1.16.0 %{?python_provide:%python_provide python%{python3_pkgversion}-blosc} %{?fedora:Recommends: python%{python3_pkgversion}-numpy} @@ -32,6 +31,7 @@ Summary: Python wrapper for the blosc high performance compressor %build export BLOSC_DIR=%{_libdir}/blosc CFLAGS="%{optflags}" +export DISABLE_BLOSC_AVX2=1 %py3_build %install @@ -48,6 +48,9 @@ PYTHONPATH=%{buildroot}%{python3_sitearch} %__python3 -c 'import sys, blosc; sys %doc README.rst RELEASE_NOTES.rst %changelog +* Sun May 5 2019 Zbigniew Jędrzejewski-Szmek - 1.8.1-1 +- Update to latest version (#1684965) + * Sat Feb 02 2019 Fedora Release Engineering - 1.5.1-3 - Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild diff --git a/sources b/sources index 9c638c8..8def156 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (blosc-1.5.1.tar.gz) = d0575e05e6e33c86d7b4f1b20bc5b3d5160a883909add26f8bc42887df4fa57d402390fc9a9d3e6b66d569d41f88b20f78883098a015d8b85823e989b7ab076a +SHA512 (blosc-1.8.1.tar.gz) = f8cc5b38f2bdeac6b173e800313a3b71ba5b22b681e0ca90f3cdbf2fdb2c82826d478279297ffc2c91ce36ce21367c744e12b41e37a912deb4bdf1849e7359fa From 89cd79e5b241e2e0b4a1d850e45e91077211e01a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= Date: Fri, 12 Jul 2019 17:48:14 +0200 Subject: [PATCH 25/65] Remove bundled cpuinfo used during build --- python-blosc.spec | 3 +++ 1 file changed, 3 insertions(+) diff --git a/python-blosc.spec b/python-blosc.spec index 1b418e1..465b578 100644 --- a/python-blosc.spec +++ b/python-blosc.spec @@ -12,6 +12,7 @@ BuildRequires: numpy BuildRequires: python%{python3_pkgversion}-devel BuildRequires: python%{python3_pkgversion}-numpy BuildRequires: python%{python3_pkgversion}-psutil +BuildRequires: python%{python3_pkgversion}-cpuinfo %description %{summary}. @@ -28,6 +29,8 @@ Requires: blosc%{_isa} >= 1.16.0 %prep %autosetup -p1 +# Remove bundled copy +rm cpuinfo.py %build export BLOSC_DIR=%{_libdir}/blosc CFLAGS="%{optflags}" From 0b2db4436cfb5ed583a8a931bf3922965b2ee26f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= Date: Fri, 12 Jul 2019 19:03:22 +0200 Subject: [PATCH 26/65] Add patches to fix build on s390x and ppc64le --- ...onstify-char-pointers-for-Py_BuildVa.patch | 69 +++++++++++++++++++ ...-build-on-architectures-which-don-t-.patch | 38 ++++++++++ ...up.py-catch-import-error-for-cpuinfo.patch | 38 ++++++++++ python-blosc.spec | 5 ++ 4 files changed, 150 insertions(+) create mode 100644 0001-blosc_extenion-constify-char-pointers-for-Py_BuildVa.patch create mode 100644 0002-setup.py-unbreak-build-on-architectures-which-don-t-.patch create mode 100644 0003-setup.py-catch-import-error-for-cpuinfo.patch diff --git a/0001-blosc_extenion-constify-char-pointers-for-Py_BuildVa.patch b/0001-blosc_extenion-constify-char-pointers-for-Py_BuildVa.patch new file mode 100644 index 0000000..987e5ae --- /dev/null +++ b/0001-blosc_extenion-constify-char-pointers-for-Py_BuildVa.patch @@ -0,0 +1,69 @@ +From b92e5f1264fb53bbaa975c15682cb2293a16508b Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Fri, 12 Jul 2019 18:40:47 +0200 +Subject: [PATCH 1/2] blosc_extenion: constify char pointers for Py_BuildValue +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +This fixes warnings from the compiler: + +blosc/blosc_extension.c: In function ‘PyBlosc_compressor_list’: +blosc/blosc_extension.c:104:8: warning: assignment discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] + 104 | list = blosc_list_compressors(); + | ^ +blosc/blosc_extension.c: In function ‘PyBlosc_code_to_name’: +blosc/blosc_extension.c:123:40: warning: passing argument 2 of ‘blosc_compcode_to_compname’ from incompatible pointer type [-Wincompatible-pointer-types] + 123 | if (blosc_compcode_to_compname(code, &name) < 0) + | ^~~~~ + | | + | char ** +In file included from blosc/blosc_extension.c:13: +/usr/include/blosc.h:389:72: note: expected ‘const char **’ but argument is of type ‘char **’ + 389 | BLOSC_EXPORT int blosc_compcode_to_compname(int compcode, const char **compname); + | ~~~~~~~~~~~~~^~~~~~~~ +blosc/blosc_extension.c: In function ‘PyBlosc_get_clib’: +blosc/blosc_extension.c:345:8: warning: assignment discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] + 345 | clib = blosc_cbuffer_complib(input); + | ^ + +https://docs.python.org/3/c-api/arg.html#c.Py_BuildValue +> When memory buffers are passed as parameters to supply data to build +> objects, as for the s and s# formats, the required data is +> copied. Buffers provided by the caller are never referenced by the +> objects created by Py_BuildValue(). +--- + blosc/blosc_extension.c | 6 +++--- + 1 file changed, 3 insertions(+), 3 deletions(-) + +diff --git a/blosc/blosc_extension.c b/blosc/blosc_extension.c +index 870581a217..237f2e46a7 100644 +--- a/blosc/blosc_extension.c ++++ b/blosc/blosc_extension.c +@@ -99,7 +99,7 @@ PyDoc_STRVAR(compressor_list__doc__, + static PyObject * + PyBlosc_compressor_list(PyObject *self) + { +- char *list; ++ const char *list; + + list = blosc_list_compressors(); + +@@ -115,7 +115,7 @@ static PyObject * + PyBlosc_code_to_name(PyObject *self, PyObject *args) + { + int code; +- char *name; ++ const char *name; + + if (!PyArg_ParseTuple(args, "i:code_to_name", &code)) + return NULL; +@@ -341,7 +341,7 @@ PyBlosc_get_clib(PyObject *self, PyObject *args) + { + void *input; + size_t cbytes; +- char *clib; ++ const char *clib; + + /* require Python string object, typesize, clevel and shuffle agrs */ + if (!PyArg_ParseTuple(args, "s#:get_clib", &input, &cbytes)) diff --git a/0002-setup.py-unbreak-build-on-architectures-which-don-t-.patch b/0002-setup.py-unbreak-build-on-architectures-which-don-t-.patch new file mode 100644 index 0000000..2c02bf4 --- /dev/null +++ b/0002-setup.py-unbreak-build-on-architectures-which-don-t-.patch @@ -0,0 +1,38 @@ +From b4bac67a4ad842c76e4ec10cbee8dac01abcfad0 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Fri, 12 Jul 2019 18:46:44 +0200 +Subject: [PATCH 2/2] setup.py: unbreak build on architectures which don't have + cpu flags + +ppc64le and s390x would fail with: +BUILDSTDERR: Traceback (most recent call last): +BUILDSTDERR: File "setup.py", line 241, in +BUILDSTDERR: if 'DISABLE_BLOSC_SSE2' not in os.environ and (cpu_info != None) and ('sse2' in cpu_info['flags']): +BUILDSTDERR: KeyError: 'flags' +BUILDSTDERR: error: Bad exit status from /var/tmp/rpm-tmp.xbprqV (%install) +--- + setup.py | 4 ++-- + 1 file changed, 2 insertions(+), 2 deletions(-) + +diff --git a/setup.py b/setup.py +index 1d8ebe86eb..468b970588 100644 +--- a/setup.py ++++ b/setup.py +@@ -238,7 +238,7 @@ if __name__ == '__main__': + + # Guess SSE2 or AVX2 capabilities + # SSE2 +- if 'DISABLE_BLOSC_SSE2' not in os.environ and (cpu_info != None) and ('sse2' in cpu_info['flags']): ++ if 'DISABLE_BLOSC_SSE2' not in os.environ and cpu_info != None and 'sse2' in cpu_info.get('flags', {}): + print('SSE2 detected') + CFLAGS.append('-DSHUFFLE_SSE2_ENABLED') + sources += [f for f in glob('c-blosc/blosc/*.c') if 'sse2' in f] +@@ -247,7 +247,7 @@ if __name__ == '__main__': + elif os.name == 'nt': + def_macros += [('__SSE2__', 1)] + # AVX2 +- if 'DISABLE_BLOSC_AVX2' not in os.environ and (cpu_info != None) and ('avx2' in cpu_info['flags']): ++ if 'DISABLE_BLOSC_AVX2' not in os.environ and cpu_info != None and 'sse2' in cpu_info.get('flags', {}): + if os.name == 'posix': + print("AVX2 detected") + avx2_defs = { diff --git a/0003-setup.py-catch-import-error-for-cpuinfo.patch b/0003-setup.py-catch-import-error-for-cpuinfo.patch new file mode 100644 index 0000000..f3026a5 --- /dev/null +++ b/0003-setup.py-catch-import-error-for-cpuinfo.patch @@ -0,0 +1,38 @@ +From 8c8cf1a2a09ba8b6b02be5a69bb8cbf5ff2a4838 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Fri, 12 Jul 2019 18:54:36 +0200 +Subject: [PATCH] setup.py: catch import error for cpuinfo + +BUILDSTDERR: Traceback (most recent call last): +BUILDSTDERR: File "setup.py", line 112, in +BUILDSTDERR: import cpuinfo +BUILDSTDERR: File "/usr/lib/python3.7/site-packages/cpuinfo/__init__.py", line 7, in +BUILDSTDERR: from cpuinfo.cpuinfo import * +BUILDSTDERR: File "/usr/lib/python3.7/site-packages/cpuinfo/cpuinfo.py", line 2256, in +BUILDSTDERR: _check_arch() +BUILDSTDERR: File "/usr/lib/python3.7/site-packages/cpuinfo/cpuinfo.py", line 231, in _check_arch +BUILDSTDERR: raise Exception("py-cpuinfo currently only works on X86 and some PPC and ARM CPUs.") +BUILDSTDERR: Exception: py-cpuinfo currently only works on X86 and some PPC and ARM CPUs. +--- + setup.py | 8 ++++++-- + 1 file changed, 6 insertions(+), 2 deletions(-) + +diff --git a/setup.py b/setup.py +index 468b970588..2508a94fbe 100644 +--- a/setup.py ++++ b/setup.py +@@ -109,8 +109,12 @@ if __name__ == '__main__': + with io.open('README.rst', encoding='utf-8') as f: + long_description = f.read() + +- import cpuinfo +- cpu_info = cpuinfo.get_cpu_info() ++ try: ++ import cpuinfo ++ cpu_info = cpuinfo.get_cpu_info() ++ except Exception: ++ # newer cpuinfo versions fail to import on unsupported architectures ++ cpu_info = None + + ########### Check versions ########## + def exit_with_error(message): diff --git a/python-blosc.spec b/python-blosc.spec index 465b578..1df4c53 100644 --- a/python-blosc.spec +++ b/python-blosc.spec @@ -6,6 +6,11 @@ License: MIT URL: https://github.com/Blosc/python-blosc Source0: https://github.com/Blosc/python-blosc/archive/v%{version}/blosc-%{version}.tar.gz +# https://github.com/Blosc/python-blosc/pull/200 +Patch1: 0001-blosc_extenion-constify-char-pointers-for-Py_BuildVa.patch +Patch2: 0002-setup.py-unbreak-build-on-architectures-which-don-t-.patch +Patch3: 0003-setup.py-catch-import-error-for-cpuinfo.patch + BuildRequires: gcc BuildRequires: blosc-devel >= 1.16.0 BuildRequires: numpy From f3fe3754ec76bf8ed0343c7f7938b2cf51925922 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= Date: Sat, 13 Jul 2019 00:44:33 +0200 Subject: [PATCH 27/65] Add patch to fix python3.8 compat https://bugzilla.redhat.com/show_bug.cgi?id=1708643 --- ...instead-of-using-platform.linux_dist.patch | 54 +++++++++++++++++++ python-blosc.spec | 2 + 2 files changed, 56 insertions(+) create mode 100644 0004-Read-os-release-instead-of-using-platform.linux_dist.patch diff --git a/0004-Read-os-release-instead-of-using-platform.linux_dist.patch b/0004-Read-os-release-instead-of-using-platform.linux_dist.patch new file mode 100644 index 0000000..7f58bb8 --- /dev/null +++ b/0004-Read-os-release-instead-of-using-platform.linux_dist.patch @@ -0,0 +1,54 @@ +From 8185dc37e0c03b62268c025e7b59bb4e8644f6a1 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Sat, 13 Jul 2019 00:36:49 +0200 +Subject: [PATCH] Read os-release instead of using + platform.linux_distribution() + +The function was removed in https://bugs.python.org/issue1322 +and cannot be used in python3.8. + +There are replacements outside of the stdlib, but it doesn't seem +worth it it add a dependency on another module. Instead, a simple +parser for os-release is implemented. os-release is present on all +distros from the last few years and PRETTY_NAME gives a reliable +display name of the distro without any heuristics. +--- + blosc/toplevel.py | 18 +++++++++++++++++- + 1 file changed, 17 insertions(+), 1 deletion(-) + +diff --git a/blosc/toplevel.py b/blosc/toplevel.py +index 04ad9f0217..94cf4af910 100644 +--- a/blosc/toplevel.py ++++ b/blosc/toplevel.py +@@ -800,6 +800,20 @@ def load_tests(loader, tests, pattern): + tests.addTests(doctest.DocTestSuite()) + return tests + ++def os_release_pretty_name(): ++ for p in ('/etc/os-release', '/usr/lib/os-release'): ++ try: ++ f = open(p, 'rt') ++ for line in f: ++ name, _, value = line.rstrip().partition('=') ++ if name == 'PRETTY_NAME': ++ if len(value) >= 2 and value[0] in '"\'' and value[0] == value[-1]: ++ value = value[1:-1] ++ return value ++ except IOError: ++ pass ++ else: ++ return None + + def print_versions(): + """Print all the versions of software that python-blosc relies on.""" +@@ -815,7 +829,9 @@ def print_versions(): + (sysname, nodename, release, version, machine, processor) = platform.uname() + print("Platform: %s-%s-%s (%s)" % (sysname, release, machine, version)) + if sysname == "Linux": +- print("Linux dist: %s" % " ".join(platform.linux_distribution()[:-1])) ++ distro = os_release_pretty_name() ++ if distro: ++ print("Linux dist:", distro) + if not processor: + processor = "not recognized" + print("Processor: %s" % processor) diff --git a/python-blosc.spec b/python-blosc.spec index 1df4c53..3fa2e9e 100644 --- a/python-blosc.spec +++ b/python-blosc.spec @@ -10,6 +10,8 @@ Source0: https://github.com/Blosc/python-blosc/archive/v%{version}/blosc- Patch1: 0001-blosc_extenion-constify-char-pointers-for-Py_BuildVa.patch Patch2: 0002-setup.py-unbreak-build-on-architectures-which-don-t-.patch Patch3: 0003-setup.py-catch-import-error-for-cpuinfo.patch +# https://github.com/Blosc/python-blosc/pull/202 +Patch4: 0004-Read-os-release-instead-of-using-platform.linux_dist.patch BuildRequires: gcc BuildRequires: blosc-devel >= 1.16.0 From fa17c3f736da8a1d348ed92b1b8df51e908fd3f7 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 26 Jul 2019 12:27:28 +0000 Subject: [PATCH 28/65] - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- python-blosc.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/python-blosc.spec b/python-blosc.spec index 3fa2e9e..5c40bec 100644 --- a/python-blosc.spec +++ b/python-blosc.spec @@ -1,7 +1,7 @@ Summary: Python wrapper for the Blosc high performance compressor Name: python-blosc Version: 1.8.1 -Release: 1%{?dist} +Release: 2%{?dist} License: MIT URL: https://github.com/Blosc/python-blosc Source0: https://github.com/Blosc/python-blosc/archive/v%{version}/blosc-%{version}.tar.gz @@ -58,6 +58,9 @@ PYTHONPATH=%{buildroot}%{python3_sitearch} %__python3 -c 'import sys, blosc; sys %doc README.rst RELEASE_NOTES.rst %changelog +* Fri Jul 26 2019 Fedora Release Engineering - 1.8.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + * Sun May 5 2019 Zbigniew Jędrzejewski-Szmek - 1.8.1-1 - Update to latest version (#1684965) From 9e086721e6ee1e1a8017f764ed8efe9a58b103fa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= Date: Mon, 19 Aug 2019 10:29:28 +0200 Subject: [PATCH 29/65] Rebuilt for Python 3.8 --- python-blosc.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/python-blosc.spec b/python-blosc.spec index 5c40bec..90417dd 100644 --- a/python-blosc.spec +++ b/python-blosc.spec @@ -1,7 +1,7 @@ Summary: Python wrapper for the Blosc high performance compressor Name: python-blosc Version: 1.8.1 -Release: 2%{?dist} +Release: 3%{?dist} License: MIT URL: https://github.com/Blosc/python-blosc Source0: https://github.com/Blosc/python-blosc/archive/v%{version}/blosc-%{version}.tar.gz @@ -58,6 +58,9 @@ PYTHONPATH=%{buildroot}%{python3_sitearch} %__python3 -c 'import sys, blosc; sys %doc README.rst RELEASE_NOTES.rst %changelog +* Mon Aug 19 2019 Miro Hrončok - 1.8.1-3 +- Rebuilt for Python 3.8 + * Fri Jul 26 2019 Fedora Release Engineering - 1.8.1-2 - Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild From 111aa9ad3b7b663b4f822e3ef85fff62c1596684 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= Date: Thu, 3 Oct 2019 14:04:44 +0200 Subject: [PATCH 30/65] Rebuilt for Python 3.8.0rc1 (#1748018) --- python-blosc.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/python-blosc.spec b/python-blosc.spec index 90417dd..d5eb43e 100644 --- a/python-blosc.spec +++ b/python-blosc.spec @@ -1,7 +1,7 @@ Summary: Python wrapper for the Blosc high performance compressor Name: python-blosc Version: 1.8.1 -Release: 3%{?dist} +Release: 4%{?dist} License: MIT URL: https://github.com/Blosc/python-blosc Source0: https://github.com/Blosc/python-blosc/archive/v%{version}/blosc-%{version}.tar.gz @@ -58,6 +58,9 @@ PYTHONPATH=%{buildroot}%{python3_sitearch} %__python3 -c 'import sys, blosc; sys %doc README.rst RELEASE_NOTES.rst %changelog +* Thu Oct 03 2019 Miro Hrončok - 1.8.1-4 +- Rebuilt for Python 3.8.0rc1 (#1748018) + * Mon Aug 19 2019 Miro Hrončok - 1.8.1-3 - Rebuilt for Python 3.8 From 3a67b866f2d76465f9781b191bf49e5a6575b8e4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= Date: Sat, 19 Oct 2019 12:43:54 +0000 Subject: [PATCH 31/65] Drop buildrequires on python2-numpy --- python-blosc.spec | 1 - 1 file changed, 1 deletion(-) diff --git a/python-blosc.spec b/python-blosc.spec index d5eb43e..a2ffbba 100644 --- a/python-blosc.spec +++ b/python-blosc.spec @@ -15,7 +15,6 @@ Patch4: 0004-Read-os-release-instead-of-using-platform.linux_dist.patch BuildRequires: gcc BuildRequires: blosc-devel >= 1.16.0 -BuildRequires: numpy BuildRequires: python%{python3_pkgversion}-devel BuildRequires: python%{python3_pkgversion}-numpy BuildRequires: python%{python3_pkgversion}-psutil From 7bd72c2607c8683ed42e349a0fb79d63e26efc6a Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Thu, 30 Jan 2020 10:57:36 +0000 Subject: [PATCH 32/65] - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- python-blosc.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/python-blosc.spec b/python-blosc.spec index a2ffbba..3ec61ec 100644 --- a/python-blosc.spec +++ b/python-blosc.spec @@ -1,7 +1,7 @@ Summary: Python wrapper for the Blosc high performance compressor Name: python-blosc Version: 1.8.1 -Release: 4%{?dist} +Release: 5%{?dist} License: MIT URL: https://github.com/Blosc/python-blosc Source0: https://github.com/Blosc/python-blosc/archive/v%{version}/blosc-%{version}.tar.gz @@ -57,6 +57,9 @@ PYTHONPATH=%{buildroot}%{python3_sitearch} %__python3 -c 'import sys, blosc; sys %doc README.rst RELEASE_NOTES.rst %changelog +* Thu Jan 30 2020 Fedora Release Engineering - 1.8.1-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + * Thu Oct 03 2019 Miro Hrončok - 1.8.1-4 - Rebuilt for Python 3.8.0rc1 (#1748018) From 5f013c00243149d2b6c8203c093518a22d3f48d0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Miro=20Hron=C4=8Dok?= Date: Tue, 26 May 2020 03:04:35 +0200 Subject: [PATCH 33/65] Rebuilt for Python 3.9 --- python-blosc.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/python-blosc.spec b/python-blosc.spec index 3ec61ec..7f1abdd 100644 --- a/python-blosc.spec +++ b/python-blosc.spec @@ -1,7 +1,7 @@ Summary: Python wrapper for the Blosc high performance compressor Name: python-blosc Version: 1.8.1 -Release: 5%{?dist} +Release: 6%{?dist} License: MIT URL: https://github.com/Blosc/python-blosc Source0: https://github.com/Blosc/python-blosc/archive/v%{version}/blosc-%{version}.tar.gz @@ -57,6 +57,9 @@ PYTHONPATH=%{buildroot}%{python3_sitearch} %__python3 -c 'import sys, blosc; sys %doc README.rst RELEASE_NOTES.rst %changelog +* Tue May 26 2020 Miro Hrončok - 1.8.1-6 +- Rebuilt for Python 3.9 + * Thu Jan 30 2020 Fedora Release Engineering - 1.8.1-5 - Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild From d017f13c95bf66d1dd702edb30ac8466cea04a54 Mon Sep 17 00:00:00 2001 From: Charalampos Stratakis Date: Wed, 27 May 2020 18:09:23 +0200 Subject: [PATCH 34/65] Fix Python 3.9 compatibility (#1792055) --- 0005-fix-python-3.9-compatibility.patch | 28 +++++++++++++++++++++++++ python-blosc.spec | 8 ++++++- 2 files changed, 35 insertions(+), 1 deletion(-) create mode 100644 0005-fix-python-3.9-compatibility.patch diff --git a/0005-fix-python-3.9-compatibility.patch b/0005-fix-python-3.9-compatibility.patch new file mode 100644 index 0000000..3780816 --- /dev/null +++ b/0005-fix-python-3.9-compatibility.patch @@ -0,0 +1,28 @@ +diff --git a/blosc/toplevel.py b/blosc/toplevel.py +index 94cf4af..2fa2c49 100644 +--- a/blosc/toplevel.py ++++ b/blosc/toplevel.py +@@ -435,9 +435,9 @@ def compress(bytesobj, typesize=8, clevel=9, shuffle=blosc.SHUFFLE, + Examples + -------- + +- >>> import array ++ >>> import array, sys + >>> a = array.array('i', range(1000*1000)) +- >>> a_bytesobj = a.tostring() ++ >>> a_bytesobj = a.tobytes() if sys.version_info >= (3, 0, 0) else a.tostring() + >>> c_bytesobj = blosc.compress(a_bytesobj, typesize=4) + >>> len(c_bytesobj) < len(a_bytesobj) + True +@@ -574,9 +574,9 @@ def decompress(bytesobj, as_bytearray=False): + Examples + -------- + +- >>> import array ++ >>> import array, sys + >>> a = array.array('i', range(1000*1000)) +- >>> a_bytesobj = a.tostring() ++ >>> a_bytesobj = a.tobytes() if sys.version_info >= (3, 0, 0) else a.tostring() + >>> c_bytesobj = blosc.compress(a_bytesobj, typesize=4) + >>> a_bytesobj2 = blosc.decompress(c_bytesobj) + >>> a_bytesobj == a_bytesobj2 diff --git a/python-blosc.spec b/python-blosc.spec index 7f1abdd..ec59bc5 100644 --- a/python-blosc.spec +++ b/python-blosc.spec @@ -1,7 +1,7 @@ Summary: Python wrapper for the Blosc high performance compressor Name: python-blosc Version: 1.8.1 -Release: 6%{?dist} +Release: 7%{?dist} License: MIT URL: https://github.com/Blosc/python-blosc Source0: https://github.com/Blosc/python-blosc/archive/v%{version}/blosc-%{version}.tar.gz @@ -12,6 +12,9 @@ Patch2: 0002-setup.py-unbreak-build-on-architectures-which-don-t-.patch Patch3: 0003-setup.py-catch-import-error-for-cpuinfo.patch # https://github.com/Blosc/python-blosc/pull/202 Patch4: 0004-Read-os-release-instead-of-using-platform.linux_dist.patch +# Fix Python 3.9 compatibility +# https://github.com/Blosc/python-blosc/pull/218 +Patch5: 0005-fix-python-3.9-compatibility.patch BuildRequires: gcc BuildRequires: blosc-devel >= 1.16.0 @@ -57,6 +60,9 @@ PYTHONPATH=%{buildroot}%{python3_sitearch} %__python3 -c 'import sys, blosc; sys %doc README.rst RELEASE_NOTES.rst %changelog +* Wed May 27 2020 Charalampos Stratakis - 1.8.1-7 +- Fix Python 3.9 compatibility (#1792055) + * Tue May 26 2020 Miro Hrončok - 1.8.1-6 - Rebuilt for Python 3.9 From b0c1ee7bc3e63dbcfa3f88e9544f546d1e7a2618 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Tue, 28 Jul 2020 23:58:09 +0000 Subject: [PATCH 35/65] - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- python-blosc.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/python-blosc.spec b/python-blosc.spec index ec59bc5..044990a 100644 --- a/python-blosc.spec +++ b/python-blosc.spec @@ -1,7 +1,7 @@ Summary: Python wrapper for the Blosc high performance compressor Name: python-blosc Version: 1.8.1 -Release: 7%{?dist} +Release: 8%{?dist} License: MIT URL: https://github.com/Blosc/python-blosc Source0: https://github.com/Blosc/python-blosc/archive/v%{version}/blosc-%{version}.tar.gz @@ -60,6 +60,9 @@ PYTHONPATH=%{buildroot}%{python3_sitearch} %__python3 -c 'import sys, blosc; sys %doc README.rst RELEASE_NOTES.rst %changelog +* Tue Jul 28 2020 Fedora Release Engineering - 1.8.1-8 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + * Wed May 27 2020 Charalampos Stratakis - 1.8.1-7 - Fix Python 3.9 compatibility (#1792055) From 59e03b5fbb8eadd0e4f0e88e27c852fbc079c289 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Wed, 27 Jan 2021 09:36:12 +0000 Subject: [PATCH 36/65] - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- python-blosc.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/python-blosc.spec b/python-blosc.spec index 044990a..a8ab35f 100644 --- a/python-blosc.spec +++ b/python-blosc.spec @@ -1,7 +1,7 @@ Summary: Python wrapper for the Blosc high performance compressor Name: python-blosc Version: 1.8.1 -Release: 8%{?dist} +Release: 9%{?dist} License: MIT URL: https://github.com/Blosc/python-blosc Source0: https://github.com/Blosc/python-blosc/archive/v%{version}/blosc-%{version}.tar.gz @@ -60,6 +60,9 @@ PYTHONPATH=%{buildroot}%{python3_sitearch} %__python3 -c 'import sys, blosc; sys %doc README.rst RELEASE_NOTES.rst %changelog +* Wed Jan 27 2021 Fedora Release Engineering - 1.8.1-9 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + * Tue Jul 28 2020 Fedora Release Engineering - 1.8.1-8 - Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild From d983b20cf6bad9ab3d73ef708089bb5168c54676 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= Date: Sat, 13 Feb 2021 20:22:09 +0100 Subject: [PATCH 37/65] Version 1.10.2 --- ...onstify-char-pointers-for-Py_BuildVa.patch | 69 ---- ...-build-on-architectures-which-don-t-.patch | 38 -- ...up.py-catch-import-error-for-cpuinfo.patch | 38 -- ...instead-of-using-platform.linux_dist.patch | 54 --- 0005-fix-python-3.9-compatibility.patch | 28 -- python-blosc.spec | 21 +- setup.py | 327 ++++++++++++++++++ sources | 2 +- 8 files changed, 337 insertions(+), 240 deletions(-) delete mode 100644 0001-blosc_extenion-constify-char-pointers-for-Py_BuildVa.patch delete mode 100644 0002-setup.py-unbreak-build-on-architectures-which-don-t-.patch delete mode 100644 0003-setup.py-catch-import-error-for-cpuinfo.patch delete mode 100644 0004-Read-os-release-instead-of-using-platform.linux_dist.patch delete mode 100644 0005-fix-python-3.9-compatibility.patch create mode 100644 setup.py diff --git a/0001-blosc_extenion-constify-char-pointers-for-Py_BuildVa.patch b/0001-blosc_extenion-constify-char-pointers-for-Py_BuildVa.patch deleted file mode 100644 index 987e5ae..0000000 --- a/0001-blosc_extenion-constify-char-pointers-for-Py_BuildVa.patch +++ /dev/null @@ -1,69 +0,0 @@ -From b92e5f1264fb53bbaa975c15682cb2293a16508b Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= -Date: Fri, 12 Jul 2019 18:40:47 +0200 -Subject: [PATCH 1/2] blosc_extenion: constify char pointers for Py_BuildValue -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -This fixes warnings from the compiler: - -blosc/blosc_extension.c: In function ‘PyBlosc_compressor_list’: -blosc/blosc_extension.c:104:8: warning: assignment discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] - 104 | list = blosc_list_compressors(); - | ^ -blosc/blosc_extension.c: In function ‘PyBlosc_code_to_name’: -blosc/blosc_extension.c:123:40: warning: passing argument 2 of ‘blosc_compcode_to_compname’ from incompatible pointer type [-Wincompatible-pointer-types] - 123 | if (blosc_compcode_to_compname(code, &name) < 0) - | ^~~~~ - | | - | char ** -In file included from blosc/blosc_extension.c:13: -/usr/include/blosc.h:389:72: note: expected ‘const char **’ but argument is of type ‘char **’ - 389 | BLOSC_EXPORT int blosc_compcode_to_compname(int compcode, const char **compname); - | ~~~~~~~~~~~~~^~~~~~~~ -blosc/blosc_extension.c: In function ‘PyBlosc_get_clib’: -blosc/blosc_extension.c:345:8: warning: assignment discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers] - 345 | clib = blosc_cbuffer_complib(input); - | ^ - -https://docs.python.org/3/c-api/arg.html#c.Py_BuildValue -> When memory buffers are passed as parameters to supply data to build -> objects, as for the s and s# formats, the required data is -> copied. Buffers provided by the caller are never referenced by the -> objects created by Py_BuildValue(). ---- - blosc/blosc_extension.c | 6 +++--- - 1 file changed, 3 insertions(+), 3 deletions(-) - -diff --git a/blosc/blosc_extension.c b/blosc/blosc_extension.c -index 870581a217..237f2e46a7 100644 ---- a/blosc/blosc_extension.c -+++ b/blosc/blosc_extension.c -@@ -99,7 +99,7 @@ PyDoc_STRVAR(compressor_list__doc__, - static PyObject * - PyBlosc_compressor_list(PyObject *self) - { -- char *list; -+ const char *list; - - list = blosc_list_compressors(); - -@@ -115,7 +115,7 @@ static PyObject * - PyBlosc_code_to_name(PyObject *self, PyObject *args) - { - int code; -- char *name; -+ const char *name; - - if (!PyArg_ParseTuple(args, "i:code_to_name", &code)) - return NULL; -@@ -341,7 +341,7 @@ PyBlosc_get_clib(PyObject *self, PyObject *args) - { - void *input; - size_t cbytes; -- char *clib; -+ const char *clib; - - /* require Python string object, typesize, clevel and shuffle agrs */ - if (!PyArg_ParseTuple(args, "s#:get_clib", &input, &cbytes)) diff --git a/0002-setup.py-unbreak-build-on-architectures-which-don-t-.patch b/0002-setup.py-unbreak-build-on-architectures-which-don-t-.patch deleted file mode 100644 index 2c02bf4..0000000 --- a/0002-setup.py-unbreak-build-on-architectures-which-don-t-.patch +++ /dev/null @@ -1,38 +0,0 @@ -From b4bac67a4ad842c76e4ec10cbee8dac01abcfad0 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= -Date: Fri, 12 Jul 2019 18:46:44 +0200 -Subject: [PATCH 2/2] setup.py: unbreak build on architectures which don't have - cpu flags - -ppc64le and s390x would fail with: -BUILDSTDERR: Traceback (most recent call last): -BUILDSTDERR: File "setup.py", line 241, in -BUILDSTDERR: if 'DISABLE_BLOSC_SSE2' not in os.environ and (cpu_info != None) and ('sse2' in cpu_info['flags']): -BUILDSTDERR: KeyError: 'flags' -BUILDSTDERR: error: Bad exit status from /var/tmp/rpm-tmp.xbprqV (%install) ---- - setup.py | 4 ++-- - 1 file changed, 2 insertions(+), 2 deletions(-) - -diff --git a/setup.py b/setup.py -index 1d8ebe86eb..468b970588 100644 ---- a/setup.py -+++ b/setup.py -@@ -238,7 +238,7 @@ if __name__ == '__main__': - - # Guess SSE2 or AVX2 capabilities - # SSE2 -- if 'DISABLE_BLOSC_SSE2' not in os.environ and (cpu_info != None) and ('sse2' in cpu_info['flags']): -+ if 'DISABLE_BLOSC_SSE2' not in os.environ and cpu_info != None and 'sse2' in cpu_info.get('flags', {}): - print('SSE2 detected') - CFLAGS.append('-DSHUFFLE_SSE2_ENABLED') - sources += [f for f in glob('c-blosc/blosc/*.c') if 'sse2' in f] -@@ -247,7 +247,7 @@ if __name__ == '__main__': - elif os.name == 'nt': - def_macros += [('__SSE2__', 1)] - # AVX2 -- if 'DISABLE_BLOSC_AVX2' not in os.environ and (cpu_info != None) and ('avx2' in cpu_info['flags']): -+ if 'DISABLE_BLOSC_AVX2' not in os.environ and cpu_info != None and 'sse2' in cpu_info.get('flags', {}): - if os.name == 'posix': - print("AVX2 detected") - avx2_defs = { diff --git a/0003-setup.py-catch-import-error-for-cpuinfo.patch b/0003-setup.py-catch-import-error-for-cpuinfo.patch deleted file mode 100644 index f3026a5..0000000 --- a/0003-setup.py-catch-import-error-for-cpuinfo.patch +++ /dev/null @@ -1,38 +0,0 @@ -From 8c8cf1a2a09ba8b6b02be5a69bb8cbf5ff2a4838 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= -Date: Fri, 12 Jul 2019 18:54:36 +0200 -Subject: [PATCH] setup.py: catch import error for cpuinfo - -BUILDSTDERR: Traceback (most recent call last): -BUILDSTDERR: File "setup.py", line 112, in -BUILDSTDERR: import cpuinfo -BUILDSTDERR: File "/usr/lib/python3.7/site-packages/cpuinfo/__init__.py", line 7, in -BUILDSTDERR: from cpuinfo.cpuinfo import * -BUILDSTDERR: File "/usr/lib/python3.7/site-packages/cpuinfo/cpuinfo.py", line 2256, in -BUILDSTDERR: _check_arch() -BUILDSTDERR: File "/usr/lib/python3.7/site-packages/cpuinfo/cpuinfo.py", line 231, in _check_arch -BUILDSTDERR: raise Exception("py-cpuinfo currently only works on X86 and some PPC and ARM CPUs.") -BUILDSTDERR: Exception: py-cpuinfo currently only works on X86 and some PPC and ARM CPUs. ---- - setup.py | 8 ++++++-- - 1 file changed, 6 insertions(+), 2 deletions(-) - -diff --git a/setup.py b/setup.py -index 468b970588..2508a94fbe 100644 ---- a/setup.py -+++ b/setup.py -@@ -109,8 +109,12 @@ if __name__ == '__main__': - with io.open('README.rst', encoding='utf-8') as f: - long_description = f.read() - -- import cpuinfo -- cpu_info = cpuinfo.get_cpu_info() -+ try: -+ import cpuinfo -+ cpu_info = cpuinfo.get_cpu_info() -+ except Exception: -+ # newer cpuinfo versions fail to import on unsupported architectures -+ cpu_info = None - - ########### Check versions ########## - def exit_with_error(message): diff --git a/0004-Read-os-release-instead-of-using-platform.linux_dist.patch b/0004-Read-os-release-instead-of-using-platform.linux_dist.patch deleted file mode 100644 index 7f58bb8..0000000 --- a/0004-Read-os-release-instead-of-using-platform.linux_dist.patch +++ /dev/null @@ -1,54 +0,0 @@ -From 8185dc37e0c03b62268c025e7b59bb4e8644f6a1 Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= -Date: Sat, 13 Jul 2019 00:36:49 +0200 -Subject: [PATCH] Read os-release instead of using - platform.linux_distribution() - -The function was removed in https://bugs.python.org/issue1322 -and cannot be used in python3.8. - -There are replacements outside of the stdlib, but it doesn't seem -worth it it add a dependency on another module. Instead, a simple -parser for os-release is implemented. os-release is present on all -distros from the last few years and PRETTY_NAME gives a reliable -display name of the distro without any heuristics. ---- - blosc/toplevel.py | 18 +++++++++++++++++- - 1 file changed, 17 insertions(+), 1 deletion(-) - -diff --git a/blosc/toplevel.py b/blosc/toplevel.py -index 04ad9f0217..94cf4af910 100644 ---- a/blosc/toplevel.py -+++ b/blosc/toplevel.py -@@ -800,6 +800,20 @@ def load_tests(loader, tests, pattern): - tests.addTests(doctest.DocTestSuite()) - return tests - -+def os_release_pretty_name(): -+ for p in ('/etc/os-release', '/usr/lib/os-release'): -+ try: -+ f = open(p, 'rt') -+ for line in f: -+ name, _, value = line.rstrip().partition('=') -+ if name == 'PRETTY_NAME': -+ if len(value) >= 2 and value[0] in '"\'' and value[0] == value[-1]: -+ value = value[1:-1] -+ return value -+ except IOError: -+ pass -+ else: -+ return None - - def print_versions(): - """Print all the versions of software that python-blosc relies on.""" -@@ -815,7 +829,9 @@ def print_versions(): - (sysname, nodename, release, version, machine, processor) = platform.uname() - print("Platform: %s-%s-%s (%s)" % (sysname, release, machine, version)) - if sysname == "Linux": -- print("Linux dist: %s" % " ".join(platform.linux_distribution()[:-1])) -+ distro = os_release_pretty_name() -+ if distro: -+ print("Linux dist:", distro) - if not processor: - processor = "not recognized" - print("Processor: %s" % processor) diff --git a/0005-fix-python-3.9-compatibility.patch b/0005-fix-python-3.9-compatibility.patch deleted file mode 100644 index 3780816..0000000 --- a/0005-fix-python-3.9-compatibility.patch +++ /dev/null @@ -1,28 +0,0 @@ -diff --git a/blosc/toplevel.py b/blosc/toplevel.py -index 94cf4af..2fa2c49 100644 ---- a/blosc/toplevel.py -+++ b/blosc/toplevel.py -@@ -435,9 +435,9 @@ def compress(bytesobj, typesize=8, clevel=9, shuffle=blosc.SHUFFLE, - Examples - -------- - -- >>> import array -+ >>> import array, sys - >>> a = array.array('i', range(1000*1000)) -- >>> a_bytesobj = a.tostring() -+ >>> a_bytesobj = a.tobytes() if sys.version_info >= (3, 0, 0) else a.tostring() - >>> c_bytesobj = blosc.compress(a_bytesobj, typesize=4) - >>> len(c_bytesobj) < len(a_bytesobj) - True -@@ -574,9 +574,9 @@ def decompress(bytesobj, as_bytearray=False): - Examples - -------- - -- >>> import array -+ >>> import array, sys - >>> a = array.array('i', range(1000*1000)) -- >>> a_bytesobj = a.tostring() -+ >>> a_bytesobj = a.tobytes() if sys.version_info >= (3, 0, 0) else a.tostring() - >>> c_bytesobj = blosc.compress(a_bytesobj, typesize=4) - >>> a_bytesobj2 = blosc.decompress(c_bytesobj) - >>> a_bytesobj == a_bytesobj2 diff --git a/python-blosc.spec b/python-blosc.spec index a8ab35f..a3be367 100644 --- a/python-blosc.spec +++ b/python-blosc.spec @@ -1,20 +1,11 @@ Summary: Python wrapper for the Blosc high performance compressor Name: python-blosc -Version: 1.8.1 -Release: 9%{?dist} +Version: 1.10.2 +Release: 1%{?dist} License: MIT URL: https://github.com/Blosc/python-blosc Source0: https://github.com/Blosc/python-blosc/archive/v%{version}/blosc-%{version}.tar.gz - -# https://github.com/Blosc/python-blosc/pull/200 -Patch1: 0001-blosc_extenion-constify-char-pointers-for-Py_BuildVa.patch -Patch2: 0002-setup.py-unbreak-build-on-architectures-which-don-t-.patch -Patch3: 0003-setup.py-catch-import-error-for-cpuinfo.patch -# https://github.com/Blosc/python-blosc/pull/202 -Patch4: 0004-Read-os-release-instead-of-using-platform.linux_dist.patch -# Fix Python 3.9 compatibility -# https://github.com/Blosc/python-blosc/pull/218 -Patch5: 0005-fix-python-3.9-compatibility.patch +Source1: https://raw.githubusercontent.com/Blosc/python-blosc/f3c5e341a2504a03c225f4f1d9066ccdf4bd31dd/setup.py BuildRequires: gcc BuildRequires: blosc-devel >= 1.16.0 @@ -41,6 +32,9 @@ Requires: blosc%{_isa} >= 1.16.0 # Remove bundled copy rm cpuinfo.py +# Overwrite setup.py with the last version that does not use skbuild and cmake +cp %{SOURCE1} . + %build export BLOSC_DIR=%{_libdir}/blosc CFLAGS="%{optflags}" export DISABLE_BLOSC_AVX2=1 @@ -60,6 +54,9 @@ PYTHONPATH=%{buildroot}%{python3_sitearch} %__python3 -c 'import sys, blosc; sys %doc README.rst RELEASE_NOTES.rst %changelog +* Sat Feb 13 2021 Zbigniew Jędrzejewski-Szmek - 1.10.2-1 +- Latest version (#1783504) + * Wed Jan 27 2021 Fedora Release Engineering - 1.8.1-9 - Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild diff --git a/setup.py b/setup.py new file mode 100644 index 0000000..2508a94 --- /dev/null +++ b/setup.py @@ -0,0 +1,327 @@ +# -*- coding: utf-8 -*- +######################################################################## +# +# License: BSD 3-clause +# Created: September 22, 2010 +# Author: Francesc Alted - faltet@gmail.com +# +######################################################################## + +# flake8: noqa + +from __future__ import print_function + +import os +import platform +import re +import sys +import io + +from setuptools import Extension +from setuptools import setup +from glob import glob +from distutils.version import LooseVersion +from distutils.command.build_ext import build_ext +from distutils.errors import CompileError +from textwrap import dedent + + +class BloscExtension(Extension): + """Allows extension to carry architecture-capable flag options. + + Attributes: + avx2_def (Dict[str]: List[str]): + AVX2 support dictionary mapping Extension properties to a + list of values. If compiler is AVX2 capable, then these will + be appended onto the end of the Extension properties. + """ + + def __init__(self, *args, **kwargs): + self.avx2_defs = kwargs.pop("avx2_defs", {}) + Extension.__init__(self, *args, **kwargs) + + +class build_ext_posix_avx2(build_ext): + """build_ext customized to test for AVX2 support in posix compiler. + + This is because until distutils has actually started the build + process, we can't be certain what compiler is being used. + + If compiler supports, then the avx2_defs dictionary on any given + Extension will be used to extend the other Extension attributes. + """ + + def _test_compiler_flags(self, name, flags): + # type: (List[str]) -> Bool + """Test that a sample program can compile with given flags. + + Attr: + flags (List[str]): the flags to test + name (str): An identifier-like name to cache the results as + + Returns: + (bool): Whether the compiler accepted the flags(s) + """ + # Look to see if we have a written file to cache the result + success_file = os.path.join(self.build_temp, "_{}_present".format(name)) + fail_file = os.path.join(self.build_temp, "_{}_failed".format(name)) + if os.path.isfile(success_file): + return True + elif os.path.isfile(fail_file): + return False + # No cache file, try to run the compile + try: + # Write an empty test file + test_file = os.path.join(self.build_temp, "test_{}_empty.c".format(name)) + if not os.path.isfile(test_file): + open(test_file, "w").close() + objects = self.compiler.compile( + [test_file], output_dir=self.build_temp, extra_postargs=flags + ) + # Write a success marker so we don't need to compile again + open(success_file, 'w').close() + return True + except CompileError: + # Write a failure marker so we don't need to compile again + open(fail_file, 'w').close() + return False + finally: + pass + + def build_extensions(self): + # Verify that the compiler supports requested extra flags + if self._test_compiler_flags("avx2", ["-mavx2"]): + # Apply the AVX2 properties to each extension + for extension in self.extensions: + if hasattr(extension, "avx2_defs"): + # Extend an existing attribute with the stored values + for attr, defs in extension.avx2_defs.items(): + getattr(extension, attr).extend(defs) + else: + print("AVX2 Unsupported by compiler") + + # Call up to the superclass to do the actual build + build_ext.build_extensions(self) + + +if __name__ == '__main__': + + with io.open('README.rst', encoding='utf-8') as f: + long_description = f.read() + + try: + import cpuinfo + cpu_info = cpuinfo.get_cpu_info() + except Exception: + # newer cpuinfo versions fail to import on unsupported architectures + cpu_info = None + + ########### Check versions ########## + def exit_with_error(message): + print('ERROR: %s' % message) + sys.exit(1) + + # Check for Python + if sys.version_info[0] == 2: + if sys.version_info[1] < 7: + exit_with_error("You need Python 2.7 or greater to install blosc!") + elif sys.version_info[0] == 3: + if sys.version_info[1] < 4: + exit_with_error("You need Python 3.4 or greater to install blosc!") + else: + exit_with_error("You need Python 2.7/3.4 or greater to install blosc!") + + tests_require = ['numpy', 'psutil'] + + ########### End of checks ########## + + # Read the long_description from README.rst + with open('README.rst') as f: + long_description = f.read() + + # Blosc version + VERSION = open('VERSION').read().strip() + # Create the version.py file + open('blosc/version.py', 'w').write('__version__ = "%s"\n' % VERSION) + + # Global variables + CFLAGS = os.environ.get('CFLAGS', '').split() + LFLAGS = os.environ.get('LFLAGS', '').split() + # Allow setting the Blosc dir if installed in the system + BLOSC_DIR = os.environ.get('BLOSC_DIR', '') + + # Check for USE_CODEC environment variables + try: + INCLUDE_LZ4 = os.environ['INCLUDE_LZ4'] == '1' + except KeyError: + INCLUDE_LZ4 = True + try: + INCLUDE_SNAPPY = os.environ['INCLUDE_SNAPPY'] == '1' + except KeyError: + INCLUDE_SNAPPY = False # Snappy is disabled by default + try: + INCLUDE_ZLIB = os.environ['INCLUDE_ZLIB'] == '1' + except KeyError: + INCLUDE_ZLIB = True + try: + INCLUDE_ZSTD = os.environ['INCLUDE_ZSTD'] == '1' + except KeyError: + INCLUDE_ZSTD = True + + + # Handle --blosc=[PATH] --lflags=[FLAGS] --cflags=[FLAGS] + args = sys.argv[:] + for arg in args: + if arg.find('--blosc=') == 0: + BLOSC_DIR = os.path.expanduser(arg.split('=')[1]) + sys.argv.remove(arg) + if arg.find('--lflags=') == 0: + LFLAGS = arg.split('=')[1].split() + sys.argv.remove(arg) + if arg.find('--cflags=') == 0: + CFLAGS = arg.split('=')[1].split() + sys.argv.remove(arg) + + + # Blosc sources and headers + + # To avoid potential namespace collisions use build_clib.py for each codec + # instead of co-compiling all sources files in one setuptools.Extension object. + clibs = [] # for build_clib, libraries TO BE BUILT + + # Below are parameters for the Extension object + sources = ["blosc/blosc_extension.c"] + inc_dirs = [] + lib_dirs = [] + libs = [] # Pre-built libraries ONLY, like python36.so + def_macros = [] + builder_class = build_ext # To swap out if we have AVX capability and posix + avx2_defs = {} # Definitions to build extension with if compiler supports AVX2 + + if BLOSC_DIR != '': + # Using the Blosc library + lib_dirs += [os.path.join(BLOSC_DIR, 'lib')] + inc_dirs += [os.path.join(BLOSC_DIR, 'include')] + libs += ['blosc'] + else: + + # Configure the Extension + # Compiling everything from included C-Blosc sources + sources += [f for f in glob('c-blosc/blosc/*.c') + if 'avx2' not in f and 'sse2' not in f] + + inc_dirs += [os.path.join('c-blosc', 'blosc')] + inc_dirs += glob('c-blosc/internal-complibs/*') + + # Codecs to be built with build_clib + if INCLUDE_LZ4: + clibs.append( ('lz4', {'sources': glob('c-blosc/internal-complibs/lz4*/*.c')} ) ) + inc_dirs += glob('c-blosc/internal-complibs/lz4*') + def_macros += [('HAVE_LZ4',1)] + + # Tried and failed to compile Snappy with gcc using 'cflags' on posix + # setuptools always uses gcc instead of g++, as it only checks for the + # env var 'CC' and not 'CXX'. + if INCLUDE_SNAPPY: + clibs.append( ('snappy', {'sources': glob('c-blosc/internal-complibs/snappy*/*.cc'), + 'cflags': ['-std=c++11', '-lstdc++'] } ) ) + inc_dirs += glob('c-blosc/internal-complibs/snappy*') + def_macros += [('HAVE_SNAPPY',1)] + + if INCLUDE_ZLIB: + clibs.append( ('zlib', {'sources': glob('c-blosc/internal-complibs/zlib*/*.c')} ) ) + def_macros += [('HAVE_ZLIB',1)] + + if INCLUDE_ZSTD: + clibs.append( ('zstd', {'sources': glob('c-blosc/internal-complibs/zstd*/*/*.c'), + 'include_dirs': glob('c-blosc/internal-complibs/zstd*') + glob('c-blosc/internal-complibs/zstd*/common') } ) ) + inc_dirs += glob('c-blosc/internal-complibs/zstd*/common') + inc_dirs += glob('c-blosc/internal-complibs/zstd*') + def_macros += [('HAVE_ZSTD',1)] + + + # Guess SSE2 or AVX2 capabilities + # SSE2 + if 'DISABLE_BLOSC_SSE2' not in os.environ and cpu_info != None and 'sse2' in cpu_info.get('flags', {}): + print('SSE2 detected') + CFLAGS.append('-DSHUFFLE_SSE2_ENABLED') + sources += [f for f in glob('c-blosc/blosc/*.c') if 'sse2' in f] + if os.name == 'posix': + CFLAGS.append('-msse2') + elif os.name == 'nt': + def_macros += [('__SSE2__', 1)] + # AVX2 + if 'DISABLE_BLOSC_AVX2' not in os.environ and cpu_info != None and 'sse2' in cpu_info.get('flags', {}): + if os.name == 'posix': + print("AVX2 detected") + avx2_defs = { + "extra_compile_args": ["-DSHUFFLE_AVX2_ENABLED", "-mavx2"], + "sources": [f for f in glob("c-blosc/blosc/*.c") if "avx2" in f] + } + # The CPU supports it but the compiler might not.. + builder_class = build_ext_posix_avx2 + elif(os.name == 'nt' and + LooseVersion(platform.python_version()) >= LooseVersion('3.5.0')): + # Neither MSVC2008 for Python 2.7 or MSVC2010 for Python 3.4 have + # sufficient AVX2 support + # Since we don't rely on any special compiler capabilities, + # we don't need to rely on testing the compiler + print('AVX2 detected') + CFLAGS.append('-DSHUFFLE_AVX2_ENABLED') + sources += [f for f in glob('c-blosc/blosc/*.c') if 'avx2' in f] + def_macros += [('__AVX2__', 1)] + # TODO: AVX512 + + classifiers = dedent("""\ + Development Status :: 5 - Production/Stable + Intended Audience :: Developers + Intended Audience :: Information Technology + Intended Audience :: Science/Research + License :: OSI Approved :: BSD License + Programming Language :: Python + Programming Language :: Python :: 2.7 + Programming Language :: Python :: 3.4 + Programming Language :: Python :: 3.5 + Programming Language :: Python :: 3.6 + Programming Language :: Python :: 3.7 + Topic :: Software Development :: Libraries :: Python Modules + Topic :: System :: Archiving :: Compression + Operating System :: Microsoft :: Windows + Operating System :: Unix + """) + + setup(name = "blosc", + version = VERSION, + description = 'Blosc data compressor', + long_description = long_description, + classifiers = [c for c in classifiers.split("\n") if c], + author = 'Francesc Alted, Valentin Haenel', + author_email = 'faltet@gmail.com, valentin@haenel.co', + maintainer = 'Francesc Alted, Valentin Haenel', + maintainer_email = 'faltet@gmail.com, valentin@haenel.co', + url = 'http://github.com/blosc/python-blosc', + license = 'https://opensource.org/licenses/BSD-3-Clause', + platforms = ['any'], + libraries = clibs, + ext_modules = [ + BloscExtension( "blosc.blosc_extension", + include_dirs=inc_dirs, + define_macros=def_macros, + sources=sources, + library_dirs=lib_dirs, + libraries=libs, + extra_link_args=LFLAGS, + extra_compile_args=CFLAGS, + avx2_defs=avx2_defs + ), + ], + tests_require=tests_require, + zip_safe=False, + packages = ['blosc'], + cmdclass={'build_ext': builder_class}, + ) +elif __name__ == '__mp_main__': + # This occurs from `cpuinfo 4.0.0` using multiprocessing to interrogate the + # CPUID flags + # https://github.com/workhorsy/py-cpuinfo/issues/108 + pass diff --git a/sources b/sources index 8def156..4cadc09 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (blosc-1.8.1.tar.gz) = f8cc5b38f2bdeac6b173e800313a3b71ba5b22b681e0ca90f3cdbf2fdb2c82826d478279297ffc2c91ce36ce21367c744e12b41e37a912deb4bdf1849e7359fa +SHA512 (blosc-1.10.2.tar.gz) = c1144e5b0f25863f66100ca9cdaa0bc97a89c99dbb8f31023bbd0695d764f9847fab563059191a2c3266a347b7d39b5c156612a97e97fdefc277e1e608da87d8 From 730af7f73729731b1e9a799311bc22fefa017cc4 Mon Sep 17 00:00:00 2001 From: Tomas Hrnciar Date: Mon, 19 Apr 2021 13:18:31 +0200 Subject: [PATCH 38/65] BuildRequire setuptools explicitly See https://fedoraproject.org/wiki/Changes/Reduce_dependencies_on_python3-setuptools --- python-blosc.spec | 1 + 1 file changed, 1 insertion(+) diff --git a/python-blosc.spec b/python-blosc.spec index a3be367..a52eb22 100644 --- a/python-blosc.spec +++ b/python-blosc.spec @@ -10,6 +10,7 @@ Source1: https://raw.githubusercontent.com/Blosc/python-blosc/f3c5e341a25 BuildRequires: gcc BuildRequires: blosc-devel >= 1.16.0 BuildRequires: python%{python3_pkgversion}-devel +BuildRequires: python%{python3_pkgversion}-setuptools BuildRequires: python%{python3_pkgversion}-numpy BuildRequires: python%{python3_pkgversion}-psutil BuildRequires: python%{python3_pkgversion}-cpuinfo From a9b3f95abffdb9ca4ad02282905510c19104d15f Mon Sep 17 00:00:00 2001 From: Python Maint Date: Fri, 4 Jun 2021 20:22:33 +0200 Subject: [PATCH 39/65] Rebuilt for Python 3.10 --- python-blosc.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/python-blosc.spec b/python-blosc.spec index a52eb22..5432236 100644 --- a/python-blosc.spec +++ b/python-blosc.spec @@ -1,7 +1,7 @@ Summary: Python wrapper for the Blosc high performance compressor Name: python-blosc Version: 1.10.2 -Release: 1%{?dist} +Release: 2%{?dist} License: MIT URL: https://github.com/Blosc/python-blosc Source0: https://github.com/Blosc/python-blosc/archive/v%{version}/blosc-%{version}.tar.gz @@ -55,6 +55,9 @@ PYTHONPATH=%{buildroot}%{python3_sitearch} %__python3 -c 'import sys, blosc; sys %doc README.rst RELEASE_NOTES.rst %changelog +* Fri Jun 04 2021 Python Maint - 1.10.2-2 +- Rebuilt for Python 3.10 + * Sat Feb 13 2021 Zbigniew Jędrzejewski-Szmek - 1.10.2-1 - Latest version (#1783504) From 4735f357dd31b50f06eeaa6bb8665d21439a3fb9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= Date: Tue, 15 Jun 2021 10:27:52 +0200 Subject: [PATCH 40/65] Version 1.10.4 --- python-blosc.spec | 11 +++++++---- sources | 2 +- 2 files changed, 8 insertions(+), 5 deletions(-) diff --git a/python-blosc.spec b/python-blosc.spec index 5432236..6f7942d 100644 --- a/python-blosc.spec +++ b/python-blosc.spec @@ -1,7 +1,7 @@ -Summary: Python wrapper for the Blosc high performance compressor Name: python-blosc -Version: 1.10.2 -Release: 2%{?dist} +Summary: Python wrapper for the Blosc high performance compressor +Version: 1.10.4 +Release: 1%{?dist} License: MIT URL: https://github.com/Blosc/python-blosc Source0: https://github.com/Blosc/python-blosc/archive/v%{version}/blosc-%{version}.tar.gz @@ -51,10 +51,13 @@ PYTHONPATH=%{buildroot}%{python3_sitearch} %__python3 -c 'import sys, blosc; sys %files -n python%{python3_pkgversion}-blosc %{python3_sitearch}/blosc/ %{python3_sitearch}/blosc-%{version}*-py*.egg-info -%license LICENSES/PYTHON-BLOSC.txt +%license LICENSES/BLOSC.txt %doc README.rst RELEASE_NOTES.rst %changelog +* Tue Jun 15 2021 Zbigniew Jędrzejewski-Szmek - 1.10.4-1 +- Latest bugfix version (#1966828) + * Fri Jun 04 2021 Python Maint - 1.10.2-2 - Rebuilt for Python 3.10 diff --git a/sources b/sources index 4cadc09..18549d0 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (blosc-1.10.2.tar.gz) = c1144e5b0f25863f66100ca9cdaa0bc97a89c99dbb8f31023bbd0695d764f9847fab563059191a2c3266a347b7d39b5c156612a97e97fdefc277e1e608da87d8 +SHA512 (blosc-1.10.4.tar.gz) = 60d4a988d87f1b4fcd7e787137049c4053ec402ae3a3eee5cebff2651c5f2c09a351f886117e51ec87ab1ba59b9ac336e70ef119bfa0073c283437fbd23a694c From 73359c1b3cdf7f70ca2a5fd85d703c43f506f55c Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 23 Jul 2021 05:22:39 +0000 Subject: [PATCH 41/65] - Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild Signed-off-by: Fedora Release Engineering --- python-blosc.spec | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/python-blosc.spec b/python-blosc.spec index 6f7942d..dd68ed7 100644 --- a/python-blosc.spec +++ b/python-blosc.spec @@ -1,7 +1,7 @@ Name: python-blosc Summary: Python wrapper for the Blosc high performance compressor Version: 1.10.4 -Release: 1%{?dist} +Release: 2%{?dist} License: MIT URL: https://github.com/Blosc/python-blosc Source0: https://github.com/Blosc/python-blosc/archive/v%{version}/blosc-%{version}.tar.gz @@ -55,6 +55,9 @@ PYTHONPATH=%{buildroot}%{python3_sitearch} %__python3 -c 'import sys, blosc; sys %doc README.rst RELEASE_NOTES.rst %changelog +* Fri Jul 23 2021 Fedora Release Engineering - 1.10.4-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + * Tue Jun 15 2021 Zbigniew Jędrzejewski-Szmek - 1.10.4-1 - Latest bugfix version (#1966828) From c0cb6d7ec60efc7a23571e89b50f49db8ecc5dca Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= Date: Sun, 7 Nov 2021 11:23:52 +0100 Subject: [PATCH 42/65] Convert to rpmautospec --- changelog | 160 +++++++++++++++++++++++++++++++++++++++++++++ python-blosc.spec | 163 +--------------------------------------------- 2 files changed, 162 insertions(+), 161 deletions(-) create mode 100644 changelog diff --git a/changelog b/changelog new file mode 100644 index 0000000..915172e --- /dev/null +++ b/changelog @@ -0,0 +1,160 @@ +* Fri Jul 23 2021 Fedora Release Engineering - 1.10.4-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild + +* Tue Jun 15 2021 Zbigniew Jędrzejewski-Szmek - 1.10.4-1 +- Latest bugfix version (#1966828) + +* Fri Jun 04 2021 Python Maint - 1.10.2-2 +- Rebuilt for Python 3.10 + +* Sat Feb 13 2021 Zbigniew Jędrzejewski-Szmek - 1.10.2-1 +- Latest version (#1783504) + +* Wed Jan 27 2021 Fedora Release Engineering - 1.8.1-9 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild + +* Tue Jul 28 2020 Fedora Release Engineering - 1.8.1-8 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild + +* Wed May 27 2020 Charalampos Stratakis - 1.8.1-7 +- Fix Python 3.9 compatibility (#1792055) + +* Tue May 26 2020 Miro Hrončok - 1.8.1-6 +- Rebuilt for Python 3.9 + +* Thu Jan 30 2020 Fedora Release Engineering - 1.8.1-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild + +* Thu Oct 03 2019 Miro Hrončok - 1.8.1-4 +- Rebuilt for Python 3.8.0rc1 (#1748018) + +* Mon Aug 19 2019 Miro Hrončok - 1.8.1-3 +- Rebuilt for Python 3.8 + +* Fri Jul 26 2019 Fedora Release Engineering - 1.8.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild + +* Sun May 5 2019 Zbigniew Jędrzejewski-Szmek - 1.8.1-1 +- Update to latest version (#1684965) + +* Sat Feb 02 2019 Fedora Release Engineering - 1.5.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild + +* Wed Oct 17 2018 Zbigniew Jędrzejewski-Szmek - 1.5.1-2 +- Subpackage python2-blosc has been removed + See https://fedoraproject.org/wiki/Changes/Mass_Python_2_Package_Removal + +* Thu Jul 19 2018 Zbigniew Jędrzejewski-Szmek - 1.5.1-1 +- Update to latest version (#1372856) + +* Fri Jul 13 2018 Fedora Release Engineering - 1.4.1-9 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild + +* Tue Jun 19 2018 Miro Hrončok - 1.4.1-8 +- Rebuilt for Python 3.7 + +* Fri Feb 09 2018 Fedora Release Engineering - 1.4.1-7 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Thu Aug 03 2017 Fedora Release Engineering - 1.4.1-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild + +* Thu Jul 27 2017 Fedora Release Engineering - 1.4.1-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Sat Feb 11 2017 Fedora Release Engineering - 1.4.1-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + +* Thu Jan 05 2017 Dan Horák - 1.4.1-3 +- remove build time CPU detection, fixed build on ppc64/ppc64le and s390(x) + +* Mon Dec 19 2016 Miro Hrončok - 1.4.1-2 +- Rebuild for Python 3.6 + +* Thu Jul 28 2016 Zbigniew Jędrzejewski-Szmek - 1.4.1-1 +- Update to latest version (#1323008) + +* Tue Jul 19 2016 Fedora Release Engineering - 1.3.3-2 +- https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages + +* Thu Jul 14 2016 Thibault North - 1.3.3-1 +- Update to 1.3.3 + +* Mon May 16 2016 Orion Poplawski - 1.3.2-1 +- Update to 1.3.2 + +* Mon May 16 2016 Orion Poplawski - 1.2.8-3 +- Fix provides filter +- Use %%python3_pkgversion for EPEL7 compatibility + +* Sat Feb 13 2016 Zbigniew Jędrzejewski-Szmek - 1.2.8-2 +- Add dependency on psutil to check for leaks during build +- Fix build (#1307896) + +* Thu Feb 04 2016 Fedora Release Engineering - 1.2.8-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + +* Mon Nov 16 2015 Zbigniew Jędrzejewski-Szmek - 1.2.8-1 +- Update to latest version (#1263680) +- Add python2 subpackage following the latest guidelines + +* Tue Nov 10 2015 Fedora Release Engineering - 1.2.7-5 +- Rebuilt for https://fedoraproject.org/wiki/Changes/python3.5 + +* Thu Jun 18 2015 Fedora Release Engineering - 1.2.7-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild + +* Fri May 29 2015 Zbigniew Jędrzejewski-Szmek - 1.2.7-3 +- Run test suite + +* Thu May 28 2015 Zbigniew Jędrzejewski-Szmek - 1.2.7-2 +- Build python 3 subpackage +- Install license and readme files + +* Thu May 7 2015 Zbigniew Jędrzejewski-Szmek - 1.2.7-1 +- Update to 1.2.7 (#1212231) + +* Mon Apr 20 2015 Zbigniew Jędrzejewski-Szmek - 1.2.5-1 +- Update to 1.2.5 (#1212231) + +* Tue Jan 06 2015 Zbigniew Jędrzejewski-Szmek - 1.2.4-1 +- Update to 1.2.4 + +* Sun Aug 17 2014 Fedora Release Engineering - 1.2.3-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild + +* Sat Jun 07 2014 Fedora Release Engineering - 1.2.3-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild + +* Wed Mar 26 2014 Zbigniew Jędrzejewski-Szmek - 1.2.3-2 +- Rebuild for blosc + +* Sat Mar 22 2014 Thibault North - 1.2.3-1 +- Update to 1.2.3 for blosc 1.3.4 + +* Wed Jan 08 2014 Zbigniew Jędrzejewski-Szmek - 1.1-8 +- Rebuild for blosc + +* Tue Nov 05 2013 Thibault North - 1.1-7 +- Properly link with blosc shared lib + +* Tue Nov 05 2013 Thibault North - 1.1-6 +- Disable SSE2 optimizations + +* Tue Nov 05 2013 Thibault North - 1.1-5 +- Final cosmetic fixes + +* Tue Nov 05 2013 Thibault North - 1.1-4 +- Fix wrong lib perms + +* Fri Oct 18 2013 Thibault North - 1.1-3 +- Fixes, thanks to Christopher Meng + +* Wed Oct 16 2013 Thibault North - 1.1-2 +- Various fixes + +* Fri Sep 20 2013 Thibault North - 1.1-1 +- Sync to version 1.1 + +* Mon Jan 2 2012 Thibault North - 1.0.7-1 +- Initial package diff --git a/python-blosc.spec b/python-blosc.spec index dd68ed7..2ca2d18 100644 --- a/python-blosc.spec +++ b/python-blosc.spec @@ -1,7 +1,7 @@ Name: python-blosc Summary: Python wrapper for the Blosc high performance compressor Version: 1.10.4 -Release: 2%{?dist} +Release: %autorelease License: MIT URL: https://github.com/Blosc/python-blosc Source0: https://github.com/Blosc/python-blosc/archive/v%{version}/blosc-%{version}.tar.gz @@ -55,163 +55,4 @@ PYTHONPATH=%{buildroot}%{python3_sitearch} %__python3 -c 'import sys, blosc; sys %doc README.rst RELEASE_NOTES.rst %changelog -* Fri Jul 23 2021 Fedora Release Engineering - 1.10.4-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_35_Mass_Rebuild - -* Tue Jun 15 2021 Zbigniew Jędrzejewski-Szmek - 1.10.4-1 -- Latest bugfix version (#1966828) - -* Fri Jun 04 2021 Python Maint - 1.10.2-2 -- Rebuilt for Python 3.10 - -* Sat Feb 13 2021 Zbigniew Jędrzejewski-Szmek - 1.10.2-1 -- Latest version (#1783504) - -* Wed Jan 27 2021 Fedora Release Engineering - 1.8.1-9 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_34_Mass_Rebuild - -* Tue Jul 28 2020 Fedora Release Engineering - 1.8.1-8 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_33_Mass_Rebuild - -* Wed May 27 2020 Charalampos Stratakis - 1.8.1-7 -- Fix Python 3.9 compatibility (#1792055) - -* Tue May 26 2020 Miro Hrončok - 1.8.1-6 -- Rebuilt for Python 3.9 - -* Thu Jan 30 2020 Fedora Release Engineering - 1.8.1-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_32_Mass_Rebuild - -* Thu Oct 03 2019 Miro Hrončok - 1.8.1-4 -- Rebuilt for Python 3.8.0rc1 (#1748018) - -* Mon Aug 19 2019 Miro Hrončok - 1.8.1-3 -- Rebuilt for Python 3.8 - -* Fri Jul 26 2019 Fedora Release Engineering - 1.8.1-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_31_Mass_Rebuild - -* Sun May 5 2019 Zbigniew Jędrzejewski-Szmek - 1.8.1-1 -- Update to latest version (#1684965) - -* Sat Feb 02 2019 Fedora Release Engineering - 1.5.1-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_30_Mass_Rebuild - -* Wed Oct 17 2018 Zbigniew Jędrzejewski-Szmek - 1.5.1-2 -- Subpackage python2-blosc has been removed - See https://fedoraproject.org/wiki/Changes/Mass_Python_2_Package_Removal - -* Thu Jul 19 2018 Zbigniew Jędrzejewski-Szmek - 1.5.1-1 -- Update to latest version (#1372856) - -* Fri Jul 13 2018 Fedora Release Engineering - 1.4.1-9 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_29_Mass_Rebuild - -* Tue Jun 19 2018 Miro Hrončok - 1.4.1-8 -- Rebuilt for Python 3.7 - -* Fri Feb 09 2018 Fedora Release Engineering - 1.4.1-7 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild - -* Thu Aug 03 2017 Fedora Release Engineering - 1.4.1-6 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild - -* Thu Jul 27 2017 Fedora Release Engineering - 1.4.1-5 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild - -* Sat Feb 11 2017 Fedora Release Engineering - 1.4.1-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild - -* Thu Jan 05 2017 Dan Horák - 1.4.1-3 -- remove build time CPU detection, fixed build on ppc64/ppc64le and s390(x) - -* Mon Dec 19 2016 Miro Hrončok - 1.4.1-2 -- Rebuild for Python 3.6 - -* Thu Jul 28 2016 Zbigniew Jędrzejewski-Szmek - 1.4.1-1 -- Update to latest version (#1323008) - -* Tue Jul 19 2016 Fedora Release Engineering - 1.3.3-2 -- https://fedoraproject.org/wiki/Changes/Automatic_Provides_for_Python_RPM_Packages - -* Thu Jul 14 2016 Thibault North - 1.3.3-1 -- Update to 1.3.3 - -* Mon May 16 2016 Orion Poplawski - 1.3.2-1 -- Update to 1.3.2 - -* Mon May 16 2016 Orion Poplawski - 1.2.8-3 -- Fix provides filter -- Use %%python3_pkgversion for EPEL7 compatibility - -* Sat Feb 13 2016 Zbigniew Jędrzejewski-Szmek - 1.2.8-2 -- Add dependency on psutil to check for leaks during build -- Fix build (#1307896) - -* Thu Feb 04 2016 Fedora Release Engineering - 1.2.8-2 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild - -* Mon Nov 16 2015 Zbigniew Jędrzejewski-Szmek - 1.2.8-1 -- Update to latest version (#1263680) -- Add python2 subpackage following the latest guidelines - -* Tue Nov 10 2015 Fedora Release Engineering - 1.2.7-5 -- Rebuilt for https://fedoraproject.org/wiki/Changes/python3.5 - -* Thu Jun 18 2015 Fedora Release Engineering - 1.2.7-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild - -* Fri May 29 2015 Zbigniew Jędrzejewski-Szmek - 1.2.7-3 -- Run test suite - -* Thu May 28 2015 Zbigniew Jędrzejewski-Szmek - 1.2.7-2 -- Build python 3 subpackage -- Install license and readme files - -* Thu May 7 2015 Zbigniew Jędrzejewski-Szmek - 1.2.7-1 -- Update to 1.2.7 (#1212231) - -* Mon Apr 20 2015 Zbigniew Jędrzejewski-Szmek - 1.2.5-1 -- Update to 1.2.5 (#1212231) - -* Tue Jan 06 2015 Zbigniew Jędrzejewski-Szmek - 1.2.4-1 -- Update to 1.2.4 - -* Sun Aug 17 2014 Fedora Release Engineering - 1.2.3-4 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild - -* Sat Jun 07 2014 Fedora Release Engineering - 1.2.3-3 -- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild - -* Wed Mar 26 2014 Zbigniew Jędrzejewski-Szmek - 1.2.3-2 -- Rebuild for blosc - -* Sat Mar 22 2014 Thibault North - 1.2.3-1 -- Update to 1.2.3 for blosc 1.3.4 - -* Wed Jan 08 2014 Zbigniew Jędrzejewski-Szmek - 1.1-8 -- Rebuild for blosc - -* Tue Nov 05 2013 Thibault North - 1.1-7 -- Properly link with blosc shared lib - -* Tue Nov 05 2013 Thibault North - 1.1-6 -- Disable SSE2 optimizations - -* Tue Nov 05 2013 Thibault North - 1.1-5 -- Final cosmetic fixes - -* Tue Nov 05 2013 Thibault North - 1.1-4 -- Fix wrong lib perms - -* Fri Oct 18 2013 Thibault North - 1.1-3 -- Fixes, thanks to Christopher Meng - -* Wed Oct 16 2013 Thibault North - 1.1-2 -- Various fixes - -* Fri Sep 20 2013 Thibault North - 1.1-1 -- Sync to version 1.1 - -* Mon Jan 2 2012 Thibault North - 1.0.7-1 -- Initial package +%autochangelog From c21ce9a665b6fe33ccb0e22b488c3554f80f64ba Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= Date: Sun, 7 Nov 2021 11:25:02 +0100 Subject: [PATCH 43/65] Version 1.10.6 (fixes #2011380) --- python-blosc.spec | 2 +- sources | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/python-blosc.spec b/python-blosc.spec index 2ca2d18..3bbbfa2 100644 --- a/python-blosc.spec +++ b/python-blosc.spec @@ -1,6 +1,6 @@ Name: python-blosc Summary: Python wrapper for the Blosc high performance compressor -Version: 1.10.4 +Version: 1.10.6 Release: %autorelease License: MIT URL: https://github.com/Blosc/python-blosc diff --git a/sources b/sources index 18549d0..cf7acb1 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (blosc-1.10.4.tar.gz) = 60d4a988d87f1b4fcd7e787137049c4053ec402ae3a3eee5cebff2651c5f2c09a351f886117e51ec87ab1ba59b9ac336e70ef119bfa0073c283437fbd23a694c +SHA512 (blosc-1.10.6.tar.gz) = e283b132ebb91e7ce362ec65a1d6760e3793046371ea545a9e842372084182bcc194c3a0e1cb20914de58554063995a238ea0a129214731689e8cd5f4203d3ed From 916486b5087389fece7023bfa85f78fca1be62dc Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 21 Jan 2022 10:52:04 +0000 Subject: [PATCH 44/65] - Rebuilt for https://fedoraproject.org/wiki/Fedora_36_Mass_Rebuild Signed-off-by: Fedora Release Engineering From 638a8d793a59c92500f5b2f39ff76e0aa0e53b78 Mon Sep 17 00:00:00 2001 From: Python Maint Date: Mon, 13 Jun 2022 18:56:00 +0200 Subject: [PATCH 45/65] Rebuilt for Python 3.11 From f4947a3ef8ed3078be0a0be292f3599fb5b8216f Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 22 Jul 2022 16:59:25 +0000 Subject: [PATCH 46/65] Rebuilt for https://fedoraproject.org/wiki/Fedora_37_Mass_Rebuild Signed-off-by: Fedora Release Engineering From ac3ba0bde874d30a632746f06cb8c8a9234c1d60 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 20 Jan 2023 11:49:35 +0000 Subject: [PATCH 47/65] Rebuilt for https://fedoraproject.org/wiki/Fedora_38_Mass_Rebuild Signed-off-by: Fedora Release Engineering From 3063863af94bc0b5dc5611d3d7e2ae1e63ba795a Mon Sep 17 00:00:00 2001 From: jonathanspw Date: Sun, 29 Jan 2023 03:32:05 -0600 Subject: [PATCH 48/65] update to 1.11.0 --- python-blosc.spec | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/python-blosc.spec b/python-blosc.spec index 3bbbfa2..c43e732 100644 --- a/python-blosc.spec +++ b/python-blosc.spec @@ -1,6 +1,6 @@ Name: python-blosc Summary: Python wrapper for the Blosc high performance compressor -Version: 1.10.6 +Version: 1.11.0 Release: %autorelease License: MIT URL: https://github.com/Blosc/python-blosc @@ -30,8 +30,6 @@ Requires: blosc%{_isa} >= 1.16.0 %prep %autosetup -p1 -# Remove bundled copy -rm cpuinfo.py # Overwrite setup.py with the last version that does not use skbuild and cmake cp %{SOURCE1} . @@ -51,7 +49,7 @@ PYTHONPATH=%{buildroot}%{python3_sitearch} %__python3 -c 'import sys, blosc; sys %files -n python%{python3_pkgversion}-blosc %{python3_sitearch}/blosc/ %{python3_sitearch}/blosc-%{version}*-py*.egg-info -%license LICENSES/BLOSC.txt +%license LICENSE.txt %doc README.rst RELEASE_NOTES.rst %changelog From f3307e6f500265362f852d3f4d023e77f143f2f5 Mon Sep 17 00:00:00 2001 From: jonathanspw Date: Sun, 29 Jan 2023 03:32:39 -0600 Subject: [PATCH 49/65] update sources --- sources | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/sources b/sources index cf7acb1..ee3a66b 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (blosc-1.10.6.tar.gz) = e283b132ebb91e7ce362ec65a1d6760e3793046371ea545a9e842372084182bcc194c3a0e1cb20914de58554063995a238ea0a129214731689e8cd5f4203d3ed +SHA512 (blosc-1.11.0.tar.gz) = 94c6f470b9f6e8d1fec0e44709e84582cd595291dddcd07ea174665a6fc12e029c6f0c781c8e506e95d4f9ee9fc27cbbfb5bc2789f341df3e84f342626dcfdb0 From 1114febfbe0c36b299e271ac9bb30ab65ed579ca Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= Date: Tue, 21 Feb 2023 15:36:24 +0100 Subject: [PATCH 50/65] Version 1.11.1 ... (rhbz#2152011) --- python-blosc.spec | 2 +- sources | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/python-blosc.spec b/python-blosc.spec index c43e732..f308e11 100644 --- a/python-blosc.spec +++ b/python-blosc.spec @@ -1,6 +1,6 @@ Name: python-blosc Summary: Python wrapper for the Blosc high performance compressor -Version: 1.11.0 +Version: 1.11.1 Release: %autorelease License: MIT URL: https://github.com/Blosc/python-blosc diff --git a/sources b/sources index ee3a66b..2f861a0 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (blosc-1.11.0.tar.gz) = 94c6f470b9f6e8d1fec0e44709e84582cd595291dddcd07ea174665a6fc12e029c6f0c781c8e506e95d4f9ee9fc27cbbfb5bc2789f341df3e84f342626dcfdb0 +SHA512 (blosc-1.11.1.tar.gz) = 21f8a697a3a902860a6ed72233984cf00c464ec0ddde9842a0c24b1e8e5ec4dd57b872096445a873d162d7529cba5c3666ba2a3ee3f9b1b18107d9636011281c From 845a97db6f8928e889a714a7315fc59371588a82 Mon Sep 17 00:00:00 2001 From: Python Maint Date: Wed, 14 Jun 2023 18:11:01 +0200 Subject: [PATCH 51/65] Rebuilt for Python 3.12 From 5ec97207781277f76c802b85d03ccee8b0e55efa Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 21 Jul 2023 08:01:53 +0000 Subject: [PATCH 52/65] Rebuilt for https://fedoraproject.org/wiki/Fedora_39_Mass_Rebuild Signed-off-by: Fedora Release Engineering From cc348ddb015a558d3a9a1a316e21f9102b7ef999 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= Date: Tue, 21 Nov 2023 18:13:06 +0100 Subject: [PATCH 53/65] Convert license tag to SPDX --- python-blosc.spec | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/python-blosc.spec b/python-blosc.spec index f308e11..7030805 100644 --- a/python-blosc.spec +++ b/python-blosc.spec @@ -2,7 +2,7 @@ Name: python-blosc Summary: Python wrapper for the Blosc high performance compressor Version: 1.11.1 Release: %autorelease -License: MIT +License: BSD-3-Clause URL: https://github.com/Blosc/python-blosc Source0: https://github.com/Blosc/python-blosc/archive/v%{version}/blosc-%{version}.tar.gz Source1: https://raw.githubusercontent.com/Blosc/python-blosc/f3c5e341a2504a03c225f4f1d9066ccdf4bd31dd/setup.py From e8d8e130cb02a6a063128d30557880fc7a65cd81 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sun, 21 Jan 2024 23:53:53 +0000 Subject: [PATCH 54/65] Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild From 95112fa9552b740094bd1aea2acd4ad52efb9fc7 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 26 Jan 2024 02:10:05 +0000 Subject: [PATCH 55/65] Rebuilt for https://fedoraproject.org/wiki/Fedora_40_Mass_Rebuild From caafb063cb63368e2520a573bbc1f5ca47d38871 Mon Sep 17 00:00:00 2001 From: Python Maint Date: Sat, 8 Jun 2024 08:08:30 +0200 Subject: [PATCH 56/65] Rebuilt for Python 3.13 From 3ff014b945a8b16e5130f41b255415e95e1db4b7 Mon Sep 17 00:00:00 2001 From: Jonathan Wright Date: Tue, 25 Jun 2024 15:11:01 -0500 Subject: [PATCH 57/65] update to 1.11.2 rhbz#2294171 --- python-blosc.spec | 2 +- sources | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/python-blosc.spec b/python-blosc.spec index 7030805..bb0e140 100644 --- a/python-blosc.spec +++ b/python-blosc.spec @@ -1,6 +1,6 @@ Name: python-blosc Summary: Python wrapper for the Blosc high performance compressor -Version: 1.11.1 +Version: 1.11.2 Release: %autorelease License: BSD-3-Clause URL: https://github.com/Blosc/python-blosc diff --git a/sources b/sources index 2f861a0..ed0ab54 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (blosc-1.11.1.tar.gz) = 21f8a697a3a902860a6ed72233984cf00c464ec0ddde9842a0c24b1e8e5ec4dd57b872096445a873d162d7529cba5c3666ba2a3ee3f9b1b18107d9636011281c +SHA512 (blosc-1.11.2.tar.gz) = 56a53828669ac9d1452b247b8aad6bdfcb71ecffe9b8c7723e4405825704506946f150f54633b7e0886160255e5619c698b97847963c909e14c97808c04f39ab From a08a5e223dcfa145905410b553c34c088c9f6763 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 19 Jul 2024 10:06:21 +0000 Subject: [PATCH 58/65] Rebuilt for https://fedoraproject.org/wiki/Fedora_41_Mass_Rebuild From 209b2f0f85d137f18667884e8d517dafb936765b Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Sat, 18 Jan 2025 12:36:13 +0000 Subject: [PATCH 59/65] Rebuilt for https://fedoraproject.org/wiki/Fedora_42_Mass_Rebuild From 7cb38b4c626efc39b57ae85efab6bbce2b63fd02 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= Date: Mon, 19 May 2025 11:47:58 +0200 Subject: [PATCH 60/65] Version 1.11.3 ... (rhbz#2366962) - Just minor fixes --- python-blosc.spec | 2 +- sources | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/python-blosc.spec b/python-blosc.spec index bb0e140..ff76a40 100644 --- a/python-blosc.spec +++ b/python-blosc.spec @@ -1,6 +1,6 @@ Name: python-blosc Summary: Python wrapper for the Blosc high performance compressor -Version: 1.11.2 +Version: 1.11.3 Release: %autorelease License: BSD-3-Clause URL: https://github.com/Blosc/python-blosc diff --git a/sources b/sources index ed0ab54..5a5fb48 100644 --- a/sources +++ b/sources @@ -1 +1 @@ -SHA512 (blosc-1.11.2.tar.gz) = 56a53828669ac9d1452b247b8aad6bdfcb71ecffe9b8c7723e4405825704506946f150f54633b7e0886160255e5619c698b97847963c909e14c97808c04f39ab +SHA512 (blosc-1.11.3.tar.gz) = fc82b7b100d306965874868b2a0b1b6a9b865f1ba86ce65546aeb8212ba5085ef7a565f46ac3b40f648641d449d9f5265087ca8670075221ba8018dc8efd7be4 From 3896f3a49a1edd8912ebd51e49ccdcffedbe388c Mon Sep 17 00:00:00 2001 From: Python Maint Date: Tue, 3 Jun 2025 15:33:09 +0200 Subject: [PATCH 61/65] Rebuilt for Python 3.14 From a8696ba24fd597376dde8cdbd6e1547747df2d19 Mon Sep 17 00:00:00 2001 From: Fedora Release Engineering Date: Fri, 25 Jul 2025 07:02:39 +0000 Subject: [PATCH 62/65] Rebuilt for https://fedoraproject.org/wiki/Fedora_43_Mass_Rebuild From e085788a2afbc1876345b10e03634ef77a96b202 Mon Sep 17 00:00:00 2001 From: Python Maint Date: Fri, 15 Aug 2025 13:23:35 +0200 Subject: [PATCH 63/65] Rebuilt for Python 3.14.0rc2 bytecode From 78da716688ffc7909c9c181bad4e8ee0cb72c766 Mon Sep 17 00:00:00 2001 From: Python Maint Date: Fri, 19 Sep 2025 12:55:27 +0200 Subject: [PATCH 64/65] Rebuilt for Python 3.14.0rc3 bytecode From 932fa34f9784e799284a7818668124e5f8956164 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= Date: Fri, 31 Oct 2025 12:36:14 +0100 Subject: [PATCH 65/65] Add patch to fix build ... (rhbz#2385442) --- ...-docs-update-example-for-newer-numpy.patch | 30 +++++++++++++++++++ python-blosc.spec | 2 ++ 2 files changed, 32 insertions(+) create mode 100644 0001-docs-update-example-for-newer-numpy.patch diff --git a/0001-docs-update-example-for-newer-numpy.patch b/0001-docs-update-example-for-newer-numpy.patch new file mode 100644 index 0000000..e46338a --- /dev/null +++ b/0001-docs-update-example-for-newer-numpy.patch @@ -0,0 +1,30 @@ +From ed3998803650bec0666c3ca458df76fcd9293417 Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= +Date: Fri, 31 Oct 2025 12:33:57 +0100 +Subject: [PATCH] docs: update example for newer numpy + +File ".../usr/lib64/python3.14/site-packages/blosc/toplevel.py", line 515, in blosc.toplevel.compress_ptr +Failed example: + np_ans = numpy.fromstring(d, dtype=np_array.dtype) +Exception raised: + Traceback (most recent call last): + File "", line 1, in + np_ans = numpy.fromstring(d, dtype=np_array.dtype) + ValueError: The binary mode of fromstring is removed, use frombuffer instead +--- + blosc/toplevel.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/blosc/toplevel.py b/blosc/toplevel.py +index 4d2d4139af..3ef2327618 100644 +--- a/blosc/toplevel.py ++++ b/blosc/toplevel.py +@@ -513,7 +513,7 @@ def compress_ptr(address, items, typesize=8, clevel=9, shuffle=blosc.SHUFFLE, + >>> c = blosc.compress_ptr(np_array.__array_interface__['data'][0], \ + items, np_array.dtype.itemsize) + >>> d = blosc.decompress(c) +- >>> np_ans = numpy.fromstring(d, dtype=np_array.dtype) ++ >>> np_ans = numpy.frombuffer(d, dtype=np_array.dtype) + >>> bool((np_array == np_ans).all()) + True + diff --git a/python-blosc.spec b/python-blosc.spec index ff76a40..4e93d3a 100644 --- a/python-blosc.spec +++ b/python-blosc.spec @@ -7,6 +7,8 @@ URL: https://github.com/Blosc/python-blosc Source0: https://github.com/Blosc/python-blosc/archive/v%{version}/blosc-%{version}.tar.gz Source1: https://raw.githubusercontent.com/Blosc/python-blosc/f3c5e341a2504a03c225f4f1d9066ccdf4bd31dd/setup.py +Patch: 0001-docs-update-example-for-newer-numpy.patch + BuildRequires: gcc BuildRequires: blosc-devel >= 1.16.0 BuildRequires: python%{python3_pkgversion}-devel