summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichał Górny <mgorny@gentoo.org>2024-10-02 19:52:21 +0200
committerMichał Górny <mgorny@gentoo.org>2024-10-03 04:33:06 +0200
commit6661d7e7d52d7ab1658ffc13257941887a666b37 (patch)
treea1e6e2e98b33a70307d33ee1df5bf07af2195573 /dev-python/fsspec
parentx11-misc/mate-notification-daemon: replace deprecated atk dep (diff)
downloadgentoo-6661d7e7d52d7ab1658ffc13257941887a666b37.tar.gz
gentoo-6661d7e7d52d7ab1658ffc13257941887a666b37.tar.bz2
gentoo-6661d7e7d52d7ab1658ffc13257941887a666b37.zip
dev-python/fsspec: Bump to 2024.9.0
Signed-off-by: Michał Górny <mgorny@gentoo.org>
Diffstat (limited to 'dev-python/fsspec')
-rw-r--r--dev-python/fsspec/Manifest1
-rw-r--r--dev-python/fsspec/files/fsspec-2024.9.0-backports.patch128
-rw-r--r--dev-python/fsspec/fsspec-2024.9.0.ebuild63
3 files changed, 192 insertions, 0 deletions
diff --git a/dev-python/fsspec/Manifest b/dev-python/fsspec/Manifest
index be76d6abdb8b..c7916ee7a04c 100644
--- a/dev-python/fsspec/Manifest
+++ b/dev-python/fsspec/Manifest
@@ -1 +1,2 @@
DIST filesystem_spec-2024.6.1.gh.tar.gz 409416 BLAKE2B c5b2ba4935dcf0a141c952d611b49c4370a07e3c9ed439ae4d7e98f86e93610a2b1eb8c394eb73ed4494555cca1ac169f1ee7b11144cf0d1ecae7316a46092b6 SHA512 67ecf2bc10c3ae28fa64be5ecb659fc466e97b52b152f3f223d347931b04730e58a48e90d7c546a47c5422831103711037fc268c24984cf77ef65ca4714b0e5e
+DIST filesystem_spec-2024.9.0.gh.tar.gz 413991 BLAKE2B b4dbb17e39481d3d5ee900618b3bea036faec0ce84d95cf2e581feb59d0eb5cb1ecc73730b87bbeb175110db34d52db062bf8d94e82f27a28a6f1693e10c49e7 SHA512 2600f7b020019634ec3f4ffd2a66f458c04423f10c00afbfd99dabad7fca809af28792a5b8a6625c57548f8dc172ab0d9498cbfcd570cd1d04a905c079fe4fb9
diff --git a/dev-python/fsspec/files/fsspec-2024.9.0-backports.patch b/dev-python/fsspec/files/fsspec-2024.9.0-backports.patch
new file mode 100644
index 000000000000..a8f9f965c083
--- /dev/null
+++ b/dev-python/fsspec/files/fsspec-2024.9.0-backports.patch
@@ -0,0 +1,128 @@
+From edf495736a39c0031d5514e8350363dfa229f3d4 Mon Sep 17 00:00:00 2001
+From: Elliott Sales de Andrade <quantum.analyst@gmail.com>
+Date: Sun, 22 Sep 2024 23:48:36 -0400
+Subject: [PATCH] Fix handling of Paths in zip implementation
+
+Fixes #1688
+---
+ fsspec/implementations/zip.py | 3 ++-
+ 1 file changed, 2 insertions(+), 1 deletion(-)
+
+diff --git a/fsspec/implementations/zip.py b/fsspec/implementations/zip.py
+index aa6a57842..6db3ae278 100644
+--- a/fsspec/implementations/zip.py
++++ b/fsspec/implementations/zip.py
+@@ -1,3 +1,4 @@
++import os
+ import zipfile
+
+ import fsspec
+@@ -48,7 +49,7 @@ def __init__(
+ if mode not in set("rwa"):
+ raise ValueError(f"mode '{mode}' no understood")
+ self.mode = mode
+- if isinstance(fo, str):
++ if isinstance(fo, (str, os.PathLike)):
+ if mode == "a":
+ m = "r+b"
+ else:
+From dc4f5a97d90238b862fa7974a9b8e93602f44540 Mon Sep 17 00:00:00 2001
+From: Martin Durant <martindurant@users.noreply.github.com>
+Date: Mon, 23 Sep 2024 09:42:21 -0400
+Subject: [PATCH] Don't require absolute offsets in zip tests (#1691)
+
+---
+ fsspec/implementations/tests/test_zip.py | 4 ++++
+ 1 file changed, 4 insertions(+)
+
+diff --git a/fsspec/implementations/tests/test_zip.py b/fsspec/implementations/tests/test_zip.py
+index ecd082f3f..8bf8155d9 100644
+--- a/fsspec/implementations/tests/test_zip.py
++++ b/fsspec/implementations/tests/test_zip.py
+@@ -169,12 +169,16 @@ def _assert_all_except_context_dependent_variables(result, expected_result):
+ result_without_date_time.pop("_raw_time")
+ result_without_date_time.pop("external_attr")
+ result_without_date_time.pop("create_system")
++ result_without_date_time.pop("_end_offset", None)
++ result_without_date_time.pop("header_offset", None)
+
+ expected_result_without_date_time = expected_result[path].copy()
+ expected_result_without_date_time.pop("date_time")
+ expected_result_without_date_time.pop("_raw_time")
+ expected_result_without_date_time.pop("external_attr")
+ expected_result_without_date_time.pop("create_system")
++ expected_result_without_date_time.pop("_end_offset", None)
++ expected_result_without_date_time.pop("header_offset", None)
+ assert result_without_date_time == expected_result_without_date_time
+
+
+From 0021859ff78bbf62e86c330e2dad00c5dd205108 Mon Sep 17 00:00:00 2001
+From: Martin Durant <martin.durant@alumni.utoronto.ca>
+Date: Wed, 2 Oct 2024 11:37:14 -0400
+Subject: [PATCH] Limit fields checked in ZIP tests
+
+---
+ fsspec/asyn.py | 4 +++
+ fsspec/implementations/tests/test_zip.py | 34 +++++++++++++-----------
+ 2 files changed, 23 insertions(+), 15 deletions(-)
+
+diff --git a/fsspec/asyn.py b/fsspec/asyn.py
+index f203fa0a4..de41839ea 100644
+--- a/fsspec/asyn.py
++++ b/fsspec/asyn.py
+@@ -344,6 +344,10 @@ async def _rm(self, path, recursive=False, batch_size=None, **kwargs):
+ async def _cp_file(self, path1, path2, **kwargs):
+ raise NotImplementedError
+
++ async def _mv_file(self, path1, path2):
++ await self._cp_file(path1, path2)
++ await self._rm_file(path1)
++
+ async def _copy(
+ self,
+ path1,
+diff --git a/fsspec/implementations/tests/test_zip.py b/fsspec/implementations/tests/test_zip.py
+index 8bf8155d9..14d00086e 100644
+--- a/fsspec/implementations/tests/test_zip.py
++++ b/fsspec/implementations/tests/test_zip.py
+@@ -164,21 +164,25 @@ def zip_file_fixture(tmp_path):
+ def _assert_all_except_context_dependent_variables(result, expected_result):
+ for path in expected_result.keys():
+ assert result[path]
+- result_without_date_time = result[path].copy()
+- result_without_date_time.pop("date_time")
+- result_without_date_time.pop("_raw_time")
+- result_without_date_time.pop("external_attr")
+- result_without_date_time.pop("create_system")
+- result_without_date_time.pop("_end_offset", None)
+- result_without_date_time.pop("header_offset", None)
+-
+- expected_result_without_date_time = expected_result[path].copy()
+- expected_result_without_date_time.pop("date_time")
+- expected_result_without_date_time.pop("_raw_time")
+- expected_result_without_date_time.pop("external_attr")
+- expected_result_without_date_time.pop("create_system")
+- expected_result_without_date_time.pop("_end_offset", None)
+- expected_result_without_date_time.pop("header_offset", None)
++ fields = [
++ "orig_filename",
++ "filename",
++ "compress_type",
++ "comment",
++ "extra",
++ "CRC",
++ "compress_size",
++ "file_size",
++ "name",
++ "size",
++ "type",
++ ]
++
++ result_without_date_time = {k: result[path][k] for k in fields}
++
++ expected_result_without_date_time = {
++ k: expected_result[path][k] for k in fields
++ }
+ assert result_without_date_time == expected_result_without_date_time
+
+
diff --git a/dev-python/fsspec/fsspec-2024.9.0.ebuild b/dev-python/fsspec/fsspec-2024.9.0.ebuild
new file mode 100644
index 000000000000..b6cde0c2fe2c
--- /dev/null
+++ b/dev-python/fsspec/fsspec-2024.9.0.ebuild
@@ -0,0 +1,63 @@
+# Copyright 2020-2024 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=8
+
+DISTUTILS_USE_PEP517=hatchling
+PYTHON_COMPAT=( python3_{10..13} )
+
+inherit distutils-r1
+
+MY_P=filesystem_spec-${PV}
+DESCRIPTION="A specification that python filesystems should adhere to"
+HOMEPAGE="
+ https://github.com/fsspec/filesystem_spec/
+ https://pypi.org/project/fsspec/
+"
+# upstream removed tests in 2024.6.0
+SRC_URI="
+ https://github.com/fsspec/filesystem_spec/archive/${PV}.tar.gz
+ -> ${MY_P}.gh.tar.gz
+"
+S=${WORKDIR}/${MY_P}
+
+LICENSE="BSD"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~riscv ~x86"
+
+BDEPEND="
+ dev-python/hatch-vcs[${PYTHON_USEDEP}]
+ test? (
+ dev-python/aiohttp[${PYTHON_USEDEP}]
+ dev-python/numpy[${PYTHON_USEDEP}]
+ dev-python/pytest-asyncio[${PYTHON_USEDEP}]
+ dev-python/pytest-mock[${PYTHON_USEDEP}]
+ dev-python/pytest-rerunfailures[${PYTHON_USEDEP}]
+ dev-python/requests[${PYTHON_USEDEP}]
+ dev-python/tqdm[${PYTHON_USEDEP}]
+ dev-vcs/git
+ )
+"
+
+# Note: this package is not xdist-friendly
+distutils_enable_tests pytest
+
+export SETUPTOOLS_SCM_PRETEND_VERSION=${PV}
+
+PATCHES=(
+ # https://github.com/fsspec/filesystem_spec/pull/1689
+ # https://github.com/fsspec/filesystem_spec/pull/1691
+ # https://github.com/fsspec/filesystem_spec/pull/1700
+ "${FILESDIR}/${P}-backports.patch"
+)
+
+src_test() {
+ git config --global user.email "you@example.com" || die
+ git config --global user.name "Your Name" || die
+ distutils-r1_src_test
+}
+
+python_test() {
+ local -x PYTEST_DISABLE_PLUGIN_AUTOLOAD=1
+ epytest -p asyncio -p pytest_mock -o tmp_path_retention_policy=all
+}