diff mbox series

[1/2] python3-pyzstd: Upgrade 0.17.0 -> 0.19.1

Message ID 20260123084336.3061764-1-leon.anavi@konsulko.com
State New
Headers show
Series [1/2] python3-pyzstd: Upgrade 0.17.0 -> 0.19.1 | expand

Commit Message

Leon Anavi Jan. 23, 2026, 8:43 a.m. UTC
Upgrade to release 0.19.1:

- Fix SeekableZstdFile write table entries on 32-bits architectures
  when there is a huge number of entries

From release 0.19.0:

- The project has been completely refactored to use the Zstandard
  implementation from the standard library (PEP-784)
- The refactor has some minor impact on public APIs, such as
  changing the exception raised on invalid input
- Add backports.zstd dependency for Python before 3.14
- Changes in build dependency: remove setuptools and C build
  toolchain, add hatchling and hatch-vcs
- Remove git submodule usage
- Drop support for Python 3.9 and below
- Use ruff as formatter and linter
- Embed type hints in Python code, and check with mypy

All ptests pass following python3 upgrade from 3.13.11 to 3.14.0.

Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
---
 ...emove-setuptools-version-limit-of-74.patch | 27 -------------------
 ...std_0.17.0.bb => python3-pyzstd_0.19.1.bb} |  7 ++---
 2 files changed, 4 insertions(+), 30 deletions(-)
 delete mode 100644 meta/recipes-devtools/python/python3-pyzstd/0001-Remove-setuptools-version-limit-of-74.patch
 rename meta/recipes-devtools/python/{python3-pyzstd_0.17.0.bb => python3-pyzstd_0.19.1.bb} (73%)

Comments

Martin Jansa Jan. 23, 2026, 8:56 a.m. UTC | #1
Thanks, but this needs python3-backports-zstd to be imported from
meta-oe to fix the ptest as discussed in:
https://lists.openembedded.org/g/openembedded-core/message/228548
https://lists.openembedded.org/g/openembedded-core/message/229015

And if python3-backports-zstd is no longer needed with python-3.14 now
in oe-core, then you need to drop the whole
do_configure:append:arm:toolchain-clang.

Regards,

On Fri, Jan 23, 2026 at 9:43 AM Leon Anavi via lists.openembedded.org
<leon.anavi=konsulko.com@lists.openembedded.org> wrote:
>
> Upgrade to release 0.19.1:
>
> - Fix SeekableZstdFile write table entries on 32-bits architectures
>   when there is a huge number of entries
>
> From release 0.19.0:
>
> - The project has been completely refactored to use the Zstandard
>   implementation from the standard library (PEP-784)
> - The refactor has some minor impact on public APIs, such as
>   changing the exception raised on invalid input
> - Add backports.zstd dependency for Python before 3.14
> - Changes in build dependency: remove setuptools and C build
>   toolchain, add hatchling and hatch-vcs
> - Remove git submodule usage
> - Drop support for Python 3.9 and below
> - Use ruff as formatter and linter
> - Embed type hints in Python code, and check with mypy
>
> All ptests pass following python3 upgrade from 3.13.11 to 3.14.0.
>
> Signed-off-by: Leon Anavi <leon.anavi@konsulko.com>
> ---
>  ...emove-setuptools-version-limit-of-74.patch | 27 -------------------
>  ...std_0.17.0.bb => python3-pyzstd_0.19.1.bb} |  7 ++---
>  2 files changed, 4 insertions(+), 30 deletions(-)
>  delete mode 100644 meta/recipes-devtools/python/python3-pyzstd/0001-Remove-setuptools-version-limit-of-74.patch
>  rename meta/recipes-devtools/python/{python3-pyzstd_0.17.0.bb => python3-pyzstd_0.19.1.bb} (73%)
>
> diff --git a/meta/recipes-devtools/python/python3-pyzstd/0001-Remove-setuptools-version-limit-of-74.patch b/meta/recipes-devtools/python/python3-pyzstd/0001-Remove-setuptools-version-limit-of-74.patch
> deleted file mode 100644
> index f2910322ff..0000000000
> --- a/meta/recipes-devtools/python/python3-pyzstd/0001-Remove-setuptools-version-limit-of-74.patch
> +++ /dev/null
> @@ -1,27 +0,0 @@
> -From bc9b975c9f41e43481a2eb0623b4180926baecec Mon Sep 17 00:00:00 2001
> -From: Khem Raj <raj.khem@gmail.com>
> -Date: Wed, 9 Apr 2025 14:38:31 -0700
> -Subject: [PATCH] Remove setuptools version limit of '74'
> -
> -Upstream sticks to 0.74 since setuptools have dropped msvc9compiler
> -support beyond that which is needed for python 3.9 on windows. We
> -do not have this problem on Linux
> -
> -Upstream-Status: Inappropriate [OE-specific]
> -Signed-off-by: Khem Raj <raj.khem@gmail.com>
> ----
> - pyproject.toml | 2 +-
> - 1 file changed, 1 insertion(+), 1 deletion(-)
> -
> -diff --git a/pyproject.toml b/pyproject.toml
> -index dd885e4..5d4d511 100644
> ---- a/pyproject.toml
> -+++ b/pyproject.toml
> -@@ -1,6 +1,6 @@
> - [build-system]
> - # setuptools 64+ support --build-option
> - # setuptools 74+ drops distutils.msvc9compiler required for Python 3.9 under Windows
> --requires = ["setuptools>=64,<74"]
> -+requires = ["setuptools>=64"]
> - backend-path = ["build_script"]
> - build-backend = "pyzstd_pep517"
> diff --git a/meta/recipes-devtools/python/python3-pyzstd_0.17.0.bb b/meta/recipes-devtools/python/python3-pyzstd_0.19.1.bb
> similarity index 73%
> rename from meta/recipes-devtools/python/python3-pyzstd_0.17.0.bb
> rename to meta/recipes-devtools/python/python3-pyzstd_0.19.1.bb
> index af7069b6ed..a41c16682d 100644
> --- a/meta/recipes-devtools/python/python3-pyzstd_0.17.0.bb
> +++ b/meta/recipes-devtools/python/python3-pyzstd_0.19.1.bb
> @@ -9,10 +9,11 @@ LIC_FILES_CHKSUM = "file://LICENSE;md5=aedb5a2679cd1552fb61c181ef974b9e"
>
>  PYPI_PACKAGE = "pyzstd"
>
> -SRC_URI += "file://0001-Remove-setuptools-version-limit-of-74.patch"
> -SRC_URI[sha256sum] = "d84271f8baa66c419204c1dd115a4dec8b266f8a2921da21b81764fa208c1db6"
> +SRC_URI[sha256sum] = "36723d3c915b3981de9198d0a2c82b2f5fe3eaa36e4d8d586937830a8afc7d72"
>
> -inherit pypi python_setuptools_build_meta ptest-python-pytest
> +inherit pypi python_hatchling ptest-python-pytest
> +
> +DEPENDS += "python3-hatch-vcs-native"
>
>  # clang-16 with -flto segfaults on arm, therefore ignore flto for now
>  do_configure:append:arm:toolchain-clang() {
> --
> 2.47.3
>
>
> -=-=-=-=-=-=-=-=-=-=-=-
> Links: You receive all messages sent to this group.
> View/Reply Online (#229876): https://lists.openembedded.org/g/openembedded-core/message/229876
> Mute This Topic: https://lists.openembedded.org/mt/117415035/3617156
> Group Owner: openembedded-core+owner@lists.openembedded.org
> Unsubscribe: https://lists.openembedded.org/g/openembedded-core/unsub [martin.jansa@gmail.com]
> -=-=-=-=-=-=-=-=-=-=-=-
>
diff mbox series

Patch

diff --git a/meta/recipes-devtools/python/python3-pyzstd/0001-Remove-setuptools-version-limit-of-74.patch b/meta/recipes-devtools/python/python3-pyzstd/0001-Remove-setuptools-version-limit-of-74.patch
deleted file mode 100644
index f2910322ff..0000000000
--- a/meta/recipes-devtools/python/python3-pyzstd/0001-Remove-setuptools-version-limit-of-74.patch
+++ /dev/null
@@ -1,27 +0,0 @@ 
-From bc9b975c9f41e43481a2eb0623b4180926baecec Mon Sep 17 00:00:00 2001
-From: Khem Raj <raj.khem@gmail.com>
-Date: Wed, 9 Apr 2025 14:38:31 -0700
-Subject: [PATCH] Remove setuptools version limit of '74'
-
-Upstream sticks to 0.74 since setuptools have dropped msvc9compiler
-support beyond that which is needed for python 3.9 on windows. We
-do not have this problem on Linux
-
-Upstream-Status: Inappropriate [OE-specific]
-Signed-off-by: Khem Raj <raj.khem@gmail.com>
----
- pyproject.toml | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/pyproject.toml b/pyproject.toml
-index dd885e4..5d4d511 100644
---- a/pyproject.toml
-+++ b/pyproject.toml
-@@ -1,6 +1,6 @@
- [build-system]
- # setuptools 64+ support --build-option
- # setuptools 74+ drops distutils.msvc9compiler required for Python 3.9 under Windows
--requires = ["setuptools>=64,<74"]
-+requires = ["setuptools>=64"]
- backend-path = ["build_script"]
- build-backend = "pyzstd_pep517"
diff --git a/meta/recipes-devtools/python/python3-pyzstd_0.17.0.bb b/meta/recipes-devtools/python/python3-pyzstd_0.19.1.bb
similarity index 73%
rename from meta/recipes-devtools/python/python3-pyzstd_0.17.0.bb
rename to meta/recipes-devtools/python/python3-pyzstd_0.19.1.bb
index af7069b6ed..a41c16682d 100644
--- a/meta/recipes-devtools/python/python3-pyzstd_0.17.0.bb
+++ b/meta/recipes-devtools/python/python3-pyzstd_0.19.1.bb
@@ -9,10 +9,11 @@  LIC_FILES_CHKSUM = "file://LICENSE;md5=aedb5a2679cd1552fb61c181ef974b9e"
 
 PYPI_PACKAGE = "pyzstd"
 
-SRC_URI += "file://0001-Remove-setuptools-version-limit-of-74.patch"
-SRC_URI[sha256sum] = "d84271f8baa66c419204c1dd115a4dec8b266f8a2921da21b81764fa208c1db6"
+SRC_URI[sha256sum] = "36723d3c915b3981de9198d0a2c82b2f5fe3eaa36e4d8d586937830a8afc7d72"
 
-inherit pypi python_setuptools_build_meta ptest-python-pytest
+inherit pypi python_hatchling ptest-python-pytest
+
+DEPENDS += "python3-hatch-vcs-native"
 
 # clang-16 with -flto segfaults on arm, therefore ignore flto for now
 do_configure:append:arm:toolchain-clang() {