include $(TOPDIR)/rules.mk
PKG_NAME:=python-zipp
-PKG_VERSION:=3.16.2
+PKG_VERSION:=3.23.0
PKG_RELEASE:=1
PYPI_NAME:=zipp
-PKG_HASH:=ebc15946aa78bd63458992fc81ec3b6f7b1e92d51c35e6de1c3804e73b799147
+PKG_HASH:=a07157588a12518c9d4034df3fbbee09c814741a33ff63c05fa29d26a2404166
PKG_MAINTAINER:=Jan Pavlinec <jan.pavlinec1@gmail.com>, Alexandru Ardelean <ardeleanalex@gmail.com>
PKG_LICENSE:=MIT
PKG_LICENSE_FILES:=LICENSE
-PKG_BUILD_DEPENDS:=python-setuptools-scm/host # setuptools_scm[toml] >= 3.4.1
+PKG_BUILD_DEPENDS:=python-setuptools/host python-setuptools-scm/host
include ../pypi.mk
include $(INCLUDE_DIR)/package.mk
--- /dev/null
+--- a/pyproject.toml
++++ b/pyproject.toml
+@@ -3,7 +3,6 @@ requires = [
+ "setuptools>=77",
+ "setuptools_scm[toml]>=3.4.1",
+ # jaraco/skeleton#174
+- "coherent.licensed",
+ ]
+ build-backend = "setuptools.build_meta"
+
--- /dev/null
+#!/bin/sh
+
+[ "$1" = python3-zipp ] || exit 0
+
+python3 - <<'EOF'
+import io
+import zipfile
+import zipp
+
+# Create an in-memory zip with a nested structure
+buf = io.BytesIO()
+with zipfile.ZipFile(buf, "w") as zf:
+ zf.writestr("a/b/c.txt", "hello")
+ zf.writestr("a/d.txt", "world")
+buf.seek(0)
+
+zf = zipfile.ZipFile(buf)
+root = zipp.Path(zf)
+
+# Navigate and read
+c = root / "a" / "b" / "c.txt"
+assert c.read_text() == "hello", f"unexpected content: {c.read_text()!r}"
+
+d = root / "a" / "d.txt"
+assert d.read_text() == "world", f"unexpected content: {d.read_text()!r}"
+
+# Test iterdir
+names = {p.name for p in (root / "a").iterdir()}
+assert names == {"b", "d.txt"}, f"unexpected names: {names}"
+
+# Test is_file / is_dir
+assert c.is_file()
+assert (root / "a" / "b").is_dir()
+EOF