Sync from SUSE:SLFO:Main python-gcsfs revision c53a624b7ee3347e84c44d82071311a7

This commit is contained in:
Adrian Schröter 2024-05-03 20:46:39 +02:00
commit 12e4ac9a91
4 changed files with 357 additions and 0 deletions

23
.gitattributes vendored Normal file
View File

@ -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

BIN
gcsfs-2023.12.2-gh.tar.gz (Stored with Git LFS) Normal file

Binary file not shown.

215
python-gcsfs.changes Normal file
View File

@ -0,0 +1,215 @@
-------------------------------------------------------------------
Sat Dec 16 12:36:23 UTC 2023 - Dirk Müller <dmueller@suse.com>
- update to 2023.12.3post1:
* use same version when paginating list (#591)
* fix double asterisk glob test (#589)
-------------------------------------------------------------------
Tue Nov 14 20:04:58 UTC 2023 - Ondřej Súkup <mimi.vx@gmail.com>
- Update to 2023.10.0
* Fix for transactions of small files
-------------------------------------------------------------------
Thu Oct 12 10:35:32 UTC 2023 - Ondřej Súkup <mimi.vx@gmail.com>
- Update to 2023.9.2
* bulk operations edge case
* inventory report based file listing (#573)
* pickle HttpError (#571)
* avoid warnings (#569)
* maxdepth in find() (#566)
* invalidate dircache (#564)
* standard metadata field names (#563)
* performance of building cache in find() (#561)
-------------------------------------------------------------------
Wed Jul 5 08:50:51 UTC 2023 - Ben Greiner <code@bnavigator.de>
- Update to 2023.6.0
* allow raw/session token for auth (#554)
* fix listings_expiry_time kwargs (#551)
* allow setting fixed metadata on put/pipe (#550)
-------------------------------------------------------------------
Wed Jun 7 04:27:24 UTC 2023 - Steve Kowalik <steven.kowalik@suse.com>
- Update to 2023.5.0:
* Allow emulator host without protocol (#548)
* Prevent upload retry from closing the file being sent (#540)
-------------------------------------------------------------------
Fri Mar 24 15:48:08 UTC 2023 - Ben Greiner <code@bnavigator.de>
- Update to 2023.3.0
* Don't let find() mess up dircache (#531)
* Drop py3.7 (#529)
* Update docs (#528)
* Make times UTC (#527)
* Use BytesIO for large bodies (#525)
* Fix: Don't append generation when it is absent (#523)
* get/put/cp consistency tests (#521)
- Release 2023.1.0
* Support create time (#516, 518)
* defer async session creation (#513, 514)
* support listing of file versions (#509)
* fix sign following versioned split protocol (#513)
-------------------------------------------------------------------
Sat Nov 19 14:45:02 UTC 2022 - Ben Greiner <code@bnavigator.de>
- Update to 2022.11.0
* implement object versioning (#504)
-------------------------------------------------------------------
Mon Oct 31 23:26:44 UTC 2022 - Matej Cepl <mcepl@suse.com>
- Update to 2022.10.0:
- bump fsspec to 2022.10.0
-------------------------------------------------------------------
Sun Oct 9 09:33:42 UTC 2022 - Ben Greiner <code@bnavigator.de>
- Update to 2022.8.2
* Try cloud auth by default (#479)
-------------------------------------------------------------------
Sat Jul 2 18:49:11 UTC 2022 - Ben Greiner <code@bnavigator.de>
- Enable the test suite with fake-gcs-server running
-------------------------------------------------------------------
Wed Jun 29 10:18:06 UTC 2022 - Ben Greiner <code@bnavigator.de>
- Update to 2022.5.0
* invalidate listings cache for simple put/pipe (#474)
* conform _mkdir and _cat_file to upstream (#471)
-------------------------------------------------------------------
Wed Apr 27 21:15:17 UTC 2022 - Ben Greiner <code@bnavigator.de>
- Update to 2022.3.0
* bucket exists workaround (#464)
* dirmarkers (#459)
* check connection (#457)
* browser connection now uses local server (#456)
* bucket location (#455)
* ensure auth is closed (#452)
-------------------------------------------------------------------
Tue Feb 22 22:47:16 UTC 2022 - Matej Cepl <mcepl@suse.com>
- Update to 2022.02.0:
- fix list_buckets without cache
- drop py36
-------------------------------------------------------------------
Mon Jan 24 17:20:26 UTC 2022 - Ben Greiner <code@bnavigator.de>
- Update to 2022.01.0
* update refname for versions (#442)
-------------------------------------------------------------------
Thu Jan 6 20:44:59 UTC 2022 - Ben Greiner <code@bnavigator.de>
- Update to 2021.11.1
* don't touch cache when doing find with a prefix (#437)
- Release 2021.11.0
* move to fsspec org
* add support for google fixed_key_metadata (#429)
* deprecate content_encoding parameter of setxattrs method (#429)
* use emulator for resting instead of vcrpy (#424)
- Release 2021.10.1
* url signing (#411)
* default callback (#422)
- Release 2021.10.0
* min version for decorator
* default callback in get (#422)
- Release 2021.09.0
* correctly recognise 404 (#419)
* fix for .details due to upstream (#417)
* callbacks in get/put (#416)
* "%" in paths (#415)
- Release 2021.08.1
* don't retry 404s (#406)
- Disable most of the testsuite because the setup moved from vcrpy
to a docker based simulator
-------------------------------------------------------------------
Wed Aug 18 10:29:33 UTC 2021 - Ben Greiner <code@bnavigator.de>
- Update to 2021.07.0
* fix find/glob with a prefix (#399)
- Release notes between 0.7.1 and 2021.06.0
* kwargs to aiohttpClient session
* graceful timeout when disconnecting at finalise (#397)
* negative ranges in cat_file (#394)
* no credentials bug fix (#390)
* use googleapis.com (#388)
* more retries (#387, 385, 380)
* Code cleanup (#381)
* license to match stated one (#378)
* deps updated (#376)
* switch to calver and fsspec pin
* keep up with fsspec 0.9.0 async
* one-shot find
* consistency checkers
* retries for intermittent issues
* timeouts
* partial cat
* http error status
- Fix running the testsuite -- gh#dask/gcsfs#292
* drop avoid_network_tests.patch
* use the GitHub archive for VCR recordings
-------------------------------------------------------------------
Mon May 24 03:49:24 UTC 2021 - Steve Kowalik <steven.kowalik@suse.com>
- Do not build for Python 3.6, due to no NumPy.
-------------------------------------------------------------------
Tue Oct 6 19:15:04 UTC 2020 - Matej Cepl <mcepl@suse.com>
- Update to 0.7.1:
- async operations via aiohttp
- Add avoid_network_tests.patch to skip over network requiring
test (gh#dask/gcsfs#292).
-------------------------------------------------------------------
Mon Apr 6 13:52:50 UTC 2020 - Marketa Calabkova <mcalabkova@suse.com>
- Update to 0.6.1
* **API-breaking**: Changed requester-pays handling for ``GCSFileSystem``.
The ``user_project`` keyword has been removed, and has been replaced with
the ``requester_pays`` keyword. If you're working with a ``requester_pays`` bucket
you will need to explicity pass ``requester_pays=True``. This will include your
``project`` ID in requests made to GCS.
* ``GCSFileSystem`` now validates that the ``project`` provided, if any, matches the
Google default project when using ``token='google_default'`` to authenticate (:pr:`219`).
* Fixed bug in ``GCSFileSystem.cat`` on objects in requester-pays buckets (:pr:`217`).
* Fixed bug in ``user_project`` fallback for default Google authentication (:pr:`213`)
* ``user_project`` now falls back to the ``project`` if provided (:pr:`208`)
* Added the ability to make requester-pays requests with the ``user_project`` parameter (:pr:`206`)
* Improved performance when serializing filesystem objects (:pr:`182`)
* Fixed authorization errors when using ``gcsfs`` within multithreaded code (:pr:`183`, :pr:`192`)
* Added contributing instructions (:pr:`185`)
* Improved performance for :meth:`gcsfs.GCSFileSystem.info` (:pr:`187`)
* Fixed bug in :meth:`gcsfs.GCSFileSystem.info` raising an error (:pr:`190`)
-------------------------------------------------------------------
Mon Jul 22 16:41:24 UTC 2019 - Todd R <toddrme2178@gmail.com>
- Update to 0.3.0
* Pass through open kwargs
* set versions
* add fuse recording
* skip fuse early
* remove pandas install
* some changes for FUSE
* add fsspec to install
-------------------------------------------------------------------
Thu May 2 17:17:18 UTC 2019 - Todd R <toddrme2178@gmail.com>
- Initial version

116
python-gcsfs.spec Normal file
View File

@ -0,0 +1,116 @@
#
# spec file for package python-gcsfs
#
# Copyright (c) 2023 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/
#
Name: python-gcsfs
Version: 2023.12.2
Release: 0
Summary: Filesystem interface over GCS
License: BSD-3-Clause
URL: https://github.com/fsspec/gcsfs
# Use the GitHub tarball for test data
Source: https://github.com/fsspec/gcsfs/archive/refs/tags/%{version}.tar.gz#/gcsfs-%{version}-gh.tar.gz
BuildRequires: %{python_module base >= 3.9}
BuildRequires: %{python_module pip}
BuildRequires: %{python_module setuptools}
BuildRequires: %{python_module wheel}
BuildRequires: fdupes
BuildRequires: python-rpm-macros
Requires: python-aiohttp
Requires: python-decorator > 4.1.2
Requires: python-fsspec = %{version}
Requires: python-google-auth >= 1.2
Requires: python-google-auth-oauthlib
Requires: python-google-cloud-storage
Requires: python-requests
Recommends: dask
Recommends: python-gcsfs-fuse = %{version}
Suggests: python-crcmod
BuildArch: noarch
# SECTION test requirements
BuildRequires: %{python_module aiohttp}
BuildRequires: %{python_module click}
BuildRequires: %{python_module decorator > 4.1.2}
BuildRequires: %{python_module fsspec == %{version}}
BuildRequires: %{python_module fusepy}
BuildRequires: %{python_module google-api-core}
BuildRequires: %{python_module google-api-python-client}
BuildRequires: %{python_module google-auth >= 1.2}
BuildRequires: %{python_module google-auth-oauthlib}
BuildRequires: %{python_module google-cloud-storage}
BuildRequires: %{python_module pytest-timeout}
BuildRequires: %{python_module pytest}
BuildRequires: %{python_module requests}
BuildRequires: fake-gcs-server
# /SECTION
%python_subpackages
%description
File-system interface for Google Cloud Storage.
%package fuse
Summary: Filesystem interface over GCS - FUSE interface
Requires: python-click
Requires: python-fusepy
%description fuse
File-system interface for Google Cloud Storage.
This package provides the optional FUSE interface.
%prep
%autosetup -p1 -n gcsfs-%{version}
sed -i 's/--color=yes//' setup.cfg
%build
%pyproject_wheel
%install
%pyproject_install
%python_expand %fdupes %{buildroot}%{$python_sitelib}
%check
# https://github.com/fsspec/gcsfs/blob/main/docs/source/developer.rst
fake-gcs-server \
-backend memory \
-scheme http \
-public-host http://localhost:4443 \
-external-url http://localhost:4443 \
>$PWD/fake-gcs-server.stdout 2>$PWD/fake-gcs-server.stderr &
trap "jobs; kill %1 || true" EXIT
export STORAGE_EMULATOR_HOST=http://localhost:4443
export GOOGLE_APPLICATION_CREDENTIALS=$(pwd)/gcsfs/tests/fake-secret.json
# Don't test fuse, it hangs on mounting inside obs
donttest="test_fuse"
# finds an existing path on the non-first multiflavor test runs"
donttest+=" or test_mkdir_with_path"
# no http error (which is expected) without network
donttest+=" or test_credentials_from_raw_token"
%pytest -rfEs -k "not ($donttest)"
%files %{python_files}
%doc README.rst
%license LICENSE.txt
%{python_sitelib}/gcsfs-%{version}.dist-info
%{python_sitelib}/gcsfs/
%exclude %{python_sitelib}/gcsfs/cli/
%files %{python_files fuse}
%license LICENSE.txt
%{python_sitelib}/gcsfs/cli/
%changelog