From 8d61fb7ceea6b8105291d55597bc2493e7f4db54ac00a8067c06f2fe1bc8f0fa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mark=C3=A9ta=20Machov=C3=A1?= Date: Wed, 26 Nov 2025 11:26:59 +0000 Subject: [PATCH] - Update to 0.18.0 * Support for Python 3.14 * Build free-threaded wheels for CPython 3.13 and 3.14, even if the feature is not supported * Deprecate the `read_size` and `write_size` parameters of `ZstdFile` and `SeekableZstdFile` * Deprecate `richmem_compress` and `RichMemZstdCompressor` * Rework documentation to suggest using `compression.zstd` from Python stdlib, and provide a migration guide * Include the `zstd` library license in package distributions - Add sed command to remove shebang from src/__main__.py - Don't remove zstd folder in %setup section, it's temporarily required OBS-URL: https://build.opensuse.org/package/show/devel:languages:python/python-pyzstd?expand=0&rev=15 --- .gitattributes | 23 +++++++++ .gitignore | 1 + python-pyzstd.changes | 105 ++++++++++++++++++++++++++++++++++++++++++ python-pyzstd.spec | 68 +++++++++++++++++++++++++++ pyzstd-0.17.0.tar.gz | 3 ++ pyzstd-0.18.0.tar.gz | 3 ++ 6 files changed, 203 insertions(+) create mode 100644 .gitattributes create mode 100644 .gitignore create mode 100644 python-pyzstd.changes create mode 100644 python-pyzstd.spec create mode 100644 pyzstd-0.17.0.tar.gz create mode 100644 pyzstd-0.18.0.tar.gz 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/.gitignore b/.gitignore new file mode 100644 index 0000000..57affb6 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +.osc diff --git a/python-pyzstd.changes b/python-pyzstd.changes new file mode 100644 index 0000000..8d32801 --- /dev/null +++ b/python-pyzstd.changes @@ -0,0 +1,105 @@ +------------------------------------------------------------------- +Wed Nov 26 10:30:35 UTC 2025 - John Paul Adrian Glaubitz + +- Update to 0.18.0 + * Support for Python 3.14 + * Build free-threaded wheels for CPython 3.13 and 3.14, + even if the feature is not supported + * Deprecate the `read_size` and `write_size` parameters + of `ZstdFile` and `SeekableZstdFile` + * Deprecate `richmem_compress` and `RichMemZstdCompressor` + * Rework documentation to suggest using `compression.zstd` + from Python stdlib, and provide a migration guide + * Include the `zstd` library license in package distributions +- Add sed command to remove shebang from src/__main__.py +- Don't remove zstd folder in %setup section, it's temporarily required + +------------------------------------------------------------------- +Tue May 20 11:41:48 UTC 2025 - John Paul Adrian Glaubitz + +- Update to 0.17.0 + * Upgrade zstd source code from v1.5.6 to v1.5.7 + * Raise an exception when attempting to decompress empty data + * Add `ZstdFile.name` property + * Deprecate `(de)compress_stream` functions + * Use a leading `_` for private objects + * Build wheels for Windows ARM64 + * Support for PyPy 3.11 +- Update BuildRequires and Requires from setup.py + +------------------------------------------------------------------- +Mon Oct 28 22:36:13 UTC 2024 - Dirk Müller + +- update to 0.16.2: + * Build wheels for Python 3.13 + * Deprecate support for Python version before 3.9 and stop + building wheels for them + * Compatibility with Python 3.13 + * Upgrade zstd source code from v1.5.5 to v1.5.6 + * Fix pyzstd_pep517 parameter name in + `get_requires_for_build_wheel` + * Deprecate support for Python version before 3.8 and stop + building wheels for them + * Minor fixes in type hints + * Refactor README & CHANGELOG files + +------------------------------------------------------------------- +Thu May 2 08:04:33 UTC 2024 - Dirk Müller + +- update to 0.15.10: + * SeekableZstdFile: fix exception when using append mode + * SeekableZstdFile: raise TypeError when + * SeekableZstdFile: refactor loading seek table in append mode + +------------------------------------------------------------------- +Thu Jul 20 20:40:20 UTC 2023 - Antonio Teixeira + +- Update to 0.15.9 + - ZstdFile class related changes: + * Add SeekableZstdFile class, it's a subclass of ZstdFile, supports + Zstandard Seekable Format. + * Add mode argument to ZstdFile.flush() method, now it can flush + a zstd frame. + * Add read_size and write_size arguments to ZstdFile.__init__() + method, can work with Network File Systems better. + * Optimize ZstdFile performance to C language level. +- Changes from 0.15.7 + - ZstdDict class changes: + * Fix these advanced compression parameters may be ignored when + loading a dictionary: windowLog, hashLog, chainLog, searchLog, + minMatch, targetLength, strategy, enableLongDistanceMatching, + ldmHashLog, ldmMinMatch, ldmBucketSizeLog, ldmHashRateLog, + and some non-public parameters. + * When compressing, load undigested dictionary instead of digested + dictionary by default. Loading again an undigested is slower, see + differences. + * Add .as_prefix attribute. Can use zstd as a patching engine. + +------------------------------------------------------------------- +Tue Jun 27 13:03:38 UTC 2023 - ecsos + +- Add %{?sle15_python_module_pythons} + +------------------------------------------------------------------- +Fri Apr 7 09:36:49 UTC 2023 - ecsos + +- Update to 0.15.6 + - Update bundled zstd source code from v1.5.4 to v1.5.5. +- Changes from 0.15.5 + - Update bundled zstd source code from v1.5.4 to v1.5.5. +- Changes from 0.15.4 + - Update bundled zstd source code from v1.5.2 to v1.5.4. v1.5.3 + is a non-public release. + - Support pyproject.toml build mechanism (PEP-517). + Note that specifying build options in old way may be invalid, + see doc. + - Support "multi-phase initialization" (PEP-489) on CPython 3.11+, + can work with CPython sub-interpreters in the future. + Currently this build option is disabled by default. + - Add a command line interface (CLI). + +------------------------------------------------------------------- +Wed Dec 21 11:14:08 UTC 2022 - Ben Greiner + +- Initial specfile for v0.15.3 +- Required by py7zr diff --git a/python-pyzstd.spec b/python-pyzstd.spec new file mode 100644 index 0000000..f148706 --- /dev/null +++ b/python-pyzstd.spec @@ -0,0 +1,68 @@ +# +# spec file for package python-pyzstd +# +# Copyright (c) 2025 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-pyzstd +Version: 0.18.0 +Release: 0 +Summary: Python bindings to Zstandard (zstd) compression library +License: BSD-3-Clause +URL: https://github.com/Rogdham/pyzstd +Source: https://files.pythonhosted.org/packages/source/p/pyzstd/pyzstd-%{version}.tar.gz +BuildRequires: %{python_module devel >= 3.5} +BuildRequires: %{python_module pip} +BuildRequires: %{python_module setuptools} +BuildRequires: %{python_module typing_extensions >= 4.13.2} +BuildRequires: %{python_module wheel} +BuildRequires: fdupes +BuildRequires: libzstd-devel >= 1.4.0 +BuildRequires: python-rpm-macros +Requires: (python-typing_extensions >= 4.13.2 if python-base < 3.13) +%python_subpackages + +%description +Pyzstd module provides classes and functions for compressing and decompressing data, +using Facebook's Zstandard (or zstd as short name) algorithm. + +The API is similar to Python's bz2/lzma/zlib modules. + +%prep +%setup -q -n pyzstd-%{version} +# make sure we link dynamically, cannot use command line argument to pip wheel +# gh#animalize/pyzstd#18 +sed -i "s/has_option('--dynamic-link-zstd')/True/" setup.py +sed -i "/\#\!\/usr\/bin\/env\ python3/d" src/__main__.py + +%build +export CFLAGS="%{optflags}" +%pyproject_wheel + +%install +%pyproject_install +%python_expand %fdupes %{buildroot}%{$python_sitearch} + +%check +%pyunittest_arch discover -v tests + +%files %{python_files} +%doc README.md +%license LICENSE +%{python_sitearch}/pyzstd +%{python_sitearch}/pyzstd-%{version}.dist-info + +%changelog diff --git a/pyzstd-0.17.0.tar.gz b/pyzstd-0.17.0.tar.gz new file mode 100644 index 0000000..373ca1d --- /dev/null +++ b/pyzstd-0.17.0.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:d84271f8baa66c419204c1dd115a4dec8b266f8a2921da21b81764fa208c1db6 +size 1212160 diff --git a/pyzstd-0.18.0.tar.gz b/pyzstd-0.18.0.tar.gz new file mode 100644 index 0000000..caf8af7 --- /dev/null +++ b/pyzstd-0.18.0.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:81b6851ab1ca2e5f2c709e896a1362e3065a64f271f43db77fb7d5e4a78e9861 +size 806048