From 33e36bbab483c0860a014e741d842ea2b8fd13a928eca5444af6ebeb0ed3e7aa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Adrian=20Schr=C3=B6ter?= Date: Fri, 3 May 2024 20:15:00 +0200 Subject: [PATCH] Sync from SUSE:SLFO:Main python-blosc revision 455f58ccc3ec746b0fb3e0176542f947 --- .gitattributes | 23 +++ blosc-1.11.1.tar.gz | 3 + python-blosc.changes | 338 +++++++++++++++++++++++++++++++++++++++++++ python-blosc.spec | 75 ++++++++++ 4 files changed, 439 insertions(+) create mode 100644 .gitattributes create mode 100644 blosc-1.11.1.tar.gz create mode 100644 python-blosc.changes create mode 100644 python-blosc.spec diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9b03811 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/blosc-1.11.1.tar.gz b/blosc-1.11.1.tar.gz new file mode 100644 index 0000000..69ce652 --- /dev/null +++ b/blosc-1.11.1.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c22119b27bae1063a697f639028b422d55811b0880c3fc0149cbdea791d0b276 +size 1177460 diff --git a/python-blosc.changes b/python-blosc.changes new file mode 100644 index 0000000..0e58f8e --- /dev/null +++ b/python-blosc.changes @@ -0,0 +1,338 @@ +------------------------------------------------------------------- +Sat Jun 10 12:29:50 UTC 2023 - ecsos + +- Add %{?sle15_python_module_pythons} + +------------------------------------------------------------------- +Fri Feb 17 22:03:24 UTC 2023 - Ben Greiner + +- Update to version 1.11.1 + * Many small code improvements, improved consistency and typo + fixes. Thanks to Dimitri Papadopoulos Orfanos. + * Support for Python 3.11. Support for Python 3.7 has been + dropped. Thanks to Dimitri Papadopoulos Orfanos. + * Several other fixes, mainly related with the building process, + which should be more solid now in different situations. +- Release 1.10.6 + * Add a missed cmake folder to distributed files. See #253. + Thanks to Ben Greiner. +- Release 1.10.5 + * Re-enable the possibility to use an already installed C-Blosc + library. See #244. Thanks to Ben Greiner. +- Release 1.10.4 + * Update blosc.nthreads when blosc.set_nthreads() is called. + Fixes #246 +- Drop use-system-blosc.patch +- PEP517 build + +------------------------------------------------------------------- +Sat Feb 13 13:40:00 UTC 2021 - Ben Greiner + +- Update to version 1.10.2 + * (Upstream bumped the version to release their wheels) + * Officially drop support for Python < 3.7. Although we did not + any explicit action that is incompatible with older Python + versions, we only provide wheels for Python >= 3.7 (til 3.9). +- Skip python36 build on TW, because upstream dropped support and + numpy follows NEP 29 +- Use the system provided Blosc library + * use-system-blosc.patch gh#Blosc/python-blosc#244 + +------------------------------------------------------------------- +Sun Dec 20 18:35:01 UTC 2020 - andy great + +- Update to version 1.9.2. + * Internal C-Blosc updated to 1.20.1. This fixes + https://github.com/Blosc/python-blosc/issues/229, and also + brings many new updates in internal codecs, providing + interesting bumps in performance in some cases. + * Due to recent addition of more cores in new CPUs, the number of + internal threads to be used by default has been increased from + 4 to 8. + * Allow zero-copy decompression by allowing bytes-like input. + * Fix DeprecationWarning due to invalid escape sequence and use + array.tobytes for Python 3.9. + +------------------------------------------------------------------- +Thu Aug 20 18:37:32 UTC 2020 - Bernhard Wiedemann + +- Disable AVX2 to avoid compile-time CPU-detection (boo#1100677) + +------------------------------------------------------------------- +Fri Jul 17 07:17:58 UTC 2020 - Guillaume GARDET + +- Enable build on all archs + +------------------------------------------------------------------- +Wed Jul 8 09:37:15 UTC 2020 - Marketa Calabkova + +- Update to 1.9.1 + * Disable the attempt to include support for SSE2 and AVX2 on non-Intel + platforms, allowing the build on such platforms (see #244). + * Dropped support for Python 2.7 and 3.5. + * Fixed the copy of the leftovers of a chunk when its size is not + a multiple of the typesize. + +------------------------------------------------------------------- +Thu Mar 26 14:20:07 UTC 2020 - Paolo Stivanin + +- Use unittest instead of nose + +------------------------------------------------------------------- +Thu Jan 30 16:30:20 UTC 2020 - Todd R + +- Update to 1.8.3 + * Add a missing pyproject.toml to MANIFEST.in. This allows + to install the necessary skbuild module. +- Update to 1.8.2 + * Use cmake internally to build the Python extension via the + scikit-build library. This seems enough to cope with the + conflicting types in using XGETBV when using a recent GCC + (>= 9.1) compiler. + * Include C-Blosc v1.17.1. + +------------------------------------------------------------------- +Mon Jul 22 16:25:44 UTC 2019 - Todd R + +- Update to 1.8.1 + * Fix a bug that prevented the source distribution from PyPi to + be compiled. Specifcally, *.inc were not included via the + manifest. +- Update to 1.8.0 + * Include C-Blosc v1.16.2 + * Fix cpuinfo.py usage on Windows. + * Implement Python access to the C function cbuffer_validate which + was added to c-blosc in version 1.16.0 + * Check if compiler supports CPU capabilities. + * Many minor improvements and fixes +- Update to 1.7.0 + * Include C-Blosc v1.15.1 + * Remove Support for Python 2.6 and 3.3 + * Fix vendored cpuinfo.py + * Rework Windows CI via Appveyor + * Various minor bugfixes + +------------------------------------------------------------------- +Sat Dec 22 02:14:28 UTC 2018 - Todd R + +- Update to 1.6.2 + * Fixed `numpy` import in `toplevel.py`, this makes python-blosc usable without + numpy once again. +- Update to 1.6.1 + * Updated C-Blosc to 1.14.3 + * Adding support for aarch64 + * `unpack_array` can now accepts keyword arguments. This allows decompressing + pickled arrays that were compressed with Python 2.x using Python 3.x. Thanks + to Simba Nyatsanga and Juan Maree. + * Implemented `get_blocksize()`, thanks to Alberto Sabater + * Seperate compilation of codecs, thanks to Robert McLeod + * Removal of Numpy dependencies, thanks to Robert McLeod + * Allow codecs to be included by using environment variables, thanks to + Robert McLeod + * Don't compile snappy by default, thanks to Robert McLeod + * Update cpuinfo.py to use dmesg.boot, thanks to Prakhar Goel + * Allow SSE2 and AVX2 detection to be disabled via environment variables, + thanks to Lorenzo Bolla + * Varios minor fixes + +------------------------------------------------------------------- +Wed Jul 18 11:54:58 UTC 2018 - tchvatal@suse.com + +- Stricten requirement on the blosc-devel to require version we + actually compile with + +------------------------------------------------------------------- +Thu May 24 16:51:14 UTC 2018 - toddrme2178@gmail.com + +- Python files were not getting included. +- Enable unit tests + +------------------------------------------------------------------- +Sun Jan 21 05:33:31 UTC 2018 - toddrme2178@gmail.com + +- Fix building + +------------------------------------------------------------------- +Wed Apr 19 22:13:57 UTC 2017 - toddrme2178@gmail.com + +- Source url must be https. + +------------------------------------------------------------------- +Wed Apr 19 18:43:04 UTC 2017 - toddrme2178@gmail.com + +- Update to version 1.5.1 + * License updated from MIT to BSD. + * Updated to C-Blosc 1.11.3. +- Update to version 1.5.0 + * Added a new `blosc.set_releasegil()` function that allows to + release/acquire the GIL at will. See PR #116. + Thanks to Robert McLeod. + * Updated to C-Blosc 1.11.2. + * Added tests that detect possible memory leaks. + Thanks to Robert McLeod. +- Update to version 1.4.4 + * Updated to C-Blosc 1.11.1. Fixes #115. +- Update to version 1.4.3 + * Internal C-Blosc sources updated to 1.11.0. Among other things, this + updates the internal Zstd codec to version 1.0.0 (i.e. it is + officially apt for production usage!). +- Update to version 1.4.1 + * Internal C-Blosc sources updated to 1.10.1. This fixes an outstanding issue + with the clang compiler. For details, see: + https://github.com/Blosc/bloscpack/issues/50. +- Update to version 1.4.0 + * Internal C-Blosc sources updated to 1.10.0. + * Benchmarks updated for a Skylake processor (Xeon E3-1245 v5 @ + 3.50GHz). +- Update to version 1.3.3 + * Internal C-Blosc sources updated to 1.9.3. + * C-Blosc do not segfaults anymore, so -O1 flag on Linux is not the + default anymore. + * SSE2 and AVX2 are now auto-discovered so the internal C-Blosc will be + compiled with maximum optimization on processors supporting them. +- Update to version 1.3.2 + * Fixed the version of the include C-Blosc library (should be 1.8.1 not + 1.8.2.dev). +- Update to version 1.3.1 + * Use the -O1 flag for compiling the included C-Blosc sources on Linux. + This represents slower performance, but fixes the nasty issue #110. + Also, it prints a warning for using an external C-Blosc library. + * Internal C-Blosc version bumped to 1.8.1 for better compatibility + with gcc 5.3.1 in forthcoming Ubuntu Xenial. + * Added a protection to avoid using BITSHUFLE with C-Blosc < 1.8.0. + * Restored old symbols for backward compatibility with pre 1.3.0: + BLOSC_VERSION_STRING + BLOSC_VERSION_DATE + BLOSC_MAX_BUFFERSIZE + BLOSC_MAX_THREADS + BLOSC_MAX_TYPESIZE + However, these are considered deprecated and should be replaced by + libraries using python-blosc by the ones without the BLOSC_ prefix. +- Update to version 1.3.0 + * Internal C-Blosc version bumped to 1.8.0. As consequence, support for + BITSHUFFLE is here. For activating it, just pass `blosc.BITSHUFFLE` + to the `shuffle` parameter of compression functions. + * Added a new `as_bytearray=False` parameter to the `decompress()` function + so that a mutable bytearray will be returned instead of a bytes one + (inmutable). PR #107. Thanks to Joe Jevnik. + * The '__all__' variable has been removed from the module. I consider + this good practice to avoid things like "from blosc import *". + * For consistency, the next symbols have been renamed: + BLOSC_VERSION_STRING -> VERSION_STRING, + BLOSC_VERSION_DATE -> VERSION_DATE, + BLOSC_MAX_BUFFERSIZE -> MAX_BUFFERSIZE, + BLOSC_MAX_THREADS -> MAX_THREADS, + BLOSC_MAX_TYPESIZE -> MAX_TYPESIZE, + * The `typesize` parameter is set by default to 8 in compression + functions. This usually behaves well for 4-bytes typesizes too. + Nevertheless, it is advised to use the actual typesize. + * The maximum number of threads to use by default is set to 4 (less if + less cores are detected). Feel free to use more or less threads + depending on the resources you want to use for compression. +- Implement single-spec version. + +------------------------------------------------------------------- +Thu Mar 10 19:48:59 UTC 2016 - toddrme2178@gmail.com + +- Update to version 1.2.8 + * Updated to c-blosc v1.7.0. However, the new bitshuffle filter + has not been made public because recent reports indicate that + it seems too green for production. + * Support bytes-like objects that support the buffer interface + as input to compress and decompress. On Python 2.x this + includes unicode, on Python 3.x it doesn't. (#80 #94 @esc) + * Fix a memory leak in decompress. Added tests to catch memory + leaks. (#102 #103 #104 @sdvillal) + * Various miscellaneous fixes and improvements. + +------------------------------------------------------------------- +Tue May 19 12:15:06 UTC 2015 - toddrme2178@gmail.com + +- Update to version 1.2.7 + * Updated to c-blosc v1.6.1. + +------------------------------------------------------------------- +Sun Apr 26 14:22:04 UTC 2015 - benoit.monin@gmx.fr + +- update to version 1.2.5: + * Updated to c-blosc v1.5.4. + * Added wrapper for the expert function ``set_blocksize``. + (#72 @esc) + * Fix setup.py to allow compilation on posix architectures + without SSE2. (#70 @andreas-schwab) + * Don't release the GIL on compression/decompression (#77 @esc) + * Various miscellaneous fixes. +- drop setup.patch: fixed upstream + +------------------------------------------------------------------- +Wed Aug 6 15:16:57 UTC 2014 - schwab@suse.de + +- setup.patch: fix use of unknown compiler option + +------------------------------------------------------------------- +Thu Jul 17 09:32:38 UTC 2014 - toddrme2178@gmail.com + +- Update to 1.2.4 + - Updated to c-blosc 1.4.0. This added support for non-Intel + architectures, most specially those not supporting unaligned access. + +------------------------------------------------------------------- +Thu May 8 12:14:34 UTC 2014 - toddrme2178@gmail.com + +- Update to 1.2.3 + - Updated to c-blosc 1.3.5. This removed a 'pointer from integer + without a cast' compiler warning due to a bad macro definition. +- Update to 1.2.2 + - Updated to c-blosc 1.3.4. This fixed a false buffer overrun + condition. This bug made c-blosc (and hence python-blosc) to fail, + even if the failure was not real. +- Update to 1.2.1 + - Updated to c-blosc 1.3.3. + - Added a new `cname2clib` map for programatically determine the library + associated to a compressor. + - New `get_clib(cbuffer)` that tells which compression library format + has been used to created the compressed `cbuffer`. +- Update to 1.2.0 + - This release adds support for the multiple compressors added in Blosc + 1.3 series. + - Added new `cname` parameter in compression functions like + `compress()`, `compress_ptr()` and `pack_array()`. + - Added a new utility function named `compressor_list()` that returns + the list of compressors supported in the Blosc build. + - Added 'bench/compress_ptr.py' for comparing times of the different + compressors in Blosc and NumPy. +- Update to 1.1.0 + - Added new `compress_ptr` and `decompress_ptr` functions that allows to + compress and decompress from/to a data pointer. These are low level + calls and user must make sure that the pointer data area is safe. + - Since Blosc (the C library) already supports to be installed as an + standalone library (via cmake), it is also possible to link + python-blosc against a system Blosc library. + - The Python calls to Blosc are now thread-safe (another consequence of + recent Blosc library supporting this at C level). + - Many checks on types and ranges of values have been added. Most of + the calls will now complain when passed the wrong values. + - Docstrings are much improved. Also, Sphinx-based docs are available + now. +- Update to 1.0.6 + - Fix compile error with msvc compilers. Thanks to Christoph Gohlke. +- Update to 1.0.5 + - Upgraded to latest Blosc 1.1.4. + - Better handling of condition errors, and improved memory releasing in + case of errors (thanks to Valentin Haenel and Han Genuit). + - Better handling of types (should compile without warning now, at least + with GCC). +- Update to 1.0.4 + - Optimized the amount of data copied during compression (using + _PyBytes_Resize() now instead of old PyBytes_FromStringAndSize()). + This leads to improvements in compression speed ranging from 1.2x for + highly compressible chunks up to 7x for mostly uncompressible data. + Thanks to Valentin Haenel for this nice contribution. +- Use external blosc library. The internal one builds a bad version + of zlib. + +------------------------------------------------------------------- +Fri Sep 7 14:30:54 UTC 2012 - toddrme2178@gmail.com + +- Initial version + diff --git a/python-blosc.spec b/python-blosc.spec new file mode 100644 index 0000000..44ce76c --- /dev/null +++ b/python-blosc.spec @@ -0,0 +1,75 @@ +# +# spec file for package python-blosc +# +# Copyright (c) 2023 SUSE LLC +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via https://bugs.opensuse.org/ +# + + +%{?sle15_python_module_pythons} +Name: python-blosc +Version: 1.11.1 +Release: 0 +Summary: Blosc data compressor for Python +License: MIT +Group: Development/Languages/Python +URL: https://github.com/Blosc/python-blosc +Source: https://files.pythonhosted.org/packages/source/b/blosc/blosc-%{version}.tar.gz +BuildRequires: %{python_module devel >= 3.8} +BuildRequires: %{python_module pip} +BuildRequires: %{python_module scikit-build >= 0.11.1} +BuildRequires: %{python_module setuptools} +BuildRequires: %{python_module wheel} +BuildRequires: blosc-devel >= 1.21 +BuildRequires: c++_compiler +BuildRequires: cmake >= 3.14.0 +BuildRequires: fdupes +BuildRequires: python-rpm-macros +# SECTION test requirements +BuildRequires: %{python_module numpy >= 1.16} +BuildRequires: %{python_module psutil} +# /SECTION +Recommends: python-numpy +%python_subpackages + +%description +Blosc is a high performance compressor optimized for binary data in +Python. + +%prep +%autosetup -p1 -n blosc-%{version} +rm -r blosc/c-blosc + +%build +export CFLAGS="%{optflags}" +export USE_SYSTEM_BLOSC=1 +%pyproject_wheel + +%install +%pyproject_install +%python_expand %fdupes %{buildroot}%{$python_sitearch} + +%check +%{python_expand # +export PYTHONPATH=%{buildroot}%{$python_sitearch} +export PYTHONDONTWRITEBYTECODE=1 +$python -m blosc.test +} + +%files %{python_files} +%license LICENSE.txt +%doc ANNOUNCE.rst README.rst RELEASE_NOTES.rst +%{python_sitearch}/blosc-%{version}.dist-info +%{python_sitearch}/blosc/ + +%changelog