public inbox for git-commits@fedoraproject.org
help / color / mirror / Atom feed
From: Elliott Sales de Andrade <quantum.analyst@gmail.com>
To: git-commits@fedoraproject.org
Subject: [rpms/python-universal-pathlib] f44: Update to latest version
Date: Mon, 01 Jun 2026 19:51:15 GMT	[thread overview]
Message-ID: <178034347550.1.3108792562086670023.rpms-python-universal-pathlib-520a390cc895@fedoraproject.org> (raw)

A new commit has been pushed.

Repo   : rpms/python-universal-pathlib
Branch : f44
Commit : 520a390cc8954ec9880954e3e2ff7fdf3ae947e8
Author : Elliott Sales de Andrade <quantum.analyst@gmail.com>
Date   : 2026-05-02T20:23:18-04:00
Stats  : +80/-67 in 4 file(s)
URL    : https://src.fedoraproject.org/rpms/python-universal-pathlib/c/520a390cc8954ec9880954e3e2ff7fdf3ae947e8?branch=f44

Log:
Update to latest version

---
diff --git a/.gitignore b/.gitignore
index 52f9d5a..734e416 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1 +1,2 @@
 /universal_pathlib-0.2.5.tar.gz
+/universal_pathlib-0.3.10.tar.gz

diff --git a/0001-Make-some-dependencies-more-optional-in-tests.patch b/0001-Make-some-dependencies-more-optional-in-tests.patch
new file mode 100644
index 0000000..988a17e
--- /dev/null
+++ b/0001-Make-some-dependencies-more-optional-in-tests.patch
@@ -0,0 +1,48 @@
+From 89902096a1f347c5c1d0af3ed0b59d88fa978a13 Mon Sep 17 00:00:00 2001
+From: Elliott Sales de Andrade <quantum.analyst@gmail.com>
+Date: Fri, 26 Dec 2025 23:29:06 -0500
+Subject: [PATCH] Make some dependencies more optional in tests
+
+Signed-off-by: Elliott Sales de Andrade <quantum.analyst@gmail.com>
+---
+ upath/tests/conftest.py      | 2 +-
+ upath/tests/test_relative.py | 3 ++-
+ 2 files changed, 3 insertions(+), 2 deletions(-)
+
+diff --git a/upath/tests/conftest.py b/upath/tests/conftest.py
+index 4fdeae6..3241924 100644
+--- a/upath/tests/conftest.py
++++ b/upath/tests/conftest.py
+@@ -13,7 +13,6 @@ import pytest
+ from fsspec import get_filesystem_class
+ from fsspec.implementations.local import LocalFileSystem
+ from fsspec.implementations.local import make_path_posix
+-from fsspec.implementations.smb import SMBFileSystem
+ from fsspec.registry import _registry
+ from fsspec.registry import register_implementation
+ from fsspec.utils import stringify_path
+@@ -497,6 +496,7 @@ def smb_url(smb_container):
+ 
+ @pytest.fixture
+ def smb_fixture(local_testdir, smb_url, smb_container):
++    from fsspec.implementations.smb import SMBFileSystem
+     smb = SMBFileSystem(
+         host=smb_container["host"],
+         port=smb_container["port"],
+diff --git a/upath/tests/test_relative.py b/upath/tests/test_relative.py
+index 8d71bb4..53da612 100644
+--- a/upath/tests/test_relative.py
++++ b/upath/tests/test_relative.py
+@@ -35,7 +35,8 @@ def test_protocol_storage_options_fs_preserved(protocol, storage_options, path,
+ 
+     assert rel.protocol == protocol
+     assert dict(**rel.storage_options) == storage_options
+-    assert isinstance(rel.fs, type(p.fs))
++    if protocol not in {"s3", "gcs"}:
++        assert isinstance(rel.fs, type(p.fs))
+ 
+ 
+ @pytest.mark.parametrize(
+-- 
+2.52.0
+

diff --git a/python-universal-pathlib.spec b/python-universal-pathlib.spec
index 507bd05..4796414 100644
--- a/python-universal-pathlib.spec
+++ b/python-universal-pathlib.spec
@@ -1,95 +1,59 @@
-%global forgeurl https://github.com/fsspec/universal_pathlib
-
-%global _description %{expand:
-Universal Pathlib is a Python library that extends the pathlib.Path API to
-support a variety of backend filesystems via filesystem_spec.}
-
 Name:           python-universal-pathlib
-Version:        0.2.5
-Release:        %{autorelease}
-Summary:        Pathlib api extended to use fsspec backends
+Version:        0.3.10
+Release:        %autorelease
+Summary:        Python pathlib API extended to use fsspec backends
 
-# The entire source is MIT, except that upath/_compat.py contains code from
-# CPython (see https://github.com/python/cpython/blob/v3.12.2/Lib/pathlib.py),
-# which is Python-2.0.1.
-License:        MIT AND Python-2.0.1
-URL:            %forgeurl
+License:        MIT
+URL:            https://github.com/fsspec/universal_pathlib
+Source:         %{pypi_source universal_pathlib}
 
-%forgemeta
-Source:         %forgesource
-BuildArch:      noarch
+# smbclient is unavailable and tests can't work as they use docker.
+# gcsfs/s3fs are unavailable so skip a test that requires them.
+Patch:          0001-Make-some-dependencies-more-optional-in-tests.patch
 
-%description %_description
-
-%package -n python3-universal-pathlib
-Summary:        %{summary}
+BuildArch:      noarch
 
 BuildRequires:  python3-devel
-BuildRequires:  %{py3_dist pytest}
-
-# Parts of upath/_compat.py are copied from CPython 3.12. Since the relevant
-# work began on 2024-02-20 in
-# https://github.com/fsspec/universal_pathlib/pull/200 and was merged in
-# https://github.com/fsspec/universal_pathlib/pull/200 on 2024-03-03, we
-# ascribe the code to the latest 3.12 release at the time.
-Provides:       bundled(python3-libs) = 3.12.2
+BuildRequires:  python3dist(fsspec[github])
+BuildRequires:  python3dist(fsspec[http])
+BuildRequires:  python3dist(fsspec[ssh])
 
+%global _description %{expand:
+Universal Pathlib is a Python library that extends the pathlib_abc.JoinablePath
+API to provide a pathlib.Path-like interface for a variety of backend
+filesystems via filesystem_spec.}
 
-%description -n python3-universal-pathlib %_description
+%description %_description
 
-%package doc
-Summary:        Documentation for %{name}
+%package -n     python3-universal-pathlib
+Summary:        %{summary}
 
-%description doc
-This package provides documentation for %{name}.
+%description -n python3-universal-pathlib %_description
 
 %prep
-%forgeautosetup
-
-# remove linters etc. from deps
-echo "Removing linters etc. from build deps"
-sed -i \
-    -e '/"pytest-cov.*"/d' \
-    -e '/"pylint.*"/d' \
-    -e '/"mypy.*"/d' \
-    -e '/"pytest-mypy-plugins.*"/d' \
-    -e '/"pytest-sugar.*"/d' \
-    pyproject.toml
-
-deps_to_remove=("s3fs" "adlfs" "moto\[s3,server\]")
-echo "Removing deps that are unavailable in Fedora: ${deps_to_remove[*]}"
-(IFS="|" ; sed -Ei "/(${deps_to_remove[*]})/d" pyproject.toml)
+%autosetup -p1 -n universal_pathlib-%{version}
+# Don't need mypy/lint dependencies.
+%pyproject_patch_dependency mypy:ignore
+%pyproject_patch_dependency pylint:ignore
+%pyproject_patch_dependency pytest-cov:ignore
+%pyproject_patch_dependency pytest-mypy-plugins:ignore
+%pyproject_patch_dependency pytest-sugar:ignore
 
 %generate_buildrequires
-export SETUPTOOLS_SCM_PRETEND_VERSION=%{version}
-%pyproject_buildrequires -x dev -x tests
-
+%pyproject_buildrequires -x tests
 
 %build
-export SETUPTOOLS_SCM_PRETEND_VERSION=%{version}
 %pyproject_wheel
 
 %install
-export SETUPTOOLS_SCM_PRETEND_VERSION=%{version}
 %pyproject_install
 %pyproject_save_files -l upath
 
 %check
-export SETUPTOOLS_SCM_PRETEND_VERSION=%{version}
-web_tests_to_ignore="${web_tests_to_ignore-} --ignore=upath/tests/implementations/test_http.py"
-web_tests_to_ignore="${web_tests_to_ignore-} --ignore=upath/tests/implementations/test_github.py"
-%pytest ${web_tests_to_ignore-}
-# check imports instead
-%pyproject_check_import
+%pytest -ra -m 'not network'
 
-# LICENSE/COPYING are included in the dist-info, so we do not need to
-# explicitly list them again
 %files -n python3-universal-pathlib -f %{pyproject_files}
 %doc README.md CHANGELOG.md
 
-%files doc
-%doc notebooks
-%license LICENSE
-
 %changelog
 %autochangelog

diff --git a/sources b/sources
index c289dbd..d3fb637 100644
--- a/sources
+++ b/sources
@@ -1 +1 @@
-SHA512 (universal_pathlib-0.2.5.tar.gz) = 891351cf05c94442310c2dba8d7207eb446df1e390064410e94378e527270db995c6efc85646b7011b43065c96a7b2f65466900c0eb2c72caec6fecdc9139162
+SHA512 (universal_pathlib-0.3.10.tar.gz) = 71712c87dad80863cf8bfeed666d522ebfd7662b060cccf660ee4f752c8b1c898f8eb5c235360f35a5e14b0493324179b8aac25f559f96420a815e6182d6834b

                 reply	other threads:[~2026-06-01 19:51 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=178034347550.1.3108792562086670023.rpms-python-universal-pathlib-520a390cc895@fedoraproject.org \
    --to=quantum.analyst@gmail.com \
    --cc=git-commits@fedoraproject.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox