Warning: Permanently added '34.203.236.8' (ED25519) to the list of known hosts. You can reproduce this build on your computer by running: sudo dnf install copr-rpmbuild /usr/bin/copr-rpmbuild --verbose --drop-resultdir --task-url https://copr.fedorainfracloud.org/backend/get-build-task/8673092-fedora-rawhide-x86_64 --chroot fedora-rawhide-x86_64 Version: 1.2 PID: 26325 Logging PID: 26326 Task: {'allow_user_ssh': False, 'appstream': False, 'background': False, 'build_id': 8673092, 'buildroot_pkgs': [], 'chroot': 'fedora-rawhide-x86_64', 'enable_net': False, 'fedora_review': False, 'git_hash': '74fcd3c6615f47bd0621c7655a272f39fadb1973', 'git_repo': 'https://copr-dist-git.fedorainfracloud.org/git/music/aiohttp/python-fsspec', 'isolation': 'default', 'memory_reqs': 2048, 'package_name': 'python-fsspec', 'package_version': '2024.12.0-2', 'project_dirname': 'aiohttp', 'project_name': 'aiohttp', 'project_owner': 'music', 'repo_priority': None, 'repos': [{'baseurl': 'https://download.copr.fedorainfracloud.org/results/music/aiohttp/fedora-rawhide-x86_64/', 'id': 'copr_base', 'name': 'Copr repository', 'priority': None}], 'sandbox': 'music/aiohttp--music', 'source_json': {}, 'source_type': None, 'ssh_public_keys': None, 'storage': None, 'submitter': 'music', 'tags': [], 'task_id': '8673092-fedora-rawhide-x86_64', 'timeout': 18000, 'uses_devel_repo': False, 'with_opts': [], 'without_opts': []} Running: git clone https://copr-dist-git.fedorainfracloud.org/git/music/aiohttp/python-fsspec /var/lib/copr-rpmbuild/workspace/workdir-oxcnrjw9/python-fsspec --depth 500 --no-single-branch --recursive cmd: ['git', 'clone', 'https://copr-dist-git.fedorainfracloud.org/git/music/aiohttp/python-fsspec', '/var/lib/copr-rpmbuild/workspace/workdir-oxcnrjw9/python-fsspec', '--depth', '500', '--no-single-branch', '--recursive'] cwd: . rc: 0 stdout: stderr: Cloning into '/var/lib/copr-rpmbuild/workspace/workdir-oxcnrjw9/python-fsspec'... Running: git checkout 74fcd3c6615f47bd0621c7655a272f39fadb1973 -- cmd: ['git', 'checkout', '74fcd3c6615f47bd0621c7655a272f39fadb1973', '--'] cwd: /var/lib/copr-rpmbuild/workspace/workdir-oxcnrjw9/python-fsspec rc: 0 stdout: stderr: Note: switching to '74fcd3c6615f47bd0621c7655a272f39fadb1973'. You are in 'detached HEAD' state. You can look around, make experimental changes and commit them, and you can discard any commits you make in this state without impacting any branches by switching back to a branch. If you want to create a new branch to retain commits you create, you may do so (now or later) by using -c with the switch command. Example: git switch -c Or undo this operation with: git switch - Turn off this advice by setting config variable advice.detachedHead to false HEAD is now at 74fcd3c automatic import of python-fsspec Running: dist-git-client sources cmd: ['dist-git-client', 'sources'] cwd: /var/lib/copr-rpmbuild/workspace/workdir-oxcnrjw9/python-fsspec rc: 0 stdout: stderr: INFO: Reading stdout from command: git rev-parse --abbrev-ref HEAD INFO: Reading stdout from command: git rev-parse HEAD INFO: Reading sources specification file: sources INFO: Downloading fsspec-2024.12.0.tar.gz INFO: Reading stdout from command: curl --help all INFO: Calling: curl -H Pragma: -o fsspec-2024.12.0.tar.gz --location --connect-timeout 60 --retry 3 --retry-delay 10 --remote-time --show-error --fail --retry-all-errors https://copr-dist-git.fedorainfracloud.org/repo/pkgs/music/aiohttp/python-fsspec/fsspec-2024.12.0.tar.gz/md5/b2efde2209f19483a2a065dc71fb365a/fsspec-2024.12.0.tar.gz % Total % Received % Xferd Average Speed Time Time Time Current Dload Upload Total Spent Left Speed 100 411k 100 411k 0 0 10.0M 0 --:--:-- --:--:-- --:--:-- 10.0M INFO: Reading stdout from command: md5sum fsspec-2024.12.0.tar.gz /usr/bin/tail: /var/lib/copr-rpmbuild/main.log: file truncated Running (timeout=18000): unbuffer mock --spec /var/lib/copr-rpmbuild/workspace/workdir-oxcnrjw9/python-fsspec/python-fsspec.spec --sources /var/lib/copr-rpmbuild/workspace/workdir-oxcnrjw9/python-fsspec --resultdir /var/lib/copr-rpmbuild/results --uniqueext 1739997622.433147 -r /var/lib/copr-rpmbuild/results/configs/child.cfg INFO: mock.py version 6.0 starting (python version = 3.13.0, NVR = mock-6.0-1.fc41), args: /usr/libexec/mock/mock --spec /var/lib/copr-rpmbuild/workspace/workdir-oxcnrjw9/python-fsspec/python-fsspec.spec --sources /var/lib/copr-rpmbuild/workspace/workdir-oxcnrjw9/python-fsspec --resultdir /var/lib/copr-rpmbuild/results --uniqueext 1739997622.433147 -r /var/lib/copr-rpmbuild/results/configs/child.cfg Start(bootstrap): init plugins INFO: tmpfs initialized INFO: selinux enabled INFO: chroot_scan: initialized INFO: compress_logs: initialized Finish(bootstrap): init plugins Start: init plugins INFO: tmpfs initialized INFO: selinux enabled INFO: chroot_scan: initialized INFO: compress_logs: initialized Finish: init plugins INFO: Signal handler active Start: run INFO: Start(/var/lib/copr-rpmbuild/workspace/workdir-oxcnrjw9/python-fsspec/python-fsspec.spec) Config(fedora-rawhide-x86_64) Start: clean chroot Finish: clean chroot Mock Version: 6.0 INFO: Mock Version: 6.0 Start(bootstrap): chroot init INFO: mounting tmpfs at /var/lib/mock/fedora-rawhide-x86_64-bootstrap-1739997622.433147/root. INFO: calling preinit hooks INFO: enabled root cache INFO: enabled package manager cache Start(bootstrap): cleaning package manager metadata Finish(bootstrap): cleaning package manager metadata INFO: Guessed host environment type: unknown INFO: Using container image: registry.fedoraproject.org/fedora:rawhide INFO: Pulling image: registry.fedoraproject.org/fedora:rawhide INFO: Tagging container image as mock-bootstrap-7dd26c81-0bdd-4ac9-b231-5c81070728ec INFO: Checking that 0f735ce0e5c275c6064a2fe4df5c7519a4268fe3a59c54dbbb131dd29e74c03f image matches host's architecture INFO: Copy content of container 0f735ce0e5c275c6064a2fe4df5c7519a4268fe3a59c54dbbb131dd29e74c03f to /var/lib/mock/fedora-rawhide-x86_64-bootstrap-1739997622.433147/root INFO: mounting 0f735ce0e5c275c6064a2fe4df5c7519a4268fe3a59c54dbbb131dd29e74c03f with podman image mount INFO: image 0f735ce0e5c275c6064a2fe4df5c7519a4268fe3a59c54dbbb131dd29e74c03f as /var/lib/containers/storage/overlay/83cebd86ef768d8def50517ab16e21d806fb019142ae1952dfad960b1f528667/merged INFO: umounting image 0f735ce0e5c275c6064a2fe4df5c7519a4268fe3a59c54dbbb131dd29e74c03f (/var/lib/containers/storage/overlay/83cebd86ef768d8def50517ab16e21d806fb019142ae1952dfad960b1f528667/merged) with podman image umount INFO: Removing image mock-bootstrap-7dd26c81-0bdd-4ac9-b231-5c81070728ec INFO: Package manager dnf5 detected and used (fallback) INFO: Not updating bootstrap chroot, bootstrap_image_ready=True Start(bootstrap): creating root cache Finish(bootstrap): creating root cache Finish(bootstrap): chroot init Start: chroot init INFO: mounting tmpfs at /var/lib/mock/fedora-rawhide-x86_64-1739997622.433147/root. INFO: calling preinit hooks INFO: enabled root cache INFO: enabled package manager cache Start: cleaning package manager metadata Finish: cleaning package manager metadata INFO: enabled HW Info plugin INFO: Package manager dnf5 detected and used (direct choice) INFO: Buildroot is handled by package management downloaded with a bootstrap image: rpm-4.20.0-8.fc42.x86_64 rpm-sequoia-1.7.0-5.fc43.x86_64 dnf5-5.2.10.0-2.fc43.x86_64 dnf5-plugins-5.2.10.0-2.fc43.x86_64 Start: installing minimal buildroot with dnf5 Updating and loading repositories: fedora 100% | 222.6 KiB/s | 25.8 KiB | 00m00s Copr repository 100% | 69.3 KiB/s | 1.5 KiB | 00m00s Copr repository 100% | 2.5 MiB/s | 72.9 KiB | 00m00s Repositories loaded. Package Arch Version Repository Size Installing group/module packages: bash x86_64 5.2.37-3.fc43 fedora 8.2 MiB bzip2 x86_64 1.0.8-20.fc42 fedora 99.3 KiB coreutils x86_64 9.6-1.fc42 fedora 5.5 MiB cpio x86_64 2.15-2.fc41 fedora 1.1 MiB diffutils x86_64 3.10-9.fc42 fedora 1.6 MiB fedora-release-common noarch 43-0.4 fedora 20.1 KiB findutils x86_64 1:4.10.0-5.fc42 fedora 1.9 MiB gawk x86_64 5.3.1-1.fc42 fedora 1.7 MiB glibc-minimal-langpack x86_64 2.40.9000-37.fc43 fedora 0.0 B grep x86_64 3.11-10.fc42 fedora 1.0 MiB gzip x86_64 1.13-3.fc42 fedora 392.9 KiB info x86_64 7.2-3.fc42 fedora 357.9 KiB patch x86_64 2.7.6-26.fc42 fedora 258.7 KiB redhat-rpm-config noarch 342-2.fc42 fedora 186.8 KiB rpm-build x86_64 4.20.0-8.fc42 fedora 165.2 KiB sed x86_64 4.9-4.fc42 fedora 857.3 KiB shadow-utils x86_64 2:4.17.0-4.fc42 fedora 4.0 MiB tar x86_64 2:1.35-5.fc42 fedora 3.0 MiB unzip x86_64 6.0-66.fc42 fedora 390.3 KiB util-linux x86_64 2.40.4-6.fc43 fedora 3.4 MiB which x86_64 2.23-1.fc42 fedora 83.4 KiB xz x86_64 1:5.6.3-3.fc42 fedora 1.2 MiB Installing dependencies: add-determinism x86_64 0.6.0-1.fc43 fedora 2.5 MiB alternatives x86_64 1.31-3.fc42 fedora 66.2 KiB ansible-srpm-macros noarch 1-17.1.fc42 fedora 35.7 KiB audit-libs x86_64 4.0.3-2.fc42 fedora 351.3 KiB binutils x86_64 2.44-3.fc43 fedora 25.9 MiB build-reproducibility-srpm-macros noarch 0.6.0-1.fc43 fedora 735.0 B bzip2-libs x86_64 1.0.8-20.fc42 fedora 84.6 KiB ca-certificates noarch 2024.2.69_v8.0.401-5.fc42 fedora 2.6 MiB coreutils-common x86_64 9.6-1.fc42 fedora 11.1 MiB crypto-policies noarch 20250214-1.gitff7551b.fc43 fedora 137.2 KiB curl x86_64 8.12.1-1.fc43 fedora 457.2 KiB cyrus-sasl-lib x86_64 2.1.28-30.fc42 fedora 2.3 MiB debugedit x86_64 5.1-4.fc42 fedora 200.4 KiB dwz x86_64 0.15-9.fc42 fedora 291.0 KiB ed x86_64 1.21-2.fc42 fedora 146.5 KiB efi-srpm-macros noarch 6-2.fc42 fedora 40.1 KiB elfutils x86_64 0.192-8.fc42 fedora 2.7 MiB elfutils-debuginfod-client x86_64 0.192-8.fc42 fedora 83.9 KiB elfutils-default-yama-scope noarch 0.192-8.fc42 fedora 1.8 KiB elfutils-libelf x86_64 0.192-8.fc42 fedora 1.2 MiB elfutils-libs x86_64 0.192-8.fc42 fedora 675.0 KiB fedora-gpg-keys noarch 43-0.1 fedora 128.2 KiB fedora-release noarch 43-0.4 fedora 0.0 B fedora-release-identity-basic noarch 43-0.4 fedora 719.0 B fedora-repos noarch 43-0.1 fedora 4.9 KiB fedora-repos-rawhide noarch 43-0.1 fedora 2.2 KiB file x86_64 5.46-1.fc42 fedora 100.2 KiB file-libs x86_64 5.46-1.fc42 fedora 11.9 MiB filesystem x86_64 3.18-38.fc43 fedora 112.0 B filesystem-srpm-macros noarch 3.18-38.fc43 fedora 38.2 KiB fonts-srpm-macros noarch 1:2.0.5-21.fc42 fedora 55.8 KiB forge-srpm-macros noarch 0.4.0-2.fc42 fedora 38.9 KiB fpc-srpm-macros noarch 1.3-14.fc42 fedora 144.0 B gdb-minimal x86_64 16.2-1.fc43 fedora 13.3 MiB gdbm-libs x86_64 1:1.23-9.fc42 fedora 129.9 KiB ghc-srpm-macros noarch 1.9.2-2.fc42 fedora 779.0 B glibc x86_64 2.40.9000-37.fc43 fedora 6.6 MiB glibc-common x86_64 2.40.9000-37.fc43 fedora 1.0 MiB glibc-gconv-extra x86_64 2.40.9000-37.fc43 fedora 7.2 MiB gmp x86_64 1:6.3.0-2.fc41 fedora 811.4 KiB gnat-srpm-macros noarch 6-7.fc42 fedora 1.0 KiB go-srpm-macros noarch 3.6.0-6.fc42 fedora 60.8 KiB jansson x86_64 2.14-2.fc42 fedora 93.1 KiB json-c x86_64 0.18-2.fc42 fedora 86.7 KiB kernel-srpm-macros noarch 1.0-25.fc42 fedora 1.9 KiB keyutils-libs x86_64 1.6.3-5.fc42 fedora 58.3 KiB krb5-libs x86_64 1.21.3-5.fc42 fedora 2.3 MiB libacl x86_64 2.3.2-3.fc42 fedora 38.3 KiB libarchive x86_64 3.7.7-2.fc42 fedora 938.6 KiB libattr x86_64 2.5.2-5.fc42 fedora 27.1 KiB libblkid x86_64 2.40.4-6.fc43 fedora 262.4 KiB libbrotli x86_64 1.1.0-6.fc42 fedora 841.3 KiB libcap x86_64 2.73-2.fc42 fedora 207.1 KiB libcap-ng x86_64 0.8.5-4.fc42 fedora 72.9 KiB libcom_err x86_64 1.47.2-3.fc42 fedora 67.1 KiB libcurl x86_64 8.12.1-1.fc43 fedora 850.1 KiB libeconf x86_64 0.7.6-1.fc43 fedora 64.6 KiB libevent x86_64 2.1.12-15.fc42 fedora 903.1 KiB libfdisk x86_64 2.40.4-6.fc43 fedora 372.3 KiB libffi x86_64 3.4.6-5.fc42 fedora 82.3 KiB libgcc x86_64 15.0.1-0.7.fc43 fedora 266.6 KiB libgomp x86_64 15.0.1-0.7.fc43 fedora 535.7 KiB libidn2 x86_64 2.3.7-3.fc42 fedora 329.0 KiB libmount x86_64 2.40.4-6.fc43 fedora 356.2 KiB libnghttp2 x86_64 1.64.0-3.fc42 fedora 170.4 KiB libpkgconf x86_64 2.3.0-2.fc42 fedora 78.1 KiB libpsl x86_64 0.21.5-5.fc42 fedora 76.4 KiB libselinux x86_64 3.8-1.fc42 fedora 193.1 KiB libsemanage x86_64 3.8-1.fc42 fedora 308.4 KiB libsepol x86_64 3.8-1.fc42 fedora 826.0 KiB libsmartcols x86_64 2.40.4-6.fc43 fedora 180.4 KiB libssh x86_64 0.11.1-4.fc42 fedora 565.5 KiB libssh-config noarch 0.11.1-4.fc42 fedora 277.0 B libstdc++ x86_64 15.0.1-0.7.fc43 fedora 2.8 MiB libtasn1 x86_64 4.20.0-1.fc43 fedora 176.3 KiB libtool-ltdl x86_64 2.5.4-4.fc42 fedora 70.1 KiB libunistring x86_64 1.1-9.fc42 fedora 1.7 MiB libuuid x86_64 2.40.4-6.fc43 fedora 37.3 KiB libverto x86_64 0.3.2-10.fc42 fedora 25.4 KiB libxcrypt x86_64 4.4.38-6.fc43 fedora 284.5 KiB libxml2 x86_64 2.12.9-2.fc42 fedora 1.7 MiB libzstd x86_64 1.5.6-3.fc42 fedora 795.8 KiB lua-libs x86_64 5.4.7-2.fc42 fedora 280.9 KiB lua-srpm-macros noarch 1-15.fc42 fedora 1.3 KiB lz4-libs x86_64 1.10.0-2.fc42 fedora 157.4 KiB mpfr x86_64 4.2.1-6.fc42 fedora 831.9 KiB ncurses-base noarch 6.5-5.20250125.fc42 fedora 326.8 KiB ncurses-libs x86_64 6.5-5.20250125.fc42 fedora 946.3 KiB ocaml-srpm-macros noarch 10-4.fc42 fedora 1.9 KiB openblas-srpm-macros noarch 2-19.fc42 fedora 112.0 B openldap x86_64 2.6.9-3.fc42 fedora 655.1 KiB openssl-libs x86_64 1:3.2.4-1.fc43 fedora 7.8 MiB p11-kit x86_64 0.25.5-5.fc42 fedora 2.2 MiB p11-kit-trust x86_64 0.25.5-5.fc42 fedora 395.5 KiB package-notes-srpm-macros noarch 0.5-13.fc42 fedora 1.6 KiB pam-libs x86_64 1.7.0-4.fc42 fedora 126.7 KiB pcre2 x86_64 10.45-1.fc43 fedora 697.7 KiB pcre2-syntax noarch 10.45-1.fc43 fedora 273.9 KiB perl-srpm-macros noarch 1-57.fc42 fedora 861.0 B pkgconf x86_64 2.3.0-2.fc42 fedora 88.5 KiB pkgconf-m4 noarch 2.3.0-2.fc42 fedora 14.4 KiB pkgconf-pkg-config x86_64 2.3.0-2.fc42 fedora 989.0 B popt x86_64 1.19-8.fc42 fedora 132.8 KiB publicsuffix-list-dafsa noarch 20250116-1.fc42 fedora 68.5 KiB pyproject-srpm-macros noarch 1.17.0-1.fc43 fedora 1.9 KiB python-srpm-macros noarch 3.13-4.fc42 fedora 51.0 KiB qt5-srpm-macros noarch 5.15.15-1.fc42 fedora 500.0 B qt6-srpm-macros noarch 6.8.2-2.fc43 fedora 464.0 B readline x86_64 8.2-12.fc42 fedora 485.0 KiB rpm x86_64 4.20.0-8.fc42 fedora 3.0 MiB rpm-build-libs x86_64 4.20.0-8.fc42 fedora 202.6 KiB rpm-libs x86_64 4.20.0-8.fc42 fedora 721.8 KiB rpm-sequoia x86_64 1.7.0-5.fc43 fedora 2.4 MiB rust-srpm-macros noarch 26.3-4.fc42 fedora 4.8 KiB setup noarch 2.15.0-12.fc43 fedora 720.8 KiB sqlite-libs x86_64 3.49.0-1.fc43 fedora 1.5 MiB systemd-libs x86_64 257.3-7.fc43 fedora 2.2 MiB systemd-standalone-sysusers x86_64 257.3-7.fc43 fedora 277.3 KiB tree-sitter-srpm-macros noarch 0.1.0-8.fc42 fedora 6.5 KiB util-linux-core x86_64 2.40.4-6.fc43 fedora 1.4 MiB xxhash-libs x86_64 0.8.3-2.fc42 fedora 90.2 KiB xz-libs x86_64 1:5.6.3-3.fc42 fedora 218.3 KiB zig-srpm-macros noarch 1-4.fc42 fedora 1.1 KiB zip x86_64 3.0-43.fc42 fedora 698.5 KiB zlib-ng-compat x86_64 2.2.4-1.fc43 fedora 137.6 KiB zstd x86_64 1.5.6-3.fc42 fedora 1.7 MiB Installing groups: Buildsystem building group Transaction Summary: Installing: 148 packages Total size of inbound packages is 52 MiB. Need to download 0 B. After this operation, 176 MiB extra will be used (install 176 MiB, remove 0 B). [ 1/148] tar-2:1.35-5.fc42.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 2/148] bzip2-0:1.0.8-20.fc42.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 3/148] redhat-rpm-config-0:342-2.fc4 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 4/148] rpm-build-0:4.20.0-8.fc42.x86 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 5/148] unzip-0:6.0-66.fc42.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 6/148] cpio-0:2.15-2.fc41.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 7/148] which-0:2.23-1.fc42.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 8/148] bash-0:5.2.37-3.fc43.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 9/148] coreutils-0:9.6-1.fc42.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 10/148] grep-0:3.11-10.fc42.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 11/148] patch-0:2.7.6-26.fc42.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 12/148] sed-0:4.9-4.fc42.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 13/148] shadow-utils-2:4.17.0-4.fc42. 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 14/148] diffutils-0:3.10-9.fc42.x86_6 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 15/148] fedora-release-common-0:43-0. 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 16/148] findutils-1:4.10.0-5.fc42.x86 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 17/148] glibc-minimal-langpack-0:2.40 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 18/148] gzip-0:1.13-3.fc42.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 19/148] info-0:7.2-3.fc42.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 20/148] xz-1:5.6.3-3.fc42.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 21/148] util-linux-0:2.40.4-6.fc43.x8 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 22/148] gawk-0:5.3.1-1.fc42.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 23/148] glibc-0:2.40.9000-37.fc43.x86 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 24/148] libacl-0:2.3.2-3.fc42.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 25/148] libselinux-0:3.8-1.fc42.x86_6 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 26/148] bzip2-libs-0:1.0.8-20.fc42.x8 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 27/148] ansible-srpm-macros-0:1-17.1. 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 28/148] build-reproducibility-srpm-ma 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 29/148] dwz-0:0.15-9.fc42.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 30/148] efi-srpm-macros-0:6-2.fc42.no 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 31/148] file-0:5.46-1.fc42.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 32/148] filesystem-srpm-macros-0:3.18 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 33/148] fonts-srpm-macros-1:2.0.5-21. 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 34/148] forge-srpm-macros-0:0.4.0-2.f 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 35/148] fpc-srpm-macros-0:1.3-14.fc42 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 36/148] ghc-srpm-macros-0:1.9.2-2.fc4 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 37/148] gnat-srpm-macros-0:6-7.fc42.n 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 38/148] go-srpm-macros-0:3.6.0-6.fc42 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 39/148] kernel-srpm-macros-0:1.0-25.f 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 40/148] lua-srpm-macros-0:1-15.fc42.n 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 41/148] ocaml-srpm-macros-0:10-4.fc42 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 42/148] openblas-srpm-macros-0:2-19.f 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 43/148] package-notes-srpm-macros-0:0 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 44/148] perl-srpm-macros-0:1-57.fc42. 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 45/148] pyproject-srpm-macros-0:1.17. 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 46/148] python-srpm-macros-0:3.13-4.f 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 47/148] qt5-srpm-macros-0:5.15.15-1.f 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 48/148] qt6-srpm-macros-0:6.8.2-2.fc4 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 49/148] rpm-0:4.20.0-8.fc42.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 50/148] rust-srpm-macros-0:26.3-4.fc4 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 51/148] tree-sitter-srpm-macros-0:0.1 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 52/148] zig-srpm-macros-0:1-4.fc42.no 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 53/148] zip-0:3.0-43.fc42.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 54/148] debugedit-0:5.1-4.fc42.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 55/148] elfutils-0:0.192-8.fc42.x86_6 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 56/148] elfutils-libelf-0:0.192-8.fc4 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 57/148] libarchive-0:3.7.7-2.fc42.x86 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 58/148] popt-0:1.19-8.fc42.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 59/148] readline-0:8.2-12.fc42.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 60/148] rpm-build-libs-0:4.20.0-8.fc4 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 61/148] rpm-libs-0:4.20.0-8.fc42.x86_ 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 62/148] zstd-0:1.5.6-3.fc42.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 63/148] filesystem-0:3.18-38.fc43.x86 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 64/148] ncurses-libs-0:6.5-5.20250125 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 65/148] coreutils-common-0:9.6-1.fc42 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 66/148] gmp-1:6.3.0-2.fc41.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 67/148] libattr-0:2.5.2-5.fc42.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 68/148] libcap-0:2.73-2.fc42.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 69/148] openssl-libs-1:3.2.4-1.fc43.x 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 70/148] systemd-libs-0:257.3-7.fc43.x 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 71/148] pcre2-0:10.45-1.fc43.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 72/148] ed-0:1.21-2.fc42.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 73/148] audit-libs-0:4.0.3-2.fc42.x86 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 74/148] libeconf-0:0.7.6-1.fc43.x86_6 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 75/148] libsemanage-0:3.8-1.fc42.x86_ 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 76/148] libxcrypt-0:4.4.38-6.fc43.x86 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 77/148] pam-libs-0:1.7.0-4.fc42.x86_6 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 78/148] setup-0:2.15.0-12.fc43.noarch 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 79/148] fedora-repos-0:43-0.1.noarch 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 80/148] glibc-common-0:2.40.9000-37.f 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 81/148] xz-libs-1:5.6.3-3.fc42.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 82/148] libblkid-0:2.40.4-6.fc43.x86_ 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 83/148] libcap-ng-0:0.8.5-4.fc42.x86_ 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 84/148] libfdisk-0:2.40.4-6.fc43.x86_ 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 85/148] libmount-0:2.40.4-6.fc43.x86_ 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 86/148] libsmartcols-0:2.40.4-6.fc43. 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 87/148] libuuid-0:2.40.4-6.fc43.x86_6 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 88/148] util-linux-core-0:2.40.4-6.fc 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 89/148] zlib-ng-compat-0:2.2.4-1.fc43 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 90/148] mpfr-0:4.2.1-6.fc42.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 91/148] glibc-gconv-extra-0:2.40.9000 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 92/148] libgcc-0:15.0.1-0.7.fc43.x86_ 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 93/148] libsepol-0:3.8-1.fc42.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 94/148] add-determinism-0:0.6.0-1.fc4 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 95/148] file-libs-0:5.46-1.fc42.x86_6 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 96/148] curl-0:8.12.1-1.fc43.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 97/148] elfutils-libs-0:0.192-8.fc42. 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 98/148] elfutils-debuginfod-client-0: 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 99/148] libstdc++-0:15.0.1-0.7.fc43.x 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [100/148] libzstd-0:1.5.6-3.fc42.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [101/148] libxml2-0:2.12.9-2.fc42.x86_6 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [102/148] lz4-libs-0:1.10.0-2.fc42.x86_ 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [103/148] libgomp-0:15.0.1-0.7.fc43.x86 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [104/148] lua-libs-0:5.4.7-2.fc42.x86_6 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [105/148] rpm-sequoia-0:1.7.0-5.fc43.x8 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [106/148] sqlite-libs-0:3.49.0-1.fc43.x 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [107/148] ncurses-base-0:6.5-5.20250125 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [108/148] ca-certificates-0:2024.2.69_v 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [109/148] crypto-policies-0:20250214-1. 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [110/148] pcre2-syntax-0:10.45-1.fc43.n 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [111/148] fedora-gpg-keys-0:43-0.1.noar 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [112/148] fedora-repos-rawhide-0:43-0.1 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [113/148] elfutils-default-yama-scope-0 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [114/148] json-c-0:0.18-2.fc42.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [115/148] binutils-0:2.44-3.fc43.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [116/148] alternatives-0:1.31-3.fc42.x8 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [117/148] jansson-0:2.14-2.fc42.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [118/148] pkgconf-pkg-config-0:2.3.0-2. 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [119/148] pkgconf-0:2.3.0-2.fc42.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [120/148] pkgconf-m4-0:2.3.0-2.fc42.noa 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [121/148] libpkgconf-0:2.3.0-2.fc42.x86 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [122/148] libffi-0:3.4.6-5.fc42.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [123/148] p11-kit-0:0.25.5-5.fc42.x86_6 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [124/148] libtasn1-0:4.20.0-1.fc43.x86_ 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [125/148] p11-kit-trust-0:0.25.5-5.fc42 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [126/148] fedora-release-0:43-0.4.noarc 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [127/148] systemd-standalone-sysusers-0 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [128/148] gdb-minimal-0:16.2-1.fc43.x86 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [129/148] xxhash-libs-0:0.8.3-2.fc42.x8 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [130/148] fedora-release-identity-basic 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [131/148] libcurl-0:8.12.1-1.fc43.x86_6 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [132/148] krb5-libs-0:1.21.3-5.fc42.x86 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [133/148] libbrotli-0:1.1.0-6.fc42.x86_ 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [134/148] libidn2-0:2.3.7-3.fc42.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [135/148] libnghttp2-0:1.64.0-3.fc42.x8 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [136/148] libpsl-0:0.21.5-5.fc42.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [137/148] libssh-0:0.11.1-4.fc42.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [138/148] openldap-0:2.6.9-3.fc42.x86_6 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [139/148] keyutils-libs-0:1.6.3-5.fc42. 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [140/148] libcom_err-0:1.47.2-3.fc42.x8 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [141/148] libverto-0:0.3.2-10.fc42.x86_ 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [142/148] libunistring-0:1.1-9.fc42.x86 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [143/148] publicsuffix-list-dafsa-0:202 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [144/148] libssh-config-0:0.11.1-4.fc42 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [145/148] cyrus-sasl-lib-0:2.1.28-30.fc 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [146/148] libevent-0:2.1.12-15.fc42.x86 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [147/148] libtool-ltdl-0:2.5.4-4.fc42.x 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [148/148] gdbm-libs-1:1.23-9.fc42.x86_6 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded -------------------------------------------------------------------------------- [148/148] Total 100% | 0.0 B/s | 0.0 B | 00m00s Running transaction Importing OpenPGP key 0x31645531: UserID : "Fedora (43) " Fingerprint: C6E7F081CF80E13146676E88829B606631645531 From : file:///usr/share/distribution-gpg-keys/fedora/RPM-GPG-KEY-fedora-43-primary The key was successfully imported. Importing OpenPGP key 0x105EF944: UserID : "Fedora (42) " Fingerprint: B0F4950458F69E1150C6C5EDC8AC4916105EF944 From : file:///usr/share/distribution-gpg-keys/fedora/RPM-GPG-KEY-fedora-42-primary The key was successfully imported. Importing OpenPGP key 0x6D9F90A6: UserID : "Fedora (44) " Fingerprint: 36F612DCF27F7D1A48A835E4DBFCF71C6D9F90A6 From : file:///usr/share/distribution-gpg-keys/fedora/RPM-GPG-KEY-fedora-44-primary The key was successfully imported. [ 1/150] Verify package files 100% | 778.0 B/s | 148.0 B | 00m00s [ 2/150] Prepare transaction 100% | 3.5 KiB/s | 148.0 B | 00m00s [ 3/150] Installing libgcc-0:15.0.1-0. 100% | 131.0 MiB/s | 268.3 KiB | 00m00s [ 4/150] Installing libssh-config-0:0. 100% | 0.0 B/s | 816.0 B | 00m00s [ 5/150] Installing publicsuffix-list- 100% | 0.0 B/s | 69.2 KiB | 00m00s [ 6/150] Installing fedora-release-ide 100% | 0.0 B/s | 976.0 B | 00m00s [ 7/150] Installing fedora-gpg-keys-0: 100% | 42.7 MiB/s | 174.8 KiB | 00m00s [ 8/150] Installing fedora-repos-rawhi 100% | 0.0 B/s | 2.4 KiB | 00m00s [ 9/150] Installing fedora-repos-0:43- 100% | 0.0 B/s | 5.7 KiB | 00m00s [ 10/150] Installing fedora-release-com 100% | 23.8 MiB/s | 24.4 KiB | 00m00s [ 11/150] Installing fedora-release-0:4 100% | 10.1 KiB/s | 124.0 B | 00m00s >>> Running unknown scriptlet: setup-0:2.15.0-12.fc43.noarch >>> Finished unknown scriptlet: setup-0:2.15.0-12.fc43.noarch >>> Scriptlet output: >>> Creating group 'adm' with GID 4. >>> Creating group 'audio' with GID 63. >>> Creating group 'bin' with GID 1. >>> Creating group 'cdrom' with GID 11. >>> Creating group 'clock' with GID 103. >>> Creating group 'daemon' with GID 2. >>> Creating group 'dialout' with GID 18. >>> Creating group 'disk' with GID 6. >>> Creating group 'floppy' with GID 19. >>> Creating group 'ftp' with GID 50. >>> Creating group 'games' with GID 20. >>> Creating group 'input' with GID 104. >>> Creating group 'kmem' with GID 9. >>> Creating group 'kvm' with GID 36. >>> Creating group 'lock' with GID 54. >>> Creating group 'lp' with GID 7. >>> Creating group 'mail' with GID 12. >>> Creating group 'man' with GID 15. >>> Creating group 'mem' with GID 8. >>> Creating group 'nobody' with GID 65534. >>> Creating group 'render' with GID 105. >>> Creating group 'root' with GID 0. >>> Creating group 'sgx' with GID 106. >>> Creating group 'sys' with GID 3. >>> Creating group 'tape' with GID 33. >>> Creating group 'tty' with GID 5. >>> Creating group 'users' with GID 100. >>> Creating group 'utmp' with GID 22. >>> Creating group 'video' with GID 39. >>> Creating group 'wheel' with GID 10. >>> >>> Running unknown scriptlet: setup-0:2.15.0-12.fc43.noarch >>> Finished unknown scriptlet: setup-0:2.15.0-12.fc43.noarch >>> Scriptlet output: >>> Creating user 'adm' (adm) with UID 3 and GID 4. >>> Creating user 'bin' (bin) with UID 1 and GID 1. >>> Creating user 'daemon' (daemon) with UID 2 and GID 2. >>> Creating user 'ftp' (FTP User) with UID 14 and GID 50. >>> Creating user 'games' (games) with UID 12 and GID 20. >>> Creating user 'halt' (halt) with UID 7 and GID 0. >>> Creating user 'lp' (lp) with UID 4 and GID 7. >>> Creating user 'mail' (mail) with UID 8 and GID 12. >>> Creating user 'nobody' (Kernel Overflow User) with UID 65534 and GID 65534. >>> Creating user 'operator' (operator) with UID 11 and GID 0. >>> Creating user 'root' (Super User) with UID 0 and GID 0. >>> Creating user 'shutdown' (shutdown) with UID 6 and GID 0. >>> Creating user 'sync' (sync) with UID 5 and GID 0. >>> [ 12/150] Installing setup-0:2.15.0-12. 100% | 44.3 MiB/s | 726.6 KiB | 00m00s >>> [RPM] /etc/hosts created as /etc/hosts.rpmnew [ 13/150] Installing filesystem-0:3.18- 100% | 2.4 MiB/s | 212.4 KiB | 00m00s [ 14/150] Installing pkgconf-m4-0:2.3.0 100% | 14.5 MiB/s | 14.8 KiB | 00m00s [ 15/150] Installing pcre2-syntax-0:10. 100% | 269.9 MiB/s | 276.4 KiB | 00m00s [ 16/150] Installing ncurses-base-0:6.5 100% | 68.8 MiB/s | 352.2 KiB | 00m00s [ 17/150] Installing glibc-minimal-lang 100% | 0.0 B/s | 124.0 B | 00m00s [ 18/150] Installing ncurses-libs-0:6.5 100% | 186.1 MiB/s | 952.8 KiB | 00m00s [ 19/150] Installing glibc-0:2.40.9000- 100% | 175.1 MiB/s | 6.7 MiB | 00m00s [ 20/150] Installing bash-0:5.2.37-3.fc 100% | 240.6 MiB/s | 8.2 MiB | 00m00s [ 21/150] Installing glibc-common-0:2.4 100% | 53.7 MiB/s | 1.0 MiB | 00m00s [ 22/150] Installing glibc-gconv-extra- 100% | 235.9 MiB/s | 7.3 MiB | 00m00s [ 23/150] Installing zlib-ng-compat-0:2 100% | 135.2 MiB/s | 138.4 KiB | 00m00s [ 24/150] Installing bzip2-libs-0:1.0.8 100% | 83.7 MiB/s | 85.7 KiB | 00m00s [ 25/150] Installing xz-libs-1:5.6.3-3. 100% | 214.3 MiB/s | 219.4 KiB | 00m00s [ 26/150] Installing libuuid-0:2.40.4-6 100% | 0.0 B/s | 38.3 KiB | 00m00s [ 27/150] Installing libblkid-0:2.40.4- 100% | 257.2 MiB/s | 263.4 KiB | 00m00s [ 28/150] Installing popt-0:1.19-8.fc42 100% | 68.1 MiB/s | 139.4 KiB | 00m00s [ 29/150] Installing readline-0:8.2-12. 100% | 237.9 MiB/s | 487.1 KiB | 00m00s [ 30/150] Installing gmp-1:6.3.0-2.fc41 100% | 264.9 MiB/s | 813.7 KiB | 00m00s [ 31/150] Installing libxcrypt-0:4.4.38 100% | 280.4 MiB/s | 287.2 KiB | 00m00s [ 32/150] Installing libstdc++-0:15.0.1 100% | 352.5 MiB/s | 2.8 MiB | 00m00s [ 33/150] Installing libzstd-0:1.5.6-3. 100% | 389.2 MiB/s | 797.0 KiB | 00m00s [ 34/150] Installing elfutils-libelf-0: 100% | 390.1 MiB/s | 1.2 MiB | 00m00s [ 35/150] Installing libattr-0:2.5.2-5. 100% | 0.0 B/s | 28.1 KiB | 00m00s [ 36/150] Installing libacl-0:2.3.2-3.f 100% | 0.0 B/s | 39.2 KiB | 00m00s [ 37/150] Installing dwz-0:0.15-9.fc42. 100% | 20.4 MiB/s | 292.4 KiB | 00m00s [ 38/150] Installing mpfr-0:4.2.1-6.fc4 100% | 271.3 MiB/s | 833.6 KiB | 00m00s [ 39/150] Installing gawk-0:5.3.1-1.fc4 100% | 84.7 MiB/s | 1.7 MiB | 00m00s [ 40/150] Installing unzip-0:6.0-66.fc4 100% | 25.6 MiB/s | 393.8 KiB | 00m00s [ 41/150] Installing file-libs-0:5.46-1 100% | 624.1 MiB/s | 11.9 MiB | 00m00s [ 42/150] Installing file-0:5.46-1.fc42 100% | 5.0 MiB/s | 101.7 KiB | 00m00s [ 43/150] Installing crypto-policies-0: 100% | 31.9 MiB/s | 163.5 KiB | 00m00s [ 44/150] Installing pcre2-0:10.45-1.fc 100% | 227.6 MiB/s | 699.1 KiB | 00m00s [ 45/150] Installing grep-0:3.11-10.fc4 100% | 52.8 MiB/s | 1.0 MiB | 00m00s [ 46/150] Installing xz-1:5.6.3-3.fc42. 100% | 64.7 MiB/s | 1.2 MiB | 00m00s [ 47/150] Installing libeconf-0:0.7.6-1 100% | 64.7 MiB/s | 66.2 KiB | 00m00s [ 48/150] Installing libcap-ng-0:0.8.5- 100% | 73.1 MiB/s | 74.8 KiB | 00m00s [ 49/150] Installing audit-libs-0:4.0.3 100% | 172.6 MiB/s | 353.4 KiB | 00m00s [ 50/150] Installing pam-libs-0:1.7.0-4 100% | 126.1 MiB/s | 129.1 KiB | 00m00s [ 51/150] Installing libcap-0:2.73-2.fc 100% | 13.8 MiB/s | 212.1 KiB | 00m00s [ 52/150] Installing systemd-libs-0:257 100% | 280.5 MiB/s | 2.2 MiB | 00m00s [ 53/150] Installing libsmartcols-0:2.4 100% | 177.3 MiB/s | 181.5 KiB | 00m00s [ 54/150] Installing libsepol-0:3.8-1.f 100% | 269.2 MiB/s | 827.0 KiB | 00m00s [ 55/150] Installing libselinux-0:3.8-1 100% | 189.8 MiB/s | 194.3 KiB | 00m00s [ 56/150] Installing sed-0:4.9-4.fc42.x 100% | 49.7 MiB/s | 865.5 KiB | 00m00s [ 57/150] Installing findutils-1:4.10.0 100% | 98.6 MiB/s | 1.9 MiB | 00m00s [ 58/150] Installing libmount-0:2.40.4- 100% | 174.4 MiB/s | 357.2 KiB | 00m00s [ 59/150] Installing lz4-libs-0:1.10.0- 100% | 154.7 MiB/s | 158.5 KiB | 00m00s [ 60/150] Installing lua-libs-0:5.4.7-2 100% | 275.5 MiB/s | 282.1 KiB | 00m00s [ 61/150] Installing alternatives-0:1.3 100% | 4.7 MiB/s | 67.7 KiB | 00m00s [ 62/150] Installing libffi-0:3.4.6-5.f 100% | 81.7 MiB/s | 83.7 KiB | 00m00s [ 63/150] Installing libtasn1-0:4.20.0- 100% | 173.9 MiB/s | 178.1 KiB | 00m00s [ 64/150] Installing p11-kit-0:0.25.5-5 100% | 104.0 MiB/s | 2.2 MiB | 00m00s [ 65/150] Installing libunistring-0:1.1 100% | 345.3 MiB/s | 1.7 MiB | 00m00s [ 66/150] Installing libidn2-0:2.3.7-3. 100% | 109.0 MiB/s | 335.0 KiB | 00m00s [ 67/150] Installing libpsl-0:0.21.5-5. 100% | 75.7 MiB/s | 77.5 KiB | 00m00s [ 68/150] Installing p11-kit-trust-0:0. 100% | 18.5 MiB/s | 397.2 KiB | 00m00s [ 69/150] Installing zstd-0:1.5.6-3.fc4 100% | 89.2 MiB/s | 1.7 MiB | 00m00s [ 70/150] Installing util-linux-core-0: 100% | 75.1 MiB/s | 1.4 MiB | 00m00s [ 71/150] Installing tar-2:1.35-5.fc42. 100% | 134.6 MiB/s | 3.0 MiB | 00m00s [ 72/150] Installing libsemanage-0:3.8- 100% | 101.0 MiB/s | 310.2 KiB | 00m00s [ 73/150] Installing shadow-utils-2:4.1 100% | 125.6 MiB/s | 4.0 MiB | 00m00s [ 74/150] Installing systemd-standalone 100% | 19.4 MiB/s | 277.8 KiB | 00m00s [ 75/150] Installing zip-0:3.0-43.fc42. 100% | 45.7 MiB/s | 702.4 KiB | 00m00s [ 76/150] Installing libfdisk-0:2.40.4- 100% | 182.4 MiB/s | 373.5 KiB | 00m00s [ 77/150] Installing libxml2-0:2.12.9-2 100% | 94.9 MiB/s | 1.7 MiB | 00m00s [ 78/150] Installing bzip2-0:1.0.8-20.f 100% | 7.2 MiB/s | 103.8 KiB | 00m00s [ 79/150] Installing add-determinism-0: 100% | 123.3 MiB/s | 2.5 MiB | 00m00s [ 80/150] Installing build-reproducibil 100% | 0.0 B/s | 1.0 KiB | 00m00s [ 81/150] Installing filesystem-srpm-ma 100% | 0.0 B/s | 38.9 KiB | 00m00s [ 82/150] Installing ed-0:1.21-2.fc42.x 100% | 10.4 MiB/s | 148.8 KiB | 00m00s [ 83/150] Installing patch-0:2.7.6-26.f 100% | 18.1 MiB/s | 260.2 KiB | 00m00s [ 84/150] Installing elfutils-default-y 100% | 408.6 KiB/s | 2.0 KiB | 00m00s [ 85/150] Installing elfutils-libs-0:0. 100% | 220.3 MiB/s | 676.7 KiB | 00m00s [ 86/150] Installing cpio-0:2.15-2.fc41 100% | 57.9 MiB/s | 1.1 MiB | 00m00s [ 87/150] Installing diffutils-0:3.10-9 100% | 83.7 MiB/s | 1.6 MiB | 00m00s [ 88/150] Installing libgomp-0:15.0.1-0 100% | 262.3 MiB/s | 537.1 KiB | 00m00s [ 89/150] Installing sqlite-libs-0:3.49 100% | 304.8 MiB/s | 1.5 MiB | 00m00s [ 90/150] Installing json-c-0:0.18-2.fc 100% | 85.9 MiB/s | 88.0 KiB | 00m00s [ 91/150] Installing jansson-0:2.14-2.f 100% | 92.2 MiB/s | 94.4 KiB | 00m00s [ 92/150] Installing libpkgconf-0:2.3.0 100% | 77.4 MiB/s | 79.2 KiB | 00m00s [ 93/150] Installing pkgconf-0:2.3.0-2. 100% | 6.3 MiB/s | 91.0 KiB | 00m00s [ 94/150] Installing pkgconf-pkg-config 100% | 136.4 KiB/s | 1.8 KiB | 00m00s [ 95/150] Installing xxhash-libs-0:0.8. 100% | 89.4 MiB/s | 91.6 KiB | 00m00s [ 96/150] Installing libbrotli-0:1.1.0- 100% | 274.6 MiB/s | 843.6 KiB | 00m00s [ 97/150] Installing libnghttp2-0:1.64. 100% | 167.5 MiB/s | 171.5 KiB | 00m00s [ 98/150] Installing keyutils-libs-0:1. 100% | 58.3 MiB/s | 59.7 KiB | 00m00s [ 99/150] Installing libcom_err-0:1.47. 100% | 66.6 MiB/s | 68.2 KiB | 00m00s [100/150] Installing libverto-0:0.3.2-1 100% | 26.6 MiB/s | 27.2 KiB | 00m00s [101/150] Installing libtool-ltdl-0:2.5 100% | 69.6 MiB/s | 71.2 KiB | 00m00s [102/150] Installing gdbm-libs-1:1.23-9 100% | 128.5 MiB/s | 131.6 KiB | 00m00s [103/150] Installing cyrus-sasl-lib-0:2 100% | 109.7 MiB/s | 2.3 MiB | 00m00s [104/150] Installing coreutils-common-0 100% | 348.6 MiB/s | 11.2 MiB | 00m00s [105/150] Installing openssl-libs-1:3.2 100% | 373.1 MiB/s | 7.8 MiB | 00m00s [106/150] Installing coreutils-0:9.6-1. 100% | 149.9 MiB/s | 5.5 MiB | 00m00s [107/150] Installing ca-certificates-0: 100% | 1.8 MiB/s | 2.4 MiB | 00m01s [108/150] Installing libarchive-0:3.7.7 100% | 229.6 MiB/s | 940.6 KiB | 00m00s [109/150] Installing krb5-libs-0:1.21.3 100% | 287.5 MiB/s | 2.3 MiB | 00m00s [110/150] Installing libssh-0:0.11.1-4. 100% | 184.7 MiB/s | 567.5 KiB | 00m00s [111/150] Installing gzip-0:1.13-3.fc42 100% | 24.3 MiB/s | 398.4 KiB | 00m00s [112/150] Installing rpm-sequoia-0:1.7. 100% | 344.9 MiB/s | 2.4 MiB | 00m00s [113/150] Installing rpm-libs-0:4.20.0- 100% | 235.4 MiB/s | 723.3 KiB | 00m00s [114/150] Installing rpm-build-libs-0:4 100% | 198.7 MiB/s | 203.4 KiB | 00m00s [115/150] Installing libevent-0:2.1.12- 100% | 295.2 MiB/s | 906.9 KiB | 00m00s [116/150] Installing openldap-0:2.6.9-3 100% | 214.5 MiB/s | 658.9 KiB | 00m00s [117/150] Installing libcurl-0:8.12.1-1 100% | 277.1 MiB/s | 851.2 KiB | 00m00s [118/150] Installing elfutils-debuginfo 100% | 6.0 MiB/s | 86.2 KiB | 00m00s [119/150] Installing elfutils-0:0.192-8 100% | 122.1 MiB/s | 2.7 MiB | 00m00s [120/150] Installing binutils-0:2.44-3. 100% | 294.3 MiB/s | 25.9 MiB | 00m00s [121/150] Installing gdb-minimal-0:16.2 100% | 250.9 MiB/s | 13.3 MiB | 00m00s [122/150] Installing debugedit-0:5.1-4. 100% | 13.2 MiB/s | 203.1 KiB | 00m00s [123/150] Installing curl-0:8.12.1-1.fc 100% | 19.5 MiB/s | 459.7 KiB | 00m00s [124/150] Installing rpm-0:4.20.0-8.fc4 100% | 82.9 MiB/s | 2.5 MiB | 00m00s [125/150] Installing efi-srpm-macros-0: 100% | 40.1 MiB/s | 41.1 KiB | 00m00s [126/150] Installing lua-srpm-macros-0: 100% | 0.0 B/s | 1.9 KiB | 00m00s [127/150] Installing tree-sitter-srpm-m 100% | 0.0 B/s | 7.4 KiB | 00m00s [128/150] Installing zig-srpm-macros-0: 100% | 0.0 B/s | 1.7 KiB | 00m00s [129/150] Installing rust-srpm-macros-0 100% | 0.0 B/s | 5.6 KiB | 00m00s [130/150] Installing qt6-srpm-macros-0: 100% | 0.0 B/s | 740.0 B | 00m00s [131/150] Installing qt5-srpm-macros-0: 100% | 0.0 B/s | 776.0 B | 00m00s [132/150] Installing perl-srpm-macros-0 100% | 0.0 B/s | 1.1 KiB | 00m00s [133/150] Installing package-notes-srpm 100% | 0.0 B/s | 2.0 KiB | 00m00s [134/150] Installing openblas-srpm-macr 100% | 0.0 B/s | 392.0 B | 00m00s [135/150] Installing ocaml-srpm-macros- 100% | 0.0 B/s | 2.2 KiB | 00m00s [136/150] Installing kernel-srpm-macros 100% | 0.0 B/s | 2.3 KiB | 00m00s [137/150] Installing gnat-srpm-macros-0 100% | 0.0 B/s | 1.3 KiB | 00m00s [138/150] Installing ghc-srpm-macros-0: 100% | 0.0 B/s | 1.0 KiB | 00m00s [139/150] Installing fpc-srpm-macros-0: 100% | 0.0 B/s | 420.0 B | 00m00s [140/150] Installing ansible-srpm-macro 100% | 0.0 B/s | 36.2 KiB | 00m00s [141/150] Installing fonts-srpm-macros- 100% | 0.0 B/s | 57.0 KiB | 00m00s [142/150] Installing forge-srpm-macros- 100% | 0.0 B/s | 40.3 KiB | 00m00s [143/150] Installing go-srpm-macros-0:3 100% | 60.5 MiB/s | 62.0 KiB | 00m00s [144/150] Installing python-srpm-macros 100% | 50.9 MiB/s | 52.2 KiB | 00m00s [145/150] Installing redhat-rpm-config- 100% | 94.5 MiB/s | 193.5 KiB | 00m00s [146/150] Installing rpm-build-0:4.20.0 100% | 10.6 MiB/s | 173.7 KiB | 00m00s [147/150] Installing pyproject-srpm-mac 100% | 2.4 MiB/s | 2.5 KiB | 00m00s [148/150] Installing which-0:2.23-1.fc4 100% | 5.6 MiB/s | 85.6 KiB | 00m00s [149/150] Installing util-linux-0:2.40. 100% | 91.1 MiB/s | 3.5 MiB | 00m00s [150/150] Installing info-0:7.2-3.fc42. 100% | 207.9 KiB/s | 358.3 KiB | 00m02s Public key "file:///usr/share/distribution-gpg-keys/fedora/RPM-GPG-KEY-fedora-43-primary" is already present, not importing. Complete! Finish: installing minimal buildroot with dnf5 Start: creating root cache Finish: creating root cache Finish: chroot init INFO: Installed packages: INFO: add-determinism-0.6.0-1.fc43.x86_64 alternatives-1.31-3.fc42.x86_64 ansible-srpm-macros-1-17.1.fc42.noarch audit-libs-4.0.3-2.fc42.x86_64 bash-5.2.37-3.fc43.x86_64 binutils-2.44-3.fc43.x86_64 build-reproducibility-srpm-macros-0.6.0-1.fc43.noarch bzip2-1.0.8-20.fc42.x86_64 bzip2-libs-1.0.8-20.fc42.x86_64 ca-certificates-2024.2.69_v8.0.401-5.fc42.noarch coreutils-9.6-1.fc42.x86_64 coreutils-common-9.6-1.fc42.x86_64 cpio-2.15-2.fc41.x86_64 crypto-policies-20250214-1.gitff7551b.fc43.noarch curl-8.12.1-1.fc43.x86_64 cyrus-sasl-lib-2.1.28-30.fc42.x86_64 debugedit-5.1-4.fc42.x86_64 diffutils-3.10-9.fc42.x86_64 dwz-0.15-9.fc42.x86_64 ed-1.21-2.fc42.x86_64 efi-srpm-macros-6-2.fc42.noarch elfutils-0.192-8.fc42.x86_64 elfutils-debuginfod-client-0.192-8.fc42.x86_64 elfutils-default-yama-scope-0.192-8.fc42.noarch elfutils-libelf-0.192-8.fc42.x86_64 elfutils-libs-0.192-8.fc42.x86_64 fedora-gpg-keys-43-0.1.noarch fedora-release-43-0.4.noarch fedora-release-common-43-0.4.noarch fedora-release-identity-basic-43-0.4.noarch fedora-repos-43-0.1.noarch fedora-repos-rawhide-43-0.1.noarch file-5.46-1.fc42.x86_64 file-libs-5.46-1.fc42.x86_64 filesystem-3.18-38.fc43.x86_64 filesystem-srpm-macros-3.18-38.fc43.noarch findutils-4.10.0-5.fc42.x86_64 fonts-srpm-macros-2.0.5-21.fc42.noarch forge-srpm-macros-0.4.0-2.fc42.noarch fpc-srpm-macros-1.3-14.fc42.noarch gawk-5.3.1-1.fc42.x86_64 gdb-minimal-16.2-1.fc43.x86_64 gdbm-libs-1.23-9.fc42.x86_64 ghc-srpm-macros-1.9.2-2.fc42.noarch glibc-2.40.9000-37.fc43.x86_64 glibc-common-2.40.9000-37.fc43.x86_64 glibc-gconv-extra-2.40.9000-37.fc43.x86_64 glibc-minimal-langpack-2.40.9000-37.fc43.x86_64 gmp-6.3.0-2.fc41.x86_64 gnat-srpm-macros-6-7.fc42.noarch go-srpm-macros-3.6.0-6.fc42.noarch gpg-pubkey-105ef944-65ca83d1 gpg-pubkey-31645531-66b6dccf gpg-pubkey-6d9f90a6-6786af3b grep-3.11-10.fc42.x86_64 gzip-1.13-3.fc42.x86_64 info-7.2-3.fc42.x86_64 jansson-2.14-2.fc42.x86_64 json-c-0.18-2.fc42.x86_64 kernel-srpm-macros-1.0-25.fc42.noarch keyutils-libs-1.6.3-5.fc42.x86_64 krb5-libs-1.21.3-5.fc42.x86_64 libacl-2.3.2-3.fc42.x86_64 libarchive-3.7.7-2.fc42.x86_64 libattr-2.5.2-5.fc42.x86_64 libblkid-2.40.4-6.fc43.x86_64 libbrotli-1.1.0-6.fc42.x86_64 libcap-2.73-2.fc42.x86_64 libcap-ng-0.8.5-4.fc42.x86_64 libcom_err-1.47.2-3.fc42.x86_64 libcurl-8.12.1-1.fc43.x86_64 libeconf-0.7.6-1.fc43.x86_64 libevent-2.1.12-15.fc42.x86_64 libfdisk-2.40.4-6.fc43.x86_64 libffi-3.4.6-5.fc42.x86_64 libgcc-15.0.1-0.7.fc43.x86_64 libgomp-15.0.1-0.7.fc43.x86_64 libidn2-2.3.7-3.fc42.x86_64 libmount-2.40.4-6.fc43.x86_64 libnghttp2-1.64.0-3.fc42.x86_64 libpkgconf-2.3.0-2.fc42.x86_64 libpsl-0.21.5-5.fc42.x86_64 libselinux-3.8-1.fc42.x86_64 libsemanage-3.8-1.fc42.x86_64 libsepol-3.8-1.fc42.x86_64 libsmartcols-2.40.4-6.fc43.x86_64 libssh-0.11.1-4.fc42.x86_64 libssh-config-0.11.1-4.fc42.noarch libstdc++-15.0.1-0.7.fc43.x86_64 libtasn1-4.20.0-1.fc43.x86_64 libtool-ltdl-2.5.4-4.fc42.x86_64 libunistring-1.1-9.fc42.x86_64 libuuid-2.40.4-6.fc43.x86_64 libverto-0.3.2-10.fc42.x86_64 libxcrypt-4.4.38-6.fc43.x86_64 libxml2-2.12.9-2.fc42.x86_64 libzstd-1.5.6-3.fc42.x86_64 lua-libs-5.4.7-2.fc42.x86_64 lua-srpm-macros-1-15.fc42.noarch lz4-libs-1.10.0-2.fc42.x86_64 mpfr-4.2.1-6.fc42.x86_64 ncurses-base-6.5-5.20250125.fc42.noarch ncurses-libs-6.5-5.20250125.fc42.x86_64 ocaml-srpm-macros-10-4.fc42.noarch openblas-srpm-macros-2-19.fc42.noarch openldap-2.6.9-3.fc42.x86_64 openssl-libs-3.2.4-1.fc43.x86_64 p11-kit-0.25.5-5.fc42.x86_64 p11-kit-trust-0.25.5-5.fc42.x86_64 package-notes-srpm-macros-0.5-13.fc42.noarch pam-libs-1.7.0-4.fc42.x86_64 patch-2.7.6-26.fc42.x86_64 pcre2-10.45-1.fc43.x86_64 pcre2-syntax-10.45-1.fc43.noarch perl-srpm-macros-1-57.fc42.noarch pkgconf-2.3.0-2.fc42.x86_64 pkgconf-m4-2.3.0-2.fc42.noarch pkgconf-pkg-config-2.3.0-2.fc42.x86_64 popt-1.19-8.fc42.x86_64 publicsuffix-list-dafsa-20250116-1.fc42.noarch pyproject-srpm-macros-1.17.0-1.fc43.noarch python-srpm-macros-3.13-4.fc42.noarch qt5-srpm-macros-5.15.15-1.fc42.noarch qt6-srpm-macros-6.8.2-2.fc43.noarch readline-8.2-12.fc42.x86_64 redhat-rpm-config-342-2.fc42.noarch rpm-4.20.0-8.fc42.x86_64 rpm-build-4.20.0-8.fc42.x86_64 rpm-build-libs-4.20.0-8.fc42.x86_64 rpm-libs-4.20.0-8.fc42.x86_64 rpm-sequoia-1.7.0-5.fc43.x86_64 rust-srpm-macros-26.3-4.fc42.noarch sed-4.9-4.fc42.x86_64 setup-2.15.0-12.fc43.noarch shadow-utils-4.17.0-4.fc42.x86_64 sqlite-libs-3.49.0-1.fc43.x86_64 systemd-libs-257.3-7.fc43.x86_64 systemd-standalone-sysusers-257.3-7.fc43.x86_64 tar-1.35-5.fc42.x86_64 tree-sitter-srpm-macros-0.1.0-8.fc42.noarch unzip-6.0-66.fc42.x86_64 util-linux-2.40.4-6.fc43.x86_64 util-linux-core-2.40.4-6.fc43.x86_64 which-2.23-1.fc42.x86_64 xxhash-libs-0.8.3-2.fc42.x86_64 xz-5.6.3-3.fc42.x86_64 xz-libs-5.6.3-3.fc42.x86_64 zig-srpm-macros-1-4.fc42.noarch zip-3.0-43.fc42.x86_64 zlib-ng-compat-2.2.4-1.fc43.x86_64 zstd-1.5.6-3.fc42.x86_64 Start: buildsrpm Start: rpmbuild -bs Building target platforms: x86_64 Building for target x86_64 setting SOURCE_DATE_EPOCH=1737158400 Wrote: /builddir/build/SRPMS/python-fsspec-2024.12.0-2.fc43.src.rpm Finish: rpmbuild -bs INFO: chroot_scan: 1 files copied to /var/lib/copr-rpmbuild/results/chroot_scan INFO: /var/lib/mock/fedora-rawhide-x86_64-1739997622.433147/root/var/log/dnf5.log INFO: chroot_scan: creating tarball /var/lib/copr-rpmbuild/results/chroot_scan.tar.gz /bin/tar: Removing leading `/' from member names Finish: buildsrpm INFO: Done(/var/lib/copr-rpmbuild/workspace/workdir-oxcnrjw9/python-fsspec/python-fsspec.spec) Config(child) 0 minutes 11 seconds INFO: Results and/or logs in: /var/lib/copr-rpmbuild/results INFO: Cleaning up build root ('cleanup_on_success=True') Start: clean chroot INFO: unmounting tmpfs. Finish: clean chroot INFO: Start(/var/lib/copr-rpmbuild/results/python-fsspec-2024.12.0-2.fc43.src.rpm) Config(fedora-rawhide-x86_64) Start(bootstrap): chroot init INFO: mounting tmpfs at /var/lib/mock/fedora-rawhide-x86_64-bootstrap-1739997622.433147/root. INFO: reusing tmpfs at /var/lib/mock/fedora-rawhide-x86_64-bootstrap-1739997622.433147/root. INFO: calling preinit hooks INFO: enabled root cache INFO: enabled package manager cache Start(bootstrap): cleaning package manager metadata Finish(bootstrap): cleaning package manager metadata Finish(bootstrap): chroot init Start: chroot init INFO: mounting tmpfs at /var/lib/mock/fedora-rawhide-x86_64-1739997622.433147/root. INFO: calling preinit hooks INFO: enabled root cache Start: unpacking root cache Finish: unpacking root cache INFO: enabled package manager cache Start: cleaning package manager metadata Finish: cleaning package manager metadata INFO: enabled HW Info plugin INFO: Buildroot is handled by package management downloaded with a bootstrap image: rpm-4.20.0-8.fc42.x86_64 rpm-sequoia-1.7.0-5.fc43.x86_64 dnf5-5.2.10.0-2.fc43.x86_64 dnf5-plugins-5.2.10.0-2.fc43.x86_64 Finish: chroot init Start: build phase for python-fsspec-2024.12.0-2.fc43.src.rpm Start: build setup for python-fsspec-2024.12.0-2.fc43.src.rpm Building target platforms: x86_64 Building for target x86_64 setting SOURCE_DATE_EPOCH=1737158400 Wrote: /builddir/build/SRPMS/python-fsspec-2024.12.0-2.fc43.src.rpm Updating and loading repositories: fedora 100% | 452.9 KiB/s | 25.8 KiB | 00m00s Copr repository 100% | 95.3 KiB/s | 1.5 KiB | 00m00s Copr repository 100% | 3.1 MiB/s | 73.5 KiB | 00m00s Repositories loaded. Package Arch Version Repository Size Installing: fuse x86_64 2.9.9-23.fc42 fedora 222.5 KiB git-core x86_64 2.48.1-3.fc43 fedora 22.7 MiB python3-cloudpickle noarch 3.1.1-2.fc42 fedora 128.1 KiB python3-devel x86_64 3.13.2-2.fc43 fedora 1.8 MiB python3-jinja2 noarch 3.1.5-2.fc42 fedora 2.9 MiB python3-lz4 x86_64 4.3.3-8.fc42 fedora 6.1 MiB python3-notebook noarch 7.3.2-2.fc42 fedora 56.2 MiB python3-numpy x86_64 1:2.2.3-1.fc43 fedora 40.2 MiB python3-pytest-asyncio noarch 0.24.0-2.fc42 fedora 147.5 KiB python3-pytest-mock noarch 3.14.0-3.fc42 fedora 114.9 KiB python3-pytest-rerunfailures noarch 15.0-2.fc42 fedora 83.1 KiB python3-snappy noarch 0.7.2-4.fc42 fedora 39.4 KiB python3-zarr noarch 2.18.4-2.fc42 fedora 3.1 MiB python3-zstandard x86_64 0.23.0-2.fc42 fedora 2.0 MiB Installing dependencies: blosc x86_64 1.21.6-6.fc42 fedora 126.2 KiB expat x86_64 2.6.4-2.fc42 fedora 292.8 KiB flexiblas x86_64 3.4.5-1.fc43 fedora 50.4 KiB flexiblas-netlib x86_64 3.4.5-1.fc43 fedora 10.9 MiB flexiblas-openblas-openmp x86_64 3.4.5-1.fc43 fedora 39.2 KiB fuse-common x86_64 3.16.2-5.fc42 fedora 38.0 B hicolor-icon-theme noarch 0.17-20.fc42 fedora 72.2 KiB jupyterlab noarch 4.3.5-1.fc43 fedora 32.4 MiB less x86_64 668-2.fc42 fedora 405.8 KiB libargon2 x86_64 20190702-7.fc42 fedora 51.7 KiB libb2 x86_64 0.98.1-13.fc42 fedora 46.1 KiB libcbor x86_64 0.11.0-3.fc42 fedora 77.8 KiB libedit x86_64 3.1-55.20250104cvs.fc42 fedora 244.1 KiB libfido2 x86_64 1.15.0-3.fc42 fedora 242.1 KiB libgfortran x86_64 15.0.1-0.7.fc43 fedora 3.3 MiB libquadmath x86_64 15.0.1-0.7.fc43 fedora 317.9 KiB libsodium x86_64 1.0.20-4.fc42 fedora 389.1 KiB libunwind x86_64 1.8.1-2.fc43 fedora 194.1 KiB libxslt x86_64 1.1.42-4.fc42 fedora 478.7 KiB libyaml x86_64 0.2.5-16.fc42 fedora 134.7 KiB mpdecimal x86_64 4.0.0-2.fc43 fedora 216.8 KiB openblas x86_64 0.3.29-1.fc42 fedora 111.7 KiB openblas-openmp x86_64 0.3.29-1.fc42 fedora 43.7 MiB openpgm x86_64 5.3.128-4.fc42 fedora 316.3 KiB openssh x86_64 9.9p1-9.fc43 fedora 1.4 MiB openssh-clients x86_64 9.9p1-9.fc43 fedora 2.7 MiB pyproject-rpm-macros noarch 1.17.0-1.fc43 fedora 114.0 KiB python-jupyter-filesystem noarch 5.7.2-8.fc42 fedora 0.0 B python-pip-wheel noarch 24.3.1-2.fc42 fedora 1.2 MiB python-rpm-macros noarch 3.13-4.fc42 fedora 22.1 KiB python3 x86_64 3.13.2-2.fc43 fedora 27.6 KiB python3-anyio noarch 4.8.0-1.fc43 fedora 1.1 MiB python3-argon2-cffi noarch 23.1.0-4.fc42 fedora 69.6 KiB python3-argon2-cffi-bindings x86_64 21.2.0-9.fc42 fedora 50.9 KiB python3-arrow noarch 1.2.3-12.fc42 fedora 557.3 KiB python3-asciitree noarch 0.3.3-31.fc42 fedora 20.2 KiB python3-asttokens noarch 2.4.1-9.fc42 fedora 207.7 KiB python3-async-lru noarch 2.0.4-7.fc42 fedora 34.3 KiB python3-attrs noarch 25.1.0-1.fc42 fedora 396.3 KiB python3-babel noarch 2.17.0-1.fc42 fedora 30.2 MiB python3-beautifulsoup4 noarch 4.12.3-9.fc42 fedora 1.4 MiB python3-bleach noarch 6.2.0-3.fc42 fedora 187.5 KiB python3-certifi noarch 2024.08.30-2.fc42 fedora 6.8 KiB python3-cffi x86_64 1.17.1-2.fc42 fedora 1.3 MiB python3-charset-normalizer noarch 3.4.1-3.fc42 fedora 319.6 KiB python3-comm noarch 0.2.2-4.fc42 fedora 32.3 KiB python3-cramjam x86_64 2.10.0~20250104git61564e7-1.fc43 fedora 3.0 MiB python3-dateutil noarch 1:2.8.2-17.fc42 fedora 876.2 KiB python3-decorator noarch 5.1.1-14.fc42 fedora 78.5 KiB python3-defusedxml noarch 0.7.1-18.fc42 fedora 196.4 KiB python3-deprecated noarch 1.2.18-1.fc43 fedora 53.0 KiB python3-executing noarch 2.2.0-1.fc42 fedora 264.8 KiB python3-fasteners noarch 0.19-10.fc42 fedora 114.5 KiB python3-fastjsonschema noarch 2.21.1-2.fc42 fedora 189.1 KiB python3-fqdn noarch 1.5.1-15.fc42 fedora 20.7 KiB python3-h11 noarch 0.14.0-6.fc42 fedora 546.4 KiB python3-html5lib noarch 1:1.1-27.fc42 fedora 1.5 MiB python3-httpcore noarch 1.0.7-2.fc42 fedora 779.1 KiB python3-httpx noarch 0.27.2-3.fc43 fedora 915.3 KiB python3-idna noarch 3.10-2.fc42 fedora 628.0 KiB python3-iniconfig noarch 1.1.1-25.fc42 fedora 20.6 KiB python3-ipykernel noarch 6.29.3-9.fc42 fedora 953.9 KiB python3-ipython noarch 8.32.0-1.fc43 fedora 4.6 MiB python3-isoduration noarch 20.11.0-11.fc42 fedora 53.2 KiB python3-jedi noarch 0.19.2-1.fc43 fedora 5.6 MiB python3-json-logger noarch 2.0.4-10.fc42 fedora 30.1 KiB python3-json5 noarch 0.10.0-2.fc42 fedora 337.7 KiB python3-jsonpointer noarch 2.4-4.fc42 fedora 45.3 KiB python3-jsonschema noarch 4.23.0-2.fc42 fedora 886.2 KiB python3-jsonschema+format-nongpl noarch 4.23.0-2.fc42 fedora 8.9 KiB python3-jsonschema-specifications noarch 2024.10.1-2.fc42 fedora 46.2 KiB python3-jupyter-client noarch 8.6.1-11.fc42 fedora 893.8 KiB python3-jupyter-core noarch 5.7.2-8.fc42 fedora 196.8 KiB python3-jupyter-events noarch 0.12.0-1.fc43 fedora 91.8 KiB python3-jupyter-lsp noarch 2.2.5-4.fc42 fedora 398.0 KiB python3-jupyter-server noarch 2.15.0-2.fc42 fedora 2.9 MiB python3-jupyter-server-terminals noarch 0.5.3-5.fc42 fedora 66.1 KiB python3-jupyterlab-server noarch 2.27.3-3.fc42 fedora 393.7 KiB python3-jupyterlab_pygments noarch 0.3.0-8.fc42 fedora 62.0 KiB python3-libs x86_64 3.13.2-2.fc43 fedora 39.9 MiB python3-lxml x86_64 5.3.1-1.fc43 fedora 4.9 MiB python3-markupsafe x86_64 3.0.2-2.fc42 fedora 55.8 KiB python3-matplotlib-inline noarch 0.1.7-5.fc42 fedora 39.5 KiB python3-mistune noarch 3.0.2-4.fc42 fedora 312.8 KiB python3-nbclient noarch 0.10.2-2.fc42 fedora 217.7 KiB python3-nbconvert noarch 7.16.4-5.fc42 fedora 1.2 MiB python3-nbformat noarch 5.9.2-8.fc43 fedora 540.1 KiB python3-nest-asyncio noarch 1.6.0-5.fc42 fedora 25.7 KiB python3-notebook-shim noarch 0.2.4-4.fc42 fedora 67.2 KiB python3-numcodecs x86_64 0.15.1-1.fc43 fedora 1.7 MiB python3-numpy-f2py x86_64 1:2.2.3-1.fc43 fedora 2.0 MiB python3-packaging noarch 24.2-3.fc42 fedora 555.7 KiB python3-pandocfilters noarch 1.5.1-6.fc42 fedora 38.6 KiB python3-parso noarch 0.8.4-4.fc42 fedora 888.9 KiB python3-pexpect noarch 4.9.0-8.fc42 fedora 620.4 KiB python3-platformdirs noarch 4.2.2-4.fc42 fedora 162.0 KiB python3-pluggy noarch 1.5.0-2.fc42 fedora 192.7 KiB python3-ply noarch 3.11-26.fc42 fedora 565.1 KiB python3-prometheus_client noarch 0.21.0-2.fc42 fedora 345.9 KiB python3-prompt-toolkit noarch 3.0.41-6.fc42 fedora 3.7 MiB python3-psutil x86_64 6.1.1-2.fc42 fedora 1.4 MiB python3-ptyprocess noarch 0.7.0-10.fc42 fedora 79.6 KiB python3-pure-eval noarch 0.2.3-2.fc42 fedora 100.2 KiB python3-pycparser noarch 2.20-19.fc42 fedora 800.6 KiB python3-pygments noarch 2.18.0-4.fc42 fedora 10.6 MiB python3-pytest noarch 8.3.4-2.fc42 fedora 20.8 MiB python3-pyyaml x86_64 6.0.2-2.fc42 fedora 781.0 KiB python3-pyzmq x86_64 26.2.1-3.fc43 fedora 1.3 MiB python3-referencing noarch 0.36.2-1.fc42 fedora 320.9 KiB python3-requests noarch 2.32.3-4.fc42 fedora 483.1 KiB python3-rfc3339-validator noarch 0.1.4-15.fc42 fedora 9.6 KiB python3-rfc3986-validator noarch 0.1.1-12.fc42 fedora 13.3 KiB python3-rpds-py x86_64 0.22.3-2.fc42 fedora 757.9 KiB python3-rpm-generators noarch 14-12.fc42 fedora 81.7 KiB python3-rpm-macros noarch 3.13-4.fc42 fedora 6.4 KiB python3-send2trash noarch 1.8.2-9.fc42 fedora 68.0 KiB python3-setuptools noarch 74.1.3-5.fc42 fedora 8.4 MiB python3-six noarch 1.17.0-2.fc42 fedora 116.9 KiB python3-sniffio noarch 1.3.1-4.fc42 fedora 34.7 KiB python3-soupsieve noarch 2.6-5.fc42 fedora 291.9 KiB python3-stack-data noarch 0.6.3-12.fc42 fedora 207.5 KiB python3-terminado noarch 0.18.1-1.fc42 fedora 121.2 KiB python3-tinycss2 noarch 1.4.0-2.fc42 fedora 250.8 KiB python3-tornado x86_64 6.4.2-1.fc43 fedora 5.0 MiB python3-traitlets noarch 5.14.3-4.fc42 fedora 954.6 KiB python3-uri-template noarch 1.2.0-11.fc42 fedora 80.0 KiB python3-urllib3 noarch 2.3.0-2.fc42 fedora 1.0 MiB python3-wcwidth noarch 0.2.13-6.fc42 fedora 559.7 KiB python3-webcolors noarch 24.11.1-2.fc42 fedora 84.2 KiB python3-webencodings noarch 0.5.1-28.fc42 fedora 85.7 KiB python3-websocket-client noarch 1.8.0-3.fc42 fedora 442.6 KiB python3-wrapt x86_64 1.17.1-2.fc42 fedora 197.4 KiB snappy x86_64 1.2.1-4.fc42 fedora 71.3 KiB tzdata noarch 2025a-1.fc43 fedora 1.6 MiB zeromq x86_64 4.3.5-21.fc42 fedora 890.1 KiB Transaction Summary: Installing: 149 packages Total size of inbound packages is 86 MiB. Need to download 68 MiB. After this operation, 414 MiB extra will be used (install 414 MiB, remove 0 B). [ 1/149] python3-pytest-asyncio-0:0.24 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 2/149] python3-devel-0:3.13.2-2.fc43 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 3/149] expat-0:2.6.4-2.fc42.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 4/149] python3-pytest-0:8.3.4-2.fc42 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 5/149] python3-packaging-0:24.2-3.fc 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 6/149] python3-cffi-0:1.17.1-2.fc42. 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 7/149] python3-libs-0:3.13.2-2.fc43. 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 8/149] libedit-0:3.1-55.20250104cvs. 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 9/149] python3-setuptools-0:74.1.3-5 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 10/149] python3-requests-0:2.32.3-4.f 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 11/149] python3-iniconfig-0:1.1.1-25. 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 12/149] python3-pluggy-0:1.5.0-2.fc42 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 13/149] python3-pycparser-0:2.20-19.f 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 14/149] libb2-0:0.98.1-13.fc42.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 15/149] mpdecimal-0:4.0.0-2.fc43.x86_ 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 16/149] python-pip-wheel-0:24.3.1-2.f 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 17/149] tzdata-0:2025a-1.fc43.noarch 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 18/149] python3-certifi-0:2024.08.30- 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 19/149] python3-idna-0:3.10-2.fc42.no 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 20/149] python3-platformdirs-0:4.2.2- 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 21/149] python3-fastjsonschema-0:2.21 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 22/149] python3-ptyprocess-0:0.7.0-10 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 23/149] python3-attrs-0:25.1.0-1.fc42 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 24/149] python3-charset-normalizer-0: 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 25/149] python3-urllib3-0:2.3.0-2.fc4 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 26/149] python3-ply-0:3.11-26.fc42.no 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 27/149] python3-wrapt-0:1.17.1-2.fc42 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 28/149] python3-pexpect-0:4.9.0-8.fc4 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 29/149] python3-jsonpointer-0:2.4-4.f 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 30/149] python3-0:3.13.2-2.fc43.x86_6 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 31/149] pyproject-rpm-macros-0:1.17.0 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 32/149] python-rpm-macros-0:3.13-4.fc 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 33/149] python3-rpm-generators-0:14-1 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 34/149] python3-rpm-macros-0:3.13-4.f 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 35/149] python3-cloudpickle-0:3.1.1-2 100% | 3.6 MiB/s | 47.5 KiB | 00m00s [ 36/149] python3-jinja2-0:3.1.5-2.fc42 100% | 69.3 MiB/s | 496.5 KiB | 00m00s [ 37/149] git-core-0:2.48.1-3.fc43.x86_ 100% | 116.1 MiB/s | 4.9 MiB | 00m00s [ 38/149] python3-notebook-0:7.3.2-2.fc 100% | 207.9 MiB/s | 7.7 MiB | 00m00s [ 39/149] python3-numpy-1:2.2.3-1.fc43. 100% | 270.5 MiB/s | 8.1 MiB | 00m00s [ 40/149] python3-pytest-mock-0:3.14.0- 100% | 20.3 MiB/s | 41.5 KiB | 00m00s [ 41/149] python3-pytest-rerunfailures- 100% | 10.3 MiB/s | 31.7 KiB | 00m00s [ 42/149] python3-lz4-0:4.3.3-8.fc42.x8 100% | 4.6 MiB/s | 522.2 KiB | 00m00s [ 43/149] python3-snappy-0:0.7.2-4.fc42 100% | 760.3 KiB/s | 24.3 KiB | 00m00s [ 44/149] python3-zstandard-0:0.23.0-2. 100% | 69.5 MiB/s | 498.3 KiB | 00m00s [ 45/149] fuse-common-0:3.16.2-5.fc42.x 100% | 1.7 MiB/s | 8.6 KiB | 00m00s [ 46/149] less-0:668-2.fc42.x86_64 100% | 61.8 MiB/s | 190.0 KiB | 00m00s [ 47/149] fuse-0:2.9.9-23.fc42.x86_64 100% | 471.8 KiB/s | 79.7 KiB | 00m00s [ 48/149] openssh-clients-0:9.9p1-9.fc4 100% | 107.7 MiB/s | 772.2 KiB | 00m00s [ 49/149] python3-markupsafe-0:3.0.2-2. 100% | 7.3 MiB/s | 30.1 KiB | 00m00s [ 50/149] python-jupyter-filesystem-0:5 100% | 4.6 MiB/s | 9.4 KiB | 00m00s [ 51/149] python3-jupyter-server-0:2.15 100% | 148.0 MiB/s | 606.2 KiB | 00m00s [ 52/149] python3-jupyterlab-server-0:2 100% | 66.1 MiB/s | 135.4 KiB | 00m00s [ 53/149] python3-notebook-shim-0:0.2.4 100% | 19.7 MiB/s | 40.3 KiB | 00m00s [ 54/149] python3-tornado-0:6.4.2-1.fc4 100% | 150.5 MiB/s | 925.0 KiB | 00m00s [ 55/149] python3-zarr-0:2.18.4-2.fc42. 100% | 8.9 MiB/s | 559.0 KiB | 00m00s [ 56/149] python3-numpy-f2py-1:2.2.3-1. 100% | 96.1 MiB/s | 491.9 KiB | 00m00s [ 57/149] flexiblas-netlib-0:3.4.5-1.fc 100% | 241.9 MiB/s | 3.4 MiB | 00m00s [ 58/149] python3-asciitree-0:0.3.3-31. 100% | 498.8 KiB/s | 18.0 KiB | 00m00s [ 59/149] python3-fasteners-0:0.19-10.f 100% | 16.4 MiB/s | 50.4 KiB | 00m00s [ 60/149] jupyterlab-0:4.3.5-1.fc43.noa 100% | 83.1 MiB/s | 7.6 MiB | 00m00s [ 61/149] libfido2-0:1.15.0-3.fc42.x86_ 100% | 32.0 MiB/s | 98.4 KiB | 00m00s [ 62/149] openssh-0:9.9p1-9.fc43.x86_64 100% | 173.8 MiB/s | 355.9 KiB | 00m00s [ 63/149] hicolor-icon-theme-0:0.17-20. 100% | 12.8 MiB/s | 65.7 KiB | 00m00s [ 64/149] python3-async-lru-0:2.0.4-7.f 100% | 21.0 MiB/s | 21.5 KiB | 00m00s [ 65/149] python3-httpx-0:0.27.2-3.fc43 100% | 67.6 MiB/s | 207.7 KiB | 00m00s [ 66/149] python3-ipykernel-0:6.29.3-9. 100% | 126.0 MiB/s | 258.1 KiB | 00m00s [ 67/149] python3-jupyter-core-0:5.7.2- 100% | 25.5 MiB/s | 78.2 KiB | 00m00s [ 68/149] python3-jupyter-lsp-0:2.2.5-4 100% | 51.3 MiB/s | 157.5 KiB | 00m00s [ 69/149] python3-traitlets-0:5.14.3-4. 100% | 52.3 MiB/s | 214.1 KiB | 00m00s [ 70/149] python3-anyio-0:4.8.0-1.fc43. 100% | 49.7 MiB/s | 254.2 KiB | 00m00s [ 71/149] python3-argon2-cffi-0:23.1.0- 100% | 19.7 MiB/s | 40.3 KiB | 00m00s [ 72/149] python3-jupyter-client-0:8.6. 100% | 78.9 MiB/s | 242.4 KiB | 00m00s [ 73/149] python3-jupyter-events-0:0.12 100% | 25.1 MiB/s | 51.3 KiB | 00m00s [ 74/149] python3-jupyter-server-termin 100% | 17.9 MiB/s | 36.6 KiB | 00m00s [ 75/149] python3-nbconvert-0:7.16.4-5. 100% | 115.8 MiB/s | 355.6 KiB | 00m00s [ 76/149] python3-nbformat-0:5.9.2-8.fc 100% | 47.3 MiB/s | 145.2 KiB | 00m00s [ 77/149] python3-prometheus_client-0:0 100% | 18.5 MiB/s | 132.4 KiB | 00m00s [ 78/149] python3-pyzmq-0:26.2.1-3.fc43 100% | 80.7 MiB/s | 413.3 KiB | 00m00s [ 79/149] python3-send2trash-0:1.8.2-9. 100% | 47.6 MiB/s | 48.8 KiB | 00m00s [ 80/149] python3-terminado-0:0.18.1-1. 100% | 20.9 MiB/s | 42.9 KiB | 00m00s [ 81/149] python3-websocket-client-0:1. 100% | 45.5 MiB/s | 139.7 KiB | 00m00s [ 82/149] python3-cramjam-0:2.10.0~2025 100% | 7.2 MiB/s | 1.2 MiB | 00m00s [ 83/149] python3-babel-0:2.17.0-1.fc42 100% | 266.2 MiB/s | 6.9 MiB | 00m00s [ 84/149] python3-json5-0:0.10.0-2.fc42 100% | 8.4 MiB/s | 68.9 KiB | 00m00s [ 85/149] flexiblas-0:3.4.5-1.fc43.x86_ 100% | 12.8 MiB/s | 26.2 KiB | 00m00s [ 86/149] python3-jsonschema-0:4.23.0-2 100% | 52.7 MiB/s | 216.0 KiB | 00m00s [ 87/149] flexiblas-openblas-openmp-0:3 100% | 16.8 MiB/s | 17.3 KiB | 00m00s [ 88/149] libgfortran-0:15.0.1-0.7.fc43 100% | 153.7 MiB/s | 944.2 KiB | 00m00s [ 89/149] libquadmath-0:15.0.1-0.7.fc43 100% | 36.2 MiB/s | 185.3 KiB | 00m00s [ 90/149] python3-deprecated-0:1.2.18-1 100% | 24.9 MiB/s | 25.5 KiB | 00m00s [ 91/149] blosc-0:1.21.6-6.fc42.x86_64 100% | 28.5 MiB/s | 58.4 KiB | 00m00s [ 92/149] libcbor-0:0.11.0-3.fc42.x86_6 100% | 16.2 MiB/s | 33.3 KiB | 00m00s [ 93/149] python3-httpcore-0:1.0.7-2.fc 100% | 48.9 MiB/s | 150.2 KiB | 00m00s [ 94/149] python3-sniffio-0:1.3.1-4.fc4 100% | 13.3 MiB/s | 27.2 KiB | 00m00s [ 95/149] python3-comm-0:0.2.2-4.fc42.n 100% | 10.0 MiB/s | 20.5 KiB | 00m00s [ 96/149] python3-matplotlib-inline-0:0 100% | 23.4 MiB/s | 24.0 KiB | 00m00s [ 97/149] python3-ipython-0:8.32.0-1.fc 100% | 190.2 MiB/s | 1.1 MiB | 00m00s [ 98/149] python3-nest-asyncio-0:1.6.0- 100% | 6.2 MiB/s | 19.2 KiB | 00m00s [ 99/149] python3-argon2-cffi-bindings- 100% | 25.9 MiB/s | 26.5 KiB | 00m00s [100/149] python3-psutil-0:6.1.1-2.fc42 100% | 134.4 MiB/s | 275.3 KiB | 00m00s [101/149] python3-json-logger-0:2.0.4-1 100% | 10.3 MiB/s | 21.0 KiB | 00m00s [102/149] python3-dateutil-1:2.8.2-17.f 100% | 87.9 MiB/s | 359.9 KiB | 00m00s [103/149] python3-jsonschema+format-non 100% | 9.3 MiB/s | 9.5 KiB | 00m00s [104/149] python3-pyyaml-0:6.0.2-2.fc42 100% | 75.0 MiB/s | 230.4 KiB | 00m00s [105/149] python3-referencing-0:0.36.2- 100% | 27.8 MiB/s | 85.4 KiB | 00m00s [106/149] python3-rfc3339-validator-0:0 100% | 14.4 MiB/s | 14.7 KiB | 00m00s [107/149] python3-rfc3986-validator-0:0 100% | 13.4 MiB/s | 13.8 KiB | 00m00s [108/149] python3-beautifulsoup4-0:4.12 100% | 105.9 MiB/s | 325.5 KiB | 00m00s [109/149] python3-bleach-0:6.2.0-3.fc42 100% | 21.8 MiB/s | 66.9 KiB | 00m00s [110/149] python3-defusedxml-0:0.7.1-18 100% | 28.6 MiB/s | 58.5 KiB | 00m00s [111/149] python3-jupyterlab_pygments-0 100% | 14.8 MiB/s | 30.4 KiB | 00m00s [112/149] python3-mistune-0:3.0.2-4.fc4 100% | 43.0 MiB/s | 132.1 KiB | 00m00s [113/149] python3-nbclient-0:0.10.2-2.f 100% | 22.1 MiB/s | 67.8 KiB | 00m00s [114/149] python3-pandocfilters-0:1.5.1 100% | 10.3 MiB/s | 21.1 KiB | 00m00s [115/149] python3-tinycss2-0:1.4.0-2.fc 100% | 23.4 MiB/s | 71.9 KiB | 00m00s [116/149] python3-decorator-0:5.1.1-14. 100% | 15.2 MiB/s | 31.1 KiB | 00m00s [117/149] python3-pygments-0:2.18.0-4.f 100% | 230.1 MiB/s | 2.5 MiB | 00m00s [118/149] python3-jsonschema-specificat 100% | 13.3 MiB/s | 27.3 KiB | 00m00s [119/149] zeromq-0:4.3.5-21.fc42.x86_64 100% | 76.3 MiB/s | 468.9 KiB | 00m00s [120/149] python3-rpds-py-0:0.22.3-2.fc 100% | 100.9 MiB/s | 309.9 KiB | 00m00s [121/149] snappy-0:1.2.1-4.fc42.x86_64 100% | 13.0 MiB/s | 39.9 KiB | 00m00s [122/149] python3-h11-0:0.14.0-6.fc42.n 100% | 34.0 MiB/s | 139.2 KiB | 00m00s [123/149] openblas-openmp-0:0.3.29-1.fc 100% | 255.8 MiB/s | 5.4 MiB | 00m00s [124/149] python3-jedi-0:0.19.2-1.fc43. 100% | 120.3 MiB/s | 1.6 MiB | 00m00s [125/149] python3-stack-data-0:0.6.3-12 100% | 31.1 MiB/s | 63.6 KiB | 00m00s [126/149] libargon2-0:20190702-7.fc42.x 100% | 13.3 MiB/s | 27.1 KiB | 00m00s [127/149] python3-six-0:1.17.0-2.fc42.n 100% | 13.4 MiB/s | 41.3 KiB | 00m00s [128/149] python3-fqdn-0:1.5.1-15.fc42. 100% | 8.7 MiB/s | 17.8 KiB | 00m00s [129/149] python3-prompt-toolkit-0:3.0. 100% | 59.4 MiB/s | 851.5 KiB | 00m00s [130/149] python3-isoduration-0:20.11.0 100% | 19.3 MiB/s | 39.6 KiB | 00m00s [131/149] python3-uri-template-0:1.2.0- 100% | 35.6 MiB/s | 36.5 KiB | 00m00s [132/149] python3-webcolors-0:24.11.1-2 100% | 18.4 MiB/s | 37.7 KiB | 00m00s [133/149] libyaml-0:0.2.5-16.fc42.x86_6 100% | 19.8 MiB/s | 60.7 KiB | 00m00s [134/149] python3-soupsieve-0:2.6-5.fc4 100% | 31.9 MiB/s | 98.0 KiB | 00m00s [135/149] python3-lxml-0:5.3.1-1.fc43.x 100% | 154.6 MiB/s | 1.4 MiB | 00m00s [136/149] python3-webencodings-0:0.5.1- 100% | 15.4 MiB/s | 31.6 KiB | 00m00s [137/149] python3-html5lib-1:1.1-27.fc4 100% | 40.8 MiB/s | 292.6 KiB | 00m00s [138/149] libsodium-0:1.0.20-4.fc42.x86 100% | 57.2 MiB/s | 175.6 KiB | 00m00s [139/149] libunwind-0:1.8.1-2.fc43.x86_ 100% | 18.8 MiB/s | 77.2 KiB | 00m00s [140/149] openpgm-0:5.3.128-4.fc42.x86_ 100% | 59.6 MiB/s | 183.1 KiB | 00m00s [141/149] python3-wcwidth-0:0.2.13-6.fc 100% | 51.2 MiB/s | 52.4 KiB | 00m00s [142/149] python3-parso-0:0.8.4-4.fc42. 100% | 103.8 MiB/s | 212.7 KiB | 00m00s [143/149] python3-asttokens-0:2.4.1-9.f 100% | 61.2 MiB/s | 62.6 KiB | 00m00s [144/149] python3-pure-eval-0:0.2.3-2.f 100% | 37.8 MiB/s | 38.7 KiB | 00m00s [145/149] python3-executing-0:2.2.0-1.f 100% | 34.8 MiB/s | 71.2 KiB | 00m00s [146/149] python3-arrow-0:1.2.3-12.fc42 100% | 76.0 MiB/s | 155.6 KiB | 00m00s [147/149] libxslt-0:1.1.42-4.fc42.x86_6 100% | 62.3 MiB/s | 191.5 KiB | 00m00s [148/149] openblas-0:0.3.29-1.fc42.x86_ 100% | 41.3 MiB/s | 42.3 KiB | 00m00s [149/149] python3-numcodecs-0:0.15.1-1. 100% | 1.2 MiB/s | 465.4 KiB | 00m00s -------------------------------------------------------------------------------- [149/149] Total 100% | 91.0 MiB/s | 68.2 MiB | 00m01s Running transaction [ 1/151] Verify package files 100% | 530.0 B/s | 149.0 B | 00m00s [ 2/151] Prepare transaction 100% | 1.4 KiB/s | 149.0 B | 00m00s [ 3/151] Installing python-jupyter-fil 100% | 2.0 MiB/s | 2.1 KiB | 00m00s [ 4/151] Installing python-rpm-macros- 100% | 0.0 B/s | 22.8 KiB | 00m00s [ 5/151] Installing python3-rpm-macros 100% | 0.0 B/s | 6.7 KiB | 00m00s [ 6/151] Installing snappy-0:1.2.1-4.f 100% | 17.8 MiB/s | 72.9 KiB | 00m00s [ 7/151] Installing tzdata-0:2025a-1.f 100% | 55.4 MiB/s | 1.9 MiB | 00m00s [ 8/151] Installing libgfortran-0:15.0 100% | 368.9 MiB/s | 3.3 MiB | 00m00s [ 9/151] Installing expat-0:2.6.4-2.fc 100% | 18.0 MiB/s | 294.9 KiB | 00m00s [ 10/151] Installing blosc-0:1.21.6-6.f 100% | 126.0 MiB/s | 129.0 KiB | 00m00s [ 11/151] Installing pyproject-rpm-macr 100% | 113.2 MiB/s | 115.9 KiB | 00m00s [ 12/151] Installing openblas-0:0.3.29- 100% | 110.8 MiB/s | 113.5 KiB | 00m00s [ 13/151] Installing openblas-openmp-0: 100% | 560.5 MiB/s | 43.7 MiB | 00m00s [ 14/151] Installing libxslt-0:1.1.42-4 100% | 29.4 MiB/s | 481.8 KiB | 00m00s [ 15/151] Installing openpgm-0:5.3.128- 100% | 155.1 MiB/s | 317.7 KiB | 00m00s [ 16/151] Installing libunwind-0:1.8.1- 100% | 192.8 MiB/s | 197.4 KiB | 00m00s [ 17/151] Installing libsodium-0:1.0.20 100% | 190.5 MiB/s | 390.2 KiB | 00m00s [ 18/151] Installing zeromq-0:4.3.5-21. 100% | 49.0 MiB/s | 902.7 KiB | 00m00s [ 19/151] Installing libyaml-0:0.2.5-16 100% | 132.9 MiB/s | 136.0 KiB | 00m00s [ 20/151] Installing libargon2-0:201907 100% | 51.4 MiB/s | 52.7 KiB | 00m00s [ 21/151] Installing libcbor-0:0.11.0-3 100% | 77.3 MiB/s | 79.2 KiB | 00m00s [ 22/151] Installing libfido2-0:1.15.0- 100% | 237.9 MiB/s | 243.6 KiB | 00m00s [ 23/151] Installing python-pip-wheel-0 100% | 622.1 MiB/s | 1.2 MiB | 00m00s [ 24/151] Installing mpdecimal-0:4.0.0- 100% | 213.2 MiB/s | 218.4 KiB | 00m00s [ 25/151] Installing libb2-0:0.98.1-13. 100% | 9.2 MiB/s | 47.2 KiB | 00m00s [ 26/151] Installing python3-libs-0:3.1 100% | 298.4 MiB/s | 40.3 MiB | 00m00s [ 27/151] Installing python3-0:3.13.2-2 100% | 1.9 MiB/s | 29.4 KiB | 00m00s [ 28/151] Installing python3-traitlets- 100% | 237.2 MiB/s | 971.7 KiB | 00m00s [ 29/151] Installing python3-packaging- 100% | 184.9 MiB/s | 568.0 KiB | 00m00s [ 30/151] Installing python3-tornado-0: 100% | 338.3 MiB/s | 5.1 MiB | 00m00s [ 31/151] Installing python3-idna-0:3.1 100% | 309.7 MiB/s | 634.3 KiB | 00m00s [ 32/151] Installing python3-six-0:1.17 100% | 116.2 MiB/s | 119.0 KiB | 00m00s [ 33/151] Installing python3-pyzmq-0:26 100% | 118.8 MiB/s | 1.3 MiB | 00m00s [ 34/151] Installing python3-pygments-0 100% | 196.8 MiB/s | 10.8 MiB | 00m00s [ 35/151] Installing python3-webencodin 100% | 88.4 MiB/s | 90.5 KiB | 00m00s [ 36/151] Installing python3-dateutil-1 100% | 217.3 MiB/s | 889.9 KiB | 00m00s [ 37/151] Installing python3-rfc3339-va 100% | 12.0 MiB/s | 12.3 KiB | 00m00s [ 38/151] Installing python3-matplotlib 100% | 42.6 MiB/s | 43.7 KiB | 00m00s [ 39/151] Installing python3-markupsafe 100% | 58.5 MiB/s | 59.9 KiB | 00m00s [ 40/151] Installing python3-jinja2-0:3 100% | 364.1 MiB/s | 2.9 MiB | 00m00s [ 41/151] Installing python3-certifi-0: 100% | 10.1 MiB/s | 10.4 KiB | 00m00s [ 42/151] Installing python3-sniffio-0: 100% | 39.2 MiB/s | 40.1 KiB | 00m00s [ 43/151] Installing python3-anyio-0:4. 100% | 223.0 MiB/s | 1.1 MiB | 00m00s [ 44/151] Installing python3-rfc3986-va 100% | 15.6 MiB/s | 15.9 KiB | 00m00s [ 45/151] Installing python3-decorator- 100% | 79.2 MiB/s | 81.1 KiB | 00m00s [ 46/151] Installing python3-ptyprocess 100% | 81.8 MiB/s | 83.8 KiB | 00m00s [ 47/151] Installing python3-terminado- 100% | 123.7 MiB/s | 126.6 KiB | 00m00s [ 48/151] Installing python3-attrs-0:25 100% | 133.6 MiB/s | 410.6 KiB | 00m00s [ 49/151] Installing python3-rpds-py-0: 100% | 248.0 MiB/s | 761.8 KiB | 00m00s [ 50/151] Installing python3-referencin 100% | 161.4 MiB/s | 330.6 KiB | 00m00s [ 51/151] Installing python3-jsonschema 100% | 27.1 MiB/s | 55.5 KiB | 00m00s [ 52/151] Installing python3-jsonschema 100% | 49.3 MiB/s | 908.9 KiB | 00m00s [ 53/151] Installing python3-jupyter-se 100% | 35.5 MiB/s | 72.8 KiB | 00m00s [ 54/151] Installing python3-pexpect-0: 100% | 155.9 MiB/s | 638.7 KiB | 00m00s [ 55/151] Installing python3-prometheus 100% | 118.4 MiB/s | 363.6 KiB | 00m00s [ 56/151] Installing python3-arrow-0:1. 100% | 184.0 MiB/s | 565.2 KiB | 00m00s [ 57/151] Installing python3-isoduratio 100% | 31.2 MiB/s | 63.9 KiB | 00m00s [ 58/151] Installing python3-tinycss2-0 100% | 125.8 MiB/s | 257.5 KiB | 00m00s [ 59/151] Installing python3-html5lib-1 100% | 245.4 MiB/s | 1.5 MiB | 00m00s [ 60/151] Installing python3-bleach-0:6 100% | 94.7 MiB/s | 193.9 KiB | 00m00s [ 61/151] Installing python3-jupyterlab 100% | 33.8 MiB/s | 69.2 KiB | 00m00s [ 62/151] Installing python3-asttokens- 100% | 104.4 MiB/s | 213.9 KiB | 00m00s [ 63/151] Installing python3-urllib3-0: 100% | 203.6 MiB/s | 1.0 MiB | 00m00s [ 64/151] Installing python3-rpm-genera 100% | 0.0 B/s | 82.9 KiB | 00m00s [ 65/151] Installing python3-comm-0:0.2 100% | 34.4 MiB/s | 35.3 KiB | 00m00s [ 66/151] Installing python3-cramjam-0: 100% | 301.8 MiB/s | 3.0 MiB | 00m00s [ 67/151] Installing python3-asciitree- 100% | 23.8 MiB/s | 24.3 KiB | 00m00s [ 68/151] Installing python3-fasteners- 100% | 119.5 MiB/s | 122.4 KiB | 00m00s [ 69/151] Installing python3-async-lru- 100% | 12.0 MiB/s | 36.8 KiB | 00m00s [ 70/151] Installing python3-setuptools 100% | 214.0 MiB/s | 8.6 MiB | 00m00s [ 71/151] Installing python3-send2trash 100% | 4.8 MiB/s | 78.8 KiB | 00m00s [ 72/151] Installing python3-websocket- 100% | 23.6 MiB/s | 458.4 KiB | 00m00s [ 73/151] Installing python3-babel-0:2. 100% | 304.1 MiB/s | 30.4 MiB | 00m00s [ 74/151] Installing python3-json5-0:0. 100% | 167.9 MiB/s | 343.8 KiB | 00m00s [ 75/151] Installing python3-iniconfig- 100% | 23.0 MiB/s | 23.5 KiB | 00m00s [ 76/151] Installing python3-pluggy-0:1 100% | 64.8 MiB/s | 199.0 KiB | 00m00s [ 77/151] Installing python3-pytest-0:8 100% | 318.3 MiB/s | 21.0 MiB | 00m00s [ 78/151] Installing python3-nest-async 100% | 27.1 MiB/s | 27.7 KiB | 00m00s [ 79/151] Installing python3-psutil-0:6 100% | 359.1 MiB/s | 1.4 MiB | 00m00s [ 80/151] Installing python3-platformdi 100% | 164.5 MiB/s | 168.4 KiB | 00m00s [ 81/151] Installing python3-jupyter-co 100% | 12.5 MiB/s | 205.3 KiB | 00m00s [ 82/151] Installing python3-jupyter-cl 100% | 47.3 MiB/s | 920.1 KiB | 00m00s [ 83/151] Installing python3-json-logge 100% | 32.3 MiB/s | 33.0 KiB | 00m00s [ 84/151] Installing python3-pyyaml-0:6 100% | 194.0 MiB/s | 794.8 KiB | 00m00s [ 85/151] Installing python3-defusedxml 100% | 99.9 MiB/s | 204.6 KiB | 00m00s [ 86/151] Installing python3-mistune-0: 100% | 109.2 MiB/s | 335.3 KiB | 00m00s [ 87/151] Installing python3-pandocfilt 100% | 39.9 MiB/s | 40.9 KiB | 00m00s [ 88/151] Installing python3-fastjsonsc 100% | 96.2 MiB/s | 197.1 KiB | 00m00s [ 89/151] Installing python3-nbformat-0 100% | 30.8 MiB/s | 568.3 KiB | 00m00s [ 90/151] Installing python3-nbclient-0 100% | 14.6 MiB/s | 224.3 KiB | 00m00s [ 91/151] Installing python3-charset-no 100% | 20.1 MiB/s | 329.5 KiB | 00m00s [ 92/151] Installing python3-requests-0 100% | 161.2 MiB/s | 495.2 KiB | 00m00s [ 93/151] Installing python3-ply-0:3.11 100% | 278.5 MiB/s | 570.3 KiB | 00m00s [ 94/151] Installing python3-pycparser- 100% | 264.3 MiB/s | 812.0 KiB | 00m00s [ 95/151] Installing python3-cffi-0:1.1 100% | 265.0 MiB/s | 1.3 MiB | 00m00s [ 96/151] Installing python3-argon2-cff 100% | 53.5 MiB/s | 54.8 KiB | 00m00s [ 97/151] Installing python3-argon2-cff 100% | 75.0 MiB/s | 76.8 KiB | 00m00s [ 98/151] Installing python3-wrapt-0:1. 100% | 99.7 MiB/s | 204.1 KiB | 00m00s [ 99/151] Installing python3-deprecated 100% | 55.1 MiB/s | 56.5 KiB | 00m00s [100/151] Installing python3-h11-0:0.14 100% | 182.6 MiB/s | 561.1 KiB | 00m00s [101/151] Installing python3-httpcore-0 100% | 195.3 MiB/s | 799.9 KiB | 00m00s [102/151] Installing python3-httpx-0:0. 100% | 227.4 MiB/s | 931.3 KiB | 00m00s [103/151] Installing python3-fqdn-0:1.5 100% | 23.2 MiB/s | 23.8 KiB | 00m00s [104/151] Installing python3-jsonpointe 100% | 3.1 MiB/s | 48.1 KiB | 00m00s [105/151] Installing python3-uri-templa 100% | 83.2 MiB/s | 85.2 KiB | 00m00s [106/151] Installing python3-webcolors- 100% | 87.2 MiB/s | 89.3 KiB | 00m00s [107/151] Installing python3-jsonschema 100% | 0.0 B/s | 124.0 B | 00m00s [108/151] Installing python3-jupyter-ev 100% | 6.2 MiB/s | 101.1 KiB | 00m00s [109/151] Installing python3-lxml-0:5.3 100% | 310.3 MiB/s | 5.0 MiB | 00m00s [110/151] Installing python3-soupsieve- 100% | 145.5 MiB/s | 298.0 KiB | 00m00s [111/151] Installing python3-beautifuls 100% | 238.4 MiB/s | 1.4 MiB | 00m00s [112/151] Installing python3-nbconvert- 100% | 52.0 MiB/s | 1.2 MiB | 00m00s [113/151] Installing python3-jupyter-se 100% | 101.0 MiB/s | 2.9 MiB | 00m00s [114/151] Installing python3-jupyterlab 100% | 100.9 MiB/s | 413.4 KiB | 00m00s [115/151] Installing python3-notebook-s 100% | 37.3 MiB/s | 76.4 KiB | 00m00s [116/151] Installing python3-jupyter-ls 100% | 84.3 MiB/s | 431.8 KiB | 00m00s [117/151] Installing python3-parso-0:0. 100% | 110.4 MiB/s | 904.4 KiB | 00m00s [118/151] Installing python3-jedi-0:0.1 100% | 92.3 MiB/s | 6.1 MiB | 00m00s [119/151] Installing python3-wcwidth-0: 100% | 184.0 MiB/s | 565.4 KiB | 00m00s [120/151] Installing python3-prompt-too 100% | 199.6 MiB/s | 3.8 MiB | 00m00s [121/151] Installing python3-executing- 100% | 132.1 MiB/s | 270.5 KiB | 00m00s [122/151] Installing python3-pure-eval- 100% | 102.5 MiB/s | 104.9 KiB | 00m00s [123/151] Installing python3-stack-data 100% | 69.3 MiB/s | 212.8 KiB | 00m00s [124/151] Installing python3-ipython-0: 100% | 116.9 MiB/s | 4.7 MiB | 00m00s [125/151] Installing python3-ipykernel- 100% | 160.0 MiB/s | 983.2 KiB | 00m00s [126/151] Installing libquadmath-0:15.0 100% | 311.7 MiB/s | 319.2 KiB | 00m00s [127/151] Installing flexiblas-0:3.4.5- 100% | 0.0 B/s | 51.6 KiB | 00m00s [128/151] Installing flexiblas-openblas 100% | 39.1 MiB/s | 40.1 KiB | 00m00s [129/151] Installing flexiblas-netlib-0 100% | 243.0 MiB/s | 10.9 MiB | 00m00s [130/151] Installing python3-numpy-f2py 100% | 71.4 MiB/s | 2.1 MiB | 00m00s [131/151] Installing python3-numpy-1:2. 100% | 300.1 MiB/s | 40.5 MiB | 00m00s [132/151] Installing python3-numcodecs- 100% | 192.2 MiB/s | 1.7 MiB | 00m00s [133/151] Installing hicolor-icon-theme 100% | 14.6 MiB/s | 179.5 KiB | 00m00s [134/151] Installing jupyterlab-0:4.3.5 100% | 278.5 MiB/s | 32.6 MiB | 00m00s [135/151] Installing openssh-0:9.9p1-9. 100% | 76.7 MiB/s | 1.4 MiB | 00m00s [136/151] Installing libedit-0:3.1-55.2 100% | 120.0 MiB/s | 245.8 KiB | 00m00s [137/151] Installing openssh-clients-0: 100% | 100.2 MiB/s | 2.7 MiB | 00m00s [138/151] Installing less-0:668-2.fc42. 100% | 25.0 MiB/s | 409.1 KiB | 00m00s [139/151] Installing fuse-common-0:3.16 100% | 0.0 B/s | 292.0 B | 00m00s [140/151] Installing fuse-0:2.9.9-23.fc 100% | 13.8 MiB/s | 225.6 KiB | 00m00s [141/151] Installing git-core-0:2.48.1- 100% | 320.4 MiB/s | 22.7 MiB | 00m00s [142/151] Installing python3-notebook-0 100% | 426.7 MiB/s | 56.3 MiB | 00m00s [143/151] Installing python3-zarr-0:2.1 100% | 351.5 MiB/s | 3.2 MiB | 00m00s [144/151] Installing python3-snappy-0:0 100% | 42.8 MiB/s | 43.9 KiB | 00m00s [145/151] Installing python3-pytest-asy 100% | 147.8 MiB/s | 151.4 KiB | 00m00s [146/151] Installing python3-pytest-moc 100% | 117.0 MiB/s | 119.8 KiB | 00m00s [147/151] Installing python3-pytest-rer 100% | 83.6 MiB/s | 85.6 KiB | 00m00s [148/151] Installing python3-devel-0:3. 100% | 79.0 MiB/s | 1.8 MiB | 00m00s [149/151] Installing python3-cloudpickl 100% | 64.3 MiB/s | 131.7 KiB | 00m00s [150/151] Installing python3-lz4-0:4.3. 100% | 386.3 MiB/s | 6.2 MiB | 00m00s [151/151] Installing python3-zstandard- 100% | 24.2 MiB/s | 2.0 MiB | 00m00s Complete! Finish: build setup for python-fsspec-2024.12.0-2.fc43.src.rpm Start: rpmbuild python-fsspec-2024.12.0-2.fc43.src.rpm Building target platforms: x86_64 Building for target x86_64 setting SOURCE_DATE_EPOCH=1737158400 Executing(%mkbuilddir): /bin/sh -e /var/tmp/rpm-tmp.xXEORd + umask 022 + cd /builddir/build/BUILD/python-fsspec-2024.12.0-build + test -d /builddir/build/BUILD/python-fsspec-2024.12.0-build + /usr/bin/chmod -Rf a+rX,u+w,g-w,o-w /builddir/build/BUILD/python-fsspec-2024.12.0-build + /usr/bin/rm -rf /builddir/build/BUILD/python-fsspec-2024.12.0-build + /usr/bin/mkdir -p /builddir/build/BUILD/python-fsspec-2024.12.0-build + /usr/bin/mkdir -p /builddir/build/BUILD/python-fsspec-2024.12.0-build/SPECPARTS + RPM_EC=0 ++ jobs -p + exit 0 Executing(%prep): /bin/sh -e /var/tmp/rpm-tmp.yFutgB + umask 022 + cd /builddir/build/BUILD/python-fsspec-2024.12.0-build + cd /builddir/build/BUILD/python-fsspec-2024.12.0-build + rm -rf filesystem_spec-2024.12.0 + /usr/lib/rpm/rpmuncompress -x /builddir/build/SOURCES/fsspec-2024.12.0.tar.gz + STATUS=0 + '[' 0 -ne 0 ']' + cd filesystem_spec-2024.12.0 + /usr/bin/chmod -Rf a+rX,u+w,g-w,o-w . + RPM_EC=0 ++ jobs -p + exit 0 Executing(%generate_buildrequires): /bin/sh -e /var/tmp/rpm-tmp.P7dJPT + umask 022 + cd /builddir/build/BUILD/python-fsspec-2024.12.0-build + cd filesystem_spec-2024.12.0 + export SETUPTOOLS_SCM_PRETEND_VERSION=2024.12.0 + SETUPTOOLS_SCM_PRETEND_VERSION=2024.12.0 + echo pyproject-rpm-macros + echo python3-devel + echo 'python3dist(packaging)' + echo 'python3dist(pip) >= 19' + '[' -f pyproject.toml ']' + echo '(python3dist(tomli) if python3-devel < 3.11)' + rm -rfv '*.dist-info/' + '[' -f /usr/bin/python3 ']' + mkdir -p /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/.pyproject-builddir + echo -n + CFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + CXXFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + FFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + FCFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + VALAFLAGS=-g + RUSTFLAGS='-Copt-level=3 -Cdebuginfo=2 -Ccodegen-units=1 -Cstrip=none -Cforce-frame-pointers=yes --cap-lints=warn' + LDFLAGS='-Wl,-z,relro -Wl,--as-needed -Wl,-z,pack-relative-relocs -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 ' + LT_SYS_LIBRARY_PATH=/usr/lib64: + CC=gcc + CXX=g++ + TMPDIR=/builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/.pyproject-builddir + RPM_TOXENV=py313 + HOSTNAME=rpmbuild + /usr/bin/python3 -Bs /usr/lib/rpm/redhat/pyproject_buildrequires.py --generate-extras --python3_pkgversion 3 --wheeldir /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/pyproject-wheeldir --output /builddir/build/BUILD/python-fsspec-2024.12.0-build/python-fsspec-2024.12.0-2.fc43.x86_64-pyproject-buildrequires -x arrow,dask,gcs,gs,entrypoints,fuse,git,github,hdfs,http,libarchive,sftp,smb,ssh,tqdm Handling hatchling from build-system.requires Requirement not satisfied: hatchling Handling hatch-vcs from build-system.requires Requirement not satisfied: hatch-vcs Exiting dependency generation pass: build backend + cat /builddir/build/BUILD/python-fsspec-2024.12.0-build/python-fsspec-2024.12.0-2.fc43.x86_64-pyproject-buildrequires + rm -rfv '*.dist-info/' + RPM_EC=0 ++ jobs -p + exit 0 Wrote: /builddir/build/SRPMS/python-fsspec-2024.12.0-2.fc43.buildreqs.nosrc.rpm INFO: Going to install missing dynamic buildrequires Updating and loading repositories: fedora 100% | 104.9 KiB/s | 25.8 KiB | 00m00s Copr repository 100% | 95.3 KiB/s | 1.5 KiB | 00m00s Repositories loaded. Package "fuse-2.9.9-23.fc42.x86_64" is already installed. Package "git-core-2.48.1-3.fc43.x86_64" is already installed. Package "pyproject-rpm-macros-1.17.0-1.fc43.noarch" is already installed. Package "python3-devel-3.13.2-2.fc43.x86_64" is already installed. Package "python3-cloudpickle-3.1.1-2.fc42.noarch" is already installed. Package "python3-jinja2-3.1.5-2.fc42.noarch" is already installed. Package "python3-lz4-4.3.3-8.fc42.x86_64" is already installed. Package "python3-notebook-7.3.2-2.fc42.noarch" is already installed. Package "python3-numpy-1:2.2.3-1.fc43.x86_64" is already installed. Package "python3-packaging-24.2-3.fc42.noarch" is already installed. Package "python3-pytest-8.3.4-2.fc42.noarch" is already installed. Package "python3-pytest-asyncio-0.24.0-2.fc42.noarch" is already installed. Package "python3-pytest-mock-3.14.0-3.fc42.noarch" is already installed. Package "python3-pytest-rerunfailures-15.0-2.fc42.noarch" is already installed. Package "python3-snappy-0.7.2-4.fc42.noarch" is already installed. Package "python3-zarr-2.18.4-2.fc42.noarch" is already installed. Package "python3-zstandard-0.23.0-2.fc42.x86_64" is already installed. Package Arch Version Repository Size Installing: python3-hatch-vcs noarch 0.4.0-7.fc42 fedora 33.6 KiB python3-hatchling noarch 1.27.0-2.fc42 fedora 604.2 KiB python3-pip noarch 24.3.1-2.fc42 fedora 11.3 MiB Installing dependencies: python3-pathspec noarch 0.12.1-8.fc42 fedora 194.7 KiB python3-setuptools_scm noarch 8.1.0-2.fc42 fedora 319.6 KiB python3-trove-classifiers noarch 2025.1.10.15-2.fc42 fedora 92.3 KiB Transaction Summary: Installing: 6 packages Total size of inbound packages is 3 MiB. Need to download 427 KiB. After this operation, 13 MiB extra will be used (install 13 MiB, remove 0 B). [1/6] python3-pip-0:24.3.1-2.fc42.noarc 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [2/6] python3-trove-classifiers-0:2025. 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [3/6] python3-hatch-vcs-0:0.4.0-7.fc42. 100% | 2.7 MiB/s | 27.6 KiB | 00m00s [4/6] python3-setuptools_scm-0:8.1.0-2. 100% | 8.8 MiB/s | 117.2 KiB | 00m00s [5/6] python3-pathspec-0:0.12.1-8.fc42. 100% | 30.1 MiB/s | 61.7 KiB | 00m00s [6/6] python3-hatchling-0:1.27.0-2.fc42 100% | 14.4 MiB/s | 220.8 KiB | 00m00s -------------------------------------------------------------------------------- [6/6] Total 100% | 2.2 MiB/s | 427.3 KiB | 00m00s Running transaction [1/8] Verify package files 100% | 600.0 B/s | 6.0 B | 00m00s [2/8] Prepare transaction 100% | 206.0 B/s | 6.0 B | 00m00s [3/8] Installing python3-trove-classifi 100% | 93.3 MiB/s | 95.5 KiB | 00m00s [4/8] Installing python3-pathspec-0:0.1 100% | 98.4 MiB/s | 201.5 KiB | 00m00s [5/8] Installing python3-hatchling-0:1. 100% | 29.0 MiB/s | 653.4 KiB | 00m00s [6/8] Installing python3-setuptools_scm 100% | 110.5 MiB/s | 339.3 KiB | 00m00s [7/8] Installing python3-hatch-vcs-0:0. 100% | 9.7 MiB/s | 39.7 KiB | 00m00s [8/8] Installing python3-pip-0:24.3.1-2 100% | 132.0 MiB/s | 11.6 MiB | 00m00s Complete! Building target platforms: x86_64 Building for target x86_64 setting SOURCE_DATE_EPOCH=1737158400 Executing(%generate_buildrequires): /bin/sh -e /var/tmp/rpm-tmp.rf1HwC + umask 022 + cd /builddir/build/BUILD/python-fsspec-2024.12.0-build + cd filesystem_spec-2024.12.0 + export SETUPTOOLS_SCM_PRETEND_VERSION=2024.12.0 + SETUPTOOLS_SCM_PRETEND_VERSION=2024.12.0 + echo pyproject-rpm-macros + echo python3-devel + echo 'python3dist(packaging)' + echo 'python3dist(pip) >= 19' + '[' -f pyproject.toml ']' + echo '(python3dist(tomli) if python3-devel < 3.11)' + rm -rfv '*.dist-info/' + '[' -f /usr/bin/python3 ']' + mkdir -p /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/.pyproject-builddir + echo -n + CFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + CXXFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + FFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + FCFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + VALAFLAGS=-g + RUSTFLAGS='-Copt-level=3 -Cdebuginfo=2 -Ccodegen-units=1 -Cstrip=none -Cforce-frame-pointers=yes --cap-lints=warn' + LDFLAGS='-Wl,-z,relro -Wl,--as-needed -Wl,-z,pack-relative-relocs -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 ' + LT_SYS_LIBRARY_PATH=/usr/lib64: + CC=gcc + CXX=g++ + TMPDIR=/builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/.pyproject-builddir + RPM_TOXENV=py313 + HOSTNAME=rpmbuild + /usr/bin/python3 -Bs /usr/lib/rpm/redhat/pyproject_buildrequires.py --generate-extras --python3_pkgversion 3 --wheeldir /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/pyproject-wheeldir --output /builddir/build/BUILD/python-fsspec-2024.12.0-build/python-fsspec-2024.12.0-2.fc43.x86_64-pyproject-buildrequires -x arrow,dask,gcs,gs,entrypoints,fuse,git,github,hdfs,http,libarchive,sftp,smb,ssh,tqdm Handling hatchling from build-system.requires Requirement satisfied: hatchling (installed: hatchling 1.27.0) Handling hatch-vcs from build-system.requires Requirement satisfied: hatch-vcs (installed: hatch-vcs 0.4.0) Handling adlfs; extra == 'abfs' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: adlfs; extra == 'abfs' Handling adlfs; extra == 'adl' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: adlfs; extra == 'adl' Handling pyarrow>=1; extra == 'arrow' from hook generated metadata: Requires-Dist (fsspec) Requirement not satisfied: pyarrow>=1; extra == 'arrow' Handling dask; extra == 'dask' from hook generated metadata: Requires-Dist (fsspec) Requirement not satisfied: dask; extra == 'dask' Handling distributed; extra == 'dask' from hook generated metadata: Requires-Dist (fsspec) Requirement not satisfied: distributed; extra == 'dask' Handling pre-commit; extra == 'dev' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pre-commit; extra == 'dev' Handling ruff; extra == 'dev' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: ruff; extra == 'dev' Handling numpydoc; extra == 'doc' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: numpydoc; extra == 'doc' Handling sphinx; extra == 'doc' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: sphinx; extra == 'doc' Handling sphinx-design; extra == 'doc' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: sphinx-design; extra == 'doc' Handling sphinx-rtd-theme; extra == 'doc' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: sphinx-rtd-theme; extra == 'doc' Handling yarl; extra == 'doc' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: yarl; extra == 'doc' Handling dropbox; extra == 'dropbox' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: dropbox; extra == 'dropbox' Handling dropboxdrivefs; extra == 'dropbox' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: dropboxdrivefs; extra == 'dropbox' Handling requests; extra == 'dropbox' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: requests; extra == 'dropbox' Handling adlfs; extra == 'full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: adlfs; extra == 'full' Handling aiohttp!=4.0.0a0,!=4.0.0a1; extra == 'full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: aiohttp!=4.0.0a0,!=4.0.0a1; extra == 'full' Handling dask; extra == 'full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: dask; extra == 'full' Handling distributed; extra == 'full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: distributed; extra == 'full' Handling dropbox; extra == 'full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: dropbox; extra == 'full' Handling dropboxdrivefs; extra == 'full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: dropboxdrivefs; extra == 'full' Handling fusepy; extra == 'full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: fusepy; extra == 'full' Handling gcsfs; extra == 'full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: gcsfs; extra == 'full' Handling libarchive-c; extra == 'full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: libarchive-c; extra == 'full' Handling ocifs; extra == 'full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: ocifs; extra == 'full' Handling panel; extra == 'full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: panel; extra == 'full' Handling paramiko; extra == 'full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: paramiko; extra == 'full' Handling pyarrow>=1; extra == 'full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pyarrow>=1; extra == 'full' Handling pygit2; extra == 'full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pygit2; extra == 'full' Handling requests; extra == 'full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: requests; extra == 'full' Handling s3fs; extra == 'full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: s3fs; extra == 'full' Handling smbprotocol; extra == 'full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: smbprotocol; extra == 'full' Handling tqdm; extra == 'full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: tqdm; extra == 'full' Handling fusepy; extra == 'fuse' from hook generated metadata: Requires-Dist (fsspec) Requirement not satisfied: fusepy; extra == 'fuse' Handling gcsfs; extra == 'gcs' from hook generated metadata: Requires-Dist (fsspec) Requirement not satisfied: gcsfs; extra == 'gcs' Handling pygit2; extra == 'git' from hook generated metadata: Requires-Dist (fsspec) Requirement not satisfied: pygit2; extra == 'git' Handling requests; extra == 'github' from hook generated metadata: Requires-Dist (fsspec) Requirement satisfied: requests; extra == 'github' (installed: requests 2.32.3) Handling gcsfs; extra == 'gs' from hook generated metadata: Requires-Dist (fsspec) Requirement not satisfied: gcsfs; extra == 'gs' Handling panel; extra == 'gui' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: panel; extra == 'gui' Handling pyarrow>=1; extra == 'hdfs' from hook generated metadata: Requires-Dist (fsspec) Requirement not satisfied: pyarrow>=1; extra == 'hdfs' Handling aiohttp!=4.0.0a0,!=4.0.0a1; extra == 'http' from hook generated metadata: Requires-Dist (fsspec) Requirement not satisfied: aiohttp!=4.0.0a0,!=4.0.0a1; extra == 'http' Handling libarchive-c; extra == 'libarchive' from hook generated metadata: Requires-Dist (fsspec) Requirement not satisfied: libarchive-c; extra == 'libarchive' Handling ocifs; extra == 'oci' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: ocifs; extra == 'oci' Handling s3fs; extra == 's3' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: s3fs; extra == 's3' Handling paramiko; extra == 'sftp' from hook generated metadata: Requires-Dist (fsspec) Requirement not satisfied: paramiko; extra == 'sftp' Handling smbprotocol; extra == 'smb' from hook generated metadata: Requires-Dist (fsspec) Requirement not satisfied: smbprotocol; extra == 'smb' Handling paramiko; extra == 'ssh' from hook generated metadata: Requires-Dist (fsspec) Requirement not satisfied: paramiko; extra == 'ssh' Handling aiohttp!=4.0.0a0,!=4.0.0a1; extra == 'test' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: aiohttp!=4.0.0a0,!=4.0.0a1; extra == 'test' Handling numpy; extra == 'test' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: numpy; extra == 'test' Handling pytest; extra == 'test' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pytest; extra == 'test' Handling pytest-asyncio!=0.22.0; extra == 'test' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pytest-asyncio!=0.22.0; extra == 'test' Handling pytest-benchmark; extra == 'test' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pytest-benchmark; extra == 'test' Handling pytest-cov; extra == 'test' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pytest-cov; extra == 'test' Handling pytest-mock; extra == 'test' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pytest-mock; extra == 'test' Handling pytest-recording; extra == 'test' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pytest-recording; extra == 'test' Handling pytest-rerunfailures; extra == 'test' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pytest-rerunfailures; extra == 'test' Handling requests; extra == 'test' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: requests; extra == 'test' Handling aiobotocore<3.0.0,>=2.5.4; extra == 'test-downstream' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: aiobotocore<3.0.0,>=2.5.4; extra == 'test-downstream' Handling dask-expr; extra == 'test-downstream' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: dask-expr; extra == 'test-downstream' Handling dask[dataframe,test]; extra == 'test-downstream' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: dask[dataframe,test]; extra == 'test-downstream' Handling moto[server]<5,>4; extra == 'test-downstream' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: moto[server]<5,>4; extra == 'test-downstream' Handling pytest-timeout; extra == 'test-downstream' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pytest-timeout; extra == 'test-downstream' Handling xarray; extra == 'test-downstream' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: xarray; extra == 'test-downstream' Handling adlfs; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: adlfs; extra == 'test-full' Handling aiohttp!=4.0.0a0,!=4.0.0a1; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: aiohttp!=4.0.0a0,!=4.0.0a1; extra == 'test-full' Handling cloudpickle; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: cloudpickle; extra == 'test-full' Handling dask; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: dask; extra == 'test-full' Handling distributed; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: distributed; extra == 'test-full' Handling dropbox; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: dropbox; extra == 'test-full' Handling dropboxdrivefs; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: dropboxdrivefs; extra == 'test-full' Handling fastparquet; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: fastparquet; extra == 'test-full' Handling fusepy; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: fusepy; extra == 'test-full' Handling gcsfs; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: gcsfs; extra == 'test-full' Handling jinja2; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: jinja2; extra == 'test-full' Handling kerchunk; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: kerchunk; extra == 'test-full' Handling libarchive-c; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: libarchive-c; extra == 'test-full' Handling lz4; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: lz4; extra == 'test-full' Handling notebook; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: notebook; extra == 'test-full' Handling numpy; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: numpy; extra == 'test-full' Handling ocifs; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: ocifs; extra == 'test-full' Handling pandas; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pandas; extra == 'test-full' Handling panel; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: panel; extra == 'test-full' Handling paramiko; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: paramiko; extra == 'test-full' Handling pyarrow; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pyarrow; extra == 'test-full' Handling pyarrow>=1; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pyarrow>=1; extra == 'test-full' Handling pyftpdlib; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pyftpdlib; extra == 'test-full' Handling pygit2; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pygit2; extra == 'test-full' Handling pytest; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pytest; extra == 'test-full' Handling pytest-asyncio!=0.22.0; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pytest-asyncio!=0.22.0; extra == 'test-full' Handling pytest-benchmark; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pytest-benchmark; extra == 'test-full' Handling pytest-cov; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pytest-cov; extra == 'test-full' Handling pytest-mock; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pytest-mock; extra == 'test-full' Handling pytest-recording; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pytest-recording; extra == 'test-full' Handling pytest-rerunfailures; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pytest-rerunfailures; extra == 'test-full' Handling python-snappy; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: python-snappy; extra == 'test-full' Handling requests; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: requests; extra == 'test-full' Handling smbprotocol; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: smbprotocol; extra == 'test-full' Handling tqdm; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: tqdm; extra == 'test-full' Handling urllib3; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: urllib3; extra == 'test-full' Handling zarr; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: zarr; extra == 'test-full' Handling zstandard; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: zstandard; extra == 'test-full' Handling tqdm; extra == 'tqdm' from hook generated metadata: Requires-Dist (fsspec) Requirement not satisfied: tqdm; extra == 'tqdm' + cat /builddir/build/BUILD/python-fsspec-2024.12.0-build/python-fsspec-2024.12.0-2.fc43.x86_64-pyproject-buildrequires + rm -rfv fsspec-2024.12.0.dist-info/ removed 'fsspec-2024.12.0.dist-info/METADATA' removed directory 'fsspec-2024.12.0.dist-info/' + RPM_EC=0 ++ jobs -p + exit 0 Wrote: /builddir/build/SRPMS/python-fsspec-2024.12.0-2.fc43.buildreqs.nosrc.rpm INFO: Going to install missing dynamic buildrequires Updating and loading repositories: Copr repository 100% | 84.7 KiB/s | 1.5 KiB | 00m00s fedora 100% | 228.5 KiB/s | 25.8 KiB | 00m00s Copr repository 100% | 2.0 MiB/s | 73.7 KiB | 00m00s Repositories loaded. Package "fuse-2.9.9-23.fc42.x86_64" is already installed. Package "git-core-2.48.1-3.fc43.x86_64" is already installed. Package "pyproject-rpm-macros-1.17.0-1.fc43.noarch" is already installed. Package "python3-devel-3.13.2-2.fc43.x86_64" is already installed. Package "python3-cloudpickle-3.1.1-2.fc42.noarch" is already installed. Package "python3-hatch-vcs-0.4.0-7.fc42.noarch" is already installed. Package "python3-hatchling-1.27.0-2.fc42.noarch" is already installed. Package "python3-jinja2-3.1.5-2.fc42.noarch" is already installed. Package "python3-lz4-4.3.3-8.fc42.x86_64" is already installed. Package "python3-notebook-7.3.2-2.fc42.noarch" is already installed. Package "python3-numpy-1:2.2.3-1.fc43.x86_64" is already installed. Package "python3-packaging-24.2-3.fc42.noarch" is already installed. Package "python3-pip-24.3.1-2.fc42.noarch" is already installed. Package "python3-pytest-8.3.4-2.fc42.noarch" is already installed. Package "python3-pytest-asyncio-0.24.0-2.fc42.noarch" is already installed. Package "python3-pytest-mock-3.14.0-3.fc42.noarch" is already installed. Package "python3-pytest-rerunfailures-15.0-2.fc42.noarch" is already installed. Package "python3-snappy-0.7.2-4.fc42.noarch" is already installed. Package "python3-requests-2.32.3-4.fc42.noarch" is already installed. Package "python3-zarr-2.18.4-2.fc42.noarch" is already installed. Package "python3-zstandard-0.23.0-2.fc42.x86_64" is already installed. Package Arch Version Repository Size Installing: python3-aiohttp x86_64 3.11.12-1.fc43 copr_base 3.4 MiB python3-dask noarch 2024.12.1-2.fc42 fedora 17.3 MiB python3-distributed noarch 2024.12.1-2.fc42 fedora 17.4 MiB python3-fusepy noarch 3.0.1-1.fc42 fedora 150.8 KiB python3-gcsfs noarch 2024.9.0-2.fc43 copr_base 329.9 KiB python3-libarchive-c noarch 5.1-6.fc42 fedora 126.9 KiB python3-paramiko noarch 3.5.1-1.fc42 fedora 1.7 MiB python3-pyarrow x86_64 19.0.0-1.fc43 fedora 26.6 MiB python3-pygit2 x86_64 1.17.0-2.fc42 fedora 1.1 MiB python3-smbprotocol noarch 1.9.0-9.fc42 fedora 1.0 MiB python3-tqdm noarch 4.67.1-3.fc42 fedora 566.9 KiB Installing dependencies: abseil-cpp x86_64 20240722.1-1.fc42 fedora 2.3 MiB boost-program-options x86_64 1.83.0-12.fc42 fedora 276.7 KiB c-ares x86_64 1.34.4-3.fc43 fedora 269.6 KiB fuse-libs x86_64 2.9.9-23.fc42 fedora 305.1 KiB glib2 x86_64 2.83.2-6.fc42 fedora 14.7 MiB gnutls x86_64 3.8.9-4.fc43 fedora 3.6 MiB google-crc32c x86_64 1.1.2-11.fc42 fedora 28.0 KiB grpc x86_64 1.48.4-46.fc43 fedora 10.6 MiB grpc-cpp x86_64 1.48.4-46.fc43 fedora 3.0 MiB grpc-data noarch 1.48.4-46.fc43 fedora 29.6 KiB libarrow x86_64 19.0.0-1.fc43 fedora 25.0 MiB libarrow-acero-libs x86_64 19.0.0-1.fc43 fedora 1.4 MiB libarrow-dataset-libs x86_64 19.0.0-1.fc43 fedora 1.5 MiB libarrow-doc noarch 19.0.0-1.fc43 fedora 115.8 KiB libarrow-flight-libs x86_64 19.0.0-1.fc43 fedora 1.4 MiB libarrow-glib-libs x86_64 19.0.0-1.fc43 fedora 1.5 MiB libgit2 x86_64 1.9.0-4.fc42 fedora 1.3 MiB libicu x86_64 76.1-4.fc42 fedora 36.3 MiB liborc2 x86_64 2.1.0-1.fc43 fedora 1.8 MiB libssh2 x86_64 1.11.1-3.fc42 fedora 322.7 KiB llhttp x86_64 9.2.1-5.fc42 fedora 76.5 KiB nettle x86_64 3.10.1-1.fc43 fedora 790.5 KiB parquet-libs x86_64 19.0.0-1.fc43 fedora 3.3 MiB protobuf x86_64 3.19.6-10.fc41 fedora 3.3 MiB protobuf-compiler x86_64 3.19.6-10.fc41 fedora 2.5 MiB python3-aiohappyeyeballs noarch 2.4.4-4.fc43 fedora 92.9 KiB python3-aiosignal noarch 1.3.2-2.fc42 fedora 33.4 KiB python3-bcrypt x86_64 4.2.1-2.fc42 fedora 535.1 KiB python3-cachetools noarch 5.5.1-1.fc42 fedora 135.2 KiB python3-click noarch 8.1.7-7.fc42 fedora 1.0 MiB python3-cryptography x86_64 44.0.0-3.fc43 fedora 5.0 MiB python3-frozenlist x86_64 1.5.0-3.fc42 fedora 150.6 KiB python3-fsspec noarch 2024.12.0-2.fc42 fedora 1.7 MiB python3-google-api-core noarch 1:2.11.1-11.fc42 fedora 792.7 KiB python3-google-auth noarch 1:2.38.0-1.fc42 fedora 1.4 MiB python3-google-auth-oauthlib noarch 1.2.1-2.fc42 fedora 97.5 KiB python3-google-cloud-core noarch 2.3.3-7.fc42 fedora 178.8 KiB python3-google-cloud-storage noarch 2.14.0-7.fc42 fedora 1.2 MiB python3-google-crc32c x86_64 1.6.0-3.fc42 fedora 58.5 KiB python3-google-resumable-media noarch 2.7.2-3.fc42 fedora 648.8 KiB python3-googleapis-common-protos noarch 1.63.0-8.fc42 fedora 777.0 KiB python3-grpcio x86_64 1.48.4-46.fc43 fedora 7.8 MiB python3-grpcio-status noarch 1.48.4-46.fc43 fedora 14.0 KiB python3-locket noarch 1.0.0-12.fc42 fedora 20.6 KiB python3-msgpack x86_64 1.1.0-2.fc42 fedora 328.4 KiB python3-multidict x86_64 6.1.0-2.fc42 fedora 156.6 KiB python3-oauthlib noarch 3.2.2-6.fc42 fedora 987.3 KiB python3-partd noarch 1.4.2-3.fc42 fedora 163.3 KiB python3-propcache x86_64 0.2.0-1.fc43 fedora 128.5 KiB python3-protobuf x86_64 3.19.6-10.fc41 fedora 1.9 MiB python3-pyasn1 noarch 0.6.1-3.fc42 fedora 863.7 KiB python3-pyasn1-modules noarch 0.6.1-3.fc42 fedora 1.7 MiB python3-pynacl x86_64 1.5.0-14.fc42 fedora 584.3 KiB python3-requests-oauthlib noarch 1.3.1-11.fc42 fedora 133.1 KiB python3-rsa noarch 4.9-8.fc42 fedora 238.0 KiB python3-sortedcontainers noarch 2.4.0-19.fc42 fedora 386.7 KiB python3-spnego noarch 0.11.1-2.fc42 fedora 1.0 MiB python3-tblib noarch 3.0.0-5.fc42 fedora 85.2 KiB python3-toolz noarch 1.0.0-2.fc42 fedora 605.8 KiB python3-yarl x86_64 1.18.3-1.fc43 fedora 511.8 KiB python3-zict noarch 3.0.0-8.fc42 fedora 446.4 KiB re2 x86_64 1:20240702-28.fc42 fedora 566.0 KiB thrift x86_64 0.20.0-3.fc41 fedora 4.8 MiB utf8proc x86_64 2.9.0-2.fc42 fedora 366.6 KiB Transaction Summary: Installing: 75 packages Total size of inbound packages is 56 MiB. Need to download 36 MiB. After this operation, 223 MiB extra will be used (install 223 MiB, remove 0 B). [ 1/75] python3-aiohttp-0:3.11.12-1.fc4 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 2/75] python3-msgpack-0:1.1.0-2.fc42. 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 3/75] python3-cryptography-0:44.0.0-3 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 4/75] llhttp-0:9.2.1-5.fc42.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 5/75] python3-aiohappyeyeballs-0:2.4. 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 6/75] python3-aiosignal-0:1.3.2-2.fc4 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 7/75] python3-frozenlist-0:1.5.0-3.fc 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 8/75] python3-multidict-0:6.1.0-2.fc4 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [ 9/75] python3-propcache-0:0.2.0-1.fc4 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [10/75] python3-yarl-0:1.18.3-1.fc43.x8 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [11/75] glib2-0:2.83.2-6.fc42.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [12/75] protobuf-0:3.19.6-10.fc41.x86_6 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [13/75] libicu-0:76.1-4.fc42.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [14/75] gnutls-0:3.8.9-4.fc43.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [15/75] protobuf-compiler-0:3.19.6-10.f 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [16/75] python3-protobuf-0:3.19.6-10.fc 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [17/75] nettle-0:3.10.1-1.fc43.x86_64 100% | 0.0 B/s | 0.0 B | 00m00s >>> Already downloaded [18/75] python3-fusepy-0:3.0.1-1.fc42.n 100% | 205.9 KiB/s | 35.2 KiB | 00m00s [19/75] python3-libarchive-c-0:5.1-6.fc 100% | 1.0 MiB/s | 49.5 KiB | 00m00s [20/75] python3-paramiko-0:3.5.1-1.fc42 100% | 57.6 MiB/s | 412.7 KiB | 00m00s [21/75] python3-pyarrow-0:19.0.0-1.fc43 100% | 180.9 MiB/s | 4.9 MiB | 00m00s [22/75] python3-pygit2-0:1.17.0-2.fc42. 100% | 71.3 MiB/s | 292.1 KiB | 00m00s [23/75] python3-smbprotocol-0:1.9.0-9.f 100% | 63.2 MiB/s | 259.0 KiB | 00m00s [24/75] python3-tqdm-0:4.67.1-3.fc42.no 100% | 86.9 MiB/s | 178.1 KiB | 00m00s [25/75] python3-gcsfs-0:2024.9.0-2.fc43 100% | 12.6 MiB/s | 90.6 KiB | 00m00s [26/75] python3-click-0:8.1.7-7.fc42.no 100% | 78.8 MiB/s | 242.2 KiB | 00m00s [27/75] python3-fsspec-0:2024.12.0-2.fc 100% | 70.2 MiB/s | 431.1 KiB | 00m00s [28/75] python3-partd-0:1.4.2-3.fc42.no 100% | 173.7 KiB/s | 62.9 KiB | 00m00s [29/75] python3-dask-0:2024.12.1-2.fc42 100% | 4.3 MiB/s | 3.2 MiB | 00m01s [30/75] python3-distributed-0:2024.12.1 100% | 4.4 MiB/s | 3.6 MiB | 00m01s [31/75] python3-sortedcontainers-0:2.4. 100% | 20.7 MiB/s | 63.7 KiB | 00m00s [32/75] python3-tblib-0:3.0.0-5.fc42.no 100% | 2.9 MiB/s | 29.3 KiB | 00m00s [33/75] python3-locket-0:1.0.0-12.fc42. 100% | 108.7 KiB/s | 17.8 KiB | 00m00s [34/75] python3-bcrypt-0:4.2.1-2.fc42.x 100% | 21.1 MiB/s | 237.4 KiB | 00m00s [35/75] python3-pynacl-0:1.5.0-14.fc42. 100% | 46.1 MiB/s | 141.7 KiB | 00m00s [36/75] libarrow-0:19.0.0-1.fc43.x86_64 100% | 64.9 MiB/s | 6.0 MiB | 00m00s [37/75] libarrow-acero-libs-0:19.0.0-1. 100% | 100.5 MiB/s | 514.6 KiB | 00m00s [38/75] libarrow-dataset-libs-0:19.0.0- 100% | 71.6 MiB/s | 513.2 KiB | 00m00s [39/75] libarrow-flight-libs-0:19.0.0-1 100% | 51.9 MiB/s | 425.0 KiB | 00m00s [40/75] python3-toolz-0:1.0.0-2.fc42.no 100% | 443.9 KiB/s | 171.4 KiB | 00m00s [41/75] parquet-libs-0:19.0.0-1.fc43.x8 100% | 167.6 MiB/s | 1.0 MiB | 00m00s [42/75] python3-spnego-0:0.11.1-2.fc42. 100% | 30.8 MiB/s | 283.5 KiB | 00m00s [43/75] libgit2-0:1.9.0-4.fc42.x86_64 100% | 47.6 MiB/s | 584.7 KiB | 00m00s [44/75] python3-google-auth-1:2.38.0-1. 100% | 63.5 MiB/s | 324.9 KiB | 00m00s [45/75] python3-google-auth-oauthlib-0: 100% | 12.9 MiB/s | 39.7 KiB | 00m00s [46/75] libarrow-doc-0:19.0.0-1.fc43.no 100% | 28.1 MiB/s | 28.8 KiB | 00m00s [47/75] python3-google-cloud-storage-0: 100% | 102.4 MiB/s | 209.7 KiB | 00m00s [48/75] re2-1:20240702-28.fc42.x86_64 100% | 72.6 MiB/s | 222.9 KiB | 00m00s [49/75] liborc2-0:2.1.0-1.fc43.x86_64 100% | 134.3 MiB/s | 550.3 KiB | 00m00s [50/75] utf8proc-0:2.9.0-2.fc42.x86_64 100% | 39.7 MiB/s | 81.2 KiB | 00m00s [51/75] abseil-cpp-0:20240722.1-1.fc42. 100% | 35.1 MiB/s | 718.6 KiB | 00m00s [52/75] grpc-0:1.48.4-46.fc43.x86_64 100% | 122.9 MiB/s | 2.6 MiB | 00m00s [53/75] libarrow-glib-libs-0:19.0.0-1.f 100% | 68.4 MiB/s | 420.5 KiB | 00m00s [54/75] thrift-0:0.20.0-3.fc41.x86_64 100% | 236.7 MiB/s | 1.7 MiB | 00m00s [55/75] grpc-cpp-0:1.48.4-46.fc43.x86_6 100% | 39.6 MiB/s | 729.2 KiB | 00m00s [56/75] python3-cachetools-0:5.5.1-1.fc 100% | 18.7 MiB/s | 38.2 KiB | 00m00s [57/75] libssh2-0:1.11.1-3.fc42.x86_64 100% | 28.8 MiB/s | 147.2 KiB | 00m00s [58/75] python3-pyasn1-modules-0:0.6.1- 100% | 74.2 MiB/s | 379.8 KiB | 00m00s [59/75] python3-rsa-0:4.9-8.fc42.noarch 100% | 26.3 MiB/s | 80.9 KiB | 00m00s [60/75] python3-requests-oauthlib-0:1.3 100% | 28.3 MiB/s | 57.9 KiB | 00m00s [61/75] python3-google-api-core-1:2.11. 100% | 40.1 MiB/s | 205.3 KiB | 00m00s [62/75] python3-google-cloud-core-0:2.3 100% | 23.6 MiB/s | 72.5 KiB | 00m00s [63/75] python3-google-crc32c-0:1.6.0-3 100% | 18.2 MiB/s | 37.3 KiB | 00m00s [64/75] python3-google-resumable-media- 100% | 33.5 MiB/s | 103.0 KiB | 00m00s [65/75] c-ares-0:1.34.4-3.fc43.x86_64 100% | 38.3 MiB/s | 117.5 KiB | 00m00s [66/75] grpc-data-0:1.48.4-46.fc43.noar 100% | 10.0 MiB/s | 20.5 KiB | 00m00s [67/75] python3-pyasn1-0:0.6.1-3.fc42.n 100% | 64.3 MiB/s | 197.4 KiB | 00m00s [68/75] python3-oauthlib-0:3.2.2-6.fc42 100% | 61.8 MiB/s | 252.9 KiB | 00m00s [69/75] python3-googleapis-common-proto 100% | 54.5 MiB/s | 223.3 KiB | 00m00s [70/75] python3-grpcio-status-0:1.48.4- 100% | 9.3 MiB/s | 19.1 KiB | 00m00s [71/75] google-crc32c-0:1.1.2-11.fc42.x 100% | 10.9 MiB/s | 22.4 KiB | 00m00s [72/75] python3-grpcio-0:1.48.4-46.fc43 100% | 247.4 MiB/s | 2.5 MiB | 00m00s [73/75] boost-program-options-0:1.83.0- 100% | 27.2 MiB/s | 111.3 KiB | 00m00s [74/75] python3-zict-0:3.0.0-8.fc42.noa 100% | 274.6 KiB/s | 128.0 KiB | 00m00s [75/75] fuse-libs-0:2.9.9-23.fc42.x86_6 100% | 132.9 KiB/s | 97.5 KiB | 00m01s -------------------------------------------------------------------------------- [75/75] Total 100% | 15.6 MiB/s | 35.8 MiB | 00m02s Running transaction [ 1/77] Verify package files 100% | 412.0 B/s | 75.0 B | 00m00s [ 2/77] Prepare transaction 100% | 1.0 KiB/s | 75.0 B | 00m00s [ 3/77] Installing libarrow-doc-0:19.0. 100% | 113.9 MiB/s | 116.6 KiB | 00m00s [ 4/77] Installing protobuf-0:3.19.6-10 100% | 325.8 MiB/s | 3.3 MiB | 00m00s [ 5/77] Installing abseil-cpp-0:2024072 100% | 179.5 MiB/s | 2.3 MiB | 00m00s [ 6/77] Installing python3-protobuf-0:3 100% | 210.9 MiB/s | 1.9 MiB | 00m00s [ 7/77] Installing python3-cryptography 100% | 222.9 MiB/s | 5.1 MiB | 00m00s [ 8/77] Installing python3-toolz-0:1.0. 100% | 122.1 MiB/s | 625.1 KiB | 00m00s [ 9/77] Installing python3-googleapis-c 100% | 101.5 MiB/s | 831.4 KiB | 00m00s [10/77] Installing python3-pyasn1-0:0.6 100% | 173.1 MiB/s | 886.2 KiB | 00m00s [11/77] Installing grpc-data-0:1.48.4-4 100% | 0.0 B/s | 30.4 KiB | 00m00s [12/77] Installing c-ares-0:1.34.4-3.fc 100% | 132.4 MiB/s | 271.1 KiB | 00m00s [13/77] Installing python3-propcache-0: 100% | 65.3 MiB/s | 133.8 KiB | 00m00s [14/77] Installing python3-multidict-0: 100% | 79.2 MiB/s | 162.2 KiB | 00m00s [15/77] Installing python3-frozenlist-0 100% | 150.8 MiB/s | 154.4 KiB | 00m00s [16/77] Installing llhttp-0:9.2.1-5.fc4 100% | 75.8 MiB/s | 77.7 KiB | 00m00s [17/77] Installing python3-locket-0:1.0 100% | 22.5 MiB/s | 23.0 KiB | 00m00s [18/77] Installing python3-fsspec-0:202 100% | 250.3 MiB/s | 1.8 MiB | 00m00s [19/77] Installing python3-click-0:8.1. 100% | 264.8 MiB/s | 1.1 MiB | 00m00s [20/77] Installing python3-partd-0:1.4. 100% | 42.1 MiB/s | 172.6 KiB | 00m00s [21/77] Installing python3-dask-0:2024. 100% | 238.6 MiB/s | 17.4 MiB | 00m00s [22/77] Installing python3-aiosignal-0: 100% | 35.8 MiB/s | 36.7 KiB | 00m00s [23/77] Installing python3-yarl-0:1.18. 100% | 168.9 MiB/s | 518.9 KiB | 00m00s [24/77] Installing python3-pyasn1-modul 100% | 194.9 MiB/s | 1.8 MiB | 00m00s [25/77] Installing python3-rsa-0:4.9-8. 100% | 15.2 MiB/s | 249.4 KiB | 00m00s [26/77] Installing python3-spnego-0:0.1 100% | 58.8 MiB/s | 1.1 MiB | 00m00s [27/77] Installing liborc2-0:2.1.0-1.fc 100% | 298.5 MiB/s | 1.8 MiB | 00m00s [28/77] Installing protobuf-compiler-0: 100% | 123.3 MiB/s | 2.5 MiB | 00m00s [29/77] Installing boost-program-option 100% | 271.3 MiB/s | 277.8 KiB | 00m00s [30/77] Installing fuse-libs-0:2.9.9-23 100% | 299.6 MiB/s | 306.8 KiB | 00m00s [31/77] Installing nettle-0:3.10.1-1.fc 100% | 258.3 MiB/s | 793.6 KiB | 00m00s [32/77] Installing gnutls-0:3.8.9-4.fc4 100% | 327.4 MiB/s | 3.6 MiB | 00m00s [33/77] Installing glib2-0:2.83.2-6.fc4 100% | 262.3 MiB/s | 14.7 MiB | 00m00s [34/77] Installing google-crc32c-0:1.1. 100% | 28.7 MiB/s | 29.4 KiB | 00m00s [35/77] Installing python3-google-crc32 100% | 63.0 MiB/s | 64.5 KiB | 00m00s [36/77] Installing python3-google-resum 100% | 215.7 MiB/s | 662.7 KiB | 00m00s [37/77] Installing python3-oauthlib-0:3 100% | 144.6 MiB/s | 1.0 MiB | 00m00s [38/77] Installing python3-requests-oau 100% | 71.1 MiB/s | 145.5 KiB | 00m00s [39/77] Installing libicu-0:76.1-4.fc42 100% | 363.3 MiB/s | 36.3 MiB | 00m00s [40/77] Installing re2-1:20240702-28.fc 100% | 277.0 MiB/s | 567.4 KiB | 00m00s [41/77] Installing grpc-0:1.48.4-46.fc4 100% | 392.2 MiB/s | 10.6 MiB | 00m00s [42/77] Installing python3-grpcio-0:1.4 100% | 312.9 MiB/s | 7.8 MiB | 00m00s [43/77] Installing python3-grpcio-statu 100% | 17.4 MiB/s | 17.9 KiB | 00m00s [44/77] Installing grpc-cpp-0:1.48.4-46 100% | 376.8 MiB/s | 3.0 MiB | 00m00s [45/77] Installing python3-cachetools-0 100% | 67.8 MiB/s | 138.8 KiB | 00m00s [46/77] Installing python3-google-auth- 100% | 176.9 MiB/s | 1.4 MiB | 00m00s [47/77] Installing python3-google-api-c 100% | 160.8 MiB/s | 823.2 KiB | 00m00s [48/77] Installing python3-google-cloud 100% | 62.3 MiB/s | 191.3 KiB | 00m00s [49/77] Installing python3-google-cloud 100% | 298.8 MiB/s | 1.2 MiB | 00m00s [50/77] Installing python3-google-auth- 100% | 6.3 MiB/s | 103.9 KiB | 00m00s [51/77] Installing libssh2-0:1.11.1-3.f 100% | 158.4 MiB/s | 324.4 KiB | 00m00s [52/77] Installing libgit2-0:1.9.0-4.fc 100% | 331.8 MiB/s | 1.3 MiB | 00m00s [53/77] Installing thrift-0:0.20.0-3.fc 100% | 172.0 MiB/s | 4.8 MiB | 00m00s [54/77] Installing utf8proc-0:2.9.0-2.f 100% | 179.7 MiB/s | 368.0 KiB | 00m00s [55/77] Installing libarrow-0:19.0.0-1. 100% | 422.9 MiB/s | 25.0 MiB | 00m00s [56/77] Installing libarrow-acero-libs- 100% | 346.4 MiB/s | 1.4 MiB | 00m00s [57/77] Installing parquet-libs-0:19.0. 100% | 367.3 MiB/s | 3.3 MiB | 00m00s [58/77] Installing libarrow-dataset-lib 100% | 366.6 MiB/s | 1.5 MiB | 00m00s [59/77] Installing libarrow-glib-libs-0 100% | 374.9 MiB/s | 1.5 MiB | 00m00s [60/77] Installing libarrow-flight-libs 100% | 350.5 MiB/s | 1.4 MiB | 00m00s [61/77] Installing python3-aiohappyeyeb 100% | 47.9 MiB/s | 98.0 KiB | 00m00s [62/77] Installing python3-aiohttp-0:3. 100% | 287.4 MiB/s | 3.4 MiB | 00m00s [63/77] Installing python3-pynacl-0:1.5 100% | 147.6 MiB/s | 604.4 KiB | 00m00s [64/77] Installing python3-bcrypt-0:4.2 100% | 175.4 MiB/s | 538.9 KiB | 00m00s [65/77] Installing python3-zict-0:3.0.0 100% | 150.3 MiB/s | 461.8 KiB | 00m00s [66/77] Installing python3-tblib-0:3.0. 100% | 87.0 MiB/s | 89.0 KiB | 00m00s [67/77] Installing python3-sortedcontai 100% | 190.9 MiB/s | 391.0 KiB | 00m00s [68/77] Installing python3-msgpack-0:1. 100% | 81.4 MiB/s | 333.3 KiB | 00m00s [69/77] Installing python3-distributed- 100% | 222.4 MiB/s | 17.6 MiB | 00m00s [70/77] Installing python3-paramiko-0:3 100% | 239.6 MiB/s | 1.7 MiB | 00m00s [71/77] Installing python3-gcsfs-0:2024 100% | 82.5 MiB/s | 337.9 KiB | 00m00s [72/77] Installing python3-pyarrow-0:19 100% | 381.9 MiB/s | 26.7 MiB | 00m00s [73/77] Installing python3-pygit2-0:1.1 100% | 194.0 MiB/s | 1.2 MiB | 00m00s [74/77] Installing python3-fusepy-0:3.0 100% | 149.2 MiB/s | 152.8 KiB | 00m00s [75/77] Installing python3-smbprotocol- 100% | 210.6 MiB/s | 1.1 MiB | 00m00s [76/77] Installing python3-tqdm-0:4.67. 100% | 32.0 MiB/s | 590.0 KiB | 00m00s [77/77] Installing python3-libarchive-c 100% | 1.8 MiB/s | 133.3 KiB | 00m00s Warning: skipped OpenPGP checks for 2 packages from repository: copr_base Complete! Building target platforms: x86_64 Building for target x86_64 setting SOURCE_DATE_EPOCH=1737158400 Executing(%generate_buildrequires): /bin/sh -e /var/tmp/rpm-tmp.9TyW8X + umask 022 + cd /builddir/build/BUILD/python-fsspec-2024.12.0-build + cd filesystem_spec-2024.12.0 + export SETUPTOOLS_SCM_PRETEND_VERSION=2024.12.0 + SETUPTOOLS_SCM_PRETEND_VERSION=2024.12.0 + echo pyproject-rpm-macros + echo python3-devel + echo 'python3dist(packaging)' + echo 'python3dist(pip) >= 19' + '[' -f pyproject.toml ']' + echo '(python3dist(tomli) if python3-devel < 3.11)' + rm -rfv '*.dist-info/' + '[' -f /usr/bin/python3 ']' + mkdir -p /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/.pyproject-builddir + echo -n + CFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + CXXFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + FFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + FCFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + VALAFLAGS=-g + RUSTFLAGS='-Copt-level=3 -Cdebuginfo=2 -Ccodegen-units=1 -Cstrip=none -Cforce-frame-pointers=yes --cap-lints=warn' + LDFLAGS='-Wl,-z,relro -Wl,--as-needed -Wl,-z,pack-relative-relocs -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 ' + LT_SYS_LIBRARY_PATH=/usr/lib64: + CC=gcc + CXX=g++ + TMPDIR=/builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/.pyproject-builddir + RPM_TOXENV=py313 + HOSTNAME=rpmbuild + /usr/bin/python3 -Bs /usr/lib/rpm/redhat/pyproject_buildrequires.py --generate-extras --python3_pkgversion 3 --wheeldir /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/pyproject-wheeldir --output /builddir/build/BUILD/python-fsspec-2024.12.0-build/python-fsspec-2024.12.0-2.fc43.x86_64-pyproject-buildrequires -x arrow,dask,gcs,gs,entrypoints,fuse,git,github,hdfs,http,libarchive,sftp,smb,ssh,tqdm Handling hatchling from build-system.requires Requirement satisfied: hatchling (installed: hatchling 1.27.0) Handling hatch-vcs from build-system.requires Requirement satisfied: hatch-vcs (installed: hatch-vcs 0.4.0) Handling adlfs; extra == 'abfs' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: adlfs; extra == 'abfs' Handling adlfs; extra == 'adl' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: adlfs; extra == 'adl' Handling pyarrow>=1; extra == 'arrow' from hook generated metadata: Requires-Dist (fsspec) Requirement satisfied: pyarrow>=1; extra == 'arrow' (installed: pyarrow 19.0.0) Handling dask; extra == 'dask' from hook generated metadata: Requires-Dist (fsspec) Requirement satisfied: dask; extra == 'dask' (installed: dask 2024.12.1) Handling distributed; extra == 'dask' from hook generated metadata: Requires-Dist (fsspec) Requirement satisfied: distributed; extra == 'dask' (installed: distributed 2024.12.1) Handling pre-commit; extra == 'dev' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pre-commit; extra == 'dev' Handling ruff; extra == 'dev' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: ruff; extra == 'dev' Handling numpydoc; extra == 'doc' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: numpydoc; extra == 'doc' Handling sphinx; extra == 'doc' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: sphinx; extra == 'doc' Handling sphinx-design; extra == 'doc' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: sphinx-design; extra == 'doc' Handling sphinx-rtd-theme; extra == 'doc' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: sphinx-rtd-theme; extra == 'doc' Handling yarl; extra == 'doc' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: yarl; extra == 'doc' Handling dropbox; extra == 'dropbox' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: dropbox; extra == 'dropbox' Handling dropboxdrivefs; extra == 'dropbox' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: dropboxdrivefs; extra == 'dropbox' Handling requests; extra == 'dropbox' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: requests; extra == 'dropbox' Handling adlfs; extra == 'full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: adlfs; extra == 'full' Handling aiohttp!=4.0.0a0,!=4.0.0a1; extra == 'full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: aiohttp!=4.0.0a0,!=4.0.0a1; extra == 'full' Handling dask; extra == 'full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: dask; extra == 'full' Handling distributed; extra == 'full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: distributed; extra == 'full' Handling dropbox; extra == 'full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: dropbox; extra == 'full' Handling dropboxdrivefs; extra == 'full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: dropboxdrivefs; extra == 'full' Handling fusepy; extra == 'full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: fusepy; extra == 'full' Handling gcsfs; extra == 'full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: gcsfs; extra == 'full' Handling libarchive-c; extra == 'full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: libarchive-c; extra == 'full' Handling ocifs; extra == 'full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: ocifs; extra == 'full' Handling panel; extra == 'full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: panel; extra == 'full' Handling paramiko; extra == 'full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: paramiko; extra == 'full' Handling pyarrow>=1; extra == 'full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pyarrow>=1; extra == 'full' Handling pygit2; extra == 'full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pygit2; extra == 'full' Handling requests; extra == 'full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: requests; extra == 'full' Handling s3fs; extra == 'full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: s3fs; extra == 'full' Handling smbprotocol; extra == 'full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: smbprotocol; extra == 'full' Handling tqdm; extra == 'full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: tqdm; extra == 'full' Handling fusepy; extra == 'fuse' from hook generated metadata: Requires-Dist (fsspec) Requirement satisfied: fusepy; extra == 'fuse' (installed: fusepy 3.0.1) Handling gcsfs; extra == 'gcs' from hook generated metadata: Requires-Dist (fsspec) Requirement satisfied: gcsfs; extra == 'gcs' (installed: gcsfs 2024.9.0) Handling pygit2; extra == 'git' from hook generated metadata: Requires-Dist (fsspec) Requirement satisfied: pygit2; extra == 'git' (installed: pygit2 1.17.0) Handling requests; extra == 'github' from hook generated metadata: Requires-Dist (fsspec) Requirement satisfied: requests; extra == 'github' (installed: requests 2.32.3) Handling gcsfs; extra == 'gs' from hook generated metadata: Requires-Dist (fsspec) Requirement satisfied: gcsfs; extra == 'gs' (installed: gcsfs 2024.9.0) Handling panel; extra == 'gui' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: panel; extra == 'gui' Handling pyarrow>=1; extra == 'hdfs' from hook generated metadata: Requires-Dist (fsspec) Requirement satisfied: pyarrow>=1; extra == 'hdfs' (installed: pyarrow 19.0.0) Handling aiohttp!=4.0.0a0,!=4.0.0a1; extra == 'http' from hook generated metadata: Requires-Dist (fsspec) Requirement satisfied: aiohttp!=4.0.0a0,!=4.0.0a1; extra == 'http' (installed: aiohttp 3.11.12) Handling libarchive-c; extra == 'libarchive' from hook generated metadata: Requires-Dist (fsspec) Requirement satisfied: libarchive-c; extra == 'libarchive' (installed: libarchive-c 5.1) Handling ocifs; extra == 'oci' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: ocifs; extra == 'oci' Handling s3fs; extra == 's3' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: s3fs; extra == 's3' Handling paramiko; extra == 'sftp' from hook generated metadata: Requires-Dist (fsspec) Requirement satisfied: paramiko; extra == 'sftp' (installed: paramiko 3.5.1) Handling smbprotocol; extra == 'smb' from hook generated metadata: Requires-Dist (fsspec) Requirement satisfied: smbprotocol; extra == 'smb' (installed: smbprotocol 1.9.0) Handling paramiko; extra == 'ssh' from hook generated metadata: Requires-Dist (fsspec) Requirement satisfied: paramiko; extra == 'ssh' (installed: paramiko 3.5.1) Handling aiohttp!=4.0.0a0,!=4.0.0a1; extra == 'test' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: aiohttp!=4.0.0a0,!=4.0.0a1; extra == 'test' Handling numpy; extra == 'test' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: numpy; extra == 'test' Handling pytest; extra == 'test' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pytest; extra == 'test' Handling pytest-asyncio!=0.22.0; extra == 'test' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pytest-asyncio!=0.22.0; extra == 'test' Handling pytest-benchmark; extra == 'test' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pytest-benchmark; extra == 'test' Handling pytest-cov; extra == 'test' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pytest-cov; extra == 'test' Handling pytest-mock; extra == 'test' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pytest-mock; extra == 'test' Handling pytest-recording; extra == 'test' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pytest-recording; extra == 'test' Handling pytest-rerunfailures; extra == 'test' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pytest-rerunfailures; extra == 'test' Handling requests; extra == 'test' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: requests; extra == 'test' Handling aiobotocore<3.0.0,>=2.5.4; extra == 'test-downstream' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: aiobotocore<3.0.0,>=2.5.4; extra == 'test-downstream' Handling dask-expr; extra == 'test-downstream' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: dask-expr; extra == 'test-downstream' Handling dask[dataframe,test]; extra == 'test-downstream' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: dask[dataframe,test]; extra == 'test-downstream' Handling moto[server]<5,>4; extra == 'test-downstream' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: moto[server]<5,>4; extra == 'test-downstream' Handling pytest-timeout; extra == 'test-downstream' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pytest-timeout; extra == 'test-downstream' Handling xarray; extra == 'test-downstream' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: xarray; extra == 'test-downstream' Handling adlfs; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: adlfs; extra == 'test-full' Handling aiohttp!=4.0.0a0,!=4.0.0a1; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: aiohttp!=4.0.0a0,!=4.0.0a1; extra == 'test-full' Handling cloudpickle; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: cloudpickle; extra == 'test-full' Handling dask; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: dask; extra == 'test-full' Handling distributed; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: distributed; extra == 'test-full' Handling dropbox; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: dropbox; extra == 'test-full' Handling dropboxdrivefs; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: dropboxdrivefs; extra == 'test-full' Handling fastparquet; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: fastparquet; extra == 'test-full' Handling fusepy; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: fusepy; extra == 'test-full' Handling gcsfs; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: gcsfs; extra == 'test-full' Handling jinja2; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: jinja2; extra == 'test-full' Handling kerchunk; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: kerchunk; extra == 'test-full' Handling libarchive-c; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: libarchive-c; extra == 'test-full' Handling lz4; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: lz4; extra == 'test-full' Handling notebook; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: notebook; extra == 'test-full' Handling numpy; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: numpy; extra == 'test-full' Handling ocifs; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: ocifs; extra == 'test-full' Handling pandas; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pandas; extra == 'test-full' Handling panel; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: panel; extra == 'test-full' Handling paramiko; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: paramiko; extra == 'test-full' Handling pyarrow; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pyarrow; extra == 'test-full' Handling pyarrow>=1; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pyarrow>=1; extra == 'test-full' Handling pyftpdlib; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pyftpdlib; extra == 'test-full' Handling pygit2; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pygit2; extra == 'test-full' Handling pytest; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pytest; extra == 'test-full' Handling pytest-asyncio!=0.22.0; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pytest-asyncio!=0.22.0; extra == 'test-full' Handling pytest-benchmark; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pytest-benchmark; extra == 'test-full' Handling pytest-cov; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pytest-cov; extra == 'test-full' Handling pytest-mock; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pytest-mock; extra == 'test-full' Handling pytest-recording; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pytest-recording; extra == 'test-full' Handling pytest-rerunfailures; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pytest-rerunfailures; extra == 'test-full' Handling python-snappy; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: python-snappy; extra == 'test-full' Handling requests; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: requests; extra == 'test-full' Handling smbprotocol; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: smbprotocol; extra == 'test-full' Handling tqdm; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: tqdm; extra == 'test-full' Handling urllib3; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: urllib3; extra == 'test-full' Handling zarr; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: zarr; extra == 'test-full' Handling zstandard; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: zstandard; extra == 'test-full' Handling tqdm; extra == 'tqdm' from hook generated metadata: Requires-Dist (fsspec) Requirement satisfied: tqdm; extra == 'tqdm' (installed: tqdm 4.67.1) + cat /builddir/build/BUILD/python-fsspec-2024.12.0-build/python-fsspec-2024.12.0-2.fc43.x86_64-pyproject-buildrequires + rm -rfv fsspec-2024.12.0.dist-info/ removed 'fsspec-2024.12.0.dist-info/METADATA' removed directory 'fsspec-2024.12.0.dist-info/' + RPM_EC=0 ++ jobs -p + exit 0 Wrote: /builddir/build/SRPMS/python-fsspec-2024.12.0-2.fc43.buildreqs.nosrc.rpm INFO: Going to install missing dynamic buildrequires Updating and loading repositories: fedora 100% | 461.0 KiB/s | 25.8 KiB | 00m00s Copr repository 100% | 117.3 KiB/s | 1.5 KiB | 00m00s Copr repository 100% | 2.8 MiB/s | 74.1 KiB | 00m00s Repositories loaded. Package "fuse-2.9.9-23.fc42.x86_64" is already installed. Package "git-core-2.48.1-3.fc43.x86_64" is already installed. Package "pyproject-rpm-macros-1.17.0-1.fc43.noarch" is already installed. Package "python3-devel-3.13.2-2.fc43.x86_64" is already installed. Package "python3-cloudpickle-3.1.1-2.fc42.noarch" is already installed. Package "python3-dask-2024.12.1-2.fc42.noarch" is already installed. Package "python3-distributed-2024.12.1-2.fc42.noarch" is already installed. Package "python3-fusepy-3.0.1-1.fc42.noarch" is already installed. Package "python3-gcsfs-2024.9.0-2.fc43.noarch" is already installed. Package "python3-hatch-vcs-0.4.0-7.fc42.noarch" is already installed. Package "python3-hatchling-1.27.0-2.fc42.noarch" is already installed. Package "python3-jinja2-3.1.5-2.fc42.noarch" is already installed. Package "python3-libarchive-c-5.1-6.fc42.noarch" is already installed. Package "python3-lz4-4.3.3-8.fc42.x86_64" is already installed. Package "python3-notebook-7.3.2-2.fc42.noarch" is already installed. Package "python3-numpy-1:2.2.3-1.fc43.x86_64" is already installed. Package "python3-packaging-24.2-3.fc42.noarch" is already installed. Package "python3-paramiko-3.5.1-1.fc42.noarch" is already installed. Package "python3-pip-24.3.1-2.fc42.noarch" is already installed. Package "python3-pyarrow-19.0.0-1.fc43.x86_64" is already installed. Package "python3-pygit2-1.17.0-2.fc42.x86_64" is already installed. Package "python3-pytest-8.3.4-2.fc42.noarch" is already installed. Package "python3-pytest-asyncio-0.24.0-2.fc42.noarch" is already installed. Package "python3-pytest-mock-3.14.0-3.fc42.noarch" is already installed. Package "python3-pytest-rerunfailures-15.0-2.fc42.noarch" is already installed. Package "python3-snappy-0.7.2-4.fc42.noarch" is already installed. Package "python3-requests-2.32.3-4.fc42.noarch" is already installed. Package "python3-smbprotocol-1.9.0-9.fc42.noarch" is already installed. Package "python3-tqdm-4.67.1-3.fc42.noarch" is already installed. Package "python3-zarr-2.18.4-2.fc42.noarch" is already installed. Package "python3-zstandard-0.23.0-2.fc42.x86_64" is already installed. Nothing to do. Building target platforms: x86_64 Building for target x86_64 setting SOURCE_DATE_EPOCH=1737158400 Executing(%generate_buildrequires): /bin/sh -e /var/tmp/rpm-tmp.yjV6jH + umask 022 + cd /builddir/build/BUILD/python-fsspec-2024.12.0-build + cd filesystem_spec-2024.12.0 + export SETUPTOOLS_SCM_PRETEND_VERSION=2024.12.0 + SETUPTOOLS_SCM_PRETEND_VERSION=2024.12.0 + echo pyproject-rpm-macros + echo python3-devel + echo 'python3dist(packaging)' + echo 'python3dist(pip) >= 19' + '[' -f pyproject.toml ']' + echo '(python3dist(tomli) if python3-devel < 3.11)' + rm -rfv '*.dist-info/' + '[' -f /usr/bin/python3 ']' + mkdir -p /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/.pyproject-builddir + echo -n + CFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + CXXFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + FFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + FCFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + VALAFLAGS=-g + RUSTFLAGS='-Copt-level=3 -Cdebuginfo=2 -Ccodegen-units=1 -Cstrip=none -Cforce-frame-pointers=yes --cap-lints=warn' + LDFLAGS='-Wl,-z,relro -Wl,--as-needed -Wl,-z,pack-relative-relocs -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 ' + LT_SYS_LIBRARY_PATH=/usr/lib64: + CC=gcc + CXX=g++ + TMPDIR=/builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/.pyproject-builddir + RPM_TOXENV=py313 + HOSTNAME=rpmbuild + /usr/bin/python3 -Bs /usr/lib/rpm/redhat/pyproject_buildrequires.py --generate-extras --python3_pkgversion 3 --wheeldir /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/pyproject-wheeldir --output /builddir/build/BUILD/python-fsspec-2024.12.0-build/python-fsspec-2024.12.0-2.fc43.x86_64-pyproject-buildrequires -x arrow,dask,gcs,gs,entrypoints,fuse,git,github,hdfs,http,libarchive,sftp,smb,ssh,tqdm Handling hatchling from build-system.requires Requirement satisfied: hatchling (installed: hatchling 1.27.0) Handling hatch-vcs from build-system.requires Requirement satisfied: hatch-vcs (installed: hatch-vcs 0.4.0) Handling adlfs; extra == 'abfs' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: adlfs; extra == 'abfs' Handling adlfs; extra == 'adl' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: adlfs; extra == 'adl' Handling pyarrow>=1; extra == 'arrow' from hook generated metadata: Requires-Dist (fsspec) Requirement satisfied: pyarrow>=1; extra == 'arrow' (installed: pyarrow 19.0.0) Handling dask; extra == 'dask' from hook generated metadata: Requires-Dist (fsspec) Requirement satisfied: dask; extra == 'dask' (installed: dask 2024.12.1) Handling distributed; extra == 'dask' from hook generated metadata: Requires-Dist (fsspec) Requirement satisfied: distributed; extra == 'dask' (installed: distributed 2024.12.1) Handling pre-commit; extra == 'dev' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pre-commit; extra == 'dev' Handling ruff; extra == 'dev' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: ruff; extra == 'dev' Handling numpydoc; extra == 'doc' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: numpydoc; extra == 'doc' Handling sphinx; extra == 'doc' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: sphinx; extra == 'doc' Handling sphinx-design; extra == 'doc' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: sphinx-design; extra == 'doc' Handling sphinx-rtd-theme; extra == 'doc' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: sphinx-rtd-theme; extra == 'doc' Handling yarl; extra == 'doc' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: yarl; extra == 'doc' Handling dropbox; extra == 'dropbox' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: dropbox; extra == 'dropbox' Handling dropboxdrivefs; extra == 'dropbox' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: dropboxdrivefs; extra == 'dropbox' Handling requests; extra == 'dropbox' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: requests; extra == 'dropbox' Handling adlfs; extra == 'full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: adlfs; extra == 'full' Handling aiohttp!=4.0.0a0,!=4.0.0a1; extra == 'full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: aiohttp!=4.0.0a0,!=4.0.0a1; extra == 'full' Handling dask; extra == 'full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: dask; extra == 'full' Handling distributed; extra == 'full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: distributed; extra == 'full' Handling dropbox; extra == 'full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: dropbox; extra == 'full' Handling dropboxdrivefs; extra == 'full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: dropboxdrivefs; extra == 'full' Handling fusepy; extra == 'full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: fusepy; extra == 'full' Handling gcsfs; extra == 'full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: gcsfs; extra == 'full' Handling libarchive-c; extra == 'full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: libarchive-c; extra == 'full' Handling ocifs; extra == 'full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: ocifs; extra == 'full' Handling panel; extra == 'full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: panel; extra == 'full' Handling paramiko; extra == 'full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: paramiko; extra == 'full' Handling pyarrow>=1; extra == 'full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pyarrow>=1; extra == 'full' Handling pygit2; extra == 'full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pygit2; extra == 'full' Handling requests; extra == 'full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: requests; extra == 'full' Handling s3fs; extra == 'full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: s3fs; extra == 'full' Handling smbprotocol; extra == 'full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: smbprotocol; extra == 'full' Handling tqdm; extra == 'full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: tqdm; extra == 'full' Handling fusepy; extra == 'fuse' from hook generated metadata: Requires-Dist (fsspec) Requirement satisfied: fusepy; extra == 'fuse' (installed: fusepy 3.0.1) Handling gcsfs; extra == 'gcs' from hook generated metadata: Requires-Dist (fsspec) Requirement satisfied: gcsfs; extra == 'gcs' (installed: gcsfs 2024.9.0) Handling pygit2; extra == 'git' from hook generated metadata: Requires-Dist (fsspec) Requirement satisfied: pygit2; extra == 'git' (installed: pygit2 1.17.0) Handling requests; extra == 'github' from hook generated metadata: Requires-Dist (fsspec) Requirement satisfied: requests; extra == 'github' (installed: requests 2.32.3) Handling gcsfs; extra == 'gs' from hook generated metadata: Requires-Dist (fsspec) Requirement satisfied: gcsfs; extra == 'gs' (installed: gcsfs 2024.9.0) Handling panel; extra == 'gui' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: panel; extra == 'gui' Handling pyarrow>=1; extra == 'hdfs' from hook generated metadata: Requires-Dist (fsspec) Requirement satisfied: pyarrow>=1; extra == 'hdfs' (installed: pyarrow 19.0.0) Handling aiohttp!=4.0.0a0,!=4.0.0a1; extra == 'http' from hook generated metadata: Requires-Dist (fsspec) Requirement satisfied: aiohttp!=4.0.0a0,!=4.0.0a1; extra == 'http' (installed: aiohttp 3.11.12) Handling libarchive-c; extra == 'libarchive' from hook generated metadata: Requires-Dist (fsspec) Requirement satisfied: libarchive-c; extra == 'libarchive' (installed: libarchive-c 5.1) Handling ocifs; extra == 'oci' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: ocifs; extra == 'oci' Handling s3fs; extra == 's3' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: s3fs; extra == 's3' Handling paramiko; extra == 'sftp' from hook generated metadata: Requires-Dist (fsspec) Requirement satisfied: paramiko; extra == 'sftp' (installed: paramiko 3.5.1) Handling smbprotocol; extra == 'smb' from hook generated metadata: Requires-Dist (fsspec) Requirement satisfied: smbprotocol; extra == 'smb' (installed: smbprotocol 1.9.0) Handling paramiko; extra == 'ssh' from hook generated metadata: Requires-Dist (fsspec) Requirement satisfied: paramiko; extra == 'ssh' (installed: paramiko 3.5.1) Handling aiohttp!=4.0.0a0,!=4.0.0a1; extra == 'test' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: aiohttp!=4.0.0a0,!=4.0.0a1; extra == 'test' Handling numpy; extra == 'test' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: numpy; extra == 'test' Handling pytest; extra == 'test' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pytest; extra == 'test' Handling pytest-asyncio!=0.22.0; extra == 'test' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pytest-asyncio!=0.22.0; extra == 'test' Handling pytest-benchmark; extra == 'test' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pytest-benchmark; extra == 'test' Handling pytest-cov; extra == 'test' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pytest-cov; extra == 'test' Handling pytest-mock; extra == 'test' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pytest-mock; extra == 'test' Handling pytest-recording; extra == 'test' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pytest-recording; extra == 'test' Handling pytest-rerunfailures; extra == 'test' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pytest-rerunfailures; extra == 'test' Handling requests; extra == 'test' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: requests; extra == 'test' Handling aiobotocore<3.0.0,>=2.5.4; extra == 'test-downstream' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: aiobotocore<3.0.0,>=2.5.4; extra == 'test-downstream' Handling dask-expr; extra == 'test-downstream' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: dask-expr; extra == 'test-downstream' Handling dask[dataframe,test]; extra == 'test-downstream' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: dask[dataframe,test]; extra == 'test-downstream' Handling moto[server]<5,>4; extra == 'test-downstream' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: moto[server]<5,>4; extra == 'test-downstream' Handling pytest-timeout; extra == 'test-downstream' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pytest-timeout; extra == 'test-downstream' Handling xarray; extra == 'test-downstream' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: xarray; extra == 'test-downstream' Handling adlfs; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: adlfs; extra == 'test-full' Handling aiohttp!=4.0.0a0,!=4.0.0a1; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: aiohttp!=4.0.0a0,!=4.0.0a1; extra == 'test-full' Handling cloudpickle; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: cloudpickle; extra == 'test-full' Handling dask; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: dask; extra == 'test-full' Handling distributed; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: distributed; extra == 'test-full' Handling dropbox; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: dropbox; extra == 'test-full' Handling dropboxdrivefs; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: dropboxdrivefs; extra == 'test-full' Handling fastparquet; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: fastparquet; extra == 'test-full' Handling fusepy; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: fusepy; extra == 'test-full' Handling gcsfs; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: gcsfs; extra == 'test-full' Handling jinja2; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: jinja2; extra == 'test-full' Handling kerchunk; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: kerchunk; extra == 'test-full' Handling libarchive-c; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: libarchive-c; extra == 'test-full' Handling lz4; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: lz4; extra == 'test-full' Handling notebook; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: notebook; extra == 'test-full' Handling numpy; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: numpy; extra == 'test-full' Handling ocifs; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: ocifs; extra == 'test-full' Handling pandas; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pandas; extra == 'test-full' Handling panel; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: panel; extra == 'test-full' Handling paramiko; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: paramiko; extra == 'test-full' Handling pyarrow; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pyarrow; extra == 'test-full' Handling pyarrow>=1; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pyarrow>=1; extra == 'test-full' Handling pyftpdlib; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pyftpdlib; extra == 'test-full' Handling pygit2; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pygit2; extra == 'test-full' Handling pytest; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pytest; extra == 'test-full' Handling pytest-asyncio!=0.22.0; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pytest-asyncio!=0.22.0; extra == 'test-full' Handling pytest-benchmark; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pytest-benchmark; extra == 'test-full' Handling pytest-cov; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pytest-cov; extra == 'test-full' Handling pytest-mock; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pytest-mock; extra == 'test-full' Handling pytest-recording; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pytest-recording; extra == 'test-full' Handling pytest-rerunfailures; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: pytest-rerunfailures; extra == 'test-full' Handling python-snappy; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: python-snappy; extra == 'test-full' Handling requests; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: requests; extra == 'test-full' Handling smbprotocol; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: smbprotocol; extra == 'test-full' Handling tqdm; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: tqdm; extra == 'test-full' Handling urllib3; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: urllib3; extra == 'test-full' Handling zarr; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: zarr; extra == 'test-full' Handling zstandard; extra == 'test-full' from hook generated metadata: Requires-Dist (fsspec) Ignoring alien requirement: zstandard; extra == 'test-full' Handling tqdm; extra == 'tqdm' from hook generated metadata: Requires-Dist (fsspec) Requirement satisfied: tqdm; extra == 'tqdm' (installed: tqdm 4.67.1) + cat /builddir/build/BUILD/python-fsspec-2024.12.0-build/python-fsspec-2024.12.0-2.fc43.x86_64-pyproject-buildrequires + rm -rfv fsspec-2024.12.0.dist-info/ removed 'fsspec-2024.12.0.dist-info/METADATA' removed directory 'fsspec-2024.12.0.dist-info/' + RPM_EC=0 ++ jobs -p + exit 0 Executing(%build): /bin/sh -e /var/tmp/rpm-tmp.nBzp8k + umask 022 + cd /builddir/build/BUILD/python-fsspec-2024.12.0-build + CFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + export CFLAGS + CXXFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + export CXXFLAGS + FFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + export FFLAGS + FCFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + export FCFLAGS + VALAFLAGS=-g + export VALAFLAGS + RUSTFLAGS='-Copt-level=3 -Cdebuginfo=2 -Ccodegen-units=1 -Cstrip=none -Cforce-frame-pointers=yes -Clink-arg=-specs=/usr/lib/rpm/redhat/redhat-package-notes --cap-lints=warn' + export RUSTFLAGS + LDFLAGS='-Wl,-z,relro -Wl,--as-needed -Wl,-z,pack-relative-relocs -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 -specs=/usr/lib/rpm/redhat/redhat-package-notes ' + export LDFLAGS + LT_SYS_LIBRARY_PATH=/usr/lib64: + export LT_SYS_LIBRARY_PATH + CC=gcc + export CC + CXX=g++ + export CXX + cd filesystem_spec-2024.12.0 + export SETUPTOOLS_SCM_PRETEND_VERSION=2024.12.0 + SETUPTOOLS_SCM_PRETEND_VERSION=2024.12.0 + mkdir -p /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/.pyproject-builddir + CFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + CXXFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + FFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + FCFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + VALAFLAGS=-g + RUSTFLAGS='-Copt-level=3 -Cdebuginfo=2 -Ccodegen-units=1 -Cstrip=none -Cforce-frame-pointers=yes -Clink-arg=-specs=/usr/lib/rpm/redhat/redhat-package-notes --cap-lints=warn' + LDFLAGS='-Wl,-z,relro -Wl,--as-needed -Wl,-z,pack-relative-relocs -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 -specs=/usr/lib/rpm/redhat/redhat-package-notes ' + LT_SYS_LIBRARY_PATH=/usr/lib64: + CC=gcc + CXX=g++ + TMPDIR=/builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/.pyproject-builddir + /usr/bin/python3 -Bs /usr/lib/rpm/redhat/pyproject_wheel.py /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/pyproject-wheeldir Processing /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0 Preparing metadata (pyproject.toml): started Running command Preparing metadata (pyproject.toml) Preparing metadata (pyproject.toml): finished with status 'done' Building wheels for collected packages: fsspec Building wheel for fsspec (pyproject.toml): started Running command Building wheel for fsspec (pyproject.toml) Building wheel for fsspec (pyproject.toml): finished with status 'done' Created wheel for fsspec: filename=fsspec-2024.12.0-py3-none-any.whl size=183097 sha256=dba262d3426dc6155e770c9e9e5228f8d65e0f220da330d74f759f7d645909c6 Stored in directory: /builddir/.cache/pip/wheels/af/8f/a2/20dd954420b8a02681bc7b1f9cf1889ea01602b31a02be40a0 Successfully built fsspec + RPM_EC=0 ++ jobs -p + exit 0 Executing(%install): /bin/sh -e /var/tmp/rpm-tmp.3SxSk2 + umask 022 + cd /builddir/build/BUILD/python-fsspec-2024.12.0-build + '[' /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT '!=' / ']' + rm -rf /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT ++ dirname /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT + mkdir -p /builddir/build/BUILD/python-fsspec-2024.12.0-build + mkdir /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT + CFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + export CFLAGS + CXXFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + export CXXFLAGS + FFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + export FFLAGS + FCFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + export FCFLAGS + VALAFLAGS=-g + export VALAFLAGS + RUSTFLAGS='-Copt-level=3 -Cdebuginfo=2 -Ccodegen-units=1 -Cstrip=none -Cforce-frame-pointers=yes -Clink-arg=-specs=/usr/lib/rpm/redhat/redhat-package-notes --cap-lints=warn' + export RUSTFLAGS + LDFLAGS='-Wl,-z,relro -Wl,--as-needed -Wl,-z,pack-relative-relocs -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 -specs=/usr/lib/rpm/redhat/redhat-package-notes ' + export LDFLAGS + LT_SYS_LIBRARY_PATH=/usr/lib64: + export LT_SYS_LIBRARY_PATH + CC=gcc + export CC + CXX=g++ + export CXX + cd filesystem_spec-2024.12.0 ++ ls /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/pyproject-wheeldir/fsspec-2024.12.0-py3-none-any.whl ++ xargs basename --multiple ++ sed -E 's/([^-]+)-([^-]+)-.+\.whl/\1==\2/' + specifier=fsspec==2024.12.0 + '[' -z fsspec==2024.12.0 ']' + TMPDIR=/builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/.pyproject-builddir + /usr/bin/python3 -m pip install --root /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT --prefix /usr --no-deps --disable-pip-version-check --progress-bar off --verbose --ignore-installed --no-warn-script-location --no-index --no-cache-dir --find-links /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/pyproject-wheeldir fsspec==2024.12.0 Using pip 24.3.1 from /usr/lib/python3.13/site-packages/pip (python 3.13) Looking in links: /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/pyproject-wheeldir Processing ./pyproject-wheeldir/fsspec-2024.12.0-py3-none-any.whl Installing collected packages: fsspec Successfully installed fsspec-2024.12.0 + '[' -d /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/bin ']' + rm -f /builddir/build/BUILD/python-fsspec-2024.12.0-build/python-fsspec-2024.12.0-2.fc43.x86_64-pyproject-ghost-distinfo + site_dirs=() + '[' -d /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages ']' + site_dirs+=("/usr/lib/python3.13/site-packages") + '[' /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib64/python3.13/site-packages '!=' /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages ']' + '[' -d /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib64/python3.13/site-packages ']' + for site_dir in ${site_dirs[@]} + for distinfo in /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT$site_dir/*.dist-info + echo '%ghost /usr/lib/python3.13/site-packages/fsspec-2024.12.0.dist-info' + sed -i s/pip/rpm/ /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec-2024.12.0.dist-info/INSTALLER + PYTHONPATH=/usr/lib/rpm/redhat + /usr/bin/python3 -B /usr/lib/rpm/redhat/pyproject_preprocess_record.py --buildroot /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT --record /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec-2024.12.0.dist-info/RECORD --output /builddir/build/BUILD/python-fsspec-2024.12.0-build/python-fsspec-2024.12.0-2.fc43.x86_64-pyproject-record + rm -fv /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec-2024.12.0.dist-info/RECORD removed '/builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec-2024.12.0.dist-info/RECORD' + rm -fv /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec-2024.12.0.dist-info/REQUESTED removed '/builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec-2024.12.0.dist-info/REQUESTED' ++ wc -l /builddir/build/BUILD/python-fsspec-2024.12.0-build/python-fsspec-2024.12.0-2.fc43.x86_64-pyproject-ghost-distinfo ++ cut -f1 '-d ' + lines=1 + '[' 1 -ne 1 ']' + RPM_FILES_ESCAPE=4.19 + /usr/bin/python3 /usr/lib/rpm/redhat/pyproject_save_files.py --output-files /builddir/build/BUILD/python-fsspec-2024.12.0-build/python-fsspec-2024.12.0-2.fc43.x86_64-pyproject-files --output-modules /builddir/build/BUILD/python-fsspec-2024.12.0-build/python-fsspec-2024.12.0-2.fc43.x86_64-pyproject-modules --buildroot /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT --sitelib /usr/lib/python3.13/site-packages --sitearch /usr/lib64/python3.13/site-packages --python-version 3.13 --pyproject-record /builddir/build/BUILD/python-fsspec-2024.12.0-build/python-fsspec-2024.12.0-2.fc43.x86_64-pyproject-record --prefix /usr -l fsspec + /usr/lib/rpm/check-buildroot + /usr/lib/rpm/redhat/brp-ldconfig + /usr/lib/rpm/brp-compress + /usr/lib/rpm/brp-strip /usr/bin/strip + /usr/lib/rpm/brp-strip-comment-note /usr/bin/strip /usr/bin/objdump + /usr/lib/rpm/redhat/brp-strip-lto /usr/bin/strip + /usr/lib/rpm/brp-strip-static-archive /usr/bin/strip + /usr/lib/rpm/check-rpaths + /usr/lib/rpm/redhat/brp-mangle-shebangs + /usr/lib/rpm/brp-remove-la-files + env /usr/lib/rpm/redhat/brp-python-bytecompile '' 1 0 -j4 Bytecompiling .py files below /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13 using python3.13 + /usr/lib/rpm/redhat/brp-python-hardlink + /usr/bin/add-determinism --brp -j4 /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/implementations/__pycache__/__init__.cpython-313.pyc: rewriting with normalized contents /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/implementations/__pycache__/asyn_wrapper.cpython-313.pyc: rewriting with normalized contents /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/implementations/__pycache__/cache_mapper.cpython-313.pyc: rewriting with normalized contents /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/implementations/__pycache__/cache_metadata.cpython-313.pyc: rewriting with normalized contents /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/implementations/__pycache__/dask.cpython-313.pyc: rewriting with normalized contents /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/implementations/__pycache__/arrow.cpython-313.pyc: rewriting with normalized contents /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/implementations/__pycache__/data.cpython-313.pyc: rewriting with normalized contents /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/implementations/__pycache__/dbfs.cpython-313.pyc: replacing with normalized version /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/implementations/__pycache__/ftp.cpython-313.pyc: rewriting with normalized contents /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/implementations/__pycache__/git.cpython-313.pyc: rewriting with normalized contents /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/implementations/__pycache__/dirfs.cpython-313.pyc: replacing with normalized version /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/implementations/__pycache__/github.cpython-313.pyc: rewriting with normalized contents /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/implementations/__pycache__/jupyter.cpython-313.pyc: rewriting with normalized contents /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/implementations/__pycache__/libarchive.cpython-313.pyc: rewriting with normalized contents /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/implementations/__pycache__/cached.cpython-313.pyc: rewriting with normalized contents /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/implementations/__pycache__/memory.cpython-313.pyc: rewriting with normalized contents /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/implementations/__pycache__/http.cpython-313.pyc: rewriting with normalized contents /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/implementations/__pycache__/sftp.cpython-313.pyc: rewriting with normalized contents /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/implementations/__pycache__/local.cpython-313.pyc: rewriting with normalized contents /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/implementations/__pycache__/tar.cpython-313.pyc: rewriting with normalized contents /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/implementations/__pycache__/zip.cpython-313.pyc: rewriting with normalized contents /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/implementations/__pycache__/smb.cpython-313.pyc: rewriting with normalized contents /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/implementations/__pycache__/webhdfs.cpython-313.pyc: rewriting with normalized contents /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/implementations/__pycache__/dbfs.cpython-313.opt-1.pyc: replacing with normalized version /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/implementations/__pycache__/dirfs.cpython-313.opt-1.pyc: replacing with normalized version /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/tests/abstract/__pycache__/common.cpython-313.pyc: rewriting with normalized contents /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/implementations/__pycache__/reference.cpython-313.pyc: replacing with normalized version /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/tests/abstract/__pycache__/__init__.cpython-313.pyc: rewriting with normalized contents /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/tests/abstract/__pycache__/mv.cpython-313.pyc: replacing with normalized version /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/tests/abstract/__pycache__/open.cpython-313.pyc: replacing with normalized version /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/tests/abstract/__pycache__/pipe.cpython-313.pyc: replacing with normalized version /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/tests/abstract/__pycache__/get.cpython-313.pyc: replacing with normalized version /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/tests/abstract/__pycache__/mv.cpython-313.opt-1.pyc: replacing with normalized version /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/tests/abstract/__pycache__/open.cpython-313.opt-1.pyc: replacing with normalized version /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/tests/abstract/__pycache__/pipe.cpython-313.opt-1.pyc: replacing with normalized version /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/tests/abstract/__pycache__/copy.cpython-313.pyc: replacing with normalized version /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/tests/abstract/__pycache__/put.cpython-313.pyc: replacing with normalized version /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/tests/abstract/__pycache__/copy.cpython-313.opt-1.pyc: replacing with normalized version /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/__pycache__/__init__.cpython-313.pyc: rewriting with normalized contents /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/__pycache__/_version.cpython-313.pyc: rewriting with normalized contents /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/tests/abstract/__pycache__/get.cpython-313.opt-1.pyc: replacing with normalized version /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/tests/abstract/__pycache__/put.cpython-313.opt-1.pyc: replacing with normalized version /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/__pycache__/archive.cpython-313.pyc: rewriting with normalized contents /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/__pycache__/callbacks.cpython-313.pyc: rewriting with normalized contents /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/__pycache__/compression.cpython-313.pyc: rewriting with normalized contents /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/__pycache__/config.cpython-313.pyc: rewriting with normalized contents /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/__pycache__/conftest.cpython-313.pyc: rewriting with normalized contents /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/implementations/__pycache__/reference.cpython-313.opt-1.pyc: replacing with normalized version /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/__pycache__/asyn.cpython-313.pyc: replacing with normalized version /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/__pycache__/exceptions.cpython-313.pyc: rewriting with normalized contents /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/__pycache__/dircache.cpython-313.pyc: rewriting with normalized contents /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/__pycache__/caching.cpython-313.pyc: replacing with normalized version /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/__pycache__/core.cpython-313.pyc: replacing with normalized version /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/__pycache__/json.cpython-313.pyc: rewriting with normalized contents /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/__pycache__/generic.cpython-313.pyc: rewriting with normalized contents /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/__pycache__/fuse.cpython-313.pyc: rewriting with normalized contents /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/__pycache__/mapping.cpython-313.pyc: rewriting with normalized contents /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/__pycache__/registry.cpython-313.pyc: replacing with normalized version /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/__pycache__/parquet.cpython-313.pyc: rewriting with normalized contents /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/__pycache__/gui.cpython-313.pyc: rewriting with normalized contents /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/__pycache__/transaction.cpython-313.pyc: rewriting with normalized contents /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/__pycache__/core.cpython-313.opt-1.pyc: replacing with normalized version /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/__pycache__/utils.cpython-313.pyc: replacing with normalized version /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/__pycache__/registry.cpython-313.opt-1.pyc: replacing with normalized version /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/__pycache__/caching.cpython-313.opt-1.pyc: replacing with normalized version /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/__pycache__/utils.cpython-313.opt-1.pyc: replacing with normalized version /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/__pycache__/asyn.cpython-313.opt-1.pyc: replacing with normalized version /builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages/fsspec/__pycache__/spec.cpython-313.pyc: rewriting with normalized contents Scanned 14 directories and 166 files, processed 68 inodes, 68 modified (28 replaced + 40 rewritten), 0 unsupported format, 0 errors Executing(%check): /bin/sh -e /var/tmp/rpm-tmp.TAcJoT + umask 022 + cd /builddir/build/BUILD/python-fsspec-2024.12.0-build + CFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + export CFLAGS + CXXFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + export CXXFLAGS + FFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + export FFLAGS + FCFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer -I/usr/lib64/gfortran/modules ' + export FCFLAGS + VALAFLAGS=-g + export VALAFLAGS + RUSTFLAGS='-Copt-level=3 -Cdebuginfo=2 -Ccodegen-units=1 -Cstrip=none -Cforce-frame-pointers=yes -Clink-arg=-specs=/usr/lib/rpm/redhat/redhat-package-notes --cap-lints=warn' + export RUSTFLAGS + LDFLAGS='-Wl,-z,relro -Wl,--as-needed -Wl,-z,pack-relative-relocs -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 -specs=/usr/lib/rpm/redhat/redhat-package-notes ' + export LDFLAGS + LT_SYS_LIBRARY_PATH=/usr/lib64: + export LT_SYS_LIBRARY_PATH + CC=gcc + export CC + CXX=g++ + export CXX + cd filesystem_spec-2024.12.0 + CFLAGS='-O2 -flto=auto -ffat-lto-objects -fexceptions -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-U_FORTIFY_SOURCE,-D_FORTIFY_SOURCE=3 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -march=x86-64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -mtls-dialect=gnu2 -fno-omit-frame-pointer -mno-omit-leaf-frame-pointer ' + LDFLAGS='-Wl,-z,relro -Wl,--as-needed -Wl,-z,pack-relative-relocs -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -Wl,--build-id=sha1 -specs=/usr/lib/rpm/redhat/redhat-package-notes ' + PATH=/builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/bin:/usr/bin:/bin:/usr/sbin:/sbin:/usr/local/sbin + PYTHONPATH=/builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib64/python3.13/site-packages:/builddir/build/BUILD/python-fsspec-2024.12.0-build/BUILDROOT/usr/lib/python3.13/site-packages + PYTHONDONTWRITEBYTECODE=1 + PYTEST_ADDOPTS=' --ignore=/builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/.pyproject-builddir' + PYTEST_XDIST_AUTO_NUM_WORKERS=4 + /usr/bin/pytest -vra --deselect=fsspec/tests/test_fuse.py::test_basic --deselect=fsspec/tests/test_fuse.py::test_chmod --deselect=fsspec/tests/test_fuse.py::test_seek_rw --deselect=fsspec/implementations/tests/test_reference.py::test_async_cat_file_ranges /usr/lib/python3.13/site-packages/pytest_asyncio/plugin.py:208: PytestDeprecationWarning: The configuration option "asyncio_default_fixture_loop_scope" is unset. The event loop scope for asynchronous fixtures will default to the fixture caching scope. Future versions of pytest-asyncio will default the loop scope for asynchronous fixtures to function scope. Set the default fixture loop scope explicitly in order to avoid unexpected behavior in the future. Valid fixture loop scopes are: "function", "class", "module", "package", "session" warnings.warn(PytestDeprecationWarning(_DEFAULT_FIXTURE_LOOP_SCOPE_UNSET)) ============================= test session starts ============================== platform linux -- Python 3.13.2, pytest-8.3.4, pluggy-1.5.0 -- /usr/bin/python3 cachedir: .pytest_cache rootdir: /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0 configfile: pyproject.toml plugins: anyio-4.8.0, asyncio-0.24.0, mock-3.14.0, rerunfailures-15.0 asyncio: mode=Mode.STRICT, default_loop_scope=None collecting ... collected 1822 items / 4 deselected / 3 skipped / 1818 selected fsspec/implementations/tests/local/local_test.py::TestLocalCopy::test_copy_file_to_existing_directory PASSED [ 0%] fsspec/implementations/tests/local/local_test.py::TestLocalCopy::test_copy_file_to_new_directory PASSED [ 0%] fsspec/implementations/tests/local/local_test.py::TestLocalCopy::test_copy_file_to_file_in_existing_directory PASSED [ 0%] fsspec/implementations/tests/local/local_test.py::TestLocalCopy::test_copy_file_to_file_in_new_directory PASSED [ 0%] fsspec/implementations/tests/local/local_test.py::TestLocalCopy::test_copy_directory_to_existing_directory PASSED [ 0%] fsspec/implementations/tests/local/local_test.py::TestLocalCopy::test_copy_directory_to_new_directory PASSED [ 0%] fsspec/implementations/tests/local/local_test.py::TestLocalCopy::test_copy_glob_to_existing_directory PASSED [ 0%] fsspec/implementations/tests/local/local_test.py::TestLocalCopy::test_copy_glob_to_new_directory PASSED [ 0%] fsspec/implementations/tests/local/local_test.py::TestLocalCopy::test_copy_glob_edge_cases[fil?1-False-None-expected0] PASSED [ 0%] fsspec/implementations/tests/local/local_test.py::TestLocalCopy::test_copy_glob_edge_cases[fil?1-True-None-expected1] PASSED [ 0%] fsspec/implementations/tests/local/local_test.py::TestLocalCopy::test_copy_glob_edge_cases[file[1-2]-False-None-expected2] PASSED [ 0%] fsspec/implementations/tests/local/local_test.py::TestLocalCopy::test_copy_glob_edge_cases[file[1-2]-True-None-expected3] PASSED [ 0%] fsspec/implementations/tests/local/local_test.py::TestLocalCopy::test_copy_glob_edge_cases[*-False-None-expected4] PASSED [ 0%] fsspec/implementations/tests/local/local_test.py::TestLocalCopy::test_copy_glob_edge_cases[*-True-None-expected5] PASSED [ 0%] fsspec/implementations/tests/local/local_test.py::TestLocalCopy::test_copy_glob_edge_cases[*-True-1-expected6] PASSED [ 0%] fsspec/implementations/tests/local/local_test.py::TestLocalCopy::test_copy_glob_edge_cases[*-True-2-expected7] PASSED [ 0%] fsspec/implementations/tests/local/local_test.py::TestLocalCopy::test_copy_glob_edge_cases[*1-False-None-expected8] PASSED [ 0%] fsspec/implementations/tests/local/local_test.py::TestLocalCopy::test_copy_glob_edge_cases[*1-True-None-expected9] PASSED [ 0%] fsspec/implementations/tests/local/local_test.py::TestLocalCopy::test_copy_glob_edge_cases[*1-True-2-expected10] PASSED [ 1%] fsspec/implementations/tests/local/local_test.py::TestLocalCopy::test_copy_glob_edge_cases[**-False-None-expected11] PASSED [ 1%] fsspec/implementations/tests/local/local_test.py::TestLocalCopy::test_copy_glob_edge_cases[**-True-None-expected12] PASSED [ 1%] fsspec/implementations/tests/local/local_test.py::TestLocalCopy::test_copy_glob_edge_cases[**-True-1-expected13] PASSED [ 1%] fsspec/implementations/tests/local/local_test.py::TestLocalCopy::test_copy_glob_edge_cases[**-True-2-expected14] PASSED [ 1%] fsspec/implementations/tests/local/local_test.py::TestLocalCopy::test_copy_glob_edge_cases[**-False-2-expected15] PASSED [ 1%] fsspec/implementations/tests/local/local_test.py::TestLocalCopy::test_copy_glob_edge_cases[**/*1-False-None-expected16] PASSED [ 1%] fsspec/implementations/tests/local/local_test.py::TestLocalCopy::test_copy_glob_edge_cases[**/*1-True-None-expected17] PASSED [ 1%] fsspec/implementations/tests/local/local_test.py::TestLocalCopy::test_copy_glob_edge_cases[**/*1-True-1-expected18] PASSED [ 1%] fsspec/implementations/tests/local/local_test.py::TestLocalCopy::test_copy_glob_edge_cases[**/*1-True-2-expected19] PASSED [ 1%] fsspec/implementations/tests/local/local_test.py::TestLocalCopy::test_copy_glob_edge_cases[**/*1-False-2-expected20] PASSED [ 1%] fsspec/implementations/tests/local/local_test.py::TestLocalCopy::test_copy_glob_edge_cases[**/subdir0-False-None-expected21] PASSED [ 1%] fsspec/implementations/tests/local/local_test.py::TestLocalCopy::test_copy_glob_edge_cases[**/subdir0-True-None-expected22] PASSED [ 1%] fsspec/implementations/tests/local/local_test.py::TestLocalCopy::test_copy_glob_edge_cases[**/subdir0/nested*-False-2-expected23] PASSED [ 1%] fsspec/implementations/tests/local/local_test.py::TestLocalCopy::test_copy_glob_edge_cases[**/subdir0/nested*-True-2-expected24] PASSED [ 1%] fsspec/implementations/tests/local/local_test.py::TestLocalCopy::test_copy_glob_edge_cases[subdir[1-2]-False-None-expected25] PASSED [ 1%] fsspec/implementations/tests/local/local_test.py::TestLocalCopy::test_copy_glob_edge_cases[subdir[1-2]-True-None-expected26] PASSED [ 1%] fsspec/implementations/tests/local/local_test.py::TestLocalCopy::test_copy_glob_edge_cases[subdir[1-2]-True-2-expected27] PASSED [ 1%] fsspec/implementations/tests/local/local_test.py::TestLocalCopy::test_copy_glob_edge_cases[subdir[0-1]-False-None-expected28] PASSED [ 2%] fsspec/implementations/tests/local/local_test.py::TestLocalCopy::test_copy_glob_edge_cases[subdir[0-1]-True-None-expected29] PASSED [ 2%] fsspec/implementations/tests/local/local_test.py::TestLocalCopy::test_copy_glob_edge_cases[subdir[0-1]/*fil[e]*-False-None-expected30] PASSED [ 2%] fsspec/implementations/tests/local/local_test.py::TestLocalCopy::test_copy_glob_edge_cases[subdir[0-1]/*fil[e]*-True-None-expected31] PASSED [ 2%] fsspec/implementations/tests/local/local_test.py::TestLocalCopy::test_copy_list_of_files_to_existing_directory PASSED [ 2%] fsspec/implementations/tests/local/local_test.py::TestLocalCopy::test_copy_list_of_files_to_new_directory PASSED [ 2%] fsspec/implementations/tests/local/local_test.py::TestLocalCopy::test_copy_two_files_new_directory PASSED [ 2%] fsspec/implementations/tests/local/local_test.py::TestLocalCopy::test_copy_directory_without_files_with_same_name_prefix PASSED [ 2%] fsspec/implementations/tests/local/local_test.py::TestLocalCopy::test_copy_with_source_and_destination_as_list PASSED [ 2%] fsspec/implementations/tests/local/local_test.py::TestLocalGet::test_get_file_to_existing_directory PASSED [ 2%] fsspec/implementations/tests/local/local_test.py::TestLocalGet::test_get_file_to_new_directory PASSED [ 2%] fsspec/implementations/tests/local/local_test.py::TestLocalGet::test_get_file_to_file_in_existing_directory PASSED [ 2%] fsspec/implementations/tests/local/local_test.py::TestLocalGet::test_get_file_to_file_in_new_directory PASSED [ 2%] fsspec/implementations/tests/local/local_test.py::TestLocalGet::test_get_directory_to_existing_directory PASSED [ 2%] fsspec/implementations/tests/local/local_test.py::TestLocalGet::test_get_directory_to_new_directory PASSED [ 2%] fsspec/implementations/tests/local/local_test.py::TestLocalGet::test_get_glob_to_existing_directory PASSED [ 2%] fsspec/implementations/tests/local/local_test.py::TestLocalGet::test_get_glob_to_new_directory PASSED [ 2%] fsspec/implementations/tests/local/local_test.py::TestLocalGet::test_get_glob_edge_cases[fil?1-False-None-expected0] PASSED [ 2%] fsspec/implementations/tests/local/local_test.py::TestLocalGet::test_get_glob_edge_cases[fil?1-True-None-expected1] PASSED [ 3%] fsspec/implementations/tests/local/local_test.py::TestLocalGet::test_get_glob_edge_cases[file[1-2]-False-None-expected2] PASSED [ 3%] fsspec/implementations/tests/local/local_test.py::TestLocalGet::test_get_glob_edge_cases[file[1-2]-True-None-expected3] PASSED [ 3%] fsspec/implementations/tests/local/local_test.py::TestLocalGet::test_get_glob_edge_cases[*-False-None-expected4] PASSED [ 3%] fsspec/implementations/tests/local/local_test.py::TestLocalGet::test_get_glob_edge_cases[*-True-None-expected5] PASSED [ 3%] fsspec/implementations/tests/local/local_test.py::TestLocalGet::test_get_glob_edge_cases[*-True-1-expected6] PASSED [ 3%] fsspec/implementations/tests/local/local_test.py::TestLocalGet::test_get_glob_edge_cases[*-True-2-expected7] PASSED [ 3%] fsspec/implementations/tests/local/local_test.py::TestLocalGet::test_get_glob_edge_cases[*1-False-None-expected8] PASSED [ 3%] fsspec/implementations/tests/local/local_test.py::TestLocalGet::test_get_glob_edge_cases[*1-True-None-expected9] PASSED [ 3%] fsspec/implementations/tests/local/local_test.py::TestLocalGet::test_get_glob_edge_cases[*1-True-2-expected10] PASSED [ 3%] fsspec/implementations/tests/local/local_test.py::TestLocalGet::test_get_glob_edge_cases[**-False-None-expected11] PASSED [ 3%] fsspec/implementations/tests/local/local_test.py::TestLocalGet::test_get_glob_edge_cases[**-True-None-expected12] PASSED [ 3%] fsspec/implementations/tests/local/local_test.py::TestLocalGet::test_get_glob_edge_cases[**-True-1-expected13] PASSED [ 3%] fsspec/implementations/tests/local/local_test.py::TestLocalGet::test_get_glob_edge_cases[**-True-2-expected14] PASSED [ 3%] fsspec/implementations/tests/local/local_test.py::TestLocalGet::test_get_glob_edge_cases[**-False-2-expected15] PASSED [ 3%] fsspec/implementations/tests/local/local_test.py::TestLocalGet::test_get_glob_edge_cases[**/*1-False-None-expected16] PASSED [ 3%] fsspec/implementations/tests/local/local_test.py::TestLocalGet::test_get_glob_edge_cases[**/*1-True-None-expected17] PASSED [ 3%] fsspec/implementations/tests/local/local_test.py::TestLocalGet::test_get_glob_edge_cases[**/*1-True-1-expected18] PASSED [ 3%] fsspec/implementations/tests/local/local_test.py::TestLocalGet::test_get_glob_edge_cases[**/*1-True-2-expected19] PASSED [ 4%] fsspec/implementations/tests/local/local_test.py::TestLocalGet::test_get_glob_edge_cases[**/*1-False-2-expected20] PASSED [ 4%] fsspec/implementations/tests/local/local_test.py::TestLocalGet::test_get_glob_edge_cases[**/subdir0-False-None-expected21] PASSED [ 4%] fsspec/implementations/tests/local/local_test.py::TestLocalGet::test_get_glob_edge_cases[**/subdir0-True-None-expected22] PASSED [ 4%] fsspec/implementations/tests/local/local_test.py::TestLocalGet::test_get_glob_edge_cases[**/subdir0/nested*-False-2-expected23] PASSED [ 4%] fsspec/implementations/tests/local/local_test.py::TestLocalGet::test_get_glob_edge_cases[**/subdir0/nested*-True-2-expected24] PASSED [ 4%] fsspec/implementations/tests/local/local_test.py::TestLocalGet::test_get_glob_edge_cases[subdir[1-2]-False-None-expected25] PASSED [ 4%] fsspec/implementations/tests/local/local_test.py::TestLocalGet::test_get_glob_edge_cases[subdir[1-2]-True-None-expected26] PASSED [ 4%] fsspec/implementations/tests/local/local_test.py::TestLocalGet::test_get_glob_edge_cases[subdir[1-2]-True-2-expected27] PASSED [ 4%] fsspec/implementations/tests/local/local_test.py::TestLocalGet::test_get_glob_edge_cases[subdir[0-1]-False-None-expected28] PASSED [ 4%] fsspec/implementations/tests/local/local_test.py::TestLocalGet::test_get_glob_edge_cases[subdir[0-1]-True-None-expected29] PASSED [ 4%] fsspec/implementations/tests/local/local_test.py::TestLocalGet::test_get_glob_edge_cases[subdir[0-1]/*fil[e]*-False-None-expected30] PASSED [ 4%] fsspec/implementations/tests/local/local_test.py::TestLocalGet::test_get_glob_edge_cases[subdir[0-1]/*fil[e]*-True-None-expected31] PASSED [ 4%] fsspec/implementations/tests/local/local_test.py::TestLocalGet::test_get_list_of_files_to_existing_directory PASSED [ 4%] fsspec/implementations/tests/local/local_test.py::TestLocalGet::test_get_list_of_files_to_new_directory PASSED [ 4%] fsspec/implementations/tests/local/local_test.py::TestLocalGet::test_get_directory_recursive PASSED [ 4%] fsspec/implementations/tests/local/local_test.py::TestLocalGet::test_get_directory_without_files_with_same_name_prefix PASSED [ 4%] fsspec/implementations/tests/local/local_test.py::TestLocalGet::test_get_with_source_and_destination_as_list PASSED [ 4%] fsspec/implementations/tests/local/local_test.py::TestLocalPut::test_put_file_to_existing_directory PASSED [ 5%] fsspec/implementations/tests/local/local_test.py::TestLocalPut::test_put_file_to_new_directory PASSED [ 5%] fsspec/implementations/tests/local/local_test.py::TestLocalPut::test_put_file_to_file_in_existing_directory PASSED [ 5%] fsspec/implementations/tests/local/local_test.py::TestLocalPut::test_put_file_to_file_in_new_directory PASSED [ 5%] fsspec/implementations/tests/local/local_test.py::TestLocalPut::test_put_directory_to_existing_directory PASSED [ 5%] fsspec/implementations/tests/local/local_test.py::TestLocalPut::test_put_directory_to_new_directory PASSED [ 5%] fsspec/implementations/tests/local/local_test.py::TestLocalPut::test_put_glob_to_existing_directory PASSED [ 5%] fsspec/implementations/tests/local/local_test.py::TestLocalPut::test_put_glob_to_new_directory PASSED [ 5%] fsspec/implementations/tests/local/local_test.py::TestLocalPut::test_put_glob_edge_cases[fil?1-False-None-expected0] PASSED [ 5%] fsspec/implementations/tests/local/local_test.py::TestLocalPut::test_put_glob_edge_cases[fil?1-True-None-expected1] PASSED [ 5%] fsspec/implementations/tests/local/local_test.py::TestLocalPut::test_put_glob_edge_cases[file[1-2]-False-None-expected2] PASSED [ 5%] fsspec/implementations/tests/local/local_test.py::TestLocalPut::test_put_glob_edge_cases[file[1-2]-True-None-expected3] PASSED [ 5%] fsspec/implementations/tests/local/local_test.py::TestLocalPut::test_put_glob_edge_cases[*-False-None-expected4] PASSED [ 5%] fsspec/implementations/tests/local/local_test.py::TestLocalPut::test_put_glob_edge_cases[*-True-None-expected5] PASSED [ 5%] fsspec/implementations/tests/local/local_test.py::TestLocalPut::test_put_glob_edge_cases[*-True-1-expected6] PASSED [ 5%] fsspec/implementations/tests/local/local_test.py::TestLocalPut::test_put_glob_edge_cases[*-True-2-expected7] PASSED [ 5%] fsspec/implementations/tests/local/local_test.py::TestLocalPut::test_put_glob_edge_cases[*1-False-None-expected8] PASSED [ 5%] fsspec/implementations/tests/local/local_test.py::TestLocalPut::test_put_glob_edge_cases[*1-True-None-expected9] PASSED [ 5%] fsspec/implementations/tests/local/local_test.py::TestLocalPut::test_put_glob_edge_cases[*1-True-2-expected10] PASSED [ 5%] fsspec/implementations/tests/local/local_test.py::TestLocalPut::test_put_glob_edge_cases[**-False-None-expected11] PASSED [ 6%] fsspec/implementations/tests/local/local_test.py::TestLocalPut::test_put_glob_edge_cases[**-True-None-expected12] PASSED [ 6%] fsspec/implementations/tests/local/local_test.py::TestLocalPut::test_put_glob_edge_cases[**-True-1-expected13] PASSED [ 6%] fsspec/implementations/tests/local/local_test.py::TestLocalPut::test_put_glob_edge_cases[**-True-2-expected14] PASSED [ 6%] fsspec/implementations/tests/local/local_test.py::TestLocalPut::test_put_glob_edge_cases[**-False-2-expected15] PASSED [ 6%] fsspec/implementations/tests/local/local_test.py::TestLocalPut::test_put_glob_edge_cases[**/*1-False-None-expected16] PASSED [ 6%] fsspec/implementations/tests/local/local_test.py::TestLocalPut::test_put_glob_edge_cases[**/*1-True-None-expected17] PASSED [ 6%] fsspec/implementations/tests/local/local_test.py::TestLocalPut::test_put_glob_edge_cases[**/*1-True-1-expected18] PASSED [ 6%] fsspec/implementations/tests/local/local_test.py::TestLocalPut::test_put_glob_edge_cases[**/*1-True-2-expected19] PASSED [ 6%] fsspec/implementations/tests/local/local_test.py::TestLocalPut::test_put_glob_edge_cases[**/*1-False-2-expected20] PASSED [ 6%] fsspec/implementations/tests/local/local_test.py::TestLocalPut::test_put_glob_edge_cases[**/subdir0-False-None-expected21] PASSED [ 6%] fsspec/implementations/tests/local/local_test.py::TestLocalPut::test_put_glob_edge_cases[**/subdir0-True-None-expected22] PASSED [ 6%] fsspec/implementations/tests/local/local_test.py::TestLocalPut::test_put_glob_edge_cases[**/subdir0/nested*-False-2-expected23] PASSED [ 6%] fsspec/implementations/tests/local/local_test.py::TestLocalPut::test_put_glob_edge_cases[**/subdir0/nested*-True-2-expected24] PASSED [ 6%] fsspec/implementations/tests/local/local_test.py::TestLocalPut::test_put_glob_edge_cases[subdir[1-2]-False-None-expected25] PASSED [ 6%] fsspec/implementations/tests/local/local_test.py::TestLocalPut::test_put_glob_edge_cases[subdir[1-2]-True-None-expected26] PASSED [ 6%] fsspec/implementations/tests/local/local_test.py::TestLocalPut::test_put_glob_edge_cases[subdir[1-2]-True-2-expected27] PASSED [ 6%] fsspec/implementations/tests/local/local_test.py::TestLocalPut::test_put_glob_edge_cases[subdir[0-1]-False-None-expected28] PASSED [ 6%] fsspec/implementations/tests/local/local_test.py::TestLocalPut::test_put_glob_edge_cases[subdir[0-1]-True-None-expected29] PASSED [ 7%] fsspec/implementations/tests/local/local_test.py::TestLocalPut::test_put_glob_edge_cases[subdir[0-1]/*fil[e]*-False-None-expected30] PASSED [ 7%] fsspec/implementations/tests/local/local_test.py::TestLocalPut::test_put_glob_edge_cases[subdir[0-1]/*fil[e]*-True-None-expected31] PASSED [ 7%] fsspec/implementations/tests/local/local_test.py::TestLocalPut::test_put_list_of_files_to_existing_directory PASSED [ 7%] fsspec/implementations/tests/local/local_test.py::TestLocalPut::test_put_list_of_files_to_new_directory PASSED [ 7%] fsspec/implementations/tests/local/local_test.py::TestLocalPut::test_put_directory_recursive PASSED [ 7%] fsspec/implementations/tests/local/local_test.py::TestLocalPut::test_put_directory_without_files_with_same_name_prefix PASSED [ 7%] fsspec/implementations/tests/local/local_test.py::TestLocalPut::test_copy_with_source_and_destination_as_list PASSED [ 7%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryCopy::test_copy_file_to_existing_directory PASSED [ 7%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryCopy::test_copy_file_to_new_directory PASSED [ 7%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryCopy::test_copy_file_to_file_in_existing_directory PASSED [ 7%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryCopy::test_copy_file_to_file_in_new_directory PASSED [ 7%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryCopy::test_copy_directory_to_existing_directory PASSED [ 7%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryCopy::test_copy_directory_to_new_directory PASSED [ 7%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryCopy::test_copy_glob_to_existing_directory PASSED [ 7%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryCopy::test_copy_glob_to_new_directory PASSED [ 7%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryCopy::test_copy_glob_edge_cases[fil?1-False-None-expected0] PASSED [ 7%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryCopy::test_copy_glob_edge_cases[fil?1-True-None-expected1] PASSED [ 7%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryCopy::test_copy_glob_edge_cases[file[1-2]-False-None-expected2] PASSED [ 8%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryCopy::test_copy_glob_edge_cases[file[1-2]-True-None-expected3] PASSED [ 8%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryCopy::test_copy_glob_edge_cases[*-False-None-expected4] PASSED [ 8%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryCopy::test_copy_glob_edge_cases[*-True-None-expected5] PASSED [ 8%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryCopy::test_copy_glob_edge_cases[*-True-1-expected6] PASSED [ 8%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryCopy::test_copy_glob_edge_cases[*-True-2-expected7] PASSED [ 8%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryCopy::test_copy_glob_edge_cases[*1-False-None-expected8] PASSED [ 8%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryCopy::test_copy_glob_edge_cases[*1-True-None-expected9] PASSED [ 8%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryCopy::test_copy_glob_edge_cases[*1-True-2-expected10] PASSED [ 8%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryCopy::test_copy_glob_edge_cases[**-False-None-expected11] PASSED [ 8%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryCopy::test_copy_glob_edge_cases[**-True-None-expected12] PASSED [ 8%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryCopy::test_copy_glob_edge_cases[**-True-1-expected13] PASSED [ 8%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryCopy::test_copy_glob_edge_cases[**-True-2-expected14] PASSED [ 8%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryCopy::test_copy_glob_edge_cases[**-False-2-expected15] PASSED [ 8%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryCopy::test_copy_glob_edge_cases[**/*1-False-None-expected16] PASSED [ 8%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryCopy::test_copy_glob_edge_cases[**/*1-True-None-expected17] PASSED [ 8%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryCopy::test_copy_glob_edge_cases[**/*1-True-1-expected18] PASSED [ 8%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryCopy::test_copy_glob_edge_cases[**/*1-True-2-expected19] PASSED [ 8%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryCopy::test_copy_glob_edge_cases[**/*1-False-2-expected20] PASSED [ 9%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryCopy::test_copy_glob_edge_cases[**/subdir0-False-None-expected21] PASSED [ 9%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryCopy::test_copy_glob_edge_cases[**/subdir0-True-None-expected22] PASSED [ 9%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryCopy::test_copy_glob_edge_cases[**/subdir0/nested*-False-2-expected23] PASSED [ 9%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryCopy::test_copy_glob_edge_cases[**/subdir0/nested*-True-2-expected24] PASSED [ 9%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryCopy::test_copy_glob_edge_cases[subdir[1-2]-False-None-expected25] PASSED [ 9%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryCopy::test_copy_glob_edge_cases[subdir[1-2]-True-None-expected26] PASSED [ 9%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryCopy::test_copy_glob_edge_cases[subdir[1-2]-True-2-expected27] PASSED [ 9%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryCopy::test_copy_glob_edge_cases[subdir[0-1]-False-None-expected28] PASSED [ 9%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryCopy::test_copy_glob_edge_cases[subdir[0-1]-True-None-expected29] PASSED [ 9%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryCopy::test_copy_glob_edge_cases[subdir[0-1]/*fil[e]*-False-None-expected30] PASSED [ 9%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryCopy::test_copy_glob_edge_cases[subdir[0-1]/*fil[e]*-True-None-expected31] PASSED [ 9%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryCopy::test_copy_list_of_files_to_existing_directory PASSED [ 9%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryCopy::test_copy_list_of_files_to_new_directory PASSED [ 9%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryCopy::test_copy_two_files_new_directory PASSED [ 9%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryCopy::test_copy_directory_without_files_with_same_name_prefix PASSED [ 9%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryCopy::test_copy_with_source_and_destination_as_list PASSED [ 9%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryGet::test_get_file_to_existing_directory PASSED [ 9%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryGet::test_get_file_to_new_directory PASSED [ 10%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryGet::test_get_file_to_file_in_existing_directory PASSED [ 10%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryGet::test_get_file_to_file_in_new_directory PASSED [ 10%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryGet::test_get_directory_to_existing_directory PASSED [ 10%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryGet::test_get_directory_to_new_directory PASSED [ 10%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryGet::test_get_glob_to_existing_directory PASSED [ 10%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryGet::test_get_glob_to_new_directory PASSED [ 10%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryGet::test_get_glob_edge_cases[fil?1-False-None-expected0] PASSED [ 10%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryGet::test_get_glob_edge_cases[fil?1-True-None-expected1] PASSED [ 10%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryGet::test_get_glob_edge_cases[file[1-2]-False-None-expected2] PASSED [ 10%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryGet::test_get_glob_edge_cases[file[1-2]-True-None-expected3] PASSED [ 10%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryGet::test_get_glob_edge_cases[*-False-None-expected4] PASSED [ 10%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryGet::test_get_glob_edge_cases[*-True-None-expected5] PASSED [ 10%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryGet::test_get_glob_edge_cases[*-True-1-expected6] PASSED [ 10%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryGet::test_get_glob_edge_cases[*-True-2-expected7] PASSED [ 10%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryGet::test_get_glob_edge_cases[*1-False-None-expected8] PASSED [ 10%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryGet::test_get_glob_edge_cases[*1-True-None-expected9] PASSED [ 10%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryGet::test_get_glob_edge_cases[*1-True-2-expected10] PASSED [ 10%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryGet::test_get_glob_edge_cases[**-False-None-expected11] PASSED [ 11%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryGet::test_get_glob_edge_cases[**-True-None-expected12] PASSED [ 11%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryGet::test_get_glob_edge_cases[**-True-1-expected13] PASSED [ 11%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryGet::test_get_glob_edge_cases[**-True-2-expected14] PASSED [ 11%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryGet::test_get_glob_edge_cases[**-False-2-expected15] PASSED [ 11%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryGet::test_get_glob_edge_cases[**/*1-False-None-expected16] PASSED [ 11%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryGet::test_get_glob_edge_cases[**/*1-True-None-expected17] PASSED [ 11%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryGet::test_get_glob_edge_cases[**/*1-True-1-expected18] PASSED [ 11%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryGet::test_get_glob_edge_cases[**/*1-True-2-expected19] PASSED [ 11%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryGet::test_get_glob_edge_cases[**/*1-False-2-expected20] PASSED [ 11%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryGet::test_get_glob_edge_cases[**/subdir0-False-None-expected21] PASSED [ 11%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryGet::test_get_glob_edge_cases[**/subdir0-True-None-expected22] PASSED [ 11%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryGet::test_get_glob_edge_cases[**/subdir0/nested*-False-2-expected23] PASSED [ 11%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryGet::test_get_glob_edge_cases[**/subdir0/nested*-True-2-expected24] PASSED [ 11%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryGet::test_get_glob_edge_cases[subdir[1-2]-False-None-expected25] PASSED [ 11%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryGet::test_get_glob_edge_cases[subdir[1-2]-True-None-expected26] PASSED [ 11%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryGet::test_get_glob_edge_cases[subdir[1-2]-True-2-expected27] PASSED [ 11%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryGet::test_get_glob_edge_cases[subdir[0-1]-False-None-expected28] PASSED [ 11%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryGet::test_get_glob_edge_cases[subdir[0-1]-True-None-expected29] PASSED [ 11%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryGet::test_get_glob_edge_cases[subdir[0-1]/*fil[e]*-False-None-expected30] PASSED [ 12%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryGet::test_get_glob_edge_cases[subdir[0-1]/*fil[e]*-True-None-expected31] PASSED [ 12%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryGet::test_get_list_of_files_to_existing_directory PASSED [ 12%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryGet::test_get_list_of_files_to_new_directory PASSED [ 12%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryGet::test_get_directory_recursive PASSED [ 12%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryGet::test_get_directory_without_files_with_same_name_prefix PASSED [ 12%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryGet::test_get_with_source_and_destination_as_list PASSED [ 12%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryPut::test_put_file_to_existing_directory PASSED [ 12%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryPut::test_put_file_to_new_directory PASSED [ 12%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryPut::test_put_file_to_file_in_existing_directory PASSED [ 12%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryPut::test_put_file_to_file_in_new_directory PASSED [ 12%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryPut::test_put_directory_to_existing_directory PASSED [ 12%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryPut::test_put_directory_to_new_directory PASSED [ 12%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryPut::test_put_glob_to_existing_directory PASSED [ 12%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryPut::test_put_glob_to_new_directory PASSED [ 12%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryPut::test_put_glob_edge_cases[fil?1-False-None-expected0] PASSED [ 12%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryPut::test_put_glob_edge_cases[fil?1-True-None-expected1] PASSED [ 12%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryPut::test_put_glob_edge_cases[file[1-2]-False-None-expected2] PASSED [ 12%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryPut::test_put_glob_edge_cases[file[1-2]-True-None-expected3] PASSED [ 13%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryPut::test_put_glob_edge_cases[*-False-None-expected4] PASSED [ 13%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryPut::test_put_glob_edge_cases[*-True-None-expected5] PASSED [ 13%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryPut::test_put_glob_edge_cases[*-True-1-expected6] PASSED [ 13%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryPut::test_put_glob_edge_cases[*-True-2-expected7] PASSED [ 13%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryPut::test_put_glob_edge_cases[*1-False-None-expected8] PASSED [ 13%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryPut::test_put_glob_edge_cases[*1-True-None-expected9] PASSED [ 13%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryPut::test_put_glob_edge_cases[*1-True-2-expected10] PASSED [ 13%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryPut::test_put_glob_edge_cases[**-False-None-expected11] PASSED [ 13%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryPut::test_put_glob_edge_cases[**-True-None-expected12] PASSED [ 13%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryPut::test_put_glob_edge_cases[**-True-1-expected13] PASSED [ 13%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryPut::test_put_glob_edge_cases[**-True-2-expected14] PASSED [ 13%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryPut::test_put_glob_edge_cases[**-False-2-expected15] PASSED [ 13%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryPut::test_put_glob_edge_cases[**/*1-False-None-expected16] PASSED [ 13%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryPut::test_put_glob_edge_cases[**/*1-True-None-expected17] PASSED [ 13%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryPut::test_put_glob_edge_cases[**/*1-True-1-expected18] PASSED [ 13%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryPut::test_put_glob_edge_cases[**/*1-True-2-expected19] PASSED [ 13%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryPut::test_put_glob_edge_cases[**/*1-False-2-expected20] PASSED [ 13%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryPut::test_put_glob_edge_cases[**/subdir0-False-None-expected21] PASSED [ 14%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryPut::test_put_glob_edge_cases[**/subdir0-True-None-expected22] PASSED [ 14%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryPut::test_put_glob_edge_cases[**/subdir0/nested*-False-2-expected23] PASSED [ 14%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryPut::test_put_glob_edge_cases[**/subdir0/nested*-True-2-expected24] PASSED [ 14%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryPut::test_put_glob_edge_cases[subdir[1-2]-False-None-expected25] PASSED [ 14%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryPut::test_put_glob_edge_cases[subdir[1-2]-True-None-expected26] PASSED [ 14%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryPut::test_put_glob_edge_cases[subdir[1-2]-True-2-expected27] PASSED [ 14%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryPut::test_put_glob_edge_cases[subdir[0-1]-False-None-expected28] PASSED [ 14%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryPut::test_put_glob_edge_cases[subdir[0-1]-True-None-expected29] PASSED [ 14%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryPut::test_put_glob_edge_cases[subdir[0-1]/*fil[e]*-False-None-expected30] PASSED [ 14%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryPut::test_put_glob_edge_cases[subdir[0-1]/*fil[e]*-True-None-expected31] PASSED [ 14%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryPut::test_put_list_of_files_to_existing_directory PASSED [ 14%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryPut::test_put_list_of_files_to_new_directory PASSED [ 14%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryPut::test_put_directory_recursive PASSED [ 14%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryPut::test_put_directory_without_files_with_same_name_prefix PASSED [ 14%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryPut::test_copy_with_source_and_destination_as_list PASSED [ 14%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryPipe::test_pipe_exclusive PASSED [ 14%] fsspec/implementations/tests/memory/memory_test.py::TestMemoryOpen::test_open_exclusive PASSED [ 14%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_repr[zip] PASSED [ 15%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_empty[zip] PASSED [ 15%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_glob[zip] PASSED [ 15%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_mapping[zip] PASSED [ 15%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_pickle[zip] PASSED [ 15%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_all_dirnames[zip] PASSED [ 15%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_ls[zip] PASSED [ 15%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_find[zip] PASSED [ 15%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_walk[zip-True-True] PASSED [ 15%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_walk[zip-True-False] PASSED [ 15%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_walk[zip-False-True] PASSED [ 15%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_walk[zip-False-False] PASSED [ 15%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_info[zip] PASSED [ 15%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_isdir_isfile[zip-128] PASSED [ 15%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_isdir_isfile[zip-512] PASSED [ 15%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_isdir_isfile[zip-4096] PASSED [ 15%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_read_empty_file[zip] PASSED [ 15%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_repr[tar] PASSED [ 15%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_empty[tar] PASSED [ 16%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_glob[tar] PASSED [ 16%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_mapping[tar] PASSED [ 16%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_pickle[tar] PASSED [ 16%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_all_dirnames[tar] PASSED [ 16%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_ls[tar] PASSED [ 16%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_find[tar] PASSED [ 16%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_walk[tar-True-True] PASSED [ 16%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_walk[tar-True-False] PASSED [ 16%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_walk[tar-False-True] PASSED [ 16%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_walk[tar-False-False] PASSED [ 16%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_info[tar] PASSED [ 16%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_isdir_isfile[tar-128] PASSED [ 16%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_isdir_isfile[tar-512] PASSED [ 16%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_isdir_isfile[tar-4096] PASSED [ 16%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_read_empty_file[tar] PASSED [ 16%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_repr[tar-gz] PASSED [ 16%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_empty[tar-gz] PASSED [ 16%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_glob[tar-gz] PASSED [ 16%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_mapping[tar-gz] PASSED [ 17%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_pickle[tar-gz] PASSED [ 17%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_all_dirnames[tar-gz] PASSED [ 17%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_ls[tar-gz] PASSED [ 17%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_find[tar-gz] PASSED [ 17%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_walk[tar-gz-True-True] PASSED [ 17%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_walk[tar-gz-True-False] PASSED [ 17%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_walk[tar-gz-False-True] PASSED [ 17%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_walk[tar-gz-False-False] PASSED [ 17%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_info[tar-gz] PASSED [ 17%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_isdir_isfile[tar-gz-128] PASSED [ 17%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_isdir_isfile[tar-gz-512] PASSED [ 17%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_isdir_isfile[tar-gz-4096] PASSED [ 17%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_read_empty_file[tar-gz] PASSED [ 17%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_repr[tar-bz2] PASSED [ 17%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_empty[tar-bz2] PASSED [ 17%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_glob[tar-bz2] PASSED [ 17%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_mapping[tar-bz2] PASSED [ 17%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_pickle[tar-bz2] PASSED [ 18%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_all_dirnames[tar-bz2] PASSED [ 18%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_ls[tar-bz2] PASSED [ 18%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_find[tar-bz2] PASSED [ 18%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_walk[tar-bz2-True-True] PASSED [ 18%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_walk[tar-bz2-True-False] PASSED [ 18%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_walk[tar-bz2-False-True] PASSED [ 18%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_walk[tar-bz2-False-False] PASSED [ 18%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_info[tar-bz2] PASSED [ 18%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_isdir_isfile[tar-bz2-128] PASSED [ 18%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_isdir_isfile[tar-bz2-512] PASSED [ 18%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_isdir_isfile[tar-bz2-4096] PASSED [ 18%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_read_empty_file[tar-bz2] PASSED [ 18%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_repr[tar-xz] PASSED [ 18%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_empty[tar-xz] PASSED [ 18%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_glob[tar-xz] PASSED [ 18%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_mapping[tar-xz] PASSED [ 18%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_pickle[tar-xz] PASSED [ 18%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_all_dirnames[tar-xz] PASSED [ 19%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_ls[tar-xz] PASSED [ 19%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_find[tar-xz] PASSED [ 19%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_walk[tar-xz-True-True] PASSED [ 19%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_walk[tar-xz-True-False] PASSED [ 19%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_walk[tar-xz-False-True] PASSED [ 19%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_walk[tar-xz-False-False] PASSED [ 19%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_info[tar-xz] PASSED [ 19%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_isdir_isfile[tar-xz-128] PASSED [ 19%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_isdir_isfile[tar-xz-512] PASSED [ 19%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_isdir_isfile[tar-xz-4096] PASSED [ 19%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_read_empty_file[tar-xz] PASSED [ 19%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_repr[libarchive] PASSED [ 19%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_empty[libarchive] PASSED [ 19%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_glob[libarchive] PASSED [ 19%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_mapping[libarchive] PASSED [ 19%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_pickle[libarchive] PASSED [ 19%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_all_dirnames[libarchive] PASSED [ 19%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_ls[libarchive] PASSED [ 20%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_find[libarchive] PASSED [ 20%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_walk[libarchive-True-True] PASSED [ 20%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_walk[libarchive-True-False] PASSED [ 20%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_walk[libarchive-False-True] PASSED [ 20%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_walk[libarchive-False-False] PASSED [ 20%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_info[libarchive] PASSED [ 20%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_isdir_isfile[libarchive-128] PASSED [ 20%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_isdir_isfile[libarchive-512] PASSED [ 20%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_isdir_isfile[libarchive-4096] PASSED [ 20%] fsspec/implementations/tests/test_archive.py::TestAnyArchive::test_read_empty_file[libarchive] PASSED [ 20%] fsspec/implementations/tests/test_arrow.py::test_protocol PASSED [ 20%] fsspec/implementations/tests/test_arrow.py::test_strip PASSED [ 20%] fsspec/implementations/tests/test_arrow.py::test_info[False] PASSED [ 20%] fsspec/implementations/tests/test_arrow.py::test_info[True] PASSED [ 20%] fsspec/implementations/tests/test_arrow.py::test_move[False] PASSED [ 20%] fsspec/implementations/tests/test_arrow.py::test_move[True] PASSED [ 20%] fsspec/implementations/tests/test_arrow.py::test_move_recursive[False] PASSED [ 20%] fsspec/implementations/tests/test_arrow.py::test_move_recursive[True] PASSED [ 21%] fsspec/implementations/tests/test_arrow.py::test_copy[False] PASSED [ 21%] fsspec/implementations/tests/test_arrow.py::test_copy[True] PASSED [ 21%] fsspec/implementations/tests/test_arrow.py::test_rm[False] PASSED [ 21%] fsspec/implementations/tests/test_arrow.py::test_rm[True] PASSED [ 21%] fsspec/implementations/tests/test_arrow.py::test_ls[False] PASSED [ 21%] fsspec/implementations/tests/test_arrow.py::test_ls[True] PASSED [ 21%] fsspec/implementations/tests/test_arrow.py::test_mkdir[False] PASSED [ 21%] fsspec/implementations/tests/test_arrow.py::test_mkdir[True] PASSED [ 21%] fsspec/implementations/tests/test_arrow.py::test_makedirs[False] PASSED [ 21%] fsspec/implementations/tests/test_arrow.py::test_makedirs[True] PASSED [ 21%] fsspec/implementations/tests/test_arrow.py::test_exceptions[False] PASSED [ 21%] fsspec/implementations/tests/test_arrow.py::test_exceptions[True] PASSED [ 21%] fsspec/implementations/tests/test_arrow.py::test_open_rw[False] PASSED [ 21%] fsspec/implementations/tests/test_arrow.py::test_open_rw[True] PASSED [ 21%] fsspec/implementations/tests/test_arrow.py::test_open_rw_flush[False] PASSED [ 21%] fsspec/implementations/tests/test_arrow.py::test_open_rw_flush[True] PASSED [ 21%] fsspec/implementations/tests/test_arrow.py::test_open_append[False] PASSED [ 21%] fsspec/implementations/tests/test_arrow.py::test_open_append[True] PASSED [ 22%] fsspec/implementations/tests/test_arrow.py::test_open_seekable[False] PASSED [ 22%] fsspec/implementations/tests/test_arrow.py::test_open_seekable[True] PASSED [ 22%] fsspec/implementations/tests/test_arrow.py::test_seekable[False] PASSED [ 22%] fsspec/implementations/tests/test_arrow.py::test_seekable[True] PASSED [ 22%] fsspec/implementations/tests/test_arrow.py::test_get_kwargs_from_urls_hadoop_fs PASSED [ 22%] fsspec/implementations/tests/test_asyn_wrapper.py::test_is_async PASSED [ 22%] fsspec/implementations/tests/test_asyn_wrapper.py::test_class_wrapper PASSED [ 22%] fsspec/implementations/tests/test_asyn_wrapper.py::test_cats PASSED [ 22%] fsspec/implementations/tests/test_asyn_wrapper.py::test_basic_crud_operations PASSED [ 22%] fsspec/implementations/tests/test_asyn_wrapper.py::test_error_handling PASSED [ 22%] fsspec/implementations/tests/test_asyn_wrapper.py::test_concurrent_operations PASSED [ 22%] fsspec/implementations/tests/test_asyn_wrapper.py::test_directory_operations PASSED [ 22%] fsspec/implementations/tests/test_asyn_wrapper.py::test_batch_operations PASSED [ 22%] fsspec/implementations/tests/test_cached.py::test_mapper PASSED [ 22%] fsspec/implementations/tests/test_cached.py::test_metadata[True-cache_mapper0] PASSED [ 22%] fsspec/implementations/tests/test_cached.py::test_metadata[True-cache_mapper1] PASSED [ 22%] fsspec/implementations/tests/test_cached.py::test_metadata[True-cache_mapper2] PASSED [ 22%] fsspec/implementations/tests/test_cached.py::test_metadata[False-cache_mapper0] PASSED [ 22%] fsspec/implementations/tests/test_cached.py::test_metadata[False-cache_mapper1] PASSED [ 23%] fsspec/implementations/tests/test_cached.py::test_metadata[False-cache_mapper2] PASSED [ 23%] fsspec/implementations/tests/test_cached.py::test_metadata_replace_pickle_with_json PASSED [ 23%] fsspec/implementations/tests/test_cached.py::test_constructor_kwargs PASSED [ 23%] fsspec/implementations/tests/test_cached.py::test_idempotent PASSED [ 23%] fsspec/implementations/tests/test_cached.py::test_blockcache_workflow[True] SKIPPED [ 23%] fsspec/implementations/tests/test_cached.py::test_blockcache_workflow[False] SKIPPED [ 23%] fsspec/implementations/tests/test_cached.py::test_workflow[filecache] SKIPPED [ 23%] fsspec/implementations/tests/test_cached.py::test_workflow[blockcache] SKIPPED [ 23%] fsspec/implementations/tests/test_cached.py::test_workflow[cached] SKIPPED [ 23%] fsspec/implementations/tests/test_cached.py::test_glob[simplecache] SKIPPED [ 23%] fsspec/implementations/tests/test_cached.py::test_glob[blockcache] SKIPPED [ 23%] fsspec/implementations/tests/test_cached.py::test_glob[cached] SKIPPED [ 23%] fsspec/implementations/tests/test_cached.py::test_write PASSED [ 23%] fsspec/implementations/tests/test_cached.py::test_clear PASSED [ 23%] fsspec/implementations/tests/test_cached.py::test_clear_expired[True] PASSED [ 23%] fsspec/implementations/tests/test_cached.py::test_clear_expired[False] PASSED [ 23%] fsspec/implementations/tests/test_cached.py::test_pop PASSED [ 23%] fsspec/implementations/tests/test_cached.py::test_write_pickle_context PASSED [ 24%] fsspec/implementations/tests/test_cached.py::test_blocksize SKIPPED [ 24%] fsspec/implementations/tests/test_cached.py::test_blockcache_multiinstance SKIPPED [ 24%] fsspec/implementations/tests/test_cached.py::test_metadata_save_blocked SKIPPED [ 24%] fsspec/implementations/tests/test_cached.py::test_local_filecache_creates_dir_if_needed[filecache] PASSED [ 24%] fsspec/implementations/tests/test_cached.py::test_local_filecache_creates_dir_if_needed[simplecache] PASSED [ 24%] fsspec/implementations/tests/test_cached.py::test_local_filecache_creates_dir_if_needed[blockcache] PASSED [ 24%] fsspec/implementations/tests/test_cached.py::test_local_filecache_creates_dir_if_needed[cached] PASSED [ 24%] fsspec/implementations/tests/test_cached.py::test_get_mapper[filecache-True] PASSED [ 24%] fsspec/implementations/tests/test_cached.py::test_get_mapper[filecache-False] PASSED [ 24%] fsspec/implementations/tests/test_cached.py::test_get_mapper[simplecache-True] PASSED [ 24%] fsspec/implementations/tests/test_cached.py::test_get_mapper[simplecache-False] PASSED [ 24%] fsspec/implementations/tests/test_cached.py::test_get_mapper[blockcache-True] PASSED [ 24%] fsspec/implementations/tests/test_cached.py::test_get_mapper[blockcache-False] PASSED [ 24%] fsspec/implementations/tests/test_cached.py::test_local_filecache_basic PASSED [ 24%] fsspec/implementations/tests/test_cached.py::test_local_filecache_does_not_change_when_original_data_changed PASSED [ 24%] fsspec/implementations/tests/test_cached.py::test_local_filecache_gets_from_original_if_cache_deleted PASSED [ 24%] fsspec/implementations/tests/test_cached.py::test_local_filecache_with_new_cache_location_makes_a_new_copy PASSED [ 24%] fsspec/implementations/tests/test_cached.py::test_filecache_multicache PASSED [ 25%] fsspec/implementations/tests/test_cached.py::test_filecache_multicache_with_same_file_different_data_reads_from_first[filecache] PASSED [ 25%] fsspec/implementations/tests/test_cached.py::test_filecache_multicache_with_same_file_different_data_reads_from_first[simplecache] PASSED [ 25%] fsspec/implementations/tests/test_cached.py::test_filecache_with_checks PASSED [ 25%] fsspec/implementations/tests/test_cached.py::test_filecache_takes_fs_instance[local-filecache] PASSED [ 25%] fsspec/implementations/tests/test_cached.py::test_filecache_takes_fs_instance[local-simplecache] PASSED [ 25%] fsspec/implementations/tests/test_cached.py::test_filecache_takes_fs_instance[local-blockcache] PASSED [ 25%] fsspec/implementations/tests/test_cached.py::test_filecache_takes_fs_instance[local-cached] PASSED [ 25%] fsspec/implementations/tests/test_cached.py::test_filecache_takes_fs_instance[multi-filecache] PASSED [ 25%] fsspec/implementations/tests/test_cached.py::test_filecache_takes_fs_instance[multi-simplecache] PASSED [ 25%] fsspec/implementations/tests/test_cached.py::test_filecache_takes_fs_instance[multi-blockcache] PASSED [ 25%] fsspec/implementations/tests/test_cached.py::test_filecache_takes_fs_instance[multi-cached] PASSED [ 25%] fsspec/implementations/tests/test_cached.py::test_filecache_serialization[local-filecache] PASSED [ 25%] fsspec/implementations/tests/test_cached.py::test_filecache_serialization[local-simplecache] PASSED [ 25%] fsspec/implementations/tests/test_cached.py::test_filecache_serialization[local-blockcache] PASSED [ 25%] fsspec/implementations/tests/test_cached.py::test_filecache_serialization[local-cached] PASSED [ 25%] fsspec/implementations/tests/test_cached.py::test_filecache_serialization[multi-filecache] PASSED [ 25%] fsspec/implementations/tests/test_cached.py::test_filecache_serialization[multi-simplecache] PASSED [ 25%] fsspec/implementations/tests/test_cached.py::test_filecache_serialization[multi-blockcache] PASSED [ 26%] fsspec/implementations/tests/test_cached.py::test_filecache_serialization[multi-cached] PASSED [ 26%] fsspec/implementations/tests/test_cached.py::test_add_file_to_cache_after_save PASSED [ 26%] fsspec/implementations/tests/test_cached.py::test_cached_open_close_read SKIPPED [ 26%] fsspec/implementations/tests/test_cached.py::test_with_compression[gzip-filecache] PASSED [ 26%] fsspec/implementations/tests/test_cached.py::test_with_compression[gzip-simplecache] PASSED [ 26%] fsspec/implementations/tests/test_cached.py::test_with_compression[bz2-filecache] PASSED [ 26%] fsspec/implementations/tests/test_cached.py::test_with_compression[bz2-simplecache] PASSED [ 26%] fsspec/implementations/tests/test_cached.py::test_again[simplecache] PASSED [ 26%] fsspec/implementations/tests/test_cached.py::test_again[filecache] PASSED [ 26%] fsspec/implementations/tests/test_cached.py::test_multi_cache[simplecache] PASSED [ 26%] fsspec/implementations/tests/test_cached.py::test_multi_cache[filecache] PASSED [ 26%] fsspec/implementations/tests/test_cached.py::test_multi_cat[simplecache] SKIPPED [ 26%] fsspec/implementations/tests/test_cached.py::test_multi_cat[filecache] SKIPPED [ 26%] fsspec/implementations/tests/test_cached.py::test_multi_cat[blockcache] SKIPPED [ 26%] fsspec/implementations/tests/test_cached.py::test_multi_cat[cached] SKIPPED [ 26%] fsspec/implementations/tests/test_cached.py::test_multi_cache_chain[simplecache] PASSED [ 26%] fsspec/implementations/tests/test_cached.py::test_multi_cache_chain[filecache] PASSED [ 26%] fsspec/implementations/tests/test_cached.py::test_strip[blockcache] PASSED [ 27%] fsspec/implementations/tests/test_cached.py::test_strip[cached] PASSED [ 27%] fsspec/implementations/tests/test_cached.py::test_strip[simplecache] PASSED [ 27%] fsspec/implementations/tests/test_cached.py::test_strip[filecache] PASSED [ 27%] fsspec/implementations/tests/test_cached.py::test_cached_write[simplecache] PASSED [ 27%] fsspec/implementations/tests/test_cached.py::test_cached_write[filecache] PASSED [ 27%] fsspec/implementations/tests/test_cached.py::test_expiry PASSED [ 27%] fsspec/implementations/tests/test_cached.py::test_equality PASSED [ 27%] fsspec/implementations/tests/test_cached.py::test_str PASSED [ 27%] fsspec/implementations/tests/test_cached.py::test_getitems_errors PASSED [ 27%] fsspec/implementations/tests/test_cached.py::test_cache_dir_auto_deleted[False] PASSED [ 27%] fsspec/implementations/tests/test_cached.py::test_cache_dir_auto_deleted[True] PASSED [ 27%] fsspec/implementations/tests/test_cached.py::test_cache_size[filecache] PASSED [ 27%] fsspec/implementations/tests/test_cached.py::test_cache_size[blockcache] PASSED [ 27%] fsspec/implementations/tests/test_cached.py::test_cache_size[cached] PASSED [ 27%] fsspec/implementations/tests/test_cached.py::test_cache_size[simplecache] PASSED [ 27%] fsspec/implementations/tests/test_cached.py::test_spurious_directory_issue1410 PASSED [ 27%] fsspec/implementations/tests/test_cached.py::test_write_transaction PASSED [ 27%] fsspec/implementations/tests/test_cached.py::test_filecache_write PASSED [ 27%] fsspec/implementations/tests/test_common.py::test_created[local] PASSED [ 28%] fsspec/implementations/tests/test_common.py::test_modified[local] PASSED [ 28%] fsspec/implementations/tests/test_common.py::test_modified[memory] PASSED [ 28%] fsspec/implementations/tests/test_common.py::test_modified[arrow] PASSED [ 28%] fsspec/implementations/tests/test_dask.py::test_basic PASSED [ 28%] fsspec/implementations/tests/test_data.py::test_1 PASSED [ 28%] fsspec/implementations/tests/test_data.py::test_info PASSED [ 28%] fsspec/implementations/tests/test_dirfs.py::test_dirfs[sync] PASSED [ 28%] fsspec/implementations/tests/test_dirfs.py::test_dirfs[async] PASSED [ 28%] fsspec/implementations/tests/test_dirfs.py::test_path[sync---] PASSED [ 28%] fsspec/implementations/tests/test_dirfs.py::test_path[sync--foo-foo] PASSED [ 28%] fsspec/implementations/tests/test_dirfs.py::test_path[sync-root--root] PASSED [ 28%] fsspec/implementations/tests/test_dirfs.py::test_path[sync-root-foo-root/foo] PASSED [ 28%] fsspec/implementations/tests/test_dirfs.py::test_path[sync-/root--/root] PASSED [ 28%] fsspec/implementations/tests/test_dirfs.py::test_path[sync-/root-foo-/root/foo] PASSED [ 28%] fsspec/implementations/tests/test_dirfs.py::test_path[async---] PASSED [ 28%] fsspec/implementations/tests/test_dirfs.py::test_path[async--foo-foo] PASSED [ 28%] fsspec/implementations/tests/test_dirfs.py::test_path[async-root--root] PASSED [ 28%] fsspec/implementations/tests/test_dirfs.py::test_path[async-root-foo-root/foo] PASSED [ 29%] fsspec/implementations/tests/test_dirfs.py::test_path[async-/root--/root] PASSED [ 29%] fsspec/implementations/tests/test_dirfs.py::test_path[async-/root-foo-/root/foo] PASSED [ 29%] fsspec/implementations/tests/test_dirfs.py::test_path_no_leading_slash[sync-/root-foo-root/foo] PASSED [ 29%] fsspec/implementations/tests/test_dirfs.py::test_path_no_leading_slash[sync-/root--root] PASSED [ 29%] fsspec/implementations/tests/test_dirfs.py::test_path_no_leading_slash[async-/root-foo-root/foo] PASSED [ 29%] fsspec/implementations/tests/test_dirfs.py::test_path_no_leading_slash[async-/root--root] PASSED [ 29%] fsspec/implementations/tests/test_dirfs.py::test_sep[sync] PASSED [ 29%] fsspec/implementations/tests/test_dirfs.py::test_sep[async] PASSED [ 29%] fsspec/implementations/tests/test_dirfs.py::test_set_session PASSED [ 29%] fsspec/implementations/tests/test_dirfs.py::test_async_rm_file PASSED [ 29%] fsspec/implementations/tests/test_dirfs.py::test_rm_file[sync] PASSED [ 29%] fsspec/implementations/tests/test_dirfs.py::test_rm_file[async] PASSED [ 29%] fsspec/implementations/tests/test_dirfs.py::test_async_rm PASSED [ 29%] fsspec/implementations/tests/test_dirfs.py::test_rm[sync] PASSED [ 29%] fsspec/implementations/tests/test_dirfs.py::test_rm[async] PASSED [ 29%] fsspec/implementations/tests/test_dirfs.py::test_async_cp_file PASSED [ 29%] fsspec/implementations/tests/test_dirfs.py::test_cp_file[sync] PASSED [ 29%] fsspec/implementations/tests/test_dirfs.py::test_cp_file[async] PASSED [ 30%] fsspec/implementations/tests/test_dirfs.py::test_async_copy PASSED [ 30%] fsspec/implementations/tests/test_dirfs.py::test_copy[sync] PASSED [ 30%] fsspec/implementations/tests/test_dirfs.py::test_copy[async] PASSED [ 30%] fsspec/implementations/tests/test_dirfs.py::test_async_pipe PASSED [ 30%] fsspec/implementations/tests/test_dirfs.py::test_pipe[sync] PASSED [ 30%] fsspec/implementations/tests/test_dirfs.py::test_pipe[async] PASSED [ 30%] fsspec/implementations/tests/test_dirfs.py::test_pipe_dict[sync] PASSED [ 30%] fsspec/implementations/tests/test_dirfs.py::test_pipe_dict[async] PASSED [ 30%] fsspec/implementations/tests/test_dirfs.py::test_async_pipe_file PASSED [ 30%] fsspec/implementations/tests/test_dirfs.py::test_pipe_file[sync] PASSED [ 30%] fsspec/implementations/tests/test_dirfs.py::test_pipe_file[async] PASSED [ 30%] fsspec/implementations/tests/test_dirfs.py::test_async_cat_file PASSED [ 30%] fsspec/implementations/tests/test_dirfs.py::test_cat_file[sync] PASSED [ 30%] fsspec/implementations/tests/test_dirfs.py::test_cat_file[async] PASSED [ 30%] fsspec/implementations/tests/test_dirfs.py::test_async_cat PASSED [ 30%] fsspec/implementations/tests/test_dirfs.py::test_cat[sync] PASSED [ 30%] fsspec/implementations/tests/test_dirfs.py::test_cat[async] PASSED [ 30%] fsspec/implementations/tests/test_dirfs.py::test_async_cat_list PASSED [ 31%] fsspec/implementations/tests/test_dirfs.py::test_cat_list[sync] PASSED [ 31%] fsspec/implementations/tests/test_dirfs.py::test_cat_list[async] PASSED [ 31%] fsspec/implementations/tests/test_dirfs.py::test_async_put_file PASSED [ 31%] fsspec/implementations/tests/test_dirfs.py::test_put_file[sync] PASSED [ 31%] fsspec/implementations/tests/test_dirfs.py::test_put_file[async] PASSED [ 31%] fsspec/implementations/tests/test_dirfs.py::test_async_put PASSED [ 31%] fsspec/implementations/tests/test_dirfs.py::test_put[sync] PASSED [ 31%] fsspec/implementations/tests/test_dirfs.py::test_put[async] PASSED [ 31%] fsspec/implementations/tests/test_dirfs.py::test_async_get_file PASSED [ 31%] fsspec/implementations/tests/test_dirfs.py::test_get_file[sync] PASSED [ 31%] fsspec/implementations/tests/test_dirfs.py::test_get_file[async] PASSED [ 31%] fsspec/implementations/tests/test_dirfs.py::test_async_get PASSED [ 31%] fsspec/implementations/tests/test_dirfs.py::test_get[sync] PASSED [ 31%] fsspec/implementations/tests/test_dirfs.py::test_get[async] PASSED [ 31%] fsspec/implementations/tests/test_dirfs.py::test_async_isfile PASSED [ 31%] fsspec/implementations/tests/test_dirfs.py::test_isfile[sync] PASSED [ 31%] fsspec/implementations/tests/test_dirfs.py::test_isfile[async] PASSED [ 31%] fsspec/implementations/tests/test_dirfs.py::test_async_isdir PASSED [ 32%] fsspec/implementations/tests/test_dirfs.py::test_isdir[sync] PASSED [ 32%] fsspec/implementations/tests/test_dirfs.py::test_isdir[async] PASSED [ 32%] fsspec/implementations/tests/test_dirfs.py::test_async_size PASSED [ 32%] fsspec/implementations/tests/test_dirfs.py::test_size[sync] PASSED [ 32%] fsspec/implementations/tests/test_dirfs.py::test_size[async] PASSED [ 32%] fsspec/implementations/tests/test_dirfs.py::test_async_exists PASSED [ 32%] fsspec/implementations/tests/test_dirfs.py::test_exists[sync] PASSED [ 32%] fsspec/implementations/tests/test_dirfs.py::test_exists[async] PASSED [ 32%] fsspec/implementations/tests/test_dirfs.py::test_async_info PASSED [ 32%] fsspec/implementations/tests/test_dirfs.py::test_info[sync] PASSED [ 32%] fsspec/implementations/tests/test_dirfs.py::test_info[async] PASSED [ 32%] fsspec/implementations/tests/test_dirfs.py::test_async_ls PASSED [ 32%] fsspec/implementations/tests/test_dirfs.py::test_ls[sync] PASSED [ 32%] fsspec/implementations/tests/test_dirfs.py::test_ls[async] PASSED [ 32%] fsspec/implementations/tests/test_dirfs.py::test_async_ls_detail PASSED [ 32%] fsspec/implementations/tests/test_dirfs.py::test_ls_detail[sync] PASSED [ 32%] fsspec/implementations/tests/test_dirfs.py::test_ls_detail[async] PASSED [ 32%] fsspec/implementations/tests/test_dirfs.py::test_async_walk PASSED [ 33%] fsspec/implementations/tests/test_dirfs.py::test_walk[sync] PASSED [ 33%] fsspec/implementations/tests/test_dirfs.py::test_walk[async] PASSED [ 33%] fsspec/implementations/tests/test_dirfs.py::test_async_glob PASSED [ 33%] fsspec/implementations/tests/test_dirfs.py::test_glob[sync] PASSED [ 33%] fsspec/implementations/tests/test_dirfs.py::test_glob[async] PASSED [ 33%] fsspec/implementations/tests/test_dirfs.py::test_glob_with_protocol[sync] PASSED [ 33%] fsspec/implementations/tests/test_dirfs.py::test_glob_with_protocol[async] PASSED [ 33%] fsspec/implementations/tests/test_dirfs.py::test_async_glob_detail PASSED [ 33%] fsspec/implementations/tests/test_dirfs.py::test_glob_detail[sync] PASSED [ 33%] fsspec/implementations/tests/test_dirfs.py::test_glob_detail[async] PASSED [ 33%] fsspec/implementations/tests/test_dirfs.py::test_async_du PASSED [ 33%] fsspec/implementations/tests/test_dirfs.py::test_du[sync] PASSED [ 33%] fsspec/implementations/tests/test_dirfs.py::test_du[async] PASSED [ 33%] fsspec/implementations/tests/test_dirfs.py::test_async_du_granular PASSED [ 33%] fsspec/implementations/tests/test_dirfs.py::test_du_granular[sync] PASSED [ 33%] fsspec/implementations/tests/test_dirfs.py::test_du_granular[async] PASSED [ 33%] fsspec/implementations/tests/test_dirfs.py::test_async_find PASSED [ 33%] fsspec/implementations/tests/test_dirfs.py::test_find[sync] PASSED [ 33%] fsspec/implementations/tests/test_dirfs.py::test_find[async] PASSED [ 34%] fsspec/implementations/tests/test_dirfs.py::test_async_find_detail PASSED [ 34%] fsspec/implementations/tests/test_dirfs.py::test_find_detail[sync] PASSED [ 34%] fsspec/implementations/tests/test_dirfs.py::test_find_detail[async] PASSED [ 34%] fsspec/implementations/tests/test_dirfs.py::test_async_expand_path PASSED [ 34%] fsspec/implementations/tests/test_dirfs.py::test_expand_path[sync] PASSED [ 34%] fsspec/implementations/tests/test_dirfs.py::test_expand_path[async] PASSED [ 34%] fsspec/implementations/tests/test_dirfs.py::test_async_expand_path_list PASSED [ 34%] fsspec/implementations/tests/test_dirfs.py::test_expand_path_list[sync] PASSED [ 34%] fsspec/implementations/tests/test_dirfs.py::test_expand_path_list[async] PASSED [ 34%] fsspec/implementations/tests/test_dirfs.py::test_async_mkdir PASSED [ 34%] fsspec/implementations/tests/test_dirfs.py::test_mkdir[sync] PASSED [ 34%] fsspec/implementations/tests/test_dirfs.py::test_mkdir[async] PASSED [ 34%] fsspec/implementations/tests/test_dirfs.py::test_async_makedirs PASSED [ 34%] fsspec/implementations/tests/test_dirfs.py::test_makedirs[sync] PASSED [ 34%] fsspec/implementations/tests/test_dirfs.py::test_makedirs[async] PASSED [ 34%] fsspec/implementations/tests/test_dirfs.py::test_rmdir[sync] PASSED [ 34%] fsspec/implementations/tests/test_dirfs.py::test_rmdir[async] PASSED [ 34%] fsspec/implementations/tests/test_dirfs.py::test_mv[sync] PASSED [ 35%] fsspec/implementations/tests/test_dirfs.py::test_mv[async] PASSED [ 35%] fsspec/implementations/tests/test_dirfs.py::test_touch[sync] PASSED [ 35%] fsspec/implementations/tests/test_dirfs.py::test_touch[async] PASSED [ 35%] fsspec/implementations/tests/test_dirfs.py::test_created[sync] PASSED [ 35%] fsspec/implementations/tests/test_dirfs.py::test_created[async] PASSED [ 35%] fsspec/implementations/tests/test_dirfs.py::test_modified[sync] PASSED [ 35%] fsspec/implementations/tests/test_dirfs.py::test_modified[async] PASSED [ 35%] fsspec/implementations/tests/test_dirfs.py::test_sign[sync] PASSED [ 35%] fsspec/implementations/tests/test_dirfs.py::test_sign[async] PASSED [ 35%] fsspec/implementations/tests/test_dirfs.py::test_open_async PASSED [ 35%] fsspec/implementations/tests/test_dirfs.py::test_open[sync] PASSED [ 35%] fsspec/implementations/tests/test_dirfs.py::test_open[async] PASSED [ 35%] fsspec/implementations/tests/test_dirfs.py::test_from_url PASSED [ 35%] fsspec/implementations/tests/test_ftp.py::test_tls[False-FTP] SKIPPED [ 35%] fsspec/implementations/tests/test_ftp.py::test_tls[True-FTP_TLS] SKIPPED [ 35%] fsspec/implementations/tests/test_ftp.py::test_basic[False--] SKIPPED [ 35%] fsspec/implementations/tests/test_ftp.py::test_basic[True--] SKIPPED [ 35%] fsspec/implementations/tests/test_ftp.py::test_basic[False-user-pass] SKIPPED [ 36%] fsspec/implementations/tests/test_ftp.py::test_basic[True-user-pass] SKIPPED [ 36%] fsspec/implementations/tests/test_ftp.py::test_not_cached SKIPPED (c...) [ 36%] fsspec/implementations/tests/test_ftp.py::test_ls_root_dircache SKIPPED [ 36%] fsspec/implementations/tests/test_ftp.py::test_complex[bytes] SKIPPED [ 36%] fsspec/implementations/tests/test_ftp.py::test_complex[mmap] SKIPPED [ 36%] fsspec/implementations/tests/test_ftp.py::test_write_small SKIPPED (...) [ 36%] fsspec/implementations/tests/test_ftp.py::test_with_url SKIPPED (cou...) [ 36%] fsspec/implementations/tests/test_ftp.py::test_write_big[bytes] SKIPPED [ 36%] fsspec/implementations/tests/test_ftp.py::test_write_big[mmap] SKIPPED [ 36%] fsspec/implementations/tests/test_ftp.py::test_transaction SKIPPED (...) [ 36%] fsspec/implementations/tests/test_ftp.py::test_transaction_with_cache SKIPPED [ 36%] fsspec/implementations/tests/test_ftp.py::test_cat_get SKIPPED (coul...) [ 36%] fsspec/implementations/tests/test_ftp.py::test_mkdir SKIPPED (could ...) [ 36%] fsspec/implementations/tests/test_ftp.py::test_rm_get_recursive SKIPPED [ 36%] fsspec/implementations/tests/test_git.py::test_refs PASSED [ 36%] fsspec/implementations/tests/test_git.py::test_file_existence_checks PASSED [ 36%] fsspec/implementations/tests/test_git.py::test_url PASSED [ 36%] fsspec/implementations/tests/test_http.py::test_list FAILED [ 37%] fsspec/implementations/tests/test_http.py::test_list_invalid_args PASSED [ 37%] fsspec/implementations/tests/test_http.py::test_list_cache FAILED [ 37%] fsspec/implementations/tests/test_http.py::test_list_cache_with_expiry_time_cached FAILED [ 37%] fsspec/implementations/tests/test_http.py::test_list_cache_with_expiry_time_purged FAILED [ 37%] fsspec/implementations/tests/test_http.py::test_list_cache_reuse FAILED [ 37%] fsspec/implementations/tests/test_http.py::test_ls_raises_filenotfound FAILED [ 37%] fsspec/implementations/tests/test_http.py::test_list_cache_with_max_paths FAILED [ 37%] fsspec/implementations/tests/test_http.py::test_list_cache_with_skip_instance_cache FAILED [ 37%] fsspec/implementations/tests/test_http.py::test_glob_return_subfolders FAILED [ 37%] fsspec/implementations/tests/test_http.py::test_isdir FAILED [ 37%] fsspec/implementations/tests/test_http.py::test_policy_arg FAILED [ 37%] fsspec/implementations/tests/test_http.py::test_exists FAILED [ 37%] fsspec/implementations/tests/test_http.py::test_read FAILED [ 37%] fsspec/implementations/tests/test_http.py::test_file_pickle FAILED [ 37%] fsspec/implementations/tests/test_http.py::test_methods FAILED [ 37%] fsspec/implementations/tests/test_http.py::test_random_access[headers0] FAILED [ 37%] fsspec/implementations/tests/test_http.py::test_random_access[headers1] FAILED [ 37%] fsspec/implementations/tests/test_http.py::test_random_access[headers2] FAILED [ 38%] fsspec/implementations/tests/test_http.py::test_random_access[headers3] FAILED [ 38%] fsspec/implementations/tests/test_http.py::test_random_access[headers4] FAILED [ 38%] fsspec/implementations/tests/test_http.py::test_random_access[headers5] FAILED [ 38%] fsspec/implementations/tests/test_http.py::test_random_access[headers6] FAILED [ 38%] fsspec/implementations/tests/test_http.py::test_random_access[headers7] FAILED [ 38%] fsspec/implementations/tests/test_http.py::test_random_access[headers8] FAILED [ 38%] fsspec/implementations/tests/test_http.py::test_no_range_support[headers0] FAILED [ 38%] fsspec/implementations/tests/test_http.py::test_no_range_support[headers1] FAILED [ 38%] fsspec/implementations/tests/test_http.py::test_no_range_support[headers2] FAILED [ 38%] fsspec/implementations/tests/test_http.py::test_no_range_support[headers3] FAILED [ 38%] fsspec/implementations/tests/test_http.py::test_stream_seek FAILED [ 38%] fsspec/implementations/tests/test_http.py::test_mapper_url FAILED [ 38%] fsspec/implementations/tests/test_http.py::test_content_length_zero FAILED [ 38%] fsspec/implementations/tests/test_http.py::test_content_encoding_gzip FAILED [ 38%] fsspec/implementations/tests/test_http.py::test_download FAILED [ 38%] fsspec/implementations/tests/test_http.py::test_multi_download FAILED [ 38%] fsspec/implementations/tests/test_http.py::test_ls FAILED [ 38%] fsspec/implementations/tests/test_http.py::test_mcat FAILED [ 38%] fsspec/implementations/tests/test_http.py::test_cat_file_range FAILED [ 39%] fsspec/implementations/tests/test_http.py::test_cat_file_range_numpy FAILED [ 39%] fsspec/implementations/tests/test_http.py::test_mcat_cache FAILED [ 39%] fsspec/implementations/tests/test_http.py::test_mcat_expand FAILED [ 39%] fsspec/implementations/tests/test_http.py::test_info FAILED [ 39%] fsspec/implementations/tests/test_http.py::test_put_file[POST] FAILED [ 39%] fsspec/implementations/tests/test_http.py::test_put_file[PUT] FAILED [ 39%] fsspec/implementations/tests/test_http.py::test_docstring PASSED [ 39%] fsspec/implementations/tests/test_http.py::test_async_other_thread FAILED [ 39%] fsspec/implementations/tests/test_http.py::test_async_this_thread FAILED [ 39%] fsspec/implementations/tests/test_http.py::test_processes[spawn] FAILED [ 39%] fsspec/implementations/tests/test_http.py::test_processes[forkserver] FAILED [ 39%] fsspec/implementations/tests/test_http.py::test_close[get_aiohttp] PASSED [ 39%] fsspec/implementations/tests/test_http.py::test_close[get_proxy] PASSED [ 39%] fsspec/implementations/tests/test_http.py::test_async_file FAILED [ 39%] fsspec/implementations/tests/test_http.py::test_encoded FAILED [ 39%] fsspec/implementations/tests/test_http.py::test_with_cache FAILED [ 39%] fsspec/implementations/tests/test_http.py::test_async_expand_path FAILED [ 39%] fsspec/implementations/tests/test_http.py::test_async_walk FAILED [ 40%] fsspec/implementations/tests/test_jupyter.py::test_simple PASSED [ 40%] fsspec/implementations/tests/test_libarchive.py::test_cache SKIPPED [ 40%] fsspec/implementations/tests/test_local.py::test_urlpath_inference_strips_protocol PASSED [ 40%] fsspec/implementations/tests/test_local.py::test_urlpath_inference_errors SKIPPED [ 40%] fsspec/implementations/tests/test_local.py::test_urlpath_expand_read PASSED [ 40%] fsspec/implementations/tests/test_local.py::test_cats PASSED [ 40%] fsspec/implementations/tests/test_local.py::test_urlpath_expand_write PASSED [ 40%] fsspec/implementations/tests/test_local.py::test_open_files PASSED [ 40%] fsspec/implementations/tests/test_local.py::test_open_files_text_mode[utf-8] PASSED [ 40%] fsspec/implementations/tests/test_local.py::test_open_files_text_mode[ascii] PASSED [ 40%] fsspec/implementations/tests/test_local.py::test_compressions[None-rt] PASSED [ 40%] fsspec/implementations/tests/test_local.py::test_compressions[None-rb] PASSED [ 40%] fsspec/implementations/tests/test_local.py::test_compressions[zip-rt] PASSED [ 40%] fsspec/implementations/tests/test_local.py::test_compressions[zip-rb] PASSED [ 40%] fsspec/implementations/tests/test_local.py::test_compressions[bz2-rt] PASSED [ 40%] fsspec/implementations/tests/test_local.py::test_compressions[bz2-rb] PASSED [ 40%] fsspec/implementations/tests/test_local.py::test_compressions[gzip-rt] PASSED [ 40%] fsspec/implementations/tests/test_local.py::test_compressions[gzip-rb] PASSED [ 41%] fsspec/implementations/tests/test_local.py::test_compressions[lzma-rt] PASSED [ 41%] fsspec/implementations/tests/test_local.py::test_compressions[lzma-rb] PASSED [ 41%] fsspec/implementations/tests/test_local.py::test_compressions[xz-rt] PASSED [ 41%] fsspec/implementations/tests/test_local.py::test_compressions[xz-rb] PASSED [ 41%] fsspec/implementations/tests/test_local.py::test_compressions[snappy-rt] PASSED [ 41%] fsspec/implementations/tests/test_local.py::test_compressions[snappy-rb] PASSED [ 41%] fsspec/implementations/tests/test_local.py::test_compressions[lz4-rt] PASSED [ 41%] fsspec/implementations/tests/test_local.py::test_compressions[lz4-rb] PASSED [ 41%] fsspec/implementations/tests/test_local.py::test_compressions[zstd-rt] PASSED [ 41%] fsspec/implementations/tests/test_local.py::test_compressions[zstd-rb] PASSED [ 41%] fsspec/implementations/tests/test_local.py::test_bad_compression PASSED [ 41%] fsspec/implementations/tests/test_local.py::test_not_found PASSED [ 41%] fsspec/implementations/tests/test_local.py::test_isfile PASSED [ 41%] fsspec/implementations/tests/test_local.py::test_isdir PASSED [ 41%] fsspec/implementations/tests/test_local.py::test_open_files_write[compression_opener0] PASSED [ 41%] fsspec/implementations/tests/test_local.py::test_open_files_write[compression_opener1] PASSED [ 41%] fsspec/implementations/tests/test_local.py::test_pickability_of_lazy_files PASSED [ 41%] fsspec/implementations/tests/test_local.py::test_abs_paths PASSED [ 42%] fsspec/implementations/tests/test_local.py::test_glob_weird_characters[+-/] PASSED [ 42%] fsspec/implementations/tests/test_local.py::test_glob_weird_characters[+-\\] PASSED [ 42%] fsspec/implementations/tests/test_local.py::test_glob_weird_characters[++-/] PASSED [ 42%] fsspec/implementations/tests/test_local.py::test_glob_weird_characters[++-\\] PASSED [ 42%] fsspec/implementations/tests/test_local.py::test_glob_weird_characters[(-/] PASSED [ 42%] fsspec/implementations/tests/test_local.py::test_glob_weird_characters[(-\\] PASSED [ 42%] fsspec/implementations/tests/test_local.py::test_glob_weird_characters[)-/] PASSED [ 42%] fsspec/implementations/tests/test_local.py::test_glob_weird_characters[)-\\] PASSED [ 42%] fsspec/implementations/tests/test_local.py::test_glob_weird_characters[|-/] PASSED [ 42%] fsspec/implementations/tests/test_local.py::test_glob_weird_characters[|-\\] PASSED [ 42%] fsspec/implementations/tests/test_local.py::test_glob_weird_characters[\\-/] PASSED [ 42%] fsspec/implementations/tests/test_local.py::test_glob_weird_characters[\\-\\] PASSED [ 42%] fsspec/implementations/tests/test_local.py::test_globfind_dirs PASSED [ 42%] fsspec/implementations/tests/test_local.py::test_touch PASSED [ 42%] fsspec/implementations/tests/test_local.py::test_touch_truncate PASSED [ 42%] fsspec/implementations/tests/test_local.py::test_directories PASSED [ 42%] fsspec/implementations/tests/test_local.py::test_ls_on_file PASSED [ 42%] fsspec/implementations/tests/test_local.py::test_file_ops[] PASSED [ 43%] fsspec/implementations/tests/test_local.py::test_file_ops[file://] PASSED [ 43%] fsspec/implementations/tests/test_local.py::test_recursive_get_put PASSED [ 43%] fsspec/implementations/tests/test_local.py::test_commit_discard PASSED [ 43%] fsspec/implementations/tests/test_local.py::test_make_path_posix PASSED [ 43%] fsspec/implementations/tests/test_local.py::test_make_path_posix_returns_absolute_paths[/abc/def] PASSED [ 43%] fsspec/implementations/tests/test_local.py::test_make_path_posix_returns_absolute_paths[abc/def] PASSED [ 43%] fsspec/implementations/tests/test_local.py::test_make_path_posix_returns_absolute_paths[] PASSED [ 43%] fsspec/implementations/tests/test_local.py::test_make_path_posix_returns_absolute_paths[.] PASSED [ 43%] fsspec/implementations/tests/test_local.py::test_make_path_posix_returns_absolute_paths[//server/share/] PASSED [ 43%] fsspec/implementations/tests/test_local.py::test_make_path_posix_returns_absolute_paths[\\\\server\\share\\] PASSED [ 43%] fsspec/implementations/tests/test_local.py::test_make_path_posix_returns_absolute_paths[C:\\] PASSED [ 43%] fsspec/implementations/tests/test_local.py::test_make_path_posix_returns_absolute_paths[d:/abc/def] PASSED [ 43%] fsspec/implementations/tests/test_local.py::test_make_path_posix_returns_absolute_paths[e:] PASSED [ 43%] fsspec/implementations/tests/test_local.py::test_make_path_posix_returns_absolute_paths[\\\\server\\share] PASSED [ 43%] fsspec/implementations/tests/test_local.py::test_make_path_posix_returns_absolute_paths[relative-path-with-drive] PASSED [ 43%] fsspec/implementations/tests/test_local.py::test_make_path_posix_set_list_tuple[list] PASSED [ 43%] fsspec/implementations/tests/test_local.py::test_make_path_posix_set_list_tuple[set] PASSED [ 43%] fsspec/implementations/tests/test_local.py::test_make_path_posix_set_list_tuple[tuple] PASSED [ 44%] fsspec/implementations/tests/test_local.py::test_make_path_posix_wrong_type[1] PASSED [ 44%] fsspec/implementations/tests/test_local.py::test_make_path_posix_wrong_type[True] PASSED [ 44%] fsspec/implementations/tests/test_local.py::test_make_path_posix_wrong_type[None] PASSED [ 44%] fsspec/implementations/tests/test_local.py::test_make_path_posix_wrong_type[obj3] PASSED [ 44%] fsspec/implementations/tests/test_local.py::test_parent PASSED [ 44%] fsspec/implementations/tests/test_local.py::test_parent_edge_cases[/-/] PASSED [ 44%] fsspec/implementations/tests/test_local.py::test_parent_edge_cases[/.-/] PASSED [ 44%] fsspec/implementations/tests/test_local.py::test_parent_edge_cases[/./-/] PASSED [ 44%] fsspec/implementations/tests/test_local.py::test_parent_edge_cases[file:/-/] PASSED [ 44%] fsspec/implementations/tests/test_local.py::test_parent_edge_cases[file:///-/] PASSED [ 44%] fsspec/implementations/tests/test_local.py::test_parent_edge_cases[local:/-/] PASSED [ 44%] fsspec/implementations/tests/test_local.py::test_parent_edge_cases[local:///-/] PASSED [ 44%] fsspec/implementations/tests/test_local.py::test_parent_edge_cases[/file or folder-/] PASSED [ 44%] fsspec/implementations/tests/test_local.py::test_parent_edge_cases[/file or folder/-/] PASSED [ 44%] fsspec/implementations/tests/test_local.py::test_parent_edge_cases[file:///path-/] PASSED [ 44%] fsspec/implementations/tests/test_local.py::test_parent_edge_cases[file://c/-{cwd}] PASSED [ 44%] fsspec/implementations/tests/test_local.py::test_linked_files PASSED [ 44%] fsspec/implementations/tests/test_local.py::test_linked_files_exists PASSED [ 44%] fsspec/implementations/tests/test_local.py::test_linked_directories PASSED [ 45%] fsspec/implementations/tests/test_local.py::test_isfilestore PASSED [ 45%] fsspec/implementations/tests/test_local.py::test_pickle PASSED [ 45%] fsspec/implementations/tests/test_local.py::test_strip_protocol_expanduser[file://~/foo/bar-{user_home}/foo/bar] PASSED [ 45%] fsspec/implementations/tests/test_local.py::test_strip_protocol_expanduser[~/foo/bar-{user_home}/foo/bar] PASSED [ 45%] fsspec/implementations/tests/test_local.py::test_strip_protocol_expanduser[~\\foo\\bar-{user_home}/foo/bar] SKIPPED [ 45%] fsspec/implementations/tests/test_local.py::test_strip_protocol_expanduser[file://~\\foo\\bar-{user_home}/foo/bar] SKIPPED [ 45%] fsspec/implementations/tests/test_local.py::test_strip_protocol_relative_paths[file://-{cwd}] PASSED [ 45%] fsspec/implementations/tests/test_local.py::test_strip_protocol_relative_paths[file://.-{cwd}] PASSED [ 45%] fsspec/implementations/tests/test_local.py::test_strip_protocol_relative_paths[file://./-{cwd}] PASSED [ 45%] fsspec/implementations/tests/test_local.py::test_strip_protocol_relative_paths[./-{cwd}] PASSED [ 45%] fsspec/implementations/tests/test_local.py::test_strip_protocol_relative_paths[file:path-{cwd}/path] PASSED [ 45%] fsspec/implementations/tests/test_local.py::test_strip_protocol_relative_paths[file://path-{cwd}/path] PASSED [ 45%] fsspec/implementations/tests/test_local.py::test_strip_protocol_relative_paths[path-{cwd}/path] PASSED [ 45%] fsspec/implementations/tests/test_local.py::test_strip_protocol_relative_paths[./path-{cwd}/path] PASSED [ 45%] fsspec/implementations/tests/test_local.py::test_strip_protocol_relative_paths[.\\-{cwd}] SKIPPED [ 45%] fsspec/implementations/tests/test_local.py::test_strip_protocol_relative_paths[file://.\\path-{cwd}/path] SKIPPED [ 45%] fsspec/implementations/tests/test_local.py::test_strip_protocol_no_authority[file:/foo/bar-/foo/bar] PASSED [ 45%] fsspec/implementations/tests/test_local.py::test_strip_protocol_no_authority[file:/foo/bar-{current_drive}/foo/bar] SKIPPED [ 46%] fsspec/implementations/tests/test_local.py::test_strip_protocol_no_authority[file:\\foo\\bar-{current_drive}/foo/bar] SKIPPED [ 46%] fsspec/implementations/tests/test_local.py::test_strip_protocol_no_authority[file:D:\\path\\file-D:/path/file] SKIPPED [ 46%] fsspec/implementations/tests/test_local.py::test_strip_protocol_no_authority[file:/D:\\path\\file-D:/path/file] SKIPPED [ 46%] fsspec/implementations/tests/test_local.py::test_strip_protocol_no_authority[file://D:\\path\\file-D:/path/file] SKIPPED [ 46%] fsspec/implementations/tests/test_local.py::test_strip_protocol_absolute_paths[file:/path-/path] PASSED [ 46%] fsspec/implementations/tests/test_local.py::test_strip_protocol_absolute_paths[file:///path-/path] PASSED [ 46%] fsspec/implementations/tests/test_local.py::test_strip_protocol_absolute_paths[file:////path-//path] PASSED [ 46%] fsspec/implementations/tests/test_local.py::test_strip_protocol_absolute_paths[local:/path-/path] PASSED [ 46%] fsspec/implementations/tests/test_local.py::test_strip_protocol_absolute_paths[s3://bucket/key-{cwd}/s3://bucket/key] PASSED [ 46%] fsspec/implementations/tests/test_local.py::test_strip_protocol_absolute_paths[/path-/path] PASSED [ 46%] fsspec/implementations/tests/test_local.py::test_strip_protocol_absolute_paths[file:///-/] PASSED [ 46%] fsspec/implementations/tests/test_local.py::test_strip_protocol_legacy_dos_uris[file:c|/path-c:/path] SKIPPED [ 46%] fsspec/implementations/tests/test_local.py::test_strip_protocol_legacy_dos_uris[file:/D|/path-D:/path] SKIPPED [ 46%] fsspec/implementations/tests/test_local.py::test_strip_protocol_legacy_dos_uris[file:///C|/path-C:/path] SKIPPED [ 46%] fsspec/implementations/tests/test_local.py::test_strip_protocol_windows_remote_shares[file://remote/share/pth-{cwd}/remote/share/pth] PASSED [ 46%] fsspec/implementations/tests/test_local.py::test_strip_protocol_windows_remote_shares[file:////remote/share/pth-//remote/share/pth] PASSED [ 46%] fsspec/implementations/tests/test_local.py::test_strip_protocol_windows_remote_shares[file://///remote/share/pth-///remote/share/pth] PASSED [ 46%] fsspec/implementations/tests/test_local.py::test_strip_protocol_windows_remote_shares[//remote/share/pth-//remote/share/pth] PASSED [ 47%] fsspec/implementations/tests/test_local.py::test_strip_protocol_windows_remote_shares[\\\\remote\\share\\pth-//remote/share/pth] SKIPPED [ 47%] fsspec/implementations/tests/test_local.py::test_mkdir_twice_faile PASSED [ 47%] fsspec/implementations/tests/test_local.py::test_iterable PASSED [ 47%] fsspec/implementations/tests/test_local.py::test_mv_empty PASSED [ 47%] fsspec/implementations/tests/test_local.py::test_mv_recursive PASSED [ 47%] fsspec/implementations/tests/test_local.py::test_copy_errors PASSED [ 47%] fsspec/implementations/tests/test_local.py::test_transaction PASSED [ 47%] fsspec/implementations/tests/test_local.py::test_delete_cwd PASSED [ 47%] fsspec/implementations/tests/test_local.py::test_delete_non_recursive_dir_fails PASSED [ 47%] fsspec/implementations/tests/test_local.py::test_infer_compression[open-.bz2] PASSED [ 47%] fsspec/implementations/tests/test_local.py::test_infer_compression[open-.gz] PASSED [ 47%] fsspec/implementations/tests/test_local.py::test_infer_compression[open-] PASSED [ 47%] fsspec/implementations/tests/test_local.py::test_info_path_like PASSED [ 47%] fsspec/implementations/tests/test_local.py::test_seekable PASSED [ 47%] fsspec/implementations/tests/test_local.py::test_numpy_fromfile PASSED [ 47%] fsspec/implementations/tests/test_local.py::test_link PASSED [ 47%] fsspec/implementations/tests/test_local.py::test_symlink PASSED [ 47%] fsspec/implementations/tests/test_local.py::test_put_file_to_dir PASSED [ 48%] fsspec/implementations/tests/test_local.py::test_du PASSED [ 48%] fsspec/implementations/tests/test_local.py::test_cp_get_put_directory_recursive[cp] PASSED [ 48%] fsspec/implementations/tests/test_local.py::test_cp_get_put_directory_recursive[get] PASSED [ 48%] fsspec/implementations/tests/test_local.py::test_cp_get_put_directory_recursive[put] PASSED [ 48%] fsspec/implementations/tests/test_local.py::test_cp_get_put_empty_directory[cp] PASSED [ 48%] fsspec/implementations/tests/test_local.py::test_cp_get_put_empty_directory[get] PASSED [ 48%] fsspec/implementations/tests/test_local.py::test_cp_get_put_empty_directory[put] PASSED [ 48%] fsspec/implementations/tests/test_local.py::test_cp_two_files PASSED [ 48%] fsspec/implementations/tests/test_local.py::test_issue_1447 PASSED [ 48%] fsspec/implementations/tests/test_memory.py::test_1 PASSED [ 48%] fsspec/implementations/tests/test_memory.py::test_strip PASSED [ 48%] fsspec/implementations/tests/test_memory.py::test_ls PASSED [ 48%] fsspec/implementations/tests/test_memory.py::test_directories PASSED [ 48%] fsspec/implementations/tests/test_memory.py::test_exists_isdir_isfile PASSED [ 48%] fsspec/implementations/tests/test_memory.py::test_touch PASSED [ 48%] fsspec/implementations/tests/test_memory.py::test_mv_recursive PASSED [ 48%] fsspec/implementations/tests/test_memory.py::test_mv_same_paths PASSED [ 48%] fsspec/implementations/tests/test_memory.py::test_rm_no_pseudo_dir PASSED [ 49%] fsspec/implementations/tests/test_memory.py::test_rewind PASSED [ 49%] fsspec/implementations/tests/test_memory.py::test_empty_raises PASSED [ 49%] fsspec/implementations/tests/test_memory.py::test_dir_errors PASSED [ 49%] fsspec/implementations/tests/test_memory.py::test_no_rewind_append_mode PASSED [ 49%] fsspec/implementations/tests/test_memory.py::test_moves PASSED [ 49%] fsspec/implementations/tests/test_memory.py::test_rm_reursive_empty_subdir PASSED [ 49%] fsspec/implementations/tests/test_memory.py::test_seekable PASSED [ 49%] fsspec/implementations/tests/test_memory.py::test_open_mode[r] PASSED [ 49%] fsspec/implementations/tests/test_memory.py::test_open_mode[rb] PASSED [ 49%] fsspec/implementations/tests/test_memory.py::test_open_mode[w] PASSED [ 49%] fsspec/implementations/tests/test_memory.py::test_open_mode[wb] PASSED [ 49%] fsspec/implementations/tests/test_memory.py::test_open_mode[ab] PASSED [ 49%] fsspec/implementations/tests/test_memory.py::test_open_mode[r+b] PASSED [ 49%] fsspec/implementations/tests/test_memory.py::test_remove_all PASSED [ 49%] fsspec/implementations/tests/test_memory.py::test_cp_directory_recursive PASSED [ 49%] fsspec/implementations/tests/test_memory.py::test_get_directory_recursive PASSED [ 49%] fsspec/implementations/tests/test_memory.py::test_put_directory_recursive PASSED [ 49%] fsspec/implementations/tests/test_memory.py::test_cp_empty_directory PASSED [ 50%] fsspec/implementations/tests/test_memory.py::test_cp_two_files PASSED [ 50%] fsspec/implementations/tests/test_memory.py::test_open_path_posix PASSED [ 50%] fsspec/implementations/tests/test_memory.py::test_open_path_windows PASSED [ 50%] fsspec/implementations/tests/test_reference.py::test_simple FAILED [ 50%] fsspec/implementations/tests/test_reference.py::test_simple_ver1 FAILED [ 50%] fsspec/implementations/tests/test_reference.py::test_target_options PASSED [ 50%] fsspec/implementations/tests/test_reference.py::test_ls PASSED [ 50%] fsspec/implementations/tests/test_reference.py::test_nested_dirs_ls PASSED [ 50%] fsspec/implementations/tests/test_reference.py::test_info FAILED [ 50%] fsspec/implementations/tests/test_reference.py::test_mutable PASSED [ 50%] fsspec/implementations/tests/test_reference.py::test_put_get PASSED [ 50%] fsspec/implementations/tests/test_reference.py::test_put_get_single PASSED [ 50%] fsspec/implementations/tests/test_reference.py::test_defaults FAILED [ 50%] fsspec/implementations/tests/test_reference.py::test_spec1_expand PASSED [ 50%] fsspec/implementations/tests/test_reference.py::test_spec1_expand_simple PASSED [ 50%] fsspec/implementations/tests/test_reference.py::test_spec1_gen_variants PASSED [ 50%] fsspec/implementations/tests/test_reference.py::test_empty PASSED [ 50%] fsspec/implementations/tests/test_reference.py::test_get_sync PASSED [ 50%] fsspec/implementations/tests/test_reference.py::test_multi_fs_provided PASSED [ 51%] fsspec/implementations/tests/test_reference.py::test_multi_fs_created PASSED [ 51%] fsspec/implementations/tests/test_reference.py::test_missing_nonasync PASSED [ 51%] fsspec/implementations/tests/test_reference.py::test_fss_has_defaults PASSED [ 51%] fsspec/implementations/tests/test_reference.py::test_merging PASSED [ 51%] fsspec/implementations/tests/test_reference.py::test_cat_file_ranges PASSED [ 51%] fsspec/implementations/tests/test_reference.py::test_cat_missing[memory protocol] PASSED [ 51%] fsspec/implementations/tests/test_reference.py::test_cat_missing[mixed protocols: memory and unspecified] PASSED [ 51%] fsspec/implementations/tests/test_reference.py::test_df_single SKIPPED [ 51%] fsspec/implementations/tests/test_reference.py::test_df_multi SKIPPED [ 51%] fsspec/implementations/tests/test_reference.py::test_mapping_getitems PASSED [ 51%] fsspec/implementations/tests/test_reference.py::test_cached PASSED [ 51%] fsspec/implementations/tests/test_reference.py::test_append_parquet SKIPPED [ 51%] fsspec/implementations/tests/test_reference.py::test_deep_parq[fastparquet] SKIPPED [ 51%] fsspec/implementations/tests/test_reference.py::test_deep_parq[pyarrow] SKIPPED [ 51%] fsspec/implementations/tests/test_reference.py::test_parquet_no_data PASSED [ 51%] fsspec/implementations/tests/test_reference.py::test_parquet_no_references PASSED [ 51%] fsspec/implementations/tests/test_sftp.py::test_simple SKIPPED (dock...) [ 51%] fsspec/implementations/tests/test_sftp.py::test_with_url[sftp] SKIPPED [ 52%] fsspec/implementations/tests/test_sftp.py::test_with_url[ssh] SKIPPED [ 52%] fsspec/implementations/tests/test_sftp.py::test_get_dir[sftp] SKIPPED [ 52%] fsspec/implementations/tests/test_sftp.py::test_get_dir[ssh] SKIPPED [ 52%] fsspec/implementations/tests/test_sftp.py::test_put_file SKIPPED (do...) [ 52%] fsspec/implementations/tests/test_sftp.py::test_simple_with_tar SKIPPED [ 52%] fsspec/implementations/tests/test_sftp.py::test_transaction SKIPPED [ 52%] fsspec/implementations/tests/test_sftp.py::test_mkdir_create_parent[/a/b/c] SKIPPED [ 52%] fsspec/implementations/tests/test_sftp.py::test_mkdir_create_parent[a/b/c] SKIPPED [ 52%] fsspec/implementations/tests/test_sftp.py::test_makedirs_exist_ok[/a/b/c] SKIPPED [ 52%] fsspec/implementations/tests/test_sftp.py::test_makedirs_exist_ok[a/b/c] SKIPPED [ 52%] fsspec/implementations/tests/test_smb.py::test_simple[None] SKIPPED [ 52%] fsspec/implementations/tests/test_smb.py::test_auto_mkdir[None] SKIPPED [ 52%] fsspec/implementations/tests/test_smb.py::test_with_url[None] SKIPPED [ 52%] fsspec/implementations/tests/test_smb.py::test_transaction[None] SKIPPED [ 52%] fsspec/implementations/tests/test_smb.py::test_makedirs_exist_ok[None] SKIPPED [ 52%] fsspec/implementations/tests/test_smb.py::test_rename_from_upath[None] SKIPPED [ 52%] fsspec/implementations/tests/test_smb.py::test_simple[445] SKIPPED (...) [ 52%] fsspec/implementations/tests/test_smb.py::test_auto_mkdir[445] SKIPPED [ 53%] fsspec/implementations/tests/test_smb.py::test_with_url[445] SKIPPED [ 53%] fsspec/implementations/tests/test_smb.py::test_transaction[445] SKIPPED [ 53%] fsspec/implementations/tests/test_smb.py::test_makedirs_exist_ok[445] SKIPPED [ 53%] fsspec/implementations/tests/test_smb.py::test_rename_from_upath[445] SKIPPED [ 53%] fsspec/implementations/tests/test_smb.py::test_simple[9999] SKIPPED [ 53%] fsspec/implementations/tests/test_smb.py::test_auto_mkdir[9999] SKIPPED [ 53%] fsspec/implementations/tests/test_smb.py::test_with_url[9999] SKIPPED [ 53%] fsspec/implementations/tests/test_smb.py::test_transaction[9999] SKIPPED [ 53%] fsspec/implementations/tests/test_smb.py::test_makedirs_exist_ok[9999] SKIPPED [ 53%] fsspec/implementations/tests/test_smb.py::test_rename_from_upath[9999] SKIPPED [ 53%] fsspec/implementations/tests/test_tar.py::test_info PASSED [ 53%] fsspec/implementations/tests/test_tar.py::test_compressions[tar] PASSED [ 53%] fsspec/implementations/tests/test_tar.py::test_compressions[tar-gz] PASSED [ 53%] fsspec/implementations/tests/test_tar.py::test_compressions[tar-bz2] PASSED [ 53%] fsspec/implementations/tests/test_tar.py::test_compressions[tar-xz] PASSED [ 53%] fsspec/implementations/tests/test_tar.py::test_filesystem_direct[tar] PASSED [ 53%] fsspec/implementations/tests/test_tar.py::test_filesystem_direct[tar-gz] PASSED [ 53%] fsspec/implementations/tests/test_tar.py::test_filesystem_direct[tar-bz2] PASSED [ 54%] fsspec/implementations/tests/test_tar.py::test_filesystem_direct[tar-xz] PASSED [ 54%] fsspec/implementations/tests/test_tar.py::test_filesystem_cached[tar] PASSED [ 54%] fsspec/implementations/tests/test_tar.py::test_filesystem_cached[tar-gz] PASSED [ 54%] fsspec/implementations/tests/test_tar.py::test_filesystem_cached[tar-bz2] PASSED [ 54%] fsspec/implementations/tests/test_tar.py::test_filesystem_cached[tar-xz] PASSED [ 54%] fsspec/implementations/tests/test_tar.py::test_url_to_fs_direct[tar] PASSED [ 54%] fsspec/implementations/tests/test_tar.py::test_url_to_fs_direct[tar-gz] PASSED [ 54%] fsspec/implementations/tests/test_tar.py::test_url_to_fs_direct[tar-bz2] PASSED [ 54%] fsspec/implementations/tests/test_tar.py::test_url_to_fs_direct[tar-xz] PASSED [ 54%] fsspec/implementations/tests/test_tar.py::test_url_to_fs_cached[tar] PASSED [ 54%] fsspec/implementations/tests/test_tar.py::test_url_to_fs_cached[tar-gz] PASSED [ 54%] fsspec/implementations/tests/test_tar.py::test_url_to_fs_cached[tar-bz2] PASSED [ 54%] fsspec/implementations/tests/test_tar.py::test_url_to_fs_cached[tar-xz] PASSED [ 54%] fsspec/implementations/tests/test_tar.py::test_ls_with_folders[tar] PASSED [ 54%] fsspec/implementations/tests/test_tar.py::test_ls_with_folders[tar-gz] PASSED [ 54%] fsspec/implementations/tests/test_tar.py::test_ls_with_folders[tar-bz2] PASSED [ 54%] fsspec/implementations/tests/test_tar.py::test_ls_with_folders[tar-xz] PASSED [ 54%] fsspec/implementations/tests/test_webhdfs.py::test_pickle SKIPPED (h...) [ 55%] fsspec/implementations/tests/test_webhdfs.py::test_simple SKIPPED (h...) [ 55%] fsspec/implementations/tests/test_webhdfs.py::test_url SKIPPED (htcl...) [ 55%] fsspec/implementations/tests/test_webhdfs.py::test_workflow SKIPPED [ 55%] fsspec/implementations/tests/test_webhdfs.py::test_with_gzip SKIPPED [ 55%] fsspec/implementations/tests/test_webhdfs.py::test_workflow_transaction SKIPPED [ 55%] fsspec/implementations/tests/test_webhdfs.py::test_webhdfs_cp_file SKIPPED [ 55%] fsspec/implementations/tests/test_webhdfs.py::test_path_with_equals SKIPPED [ 55%] fsspec/implementations/tests/test_webhdfs.py::test_error_handling_with_equals_in_path SKIPPED [ 55%] fsspec/implementations/tests/test_webhdfs.py::test_create_and_touch_file_with_equals SKIPPED [ 55%] fsspec/implementations/tests/test_webhdfs.py::test_write_read_verify_file_with_equals SKIPPED [ 55%] fsspec/implementations/tests/test_webhdfs.py::test_protocol_prefixed_path SKIPPED [ 55%] fsspec/implementations/tests/test_zip.py::test_info PASSED [ 55%] fsspec/implementations/tests/test_zip.py::test_fsspec_get_mapper PASSED [ 55%] fsspec/implementations/tests/test_zip.py::test_not_cached PASSED [ 55%] fsspec/implementations/tests/test_zip.py::test_root_info PASSED [ 55%] fsspec/implementations/tests/test_zip.py::test_write_seek PASSED [ 55%] fsspec/implementations/tests/test_zip.py::test_rw PASSED [ 55%] fsspec/implementations/tests/test_zip.py::test_mapper PASSED [ 55%] fsspec/implementations/tests/test_zip.py::test_zip_glob_star PASSED [ 56%] fsspec/implementations/tests/test_zip.py::test_append PASSED [ 56%] fsspec/implementations/tests/test_zip.py::test_find_returns_expected_result_detail_true PASSED [ 56%] fsspec/implementations/tests/test_zip.py::test_find_returns_expected_result_detail_false PASSED [ 56%] fsspec/implementations/tests/test_zip.py::test_find_returns_expected_result_detail_true_include_dirs PASSED [ 56%] fsspec/implementations/tests/test_zip.py::test_find_returns_expected_result_detail_false_include_dirs PASSED [ 56%] fsspec/implementations/tests/test_zip.py::test_find_returns_expected_result_path_set PASSED [ 56%] fsspec/implementations/tests/test_zip.py::test_find_with_and_without_slash_should_return_same_result PASSED [ 56%] fsspec/implementations/tests/test_zip.py::test_find_should_return_file_if_exact_match PASSED [ 56%] fsspec/implementations/tests/test_zip.py::test_find_returns_expected_result_recursion_depth_set PASSED [ 56%] fsspec/tests/test_api.py::test_idempotent PASSED [ 56%] fsspec/tests/test_api.py::test_pickle PASSED [ 56%] fsspec/tests/test_api.py::test_class_methods PASSED [ 56%] fsspec/tests/test_api.py::test_multi PASSED [ 56%] fsspec/tests/test_api.py::test_get_put PASSED [ 56%] fsspec/tests/test_api.py::test_du PASSED [ 56%] fsspec/tests/test_api.py::test_head_tail PASSED [ 56%] fsspec/tests/test_api.py::test_move PASSED [ 56%] fsspec/tests/test_api.py::test_recursive_get_put PASSED [ 57%] fsspec/tests/test_api.py::test_pipe_cat PASSED [ 57%] fsspec/tests/test_api.py::test_read_block_delimiter PASSED [ 57%] fsspec/tests/test_api.py::test_open_text PASSED [ 57%] fsspec/tests/test_api.py::test_read_text PASSED [ 57%] fsspec/tests/test_api.py::test_write_text PASSED [ 57%] fsspec/tests/test_api.py::test_chained_fs PASSED [ 57%] fsspec/tests/test_api.py::test_multilevel_chained_fs XFAIL (see issu...) [ 57%] fsspec/tests/test_api.py::test_multilevel_chained_fs_zip_zip_file PASSED [ 57%] fsspec/tests/test_api.py::test_chained_equivalent PASSED [ 57%] fsspec/tests/test_api.py::test_chained_fs_multi PASSED [ 57%] fsspec/tests/test_api.py::test_chained_fo PASSED [ 57%] fsspec/tests/test_api.py::test_url_to_fs PASSED [ 57%] fsspec/tests/test_api.py::test_walk PASSED [ 57%] fsspec/tests/test_async.py::test_sync_methods PASSED [ 57%] fsspec/tests/test_async.py::test_when_sync_methods_are_disabled PASSED [ 57%] fsspec/tests/test_async.py::test_interrupt PASSED [ 57%] fsspec/tests/test_async.py::test_sync_wrapper_timeout_on_less_than_expected_wait_time_not_finish_function PASSED [ 57%] fsspec/tests/test_async.py::test_sync_wrapper_timeout_on_more_than_expected_wait_time_will_finish_function PASSED [ 58%] fsspec/tests/test_async.py::test_sync_wrapper_timeout_none_will_wait_func_finished PASSED [ 58%] fsspec/tests/test_async.py::test_sync_wrapper_treat_timeout_0_as_none PASSED [ 58%] fsspec/tests/test_async.py::test_sync_wrapper_bad_multiple_sync PASSED [ 58%] fsspec/tests/test_async.py::test_run_coros_in_chunks PASSED [ 58%] fsspec/tests/test_async.py::test_windows_policy SKIPPED (only for wi...) [ 58%] fsspec/tests/test_async.py::test_running_async PASSED [ 58%] fsspec/tests/test_async.py::test_async_streamed_file_write PASSED [ 58%] fsspec/tests/test_async.py::test_async_streamed_file_read PASSED [ 58%] fsspec/tests/test_caches.py::test_cache_getitem[BaseCache] PASSED [ 58%] fsspec/tests/test_caches.py::test_cache_getitem[none] PASSED [ 58%] fsspec/tests/test_caches.py::test_cache_getitem[mmap] PASSED [ 58%] fsspec/tests/test_caches.py::test_cache_getitem[bytes] PASSED [ 58%] fsspec/tests/test_caches.py::test_cache_getitem[readahead] PASSED [ 58%] fsspec/tests/test_caches.py::test_cache_getitem[blockcache] PASSED [ 58%] fsspec/tests/test_caches.py::test_cache_getitem[first] PASSED [ 58%] fsspec/tests/test_caches.py::test_cache_getitem[all] PASSED [ 58%] fsspec/tests/test_caches.py::test_cache_getitem[background] PASSED [ 58%] fsspec/tests/test_caches.py::test_block_cache_lru PASSED [ 59%] fsspec/tests/test_caches.py::test_first_cache PASSED [ 59%] fsspec/tests/test_caches.py::test_readahead_cache PASSED [ 59%] fsspec/tests/test_caches.py::test_cache_empty_file[BaseCache] PASSED [ 59%] fsspec/tests/test_caches.py::test_cache_empty_file[none] PASSED [ 59%] fsspec/tests/test_caches.py::test_cache_empty_file[mmap] PASSED [ 59%] fsspec/tests/test_caches.py::test_cache_empty_file[bytes] PASSED [ 59%] fsspec/tests/test_caches.py::test_cache_empty_file[readahead] PASSED [ 59%] fsspec/tests/test_caches.py::test_cache_empty_file[blockcache] PASSED [ 59%] fsspec/tests/test_caches.py::test_cache_empty_file[first] PASSED [ 59%] fsspec/tests/test_caches.py::test_cache_empty_file[all] PASSED [ 59%] fsspec/tests/test_caches.py::test_cache_empty_file[background] PASSED [ 59%] fsspec/tests/test_caches.py::test_cache_pickleable[BaseCache] PASSED [ 59%] fsspec/tests/test_caches.py::test_cache_pickleable[none] PASSED [ 59%] fsspec/tests/test_caches.py::test_cache_pickleable[mmap] PASSED [ 59%] fsspec/tests/test_caches.py::test_cache_pickleable[bytes] PASSED [ 59%] fsspec/tests/test_caches.py::test_cache_pickleable[readahead] PASSED [ 59%] fsspec/tests/test_caches.py::test_cache_pickleable[blockcache] PASSED [ 59%] fsspec/tests/test_caches.py::test_cache_pickleable[first] PASSED [ 60%] fsspec/tests/test_caches.py::test_cache_pickleable[all] PASSED [ 60%] fsspec/tests/test_caches.py::test_cache_pickleable[background] PASSED [ 60%] fsspec/tests/test_caches.py::test_cache_basic[BaseCache-1-size_requests0] PASSED [ 60%] fsspec/tests/test_caches.py::test_cache_basic[BaseCache-1-size_requests1] PASSED [ 60%] fsspec/tests/test_caches.py::test_cache_basic[BaseCache-1-size_requests2] PASSED [ 60%] fsspec/tests/test_caches.py::test_cache_basic[BaseCache-10-size_requests0] PASSED [ 60%] fsspec/tests/test_caches.py::test_cache_basic[BaseCache-10-size_requests1] PASSED [ 60%] fsspec/tests/test_caches.py::test_cache_basic[BaseCache-10-size_requests2] PASSED [ 60%] fsspec/tests/test_caches.py::test_cache_basic[BaseCache-52-size_requests0] PASSED [ 60%] fsspec/tests/test_caches.py::test_cache_basic[BaseCache-52-size_requests1] PASSED [ 60%] fsspec/tests/test_caches.py::test_cache_basic[BaseCache-52-size_requests2] PASSED [ 60%] fsspec/tests/test_caches.py::test_cache_basic[BaseCache-100-size_requests0] PASSED [ 60%] fsspec/tests/test_caches.py::test_cache_basic[BaseCache-100-size_requests1] PASSED [ 60%] fsspec/tests/test_caches.py::test_cache_basic[BaseCache-100-size_requests2] PASSED [ 60%] fsspec/tests/test_caches.py::test_cache_basic[none-1-size_requests0] PASSED [ 60%] fsspec/tests/test_caches.py::test_cache_basic[none-1-size_requests1] PASSED [ 60%] fsspec/tests/test_caches.py::test_cache_basic[none-1-size_requests2] PASSED [ 60%] fsspec/tests/test_caches.py::test_cache_basic[none-10-size_requests0] PASSED [ 61%] fsspec/tests/test_caches.py::test_cache_basic[none-10-size_requests1] PASSED [ 61%] fsspec/tests/test_caches.py::test_cache_basic[none-10-size_requests2] PASSED [ 61%] fsspec/tests/test_caches.py::test_cache_basic[none-52-size_requests0] PASSED [ 61%] fsspec/tests/test_caches.py::test_cache_basic[none-52-size_requests1] PASSED [ 61%] fsspec/tests/test_caches.py::test_cache_basic[none-52-size_requests2] PASSED [ 61%] fsspec/tests/test_caches.py::test_cache_basic[none-100-size_requests0] PASSED [ 61%] fsspec/tests/test_caches.py::test_cache_basic[none-100-size_requests1] PASSED [ 61%] fsspec/tests/test_caches.py::test_cache_basic[none-100-size_requests2] PASSED [ 61%] fsspec/tests/test_caches.py::test_cache_basic[mmap-1-size_requests0] PASSED [ 61%] fsspec/tests/test_caches.py::test_cache_basic[mmap-1-size_requests1] PASSED [ 61%] fsspec/tests/test_caches.py::test_cache_basic[mmap-1-size_requests2] PASSED [ 61%] fsspec/tests/test_caches.py::test_cache_basic[mmap-10-size_requests0] PASSED [ 61%] fsspec/tests/test_caches.py::test_cache_basic[mmap-10-size_requests1] PASSED [ 61%] fsspec/tests/test_caches.py::test_cache_basic[mmap-10-size_requests2] PASSED [ 61%] fsspec/tests/test_caches.py::test_cache_basic[mmap-52-size_requests0] PASSED [ 61%] fsspec/tests/test_caches.py::test_cache_basic[mmap-52-size_requests1] PASSED [ 61%] fsspec/tests/test_caches.py::test_cache_basic[mmap-52-size_requests2] PASSED [ 61%] fsspec/tests/test_caches.py::test_cache_basic[mmap-100-size_requests0] PASSED [ 61%] fsspec/tests/test_caches.py::test_cache_basic[mmap-100-size_requests1] PASSED [ 62%] fsspec/tests/test_caches.py::test_cache_basic[mmap-100-size_requests2] PASSED [ 62%] fsspec/tests/test_caches.py::test_cache_basic[bytes-1-size_requests0] PASSED [ 62%] fsspec/tests/test_caches.py::test_cache_basic[bytes-1-size_requests1] PASSED [ 62%] fsspec/tests/test_caches.py::test_cache_basic[bytes-1-size_requests2] PASSED [ 62%] fsspec/tests/test_caches.py::test_cache_basic[bytes-10-size_requests0] PASSED [ 62%] fsspec/tests/test_caches.py::test_cache_basic[bytes-10-size_requests1] PASSED [ 62%] fsspec/tests/test_caches.py::test_cache_basic[bytes-10-size_requests2] PASSED [ 62%] fsspec/tests/test_caches.py::test_cache_basic[bytes-52-size_requests0] PASSED [ 62%] fsspec/tests/test_caches.py::test_cache_basic[bytes-52-size_requests1] PASSED [ 62%] fsspec/tests/test_caches.py::test_cache_basic[bytes-52-size_requests2] PASSED [ 62%] fsspec/tests/test_caches.py::test_cache_basic[bytes-100-size_requests0] PASSED [ 62%] fsspec/tests/test_caches.py::test_cache_basic[bytes-100-size_requests1] PASSED [ 62%] fsspec/tests/test_caches.py::test_cache_basic[bytes-100-size_requests2] PASSED [ 62%] fsspec/tests/test_caches.py::test_cache_basic[readahead-1-size_requests0] PASSED [ 62%] fsspec/tests/test_caches.py::test_cache_basic[readahead-1-size_requests1] PASSED [ 62%] fsspec/tests/test_caches.py::test_cache_basic[readahead-1-size_requests2] PASSED [ 62%] fsspec/tests/test_caches.py::test_cache_basic[readahead-10-size_requests0] PASSED [ 62%] fsspec/tests/test_caches.py::test_cache_basic[readahead-10-size_requests1] PASSED [ 63%] fsspec/tests/test_caches.py::test_cache_basic[readahead-10-size_requests2] PASSED [ 63%] fsspec/tests/test_caches.py::test_cache_basic[readahead-52-size_requests0] PASSED [ 63%] fsspec/tests/test_caches.py::test_cache_basic[readahead-52-size_requests1] PASSED [ 63%] fsspec/tests/test_caches.py::test_cache_basic[readahead-52-size_requests2] PASSED [ 63%] fsspec/tests/test_caches.py::test_cache_basic[readahead-100-size_requests0] PASSED [ 63%] fsspec/tests/test_caches.py::test_cache_basic[readahead-100-size_requests1] PASSED [ 63%] fsspec/tests/test_caches.py::test_cache_basic[readahead-100-size_requests2] PASSED [ 63%] fsspec/tests/test_caches.py::test_cache_basic[blockcache-1-size_requests0] PASSED [ 63%] fsspec/tests/test_caches.py::test_cache_basic[blockcache-1-size_requests1] PASSED [ 63%] fsspec/tests/test_caches.py::test_cache_basic[blockcache-1-size_requests2] PASSED [ 63%] fsspec/tests/test_caches.py::test_cache_basic[blockcache-10-size_requests0] PASSED [ 63%] fsspec/tests/test_caches.py::test_cache_basic[blockcache-10-size_requests1] PASSED [ 63%] fsspec/tests/test_caches.py::test_cache_basic[blockcache-10-size_requests2] PASSED [ 63%] fsspec/tests/test_caches.py::test_cache_basic[blockcache-52-size_requests0] PASSED [ 63%] fsspec/tests/test_caches.py::test_cache_basic[blockcache-52-size_requests1] PASSED [ 63%] fsspec/tests/test_caches.py::test_cache_basic[blockcache-52-size_requests2] PASSED [ 63%] fsspec/tests/test_caches.py::test_cache_basic[blockcache-100-size_requests0] PASSED [ 63%] fsspec/tests/test_caches.py::test_cache_basic[blockcache-100-size_requests1] PASSED [ 64%] fsspec/tests/test_caches.py::test_cache_basic[blockcache-100-size_requests2] PASSED [ 64%] fsspec/tests/test_caches.py::test_cache_basic[first-1-size_requests0] PASSED [ 64%] fsspec/tests/test_caches.py::test_cache_basic[first-1-size_requests1] PASSED [ 64%] fsspec/tests/test_caches.py::test_cache_basic[first-1-size_requests2] PASSED [ 64%] fsspec/tests/test_caches.py::test_cache_basic[first-10-size_requests0] PASSED [ 64%] fsspec/tests/test_caches.py::test_cache_basic[first-10-size_requests1] PASSED [ 64%] fsspec/tests/test_caches.py::test_cache_basic[first-10-size_requests2] PASSED [ 64%] fsspec/tests/test_caches.py::test_cache_basic[first-52-size_requests0] PASSED [ 64%] fsspec/tests/test_caches.py::test_cache_basic[first-52-size_requests1] PASSED [ 64%] fsspec/tests/test_caches.py::test_cache_basic[first-52-size_requests2] PASSED [ 64%] fsspec/tests/test_caches.py::test_cache_basic[first-100-size_requests0] PASSED [ 64%] fsspec/tests/test_caches.py::test_cache_basic[first-100-size_requests1] PASSED [ 64%] fsspec/tests/test_caches.py::test_cache_basic[first-100-size_requests2] PASSED [ 64%] fsspec/tests/test_caches.py::test_cache_basic[all-1-size_requests0] PASSED [ 64%] fsspec/tests/test_caches.py::test_cache_basic[all-1-size_requests1] PASSED [ 64%] fsspec/tests/test_caches.py::test_cache_basic[all-1-size_requests2] PASSED [ 64%] fsspec/tests/test_caches.py::test_cache_basic[all-10-size_requests0] PASSED [ 64%] fsspec/tests/test_caches.py::test_cache_basic[all-10-size_requests1] PASSED [ 65%] fsspec/tests/test_caches.py::test_cache_basic[all-10-size_requests2] PASSED [ 65%] fsspec/tests/test_caches.py::test_cache_basic[all-52-size_requests0] PASSED [ 65%] fsspec/tests/test_caches.py::test_cache_basic[all-52-size_requests1] PASSED [ 65%] fsspec/tests/test_caches.py::test_cache_basic[all-52-size_requests2] PASSED [ 65%] fsspec/tests/test_caches.py::test_cache_basic[all-100-size_requests0] PASSED [ 65%] fsspec/tests/test_caches.py::test_cache_basic[all-100-size_requests1] PASSED [ 65%] fsspec/tests/test_caches.py::test_cache_basic[all-100-size_requests2] PASSED [ 65%] fsspec/tests/test_caches.py::test_cache_basic[background-1-size_requests0] PASSED [ 65%] fsspec/tests/test_caches.py::test_cache_basic[background-1-size_requests1] PASSED [ 65%] fsspec/tests/test_caches.py::test_cache_basic[background-1-size_requests2] PASSED [ 65%] fsspec/tests/test_caches.py::test_cache_basic[background-10-size_requests0] PASSED [ 65%] fsspec/tests/test_caches.py::test_cache_basic[background-10-size_requests1] PASSED [ 65%] fsspec/tests/test_caches.py::test_cache_basic[background-10-size_requests2] PASSED [ 65%] fsspec/tests/test_caches.py::test_cache_basic[background-52-size_requests0] PASSED [ 65%] fsspec/tests/test_caches.py::test_cache_basic[background-52-size_requests1] PASSED [ 65%] fsspec/tests/test_caches.py::test_cache_basic[background-52-size_requests2] PASSED [ 65%] fsspec/tests/test_caches.py::test_cache_basic[background-100-size_requests0] PASSED [ 65%] fsspec/tests/test_caches.py::test_cache_basic[background-100-size_requests1] PASSED [ 66%] fsspec/tests/test_caches.py::test_cache_basic[background-100-size_requests2] PASSED [ 66%] fsspec/tests/test_caches.py::test_known[True-True] PASSED [ 66%] fsspec/tests/test_caches.py::test_known[True-False] PASSED [ 66%] fsspec/tests/test_caches.py::test_known[False-True] PASSED [ 66%] fsspec/tests/test_caches.py::test_known[False-False] PASSED [ 66%] fsspec/tests/test_caches.py::test_background FAILED [ 66%] fsspec/tests/test_caches.py::test_register_cache PASSED [ 66%] fsspec/tests/test_caches.py::test_cache_kwargs PASSED [ 66%] fsspec/tests/test_callbacks.py::test_callbacks PASSED [ 66%] fsspec/tests/test_callbacks.py::test_callbacks_as_callback PASSED [ 66%] fsspec/tests/test_callbacks.py::test_callbacks_as_context_manager PASSED [ 66%] fsspec/tests/test_callbacks.py::test_callbacks_branched PASSED [ 66%] fsspec/tests/test_callbacks.py::test_callbacks_branch_coro PASSED [ 66%] fsspec/tests/test_callbacks.py::test_callbacks_wrap PASSED [ 66%] fsspec/tests/test_callbacks.py::test_tqdm_callback[tqdm_kwargs0] PASSED [ 66%] fsspec/tests/test_callbacks.py::test_tqdm_callback[tqdm_kwargs1] PASSED [ 66%] fsspec/tests/test_compression.py::test_infer_custom_compression PASSED [ 66%] fsspec/tests/test_compression.py::test_infer_uppercase_compression PASSED [ 66%] fsspec/tests/test_compression.py::test_lzma_compression_name PASSED [ 67%] fsspec/tests/test_compression.py::test_lz4_compression PASSED [ 67%] fsspec/tests/test_compression.py::test_zstd_compression PASSED [ 67%] fsspec/tests/test_compression.py::test_snappy_compression PASSED [ 67%] fsspec/tests/test_config.py::test_from_env_ignored PASSED [ 67%] fsspec/tests/test_config.py::test_from_env_kwargs PASSED [ 67%] fsspec/tests/test_config.py::test_from_env_protocol_dict PASSED [ 67%] fsspec/tests/test_config.py::test_from_env_kwargs_override_protocol_dict PASSED [ 67%] fsspec/tests/test_config.py::test_from_file_ini PASSED [ 67%] fsspec/tests/test_config.py::test_from_file_json PASSED [ 67%] fsspec/tests/test_config.py::test_apply PASSED [ 67%] fsspec/tests/test_core.py::test_expand_paths[path0-None-1-out0] PASSED [ 67%] fsspec/tests/test_core.py::test_expand_paths[apath.*.csv-None-1-out1] PASSED [ 67%] fsspec/tests/test_core.py::test_expand_paths[apath.*.csv-None-2-out2] PASSED [ 67%] fsspec/tests/test_core.py::test_expand_paths[a*--2-out3] PASSED [ 67%] fsspec/tests/test_core.py::test_expand_paths_if_needed_in_read_mode[create_files0-apath-out0] PASSED [ 67%] fsspec/tests/test_core.py::test_expand_paths_if_needed_in_read_mode[create_files1-apath*-out1] PASSED [ 67%] fsspec/tests/test_core.py::test_expand_paths_if_needed_in_read_mode[create_files2-apath*-out2] PASSED [ 67%] fsspec/tests/test_core.py::test_expand_paths_if_needed_in_read_mode[create_files3-apath[1]-out3] PASSED [ 68%] fsspec/tests/test_core.py::test_expand_paths_if_needed_in_read_mode[create_files4-apath?-out4] PASSED [ 68%] fsspec/tests/test_core.py::test_expand_error PASSED [ 68%] fsspec/tests/test_core.py::test_expand_fs_token_paths[w] PASSED [ 68%] fsspec/tests/test_core.py::test_expand_fs_token_paths[w+] PASSED [ 68%] fsspec/tests/test_core.py::test_expand_fs_token_paths[x] PASSED [ 68%] fsspec/tests/test_core.py::test_expand_fs_token_paths[x+] PASSED [ 68%] fsspec/tests/test_core.py::test_openfile_api PASSED [ 68%] fsspec/tests/test_core.py::test_openfile_open PASSED [ 68%] fsspec/tests/test_core.py::test_open_local_w_cache PASSED [ 68%] fsspec/tests/test_core.py::test_open_local_w_magic PASSED [ 68%] fsspec/tests/test_core.py::test_open_local_w_list_of_str PASSED [ 68%] fsspec/tests/test_core.py::test_open_local_w_path PASSED [ 68%] fsspec/tests/test_core.py::test_open_local_w_list_of_path PASSED [ 68%] fsspec/tests/test_core.py::test_xz_lzma_compressions PASSED [ 68%] fsspec/tests/test_core.py::test_list PASSED [ 68%] fsspec/tests/test_core.py::test_open_expand PASSED [ 68%] fsspec/tests/test_core.py::test_pathobject PASSED [ 68%] fsspec/tests/test_core.py::test_automkdir PASSED [ 69%] fsspec/tests/test_core.py::test_automkdir_readonly PASSED [ 69%] fsspec/tests/test_core.py::test_openfile_pickle_newline PASSED [ 69%] fsspec/tests/test_core.py::test_pickle_after_open_open PASSED [ 69%] fsspec/tests/test_core.py::test_open_file_read_with_special_characters[[] PASSED [ 69%] fsspec/tests/test_core.py::test_open_file_read_with_special_characters[]] PASSED [ 69%] fsspec/tests/test_core.py::test_open_file_read_with_special_characters[!] PASSED [ 69%] fsspec/tests/test_core.py::test_open_file_read_with_special_characters[*] PASSED [ 69%] fsspec/tests/test_core.py::test_open_file_read_with_special_characters[?] PASSED [ 69%] fsspec/tests/test_core.py::test_open_files_read_with_special_characters[[] PASSED [ 69%] fsspec/tests/test_core.py::test_open_files_read_with_special_characters[]] PASSED [ 69%] fsspec/tests/test_core.py::test_open_files_read_with_special_characters[!] PASSED [ 69%] fsspec/tests/test_core.py::test_open_files_read_with_special_characters[*] PASSED [ 69%] fsspec/tests/test_core.py::test_open_files_read_with_special_characters[?] PASSED [ 69%] fsspec/tests/test_core.py::test_open_file_write_with_special_characters[[] PASSED [ 69%] fsspec/tests/test_core.py::test_open_file_write_with_special_characters[]] PASSED [ 69%] fsspec/tests/test_core.py::test_open_file_write_with_special_characters[!] PASSED [ 69%] fsspec/tests/test_core.py::test_open_file_write_with_special_characters[*] PASSED [ 69%] fsspec/tests/test_core.py::test_open_file_write_with_special_characters[?] PASSED [ 70%] fsspec/tests/test_core.py::test_open_files_write_with_special_characters[[] PASSED [ 70%] fsspec/tests/test_core.py::test_open_files_write_with_special_characters[]] PASSED [ 70%] fsspec/tests/test_core.py::test_open_files_write_with_special_characters[!] PASSED [ 70%] fsspec/tests/test_core.py::test_open_files_write_with_special_characters[*] PASSED [ 70%] fsspec/tests/test_core.py::test_open_files_write_with_special_characters[?] PASSED [ 70%] fsspec/tests/test_core.py::test_mismatch SKIPPED (could not import '...) [ 70%] fsspec/tests/test_core.py::test_url_kwargs_chain SKIPPED (could not ...) [ 70%] fsspec/tests/test_core.py::test_multi_context PASSED [ 70%] fsspec/tests/test_core.py::test_not_local PASSED [ 70%] fsspec/tests/test_core.py::test_url_to_fs SKIPPED (could not import ...) [ 70%] fsspec/tests/test_core.py::test_target_protocol_options SKIPPED (cou...) [ 70%] fsspec/tests/test_core.py::test_chained_url SKIPPED (could not impor...) [ 70%] fsspec/tests/test_core.py::test_automkdir_local PASSED [ 70%] fsspec/tests/test_core.py::test_repeated_argument SKIPPED (could not...) [ 70%] fsspec/tests/test_file.py::test_pickle SKIPPED (could not import 'py...) [ 70%] fsspec/tests/test_file.py::test_file_read_attributes SKIPPED (could ...) [ 70%] fsspec/tests/test_file.py::test_seek SKIPPED (could not import 'pyft...) [ 70%] fsspec/tests/test_file.py::test_file_idempotent SKIPPED (could not i...) [ 71%] fsspec/tests/test_file.py::test_file_text_attributes SKIPPED (could ...) [ 71%] fsspec/tests/test_file.py::test_file_write_attributes SKIPPED (could...) [ 71%] fsspec/tests/test_file.py::test_midread_cache SKIPPED (could not imp...) [ 71%] fsspec/tests/test_file.py::test_read_block SKIPPED (could not import...) [ 71%] fsspec/tests/test_file.py::test_with_gzip SKIPPED (could not import ...) [ 71%] fsspec/tests/test_file.py::test_auto_compression PASSED [ 71%] fsspec/tests/test_file.py::test_with_zip SKIPPED (could not import '...) [ 71%] fsspec/tests/test_fuse.py::test_mount PASSED [ 71%] fsspec/tests/test_generic.py::test_remote_async_ops FAILED [ 71%] fsspec/tests/test_generic.py::test_touch_rm PASSED [ 71%] fsspec/tests/test_generic.py::test_cp_async_to_sync FAILED [ 71%] fsspec/tests/test_generic.py::test_pipe_cat_sync PASSED [ 71%] fsspec/tests/test_generic.py::test_cat_async FAILED [ 71%] fsspec/tests/test_generic.py::test_rsync PASSED [ 71%] fsspec/tests/test_mapping.py::test_mapping_prefix PASSED [ 71%] fsspec/tests/test_mapping.py::test_getitems_errors PASSED [ 71%] fsspec/tests/test_mapping.py::test_ops PASSED [ 71%] fsspec/tests/test_mapping.py::test_pickle PASSED [ 72%] fsspec/tests/test_mapping.py::test_keys_view PASSED [ 72%] fsspec/tests/test_mapping.py::test_multi PASSED [ 72%] fsspec/tests/test_mapping.py::test_setitem_types PASSED [ 72%] fsspec/tests/test_mapping.py::test_setitem_numpy PASSED [ 72%] fsspec/tests/test_mapping.py::test_empty_url PASSED [ 72%] fsspec/tests/test_mapping.py::test_fsmap_access_with_root_prefix PASSED [ 72%] fsspec/tests/test_mapping.py::test_fsmap_non_str_keys[bytes] PASSED [ 72%] fsspec/tests/test_mapping.py::test_fsmap_non_str_keys[int] PASSED [ 72%] fsspec/tests/test_mapping.py::test_fsmap_non_str_keys[tuple] PASSED [ 72%] fsspec/tests/test_mapping.py::test_fsmap_non_str_keys[list] PASSED [ 72%] fsspec/tests/test_mapping.py::test_fsmap_error_on_protocol_keys PASSED [ 72%] fsspec/tests/test_mapping.py::test_fsmap_access_with_suffix PASSED [ 72%] fsspec/tests/test_mapping.py::test_fsmap_dirfs PASSED [ 72%] fsspec/tests/test_parquet.py::test_open_parquet_file[fastparquet-True-8-64-0-None] SKIPPED [ 72%] fsspec/tests/test_parquet.py::test_open_parquet_file[fastparquet-True-8-64-0-columns1] SKIPPED [ 72%] fsspec/tests/test_parquet.py::test_open_parquet_file[fastparquet-True-8-64-0-columns2] SKIPPED [ 72%] fsspec/tests/test_parquet.py::test_open_parquet_file[fastparquet-True-8-64-0-columns3] SKIPPED [ 72%] fsspec/tests/test_parquet.py::test_open_parquet_file[fastparquet-True-8-64-64-None] SKIPPED [ 72%] fsspec/tests/test_parquet.py::test_open_parquet_file[fastparquet-True-8-64-64-columns1] SKIPPED [ 73%] fsspec/tests/test_parquet.py::test_open_parquet_file[fastparquet-True-8-64-64-columns2] SKIPPED [ 73%] fsspec/tests/test_parquet.py::test_open_parquet_file[fastparquet-True-8-64-64-columns3] SKIPPED [ 73%] fsspec/tests/test_parquet.py::test_open_parquet_file[fastparquet-True-8-256000000-0-None] SKIPPED [ 73%] fsspec/tests/test_parquet.py::test_open_parquet_file[fastparquet-True-8-256000000-0-columns1] SKIPPED [ 73%] fsspec/tests/test_parquet.py::test_open_parquet_file[fastparquet-True-8-256000000-0-columns2] SKIPPED [ 73%] fsspec/tests/test_parquet.py::test_open_parquet_file[fastparquet-True-8-256000000-0-columns3] SKIPPED [ 73%] fsspec/tests/test_parquet.py::test_open_parquet_file[fastparquet-True-8-256000000-64-None] SKIPPED [ 73%] fsspec/tests/test_parquet.py::test_open_parquet_file[fastparquet-True-8-256000000-64-columns1] SKIPPED [ 73%] fsspec/tests/test_parquet.py::test_open_parquet_file[fastparquet-True-8-256000000-64-columns2] SKIPPED [ 73%] fsspec/tests/test_parquet.py::test_open_parquet_file[fastparquet-True-8-256000000-64-columns3] SKIPPED [ 73%] fsspec/tests/test_parquet.py::test_open_parquet_file[fastparquet-True-1000-64-0-None] SKIPPED [ 73%] fsspec/tests/test_parquet.py::test_open_parquet_file[fastparquet-True-1000-64-0-columns1] SKIPPED [ 73%] fsspec/tests/test_parquet.py::test_open_parquet_file[fastparquet-True-1000-64-0-columns2] SKIPPED [ 73%] fsspec/tests/test_parquet.py::test_open_parquet_file[fastparquet-True-1000-64-0-columns3] SKIPPED [ 73%] fsspec/tests/test_parquet.py::test_open_parquet_file[fastparquet-True-1000-64-64-None] SKIPPED [ 73%] fsspec/tests/test_parquet.py::test_open_parquet_file[fastparquet-True-1000-64-64-columns1] SKIPPED [ 73%] fsspec/tests/test_parquet.py::test_open_parquet_file[fastparquet-True-1000-64-64-columns2] SKIPPED [ 73%] fsspec/tests/test_parquet.py::test_open_parquet_file[fastparquet-True-1000-64-64-columns3] SKIPPED [ 74%] fsspec/tests/test_parquet.py::test_open_parquet_file[fastparquet-True-1000-256000000-0-None] SKIPPED [ 74%] fsspec/tests/test_parquet.py::test_open_parquet_file[fastparquet-True-1000-256000000-0-columns1] SKIPPED [ 74%] fsspec/tests/test_parquet.py::test_open_parquet_file[fastparquet-True-1000-256000000-0-columns2] SKIPPED [ 74%] fsspec/tests/test_parquet.py::test_open_parquet_file[fastparquet-True-1000-256000000-0-columns3] SKIPPED [ 74%] fsspec/tests/test_parquet.py::test_open_parquet_file[fastparquet-True-1000-256000000-64-None] SKIPPED [ 74%] fsspec/tests/test_parquet.py::test_open_parquet_file[fastparquet-True-1000-256000000-64-columns1] SKIPPED [ 74%] fsspec/tests/test_parquet.py::test_open_parquet_file[fastparquet-True-1000-256000000-64-columns2] SKIPPED [ 74%] fsspec/tests/test_parquet.py::test_open_parquet_file[fastparquet-True-1000-256000000-64-columns3] SKIPPED [ 74%] fsspec/tests/test_parquet.py::test_open_parquet_file[fastparquet-False-8-64-0-None] SKIPPED [ 74%] fsspec/tests/test_parquet.py::test_open_parquet_file[fastparquet-False-8-64-0-columns1] SKIPPED [ 74%] fsspec/tests/test_parquet.py::test_open_parquet_file[fastparquet-False-8-64-0-columns2] SKIPPED [ 74%] fsspec/tests/test_parquet.py::test_open_parquet_file[fastparquet-False-8-64-0-columns3] SKIPPED [ 74%] fsspec/tests/test_parquet.py::test_open_parquet_file[fastparquet-False-8-64-64-None] SKIPPED [ 74%] fsspec/tests/test_parquet.py::test_open_parquet_file[fastparquet-False-8-64-64-columns1] SKIPPED [ 74%] fsspec/tests/test_parquet.py::test_open_parquet_file[fastparquet-False-8-64-64-columns2] SKIPPED [ 74%] fsspec/tests/test_parquet.py::test_open_parquet_file[fastparquet-False-8-64-64-columns3] SKIPPED [ 74%] fsspec/tests/test_parquet.py::test_open_parquet_file[fastparquet-False-8-256000000-0-None] SKIPPED [ 74%] fsspec/tests/test_parquet.py::test_open_parquet_file[fastparquet-False-8-256000000-0-columns1] SKIPPED [ 75%] fsspec/tests/test_parquet.py::test_open_parquet_file[fastparquet-False-8-256000000-0-columns2] SKIPPED [ 75%] fsspec/tests/test_parquet.py::test_open_parquet_file[fastparquet-False-8-256000000-0-columns3] SKIPPED [ 75%] fsspec/tests/test_parquet.py::test_open_parquet_file[fastparquet-False-8-256000000-64-None] SKIPPED [ 75%] fsspec/tests/test_parquet.py::test_open_parquet_file[fastparquet-False-8-256000000-64-columns1] SKIPPED [ 75%] fsspec/tests/test_parquet.py::test_open_parquet_file[fastparquet-False-8-256000000-64-columns2] SKIPPED [ 75%] fsspec/tests/test_parquet.py::test_open_parquet_file[fastparquet-False-8-256000000-64-columns3] SKIPPED [ 75%] fsspec/tests/test_parquet.py::test_open_parquet_file[fastparquet-False-1000-64-0-None] SKIPPED [ 75%] fsspec/tests/test_parquet.py::test_open_parquet_file[fastparquet-False-1000-64-0-columns1] SKIPPED [ 75%] fsspec/tests/test_parquet.py::test_open_parquet_file[fastparquet-False-1000-64-0-columns2] SKIPPED [ 75%] fsspec/tests/test_parquet.py::test_open_parquet_file[fastparquet-False-1000-64-0-columns3] SKIPPED [ 75%] fsspec/tests/test_parquet.py::test_open_parquet_file[fastparquet-False-1000-64-64-None] SKIPPED [ 75%] fsspec/tests/test_parquet.py::test_open_parquet_file[fastparquet-False-1000-64-64-columns1] SKIPPED [ 75%] fsspec/tests/test_parquet.py::test_open_parquet_file[fastparquet-False-1000-64-64-columns2] SKIPPED [ 75%] fsspec/tests/test_parquet.py::test_open_parquet_file[fastparquet-False-1000-64-64-columns3] SKIPPED [ 75%] fsspec/tests/test_parquet.py::test_open_parquet_file[fastparquet-False-1000-256000000-0-None] SKIPPED [ 75%] fsspec/tests/test_parquet.py::test_open_parquet_file[fastparquet-False-1000-256000000-0-columns1] SKIPPED [ 75%] fsspec/tests/test_parquet.py::test_open_parquet_file[fastparquet-False-1000-256000000-0-columns2] SKIPPED [ 75%] fsspec/tests/test_parquet.py::test_open_parquet_file[fastparquet-False-1000-256000000-0-columns3] SKIPPED [ 76%] fsspec/tests/test_parquet.py::test_open_parquet_file[fastparquet-False-1000-256000000-64-None] SKIPPED [ 76%] fsspec/tests/test_parquet.py::test_open_parquet_file[fastparquet-False-1000-256000000-64-columns1] SKIPPED [ 76%] fsspec/tests/test_parquet.py::test_open_parquet_file[fastparquet-False-1000-256000000-64-columns2] SKIPPED [ 76%] fsspec/tests/test_parquet.py::test_open_parquet_file[fastparquet-False-1000-256000000-64-columns3] SKIPPED [ 76%] fsspec/tests/test_parquet.py::test_open_parquet_file[pyarrow-True-8-64-0-None] SKIPPED [ 76%] fsspec/tests/test_parquet.py::test_open_parquet_file[pyarrow-True-8-64-0-columns1] SKIPPED [ 76%] fsspec/tests/test_parquet.py::test_open_parquet_file[pyarrow-True-8-64-0-columns2] SKIPPED [ 76%] fsspec/tests/test_parquet.py::test_open_parquet_file[pyarrow-True-8-64-0-columns3] SKIPPED [ 76%] fsspec/tests/test_parquet.py::test_open_parquet_file[pyarrow-True-8-64-64-None] SKIPPED [ 76%] fsspec/tests/test_parquet.py::test_open_parquet_file[pyarrow-True-8-64-64-columns1] SKIPPED [ 76%] fsspec/tests/test_parquet.py::test_open_parquet_file[pyarrow-True-8-64-64-columns2] SKIPPED [ 76%] fsspec/tests/test_parquet.py::test_open_parquet_file[pyarrow-True-8-64-64-columns3] SKIPPED [ 76%] fsspec/tests/test_parquet.py::test_open_parquet_file[pyarrow-True-8-256000000-0-None] SKIPPED [ 76%] fsspec/tests/test_parquet.py::test_open_parquet_file[pyarrow-True-8-256000000-0-columns1] SKIPPED [ 76%] fsspec/tests/test_parquet.py::test_open_parquet_file[pyarrow-True-8-256000000-0-columns2] SKIPPED [ 76%] fsspec/tests/test_parquet.py::test_open_parquet_file[pyarrow-True-8-256000000-0-columns3] SKIPPED [ 76%] fsspec/tests/test_parquet.py::test_open_parquet_file[pyarrow-True-8-256000000-64-None] SKIPPED [ 76%] fsspec/tests/test_parquet.py::test_open_parquet_file[pyarrow-True-8-256000000-64-columns1] SKIPPED [ 77%] fsspec/tests/test_parquet.py::test_open_parquet_file[pyarrow-True-8-256000000-64-columns2] SKIPPED [ 77%] fsspec/tests/test_parquet.py::test_open_parquet_file[pyarrow-True-8-256000000-64-columns3] SKIPPED [ 77%] fsspec/tests/test_parquet.py::test_open_parquet_file[pyarrow-True-1000-64-0-None] SKIPPED [ 77%] fsspec/tests/test_parquet.py::test_open_parquet_file[pyarrow-True-1000-64-0-columns1] SKIPPED [ 77%] fsspec/tests/test_parquet.py::test_open_parquet_file[pyarrow-True-1000-64-0-columns2] SKIPPED [ 77%] fsspec/tests/test_parquet.py::test_open_parquet_file[pyarrow-True-1000-64-0-columns3] SKIPPED [ 77%] fsspec/tests/test_parquet.py::test_open_parquet_file[pyarrow-True-1000-64-64-None] SKIPPED [ 77%] fsspec/tests/test_parquet.py::test_open_parquet_file[pyarrow-True-1000-64-64-columns1] SKIPPED [ 77%] fsspec/tests/test_parquet.py::test_open_parquet_file[pyarrow-True-1000-64-64-columns2] SKIPPED [ 77%] fsspec/tests/test_parquet.py::test_open_parquet_file[pyarrow-True-1000-64-64-columns3] SKIPPED [ 77%] fsspec/tests/test_parquet.py::test_open_parquet_file[pyarrow-True-1000-256000000-0-None] SKIPPED [ 77%] fsspec/tests/test_parquet.py::test_open_parquet_file[pyarrow-True-1000-256000000-0-columns1] SKIPPED [ 77%] fsspec/tests/test_parquet.py::test_open_parquet_file[pyarrow-True-1000-256000000-0-columns2] SKIPPED [ 77%] fsspec/tests/test_parquet.py::test_open_parquet_file[pyarrow-True-1000-256000000-0-columns3] SKIPPED [ 77%] fsspec/tests/test_parquet.py::test_open_parquet_file[pyarrow-True-1000-256000000-64-None] SKIPPED [ 77%] fsspec/tests/test_parquet.py::test_open_parquet_file[pyarrow-True-1000-256000000-64-columns1] SKIPPED [ 77%] fsspec/tests/test_parquet.py::test_open_parquet_file[pyarrow-True-1000-256000000-64-columns2] SKIPPED [ 77%] fsspec/tests/test_parquet.py::test_open_parquet_file[pyarrow-True-1000-256000000-64-columns3] SKIPPED [ 77%] fsspec/tests/test_parquet.py::test_open_parquet_file[pyarrow-False-8-64-0-None] SKIPPED [ 78%] fsspec/tests/test_parquet.py::test_open_parquet_file[pyarrow-False-8-64-0-columns1] SKIPPED [ 78%] fsspec/tests/test_parquet.py::test_open_parquet_file[pyarrow-False-8-64-0-columns2] SKIPPED [ 78%] fsspec/tests/test_parquet.py::test_open_parquet_file[pyarrow-False-8-64-0-columns3] SKIPPED [ 78%] fsspec/tests/test_parquet.py::test_open_parquet_file[pyarrow-False-8-64-64-None] SKIPPED [ 78%] fsspec/tests/test_parquet.py::test_open_parquet_file[pyarrow-False-8-64-64-columns1] SKIPPED [ 78%] fsspec/tests/test_parquet.py::test_open_parquet_file[pyarrow-False-8-64-64-columns2] SKIPPED [ 78%] fsspec/tests/test_parquet.py::test_open_parquet_file[pyarrow-False-8-64-64-columns3] SKIPPED [ 78%] fsspec/tests/test_parquet.py::test_open_parquet_file[pyarrow-False-8-256000000-0-None] SKIPPED [ 78%] fsspec/tests/test_parquet.py::test_open_parquet_file[pyarrow-False-8-256000000-0-columns1] SKIPPED [ 78%] fsspec/tests/test_parquet.py::test_open_parquet_file[pyarrow-False-8-256000000-0-columns2] SKIPPED [ 78%] fsspec/tests/test_parquet.py::test_open_parquet_file[pyarrow-False-8-256000000-0-columns3] SKIPPED [ 78%] fsspec/tests/test_parquet.py::test_open_parquet_file[pyarrow-False-8-256000000-64-None] SKIPPED [ 78%] fsspec/tests/test_parquet.py::test_open_parquet_file[pyarrow-False-8-256000000-64-columns1] SKIPPED [ 78%] fsspec/tests/test_parquet.py::test_open_parquet_file[pyarrow-False-8-256000000-64-columns2] SKIPPED [ 78%] fsspec/tests/test_parquet.py::test_open_parquet_file[pyarrow-False-8-256000000-64-columns3] SKIPPED [ 78%] fsspec/tests/test_parquet.py::test_open_parquet_file[pyarrow-False-1000-64-0-None] SKIPPED [ 78%] fsspec/tests/test_parquet.py::test_open_parquet_file[pyarrow-False-1000-64-0-columns1] SKIPPED [ 78%] fsspec/tests/test_parquet.py::test_open_parquet_file[pyarrow-False-1000-64-0-columns2] SKIPPED [ 79%] fsspec/tests/test_parquet.py::test_open_parquet_file[pyarrow-False-1000-64-0-columns3] SKIPPED [ 79%] fsspec/tests/test_parquet.py::test_open_parquet_file[pyarrow-False-1000-64-64-None] SKIPPED [ 79%] fsspec/tests/test_parquet.py::test_open_parquet_file[pyarrow-False-1000-64-64-columns1] SKIPPED [ 79%] fsspec/tests/test_parquet.py::test_open_parquet_file[pyarrow-False-1000-64-64-columns2] SKIPPED [ 79%] fsspec/tests/test_parquet.py::test_open_parquet_file[pyarrow-False-1000-64-64-columns3] SKIPPED [ 79%] fsspec/tests/test_parquet.py::test_open_parquet_file[pyarrow-False-1000-256000000-0-None] SKIPPED [ 79%] fsspec/tests/test_parquet.py::test_open_parquet_file[pyarrow-False-1000-256000000-0-columns1] SKIPPED [ 79%] fsspec/tests/test_parquet.py::test_open_parquet_file[pyarrow-False-1000-256000000-0-columns2] SKIPPED [ 79%] fsspec/tests/test_parquet.py::test_open_parquet_file[pyarrow-False-1000-256000000-0-columns3] SKIPPED [ 79%] fsspec/tests/test_parquet.py::test_open_parquet_file[pyarrow-False-1000-256000000-64-None] SKIPPED [ 79%] fsspec/tests/test_parquet.py::test_open_parquet_file[pyarrow-False-1000-256000000-64-columns1] SKIPPED [ 79%] fsspec/tests/test_parquet.py::test_open_parquet_file[pyarrow-False-1000-256000000-64-columns2] SKIPPED [ 79%] fsspec/tests/test_parquet.py::test_open_parquet_file[pyarrow-False-1000-256000000-64-columns3] SKIPPED [ 79%] fsspec/tests/test_parquet.py::test_open_parquet_file[auto-True-8-64-0-None] SKIPPED [ 79%] fsspec/tests/test_parquet.py::test_open_parquet_file[auto-True-8-64-0-columns1] SKIPPED [ 79%] fsspec/tests/test_parquet.py::test_open_parquet_file[auto-True-8-64-0-columns2] SKIPPED [ 79%] fsspec/tests/test_parquet.py::test_open_parquet_file[auto-True-8-64-0-columns3] SKIPPED [ 79%] fsspec/tests/test_parquet.py::test_open_parquet_file[auto-True-8-64-64-None] SKIPPED [ 80%] fsspec/tests/test_parquet.py::test_open_parquet_file[auto-True-8-64-64-columns1] SKIPPED [ 80%] fsspec/tests/test_parquet.py::test_open_parquet_file[auto-True-8-64-64-columns2] SKIPPED [ 80%] fsspec/tests/test_parquet.py::test_open_parquet_file[auto-True-8-64-64-columns3] SKIPPED [ 80%] fsspec/tests/test_parquet.py::test_open_parquet_file[auto-True-8-256000000-0-None] SKIPPED [ 80%] fsspec/tests/test_parquet.py::test_open_parquet_file[auto-True-8-256000000-0-columns1] SKIPPED [ 80%] fsspec/tests/test_parquet.py::test_open_parquet_file[auto-True-8-256000000-0-columns2] SKIPPED [ 80%] fsspec/tests/test_parquet.py::test_open_parquet_file[auto-True-8-256000000-0-columns3] SKIPPED [ 80%] fsspec/tests/test_parquet.py::test_open_parquet_file[auto-True-8-256000000-64-None] SKIPPED [ 80%] fsspec/tests/test_parquet.py::test_open_parquet_file[auto-True-8-256000000-64-columns1] SKIPPED [ 80%] fsspec/tests/test_parquet.py::test_open_parquet_file[auto-True-8-256000000-64-columns2] SKIPPED [ 80%] fsspec/tests/test_parquet.py::test_open_parquet_file[auto-True-8-256000000-64-columns3] SKIPPED [ 80%] fsspec/tests/test_parquet.py::test_open_parquet_file[auto-True-1000-64-0-None] SKIPPED [ 80%] fsspec/tests/test_parquet.py::test_open_parquet_file[auto-True-1000-64-0-columns1] SKIPPED [ 80%] fsspec/tests/test_parquet.py::test_open_parquet_file[auto-True-1000-64-0-columns2] SKIPPED [ 80%] fsspec/tests/test_parquet.py::test_open_parquet_file[auto-True-1000-64-0-columns3] SKIPPED [ 80%] fsspec/tests/test_parquet.py::test_open_parquet_file[auto-True-1000-64-64-None] SKIPPED [ 80%] fsspec/tests/test_parquet.py::test_open_parquet_file[auto-True-1000-64-64-columns1] SKIPPED [ 80%] fsspec/tests/test_parquet.py::test_open_parquet_file[auto-True-1000-64-64-columns2] SKIPPED [ 81%] fsspec/tests/test_parquet.py::test_open_parquet_file[auto-True-1000-64-64-columns3] SKIPPED [ 81%] fsspec/tests/test_parquet.py::test_open_parquet_file[auto-True-1000-256000000-0-None] SKIPPED [ 81%] fsspec/tests/test_parquet.py::test_open_parquet_file[auto-True-1000-256000000-0-columns1] SKIPPED [ 81%] fsspec/tests/test_parquet.py::test_open_parquet_file[auto-True-1000-256000000-0-columns2] SKIPPED [ 81%] fsspec/tests/test_parquet.py::test_open_parquet_file[auto-True-1000-256000000-0-columns3] SKIPPED [ 81%] fsspec/tests/test_parquet.py::test_open_parquet_file[auto-True-1000-256000000-64-None] SKIPPED [ 81%] fsspec/tests/test_parquet.py::test_open_parquet_file[auto-True-1000-256000000-64-columns1] SKIPPED [ 81%] fsspec/tests/test_parquet.py::test_open_parquet_file[auto-True-1000-256000000-64-columns2] SKIPPED [ 81%] fsspec/tests/test_parquet.py::test_open_parquet_file[auto-True-1000-256000000-64-columns3] SKIPPED [ 81%] fsspec/tests/test_parquet.py::test_open_parquet_file[auto-False-8-64-0-None] SKIPPED [ 81%] fsspec/tests/test_parquet.py::test_open_parquet_file[auto-False-8-64-0-columns1] SKIPPED [ 81%] fsspec/tests/test_parquet.py::test_open_parquet_file[auto-False-8-64-0-columns2] SKIPPED [ 81%] fsspec/tests/test_parquet.py::test_open_parquet_file[auto-False-8-64-0-columns3] SKIPPED [ 81%] fsspec/tests/test_parquet.py::test_open_parquet_file[auto-False-8-64-64-None] SKIPPED [ 81%] fsspec/tests/test_parquet.py::test_open_parquet_file[auto-False-8-64-64-columns1] SKIPPED [ 81%] fsspec/tests/test_parquet.py::test_open_parquet_file[auto-False-8-64-64-columns2] SKIPPED [ 81%] fsspec/tests/test_parquet.py::test_open_parquet_file[auto-False-8-64-64-columns3] SKIPPED [ 81%] fsspec/tests/test_parquet.py::test_open_parquet_file[auto-False-8-256000000-0-None] SKIPPED [ 82%] fsspec/tests/test_parquet.py::test_open_parquet_file[auto-False-8-256000000-0-columns1] SKIPPED [ 82%] fsspec/tests/test_parquet.py::test_open_parquet_file[auto-False-8-256000000-0-columns2] SKIPPED [ 82%] fsspec/tests/test_parquet.py::test_open_parquet_file[auto-False-8-256000000-0-columns3] SKIPPED [ 82%] fsspec/tests/test_parquet.py::test_open_parquet_file[auto-False-8-256000000-64-None] SKIPPED [ 82%] fsspec/tests/test_parquet.py::test_open_parquet_file[auto-False-8-256000000-64-columns1] SKIPPED [ 82%] fsspec/tests/test_parquet.py::test_open_parquet_file[auto-False-8-256000000-64-columns2] SKIPPED [ 82%] fsspec/tests/test_parquet.py::test_open_parquet_file[auto-False-8-256000000-64-columns3] SKIPPED [ 82%] fsspec/tests/test_parquet.py::test_open_parquet_file[auto-False-1000-64-0-None] SKIPPED [ 82%] fsspec/tests/test_parquet.py::test_open_parquet_file[auto-False-1000-64-0-columns1] SKIPPED [ 82%] fsspec/tests/test_parquet.py::test_open_parquet_file[auto-False-1000-64-0-columns2] SKIPPED [ 82%] fsspec/tests/test_parquet.py::test_open_parquet_file[auto-False-1000-64-0-columns3] SKIPPED [ 82%] fsspec/tests/test_parquet.py::test_open_parquet_file[auto-False-1000-64-64-None] SKIPPED [ 82%] fsspec/tests/test_parquet.py::test_open_parquet_file[auto-False-1000-64-64-columns1] SKIPPED [ 82%] fsspec/tests/test_parquet.py::test_open_parquet_file[auto-False-1000-64-64-columns2] SKIPPED [ 82%] fsspec/tests/test_parquet.py::test_open_parquet_file[auto-False-1000-64-64-columns3] SKIPPED [ 82%] fsspec/tests/test_parquet.py::test_open_parquet_file[auto-False-1000-256000000-0-None] SKIPPED [ 82%] fsspec/tests/test_parquet.py::test_open_parquet_file[auto-False-1000-256000000-0-columns1] SKIPPED [ 82%] fsspec/tests/test_parquet.py::test_open_parquet_file[auto-False-1000-256000000-0-columns2] SKIPPED [ 83%] fsspec/tests/test_parquet.py::test_open_parquet_file[auto-False-1000-256000000-0-columns3] SKIPPED [ 83%] fsspec/tests/test_parquet.py::test_open_parquet_file[auto-False-1000-256000000-64-None] SKIPPED [ 83%] fsspec/tests/test_parquet.py::test_open_parquet_file[auto-False-1000-256000000-64-columns1] SKIPPED [ 83%] fsspec/tests/test_parquet.py::test_open_parquet_file[auto-False-1000-256000000-64-columns2] SKIPPED [ 83%] fsspec/tests/test_parquet.py::test_open_parquet_file[auto-False-1000-256000000-64-columns3] SKIPPED [ 83%] fsspec/tests/test_registry.py::test_registry_readonly PASSED [ 83%] fsspec/tests/test_registry.py::test_register_cls PASSED [ 83%] fsspec/tests/test_registry.py::test_register_str PASSED [ 83%] fsspec/tests/test_registry.py::test_register_fail PASSED [ 83%] fsspec/tests/test_registry.py::test_entry_points_registered_on_import PASSED [ 83%] fsspec/tests/test_registry.py::test_filesystem_warning_arrow_hdfs_deprecated PASSED [ 83%] fsspec/tests/test_registry.py::test_old_s3 SKIPPED (could not import...) [ 83%] fsspec/tests/test_spec.py::test_expand_path[test_paths0-True-None-expected0] PASSED [ 83%] fsspec/tests/test_spec.py::test_expand_path[test_paths1-False-None-expected1] PASSED [ 83%] fsspec/tests/test_spec.py::test_expand_path[test_paths2-True-1-expected2] PASSED [ 83%] fsspec/tests/test_spec.py::test_expand_path[test_paths3-True-2-expected3] PASSED [ 83%] fsspec/tests/test_spec.py::test_expand_path[test_paths4-True-1-expected4] PASSED [ 83%] fsspec/tests/test_spec.py::test_expand_path[test_paths5-True-2-expected5] PASSED [ 83%] fsspec/tests/test_spec.py::test_expand_path[test_paths6-False-None-expected6] PASSED [ 84%] fsspec/tests/test_spec.py::test_expand_path[test_paths7-True-None-expected7] PASSED [ 84%] fsspec/tests/test_spec.py::test_expand_path[test_paths8-True-1-expected8] PASSED [ 84%] fsspec/tests/test_spec.py::test_expand_path[test_paths9-True-2-expected9] PASSED [ 84%] fsspec/tests/test_spec.py::test_expand_path[test_paths10-False-None-expected10] PASSED [ 84%] fsspec/tests/test_spec.py::test_expand_path[test_paths11-True-None-expected11] PASSED [ 84%] fsspec/tests/test_spec.py::test_expand_path[test_paths12-False-2-expected12] PASSED [ 84%] fsspec/tests/test_spec.py::test_expand_path[test_paths13-True-2-expected13] PASSED [ 84%] fsspec/tests/test_spec.py::test_expand_path[test_paths14-False-None-expected14] PASSED [ 84%] fsspec/tests/test_spec.py::test_expand_path[test_paths15-True-None-expected15] PASSED [ 84%] fsspec/tests/test_spec.py::test_expand_path[test_paths16-False-None-expected16] PASSED [ 84%] fsspec/tests/test_spec.py::test_expand_path[test_paths17-True-None-expected17] PASSED [ 84%] fsspec/tests/test_spec.py::test_expand_path[test_paths18-False-None-expected18] PASSED [ 84%] fsspec/tests/test_spec.py::test_expand_paths_with_wrong_args PASSED [ 84%] fsspec/tests/test_spec.py::test_find XFAIL [ 84%] fsspec/tests/test_spec.py::test_find_details PASSED [ 84%] fsspec/tests/test_spec.py::test_find_file PASSED [ 84%] fsspec/tests/test_spec.py::test_cache PASSED [ 84%] fsspec/tests/test_spec.py::test_cache_not_pickled FAILED [ 85%] fsspec/tests/test_spec.py::test_current PASSED [ 85%] fsspec/tests/test_spec.py::test_alias PASSED [ 85%] fsspec/tests/test_spec.py::test_add_docs_warns PASSED [ 85%] fsspec/tests/test_spec.py::test_cache_options PASSED [ 85%] fsspec/tests/test_spec.py::test_trim_kwarg_warns PASSED [ 85%] fsspec/tests/test_spec.py::tests_file_open_error PASSED [ 85%] fsspec/tests/test_spec.py::test_eq PASSED [ 85%] fsspec/tests/test_spec.py::test_pickle_multiple PASSED [ 85%] fsspec/tests/test_spec.py::test_json PASSED [ 85%] fsspec/tests/test_spec.py::test_json_path_attr PASSED [ 85%] fsspec/tests/test_spec.py::test_json_fs_attr PASSED [ 85%] fsspec/tests/test_spec.py::test_json_dict_attr PASSED [ 85%] fsspec/tests/test_spec.py::test_dict PASSED [ 85%] fsspec/tests/test_spec.py::test_dict_path_attr PASSED [ 85%] fsspec/tests/test_spec.py::test_dict_fs_attr PASSED [ 85%] fsspec/tests/test_spec.py::test_dict_dict_attr PASSED [ 85%] fsspec/tests/test_spec.py::test_dict_idempotent PASSED [ 85%] fsspec/tests/test_spec.py::test_dict_json_serializable PASSED [ 86%] fsspec/tests/test_spec.py::test_serialize_no_password PASSED [ 86%] fsspec/tests/test_spec.py::test_serialize_with_password PASSED [ 86%] fsspec/tests/test_spec.py::test_from_dict_valid PASSED [ 86%] fsspec/tests/test_spec.py::test_from_dict_invalid PASSED [ 86%] fsspec/tests/test_spec.py::test_ls_from_cache PASSED [ 86%] fsspec/tests/test_spec.py::test_readinto_with_numpy[int8] PASSED [ 86%] fsspec/tests/test_spec.py::test_readinto_with_numpy[int16] PASSED [ 86%] fsspec/tests/test_spec.py::test_readinto_with_numpy[int32] PASSED [ 86%] fsspec/tests/test_spec.py::test_readinto_with_numpy[int64] PASSED [ 86%] fsspec/tests/test_spec.py::test_readinto_with_numpy[uint8] PASSED [ 86%] fsspec/tests/test_spec.py::test_readinto_with_numpy[uint16] PASSED [ 86%] fsspec/tests/test_spec.py::test_readinto_with_numpy[uint32] PASSED [ 86%] fsspec/tests/test_spec.py::test_readinto_with_numpy[uint64] PASSED [ 86%] fsspec/tests/test_spec.py::test_readinto_with_numpy[float32] PASSED [ 86%] fsspec/tests/test_spec.py::test_readinto_with_numpy[float64] PASSED [ 86%] fsspec/tests/test_spec.py::test_readinto_with_multibyte[int8] SKIPPED [ 86%] fsspec/tests/test_spec.py::test_readinto_with_multibyte[int16] SKIPPED [ 86%] fsspec/tests/test_spec.py::test_readinto_with_multibyte[int32] SKIPPED [ 87%] fsspec/tests/test_spec.py::test_readinto_with_multibyte[int64] SKIPPED [ 87%] fsspec/tests/test_spec.py::test_readinto_with_multibyte[uint8] SKIPPED [ 87%] fsspec/tests/test_spec.py::test_readinto_with_multibyte[uint16] SKIPPED [ 87%] fsspec/tests/test_spec.py::test_readinto_with_multibyte[uint32] SKIPPED [ 87%] fsspec/tests/test_spec.py::test_readinto_with_multibyte[uint64] SKIPPED [ 87%] fsspec/tests/test_spec.py::test_readinto_with_multibyte[float32] SKIPPED [ 87%] fsspec/tests/test_spec.py::test_readinto_with_multibyte[float64] SKIPPED [ 87%] fsspec/tests/test_spec.py::test_dummy_callbacks_file PASSED [ 87%] fsspec/tests/test_spec.py::test_dummy_callbacks_files PASSED [ 87%] fsspec/tests/test_spec.py::test_dummy_callbacks_files_branched PASSED [ 87%] fsspec/tests/test_spec.py::test_posix_tests_python_glob[nonexistent-expected0] PASSED [ 87%] fsspec/tests/test_spec.py::test_posix_tests_python_glob[test0.json-expected1] PASSED [ 87%] fsspec/tests/test_spec.py::test_posix_tests_python_glob[test0-expected2] PASSED [ 87%] fsspec/tests/test_spec.py::test_posix_tests_python_glob[test0/-expected3] PASSED [ 87%] fsspec/tests/test_spec.py::test_posix_tests_python_glob[test1/test0.yaml-expected4] PASSED [ 87%] fsspec/tests/test_spec.py::test_posix_tests_python_glob[test0/test[1-2]-expected5] PASSED [ 87%] fsspec/tests/test_spec.py::test_posix_tests_python_glob[test0/test[1-2]/-expected6] PASSED [ 87%] fsspec/tests/test_spec.py::test_posix_tests_python_glob[test0/test[1-2]/*-expected7] PASSED [ 88%] fsspec/tests/test_spec.py::test_posix_tests_python_glob[test0/test[1-2]/*.[j]*-expected8] PASSED [ 88%] fsspec/tests/test_spec.py::test_posix_tests_python_glob[special_chars/f\\oo.*-expected9] PASSED [ 88%] fsspec/tests/test_spec.py::test_posix_tests_python_glob[special_chars/f.oo.*-expected10] PASSED [ 88%] fsspec/tests/test_spec.py::test_posix_tests_python_glob[special_chars/f+oo.*-expected11] PASSED [ 88%] fsspec/tests/test_spec.py::test_posix_tests_python_glob[special_chars/f(oo.*-expected12] PASSED [ 88%] fsspec/tests/test_spec.py::test_posix_tests_python_glob[special_chars/f)oo.*-expected13] PASSED [ 88%] fsspec/tests/test_spec.py::test_posix_tests_python_glob[special_chars/f|oo.*-expected14] PASSED [ 88%] fsspec/tests/test_spec.py::test_posix_tests_python_glob[special_chars/f^oo.*-expected15] PASSED [ 88%] fsspec/tests/test_spec.py::test_posix_tests_python_glob[special_chars/f$oo.*-expected16] PASSED [ 88%] fsspec/tests/test_spec.py::test_posix_tests_python_glob[special_chars/f{oo.*-expected17] PASSED [ 88%] fsspec/tests/test_spec.py::test_posix_tests_python_glob[special_chars/f}oo.*-expected18] PASSED [ 88%] fsspec/tests/test_spec.py::test_posix_tests_python_glob[*-expected19] PASSED [ 88%] fsspec/tests/test_spec.py::test_posix_tests_python_glob[*.yaml-expected20] PASSED [ 88%] fsspec/tests/test_spec.py::test_posix_tests_python_glob[**-expected21] PASSED [ 88%] fsspec/tests/test_spec.py::test_posix_tests_python_glob[*/-expected22] PASSED [ 88%] fsspec/tests/test_spec.py::test_posix_tests_python_glob[**/-expected23] PASSED [ 88%] fsspec/tests/test_spec.py::test_posix_tests_python_glob[*/*.yaml-expected24] PASSED [ 88%] fsspec/tests/test_spec.py::test_posix_tests_python_glob[**/*.yaml-expected25] PASSED [ 88%] fsspec/tests/test_spec.py::test_posix_tests_python_glob[*/test1/*-expected26] PASSED [ 89%] fsspec/tests/test_spec.py::test_posix_tests_python_glob[*/test1/*.yaml-expected27] PASSED [ 89%] fsspec/tests/test_spec.py::test_posix_tests_python_glob[**/test1/*-expected28] PASSED [ 89%] fsspec/tests/test_spec.py::test_posix_tests_python_glob[**/test1/*.yaml-expected29] PASSED [ 89%] fsspec/tests/test_spec.py::test_posix_tests_python_glob[*/test1/*/-expected30] PASSED [ 89%] fsspec/tests/test_spec.py::test_posix_tests_python_glob[**/test1/*/-expected31] PASSED [ 89%] fsspec/tests/test_spec.py::test_posix_tests_python_glob[*/test1/**-expected32] PASSED [ 89%] fsspec/tests/test_spec.py::test_posix_tests_python_glob[**/test1/**-expected33] PASSED [ 89%] fsspec/tests/test_spec.py::test_posix_tests_python_glob[*/test1/**/-expected34] PASSED [ 89%] fsspec/tests/test_spec.py::test_posix_tests_python_glob[**/test1/**/-expected35] PASSED [ 89%] fsspec/tests/test_spec.py::test_posix_tests_python_glob[test0/*-expected36] PASSED [ 89%] fsspec/tests/test_spec.py::test_posix_tests_python_glob[test0/*.yaml-expected37] PASSED [ 89%] fsspec/tests/test_spec.py::test_posix_tests_python_glob[test0/**-expected38] PASSED [ 89%] fsspec/tests/test_spec.py::test_posix_tests_python_glob[test0/*/-expected39] PASSED [ 89%] fsspec/tests/test_spec.py::test_posix_tests_python_glob[test0/**/-expected40] PASSED [ 89%] fsspec/tests/test_spec.py::test_posix_tests_python_glob[test0/*/*.yaml-expected41] PASSED [ 89%] fsspec/tests/test_spec.py::test_posix_tests_python_glob[test0/**/*.yaml-expected42] PASSED [ 89%] fsspec/tests/test_spec.py::test_posix_tests_python_glob[test0/*/test1/*-expected43] PASSED [ 89%] fsspec/tests/test_spec.py::test_posix_tests_python_glob[test0/*/test1/*.yaml-expected44] PASSED [ 90%] fsspec/tests/test_spec.py::test_posix_tests_python_glob[test0/**/test1/*-expected45] PASSED [ 90%] fsspec/tests/test_spec.py::test_posix_tests_python_glob[test0/**/test1/*.yaml-expected46] PASSED [ 90%] fsspec/tests/test_spec.py::test_posix_tests_python_glob[test0/*/test1/*/-expected47] PASSED [ 90%] fsspec/tests/test_spec.py::test_posix_tests_python_glob[test0/**/test1/*/-expected48] PASSED [ 90%] fsspec/tests/test_spec.py::test_posix_tests_python_glob[test0/*/test1/**-expected49] PASSED [ 90%] fsspec/tests/test_spec.py::test_posix_tests_python_glob[test0/**/test1/**-expected50] PASSED [ 90%] fsspec/tests/test_spec.py::test_posix_tests_python_glob[test0/*/test1/**/-expected51] PASSED [ 90%] fsspec/tests/test_spec.py::test_posix_tests_python_glob[test0/**/test1/**/-expected52] PASSED [ 90%] fsspec/tests/test_spec.py::test_posix_tests_bash_stat[nonexistent-expected0] PASSED [ 90%] fsspec/tests/test_spec.py::test_posix_tests_bash_stat[test0.json-expected1] PASSED [ 90%] fsspec/tests/test_spec.py::test_posix_tests_bash_stat[test0-expected2] PASSED [ 90%] fsspec/tests/test_spec.py::test_posix_tests_bash_stat[test0/-expected3] PASSED [ 90%] fsspec/tests/test_spec.py::test_posix_tests_bash_stat[test1/test0.yaml-expected4] PASSED [ 90%] fsspec/tests/test_spec.py::test_posix_tests_bash_stat[test0/test[1-2]-expected5] PASSED [ 90%] fsspec/tests/test_spec.py::test_posix_tests_bash_stat[test0/test[1-2]/-expected6] PASSED [ 90%] fsspec/tests/test_spec.py::test_posix_tests_bash_stat[test0/test[1-2]/*-expected7] PASSED [ 90%] fsspec/tests/test_spec.py::test_posix_tests_bash_stat[test0/test[1-2]/*.[j]*-expected8] PASSED [ 90%] fsspec/tests/test_spec.py::test_posix_tests_bash_stat[special_chars/f\\oo.*-expected9] PASSED [ 91%] fsspec/tests/test_spec.py::test_posix_tests_bash_stat[special_chars/f.oo.*-expected10] PASSED [ 91%] fsspec/tests/test_spec.py::test_posix_tests_bash_stat[special_chars/f+oo.*-expected11] PASSED [ 91%] fsspec/tests/test_spec.py::test_posix_tests_bash_stat[special_chars/f(oo.*-expected12] PASSED [ 91%] fsspec/tests/test_spec.py::test_posix_tests_bash_stat[special_chars/f)oo.*-expected13] PASSED [ 91%] fsspec/tests/test_spec.py::test_posix_tests_bash_stat[special_chars/f|oo.*-expected14] PASSED [ 91%] fsspec/tests/test_spec.py::test_posix_tests_bash_stat[special_chars/f^oo.*-expected15] PASSED [ 91%] fsspec/tests/test_spec.py::test_posix_tests_bash_stat[special_chars/f$oo.*-expected16] PASSED [ 91%] fsspec/tests/test_spec.py::test_posix_tests_bash_stat[special_chars/f{oo.*-expected17] PASSED [ 91%] fsspec/tests/test_spec.py::test_posix_tests_bash_stat[special_chars/f}oo.*-expected18] PASSED [ 91%] fsspec/tests/test_spec.py::test_posix_tests_bash_stat[*-expected19] PASSED [ 91%] fsspec/tests/test_spec.py::test_posix_tests_bash_stat[*.yaml-expected20] PASSED [ 91%] fsspec/tests/test_spec.py::test_posix_tests_bash_stat[**-expected21] PASSED [ 91%] fsspec/tests/test_spec.py::test_posix_tests_bash_stat[*/-expected22] PASSED [ 91%] fsspec/tests/test_spec.py::test_posix_tests_bash_stat[**/-expected23] PASSED [ 91%] fsspec/tests/test_spec.py::test_posix_tests_bash_stat[*/*.yaml-expected24] PASSED [ 91%] fsspec/tests/test_spec.py::test_posix_tests_bash_stat[**/*.yaml-expected25] PASSED [ 91%] fsspec/tests/test_spec.py::test_posix_tests_bash_stat[*/test1/*-expected26] PASSED [ 91%] fsspec/tests/test_spec.py::test_posix_tests_bash_stat[*/test1/*.yaml-expected27] PASSED [ 92%] fsspec/tests/test_spec.py::test_posix_tests_bash_stat[**/test1/*-expected28] PASSED [ 92%] fsspec/tests/test_spec.py::test_posix_tests_bash_stat[**/test1/*.yaml-expected29] PASSED [ 92%] fsspec/tests/test_spec.py::test_posix_tests_bash_stat[*/test1/*/-expected30] PASSED [ 92%] fsspec/tests/test_spec.py::test_posix_tests_bash_stat[**/test1/*/-expected31] PASSED [ 92%] fsspec/tests/test_spec.py::test_posix_tests_bash_stat[*/test1/**-expected32] PASSED [ 92%] fsspec/tests/test_spec.py::test_posix_tests_bash_stat[**/test1/**-expected33] PASSED [ 92%] fsspec/tests/test_spec.py::test_posix_tests_bash_stat[*/test1/**/-expected34] PASSED [ 92%] fsspec/tests/test_spec.py::test_posix_tests_bash_stat[**/test1/**/-expected35] PASSED [ 92%] fsspec/tests/test_spec.py::test_posix_tests_bash_stat[test0/*-expected36] PASSED [ 92%] fsspec/tests/test_spec.py::test_posix_tests_bash_stat[test0/*.yaml-expected37] PASSED [ 92%] fsspec/tests/test_spec.py::test_posix_tests_bash_stat[test0/**-expected38] PASSED [ 92%] fsspec/tests/test_spec.py::test_posix_tests_bash_stat[test0/*/-expected39] PASSED [ 92%] fsspec/tests/test_spec.py::test_posix_tests_bash_stat[test0/**/-expected40] PASSED [ 92%] fsspec/tests/test_spec.py::test_posix_tests_bash_stat[test0/*/*.yaml-expected41] PASSED [ 92%] fsspec/tests/test_spec.py::test_posix_tests_bash_stat[test0/**/*.yaml-expected42] PASSED [ 92%] fsspec/tests/test_spec.py::test_posix_tests_bash_stat[test0/*/test1/*-expected43] PASSED [ 92%] fsspec/tests/test_spec.py::test_posix_tests_bash_stat[test0/*/test1/*.yaml-expected44] PASSED [ 92%] fsspec/tests/test_spec.py::test_posix_tests_bash_stat[test0/**/test1/*-expected45] PASSED [ 93%] fsspec/tests/test_spec.py::test_posix_tests_bash_stat[test0/**/test1/*.yaml-expected46] PASSED [ 93%] fsspec/tests/test_spec.py::test_posix_tests_bash_stat[test0/*/test1/*/-expected47] PASSED [ 93%] fsspec/tests/test_spec.py::test_posix_tests_bash_stat[test0/**/test1/*/-expected48] PASSED [ 93%] fsspec/tests/test_spec.py::test_posix_tests_bash_stat[test0/*/test1/**-expected49] PASSED [ 93%] fsspec/tests/test_spec.py::test_posix_tests_bash_stat[test0/**/test1/**-expected50] PASSED [ 93%] fsspec/tests/test_spec.py::test_posix_tests_bash_stat[test0/*/test1/**/-expected51] PASSED [ 93%] fsspec/tests/test_spec.py::test_posix_tests_bash_stat[test0/**/test1/**/-expected52] PASSED [ 93%] fsspec/tests/test_spec.py::test_glob_posix_rules[nonexistent-expected0] PASSED [ 93%] fsspec/tests/test_spec.py::test_glob_posix_rules[test0.json-expected1] PASSED [ 93%] fsspec/tests/test_spec.py::test_glob_posix_rules[test0-expected2] PASSED [ 93%] fsspec/tests/test_spec.py::test_glob_posix_rules[test0/-expected3] PASSED [ 93%] fsspec/tests/test_spec.py::test_glob_posix_rules[test1/test0.yaml-expected4] PASSED [ 93%] fsspec/tests/test_spec.py::test_glob_posix_rules[test0/test[1-2]-expected5] PASSED [ 93%] fsspec/tests/test_spec.py::test_glob_posix_rules[test0/test[1-2]/-expected6] PASSED [ 93%] fsspec/tests/test_spec.py::test_glob_posix_rules[test0/test[1-2]/*-expected7] PASSED [ 93%] fsspec/tests/test_spec.py::test_glob_posix_rules[test0/test[1-2]/*.[j]*-expected8] PASSED [ 93%] fsspec/tests/test_spec.py::test_glob_posix_rules[special_chars/f\\oo.*-expected9] PASSED [ 93%] fsspec/tests/test_spec.py::test_glob_posix_rules[special_chars/f.oo.*-expected10] PASSED [ 94%] fsspec/tests/test_spec.py::test_glob_posix_rules[special_chars/f+oo.*-expected11] PASSED [ 94%] fsspec/tests/test_spec.py::test_glob_posix_rules[special_chars/f(oo.*-expected12] PASSED [ 94%] fsspec/tests/test_spec.py::test_glob_posix_rules[special_chars/f)oo.*-expected13] PASSED [ 94%] fsspec/tests/test_spec.py::test_glob_posix_rules[special_chars/f|oo.*-expected14] PASSED [ 94%] fsspec/tests/test_spec.py::test_glob_posix_rules[special_chars/f^oo.*-expected15] PASSED [ 94%] fsspec/tests/test_spec.py::test_glob_posix_rules[special_chars/f$oo.*-expected16] PASSED [ 94%] fsspec/tests/test_spec.py::test_glob_posix_rules[special_chars/f{oo.*-expected17] PASSED [ 94%] fsspec/tests/test_spec.py::test_glob_posix_rules[special_chars/f}oo.*-expected18] PASSED [ 94%] fsspec/tests/test_spec.py::test_glob_posix_rules[*-expected19] PASSED [ 94%] fsspec/tests/test_spec.py::test_glob_posix_rules[*.yaml-expected20] PASSED [ 94%] fsspec/tests/test_spec.py::test_glob_posix_rules[**-expected21] PASSED [ 94%] fsspec/tests/test_spec.py::test_glob_posix_rules[*/-expected22] PASSED [ 94%] fsspec/tests/test_spec.py::test_glob_posix_rules[**/-expected23] PASSED [ 94%] fsspec/tests/test_spec.py::test_glob_posix_rules[*/*.yaml-expected24] PASSED [ 94%] fsspec/tests/test_spec.py::test_glob_posix_rules[**/*.yaml-expected25] PASSED [ 94%] fsspec/tests/test_spec.py::test_glob_posix_rules[*/test1/*-expected26] PASSED [ 94%] fsspec/tests/test_spec.py::test_glob_posix_rules[*/test1/*.yaml-expected27] PASSED [ 94%] fsspec/tests/test_spec.py::test_glob_posix_rules[**/test1/*-expected28] PASSED [ 94%] fsspec/tests/test_spec.py::test_glob_posix_rules[**/test1/*.yaml-expected29] PASSED [ 95%] fsspec/tests/test_spec.py::test_glob_posix_rules[*/test1/*/-expected30] PASSED [ 95%] fsspec/tests/test_spec.py::test_glob_posix_rules[**/test1/*/-expected31] PASSED [ 95%] fsspec/tests/test_spec.py::test_glob_posix_rules[*/test1/**-expected32] PASSED [ 95%] fsspec/tests/test_spec.py::test_glob_posix_rules[**/test1/**-expected33] PASSED [ 95%] fsspec/tests/test_spec.py::test_glob_posix_rules[*/test1/**/-expected34] PASSED [ 95%] fsspec/tests/test_spec.py::test_glob_posix_rules[**/test1/**/-expected35] PASSED [ 95%] fsspec/tests/test_spec.py::test_glob_posix_rules[test0/*-expected36] PASSED [ 95%] fsspec/tests/test_spec.py::test_glob_posix_rules[test0/*.yaml-expected37] PASSED [ 95%] fsspec/tests/test_spec.py::test_glob_posix_rules[test0/**-expected38] PASSED [ 95%] fsspec/tests/test_spec.py::test_glob_posix_rules[test0/*/-expected39] PASSED [ 95%] fsspec/tests/test_spec.py::test_glob_posix_rules[test0/**/-expected40] PASSED [ 95%] fsspec/tests/test_spec.py::test_glob_posix_rules[test0/*/*.yaml-expected41] PASSED [ 95%] fsspec/tests/test_spec.py::test_glob_posix_rules[test0/**/*.yaml-expected42] PASSED [ 95%] fsspec/tests/test_spec.py::test_glob_posix_rules[test0/*/test1/*-expected43] PASSED [ 95%] fsspec/tests/test_spec.py::test_glob_posix_rules[test0/*/test1/*.yaml-expected44] PASSED [ 95%] fsspec/tests/test_spec.py::test_glob_posix_rules[test0/**/test1/*-expected45] PASSED [ 95%] fsspec/tests/test_spec.py::test_glob_posix_rules[test0/**/test1/*.yaml-expected46] PASSED [ 95%] fsspec/tests/test_spec.py::test_glob_posix_rules[test0/*/test1/*/-expected47] PASSED [ 96%] fsspec/tests/test_spec.py::test_glob_posix_rules[test0/**/test1/*/-expected48] PASSED [ 96%] fsspec/tests/test_spec.py::test_glob_posix_rules[test0/*/test1/**-expected49] PASSED [ 96%] fsspec/tests/test_spec.py::test_glob_posix_rules[test0/**/test1/**-expected50] PASSED [ 96%] fsspec/tests/test_spec.py::test_glob_posix_rules[test0/*/test1/**/-expected51] PASSED [ 96%] fsspec/tests/test_spec.py::test_glob_posix_rules[test0/**/test1/**/-expected52] PASSED [ 96%] fsspec/tests/test_utils.py::test_read_block PASSED [ 96%] fsspec/tests/test_utils.py::test_read_block_split_before PASSED [ 96%] fsspec/tests/test_utils.py::test_seek_delimiter_endline PASSED [ 96%] fsspec/tests/test_utils.py::test_infer_options PASSED [ 96%] fsspec/tests/test_utils.py::test_infer_simple PASSED [ 96%] fsspec/tests/test_utils.py::test_infer_storage_options_c[c:\\foo\\bar-c:\\foo\\bar] PASSED [ 96%] fsspec/tests/test_utils.py::test_infer_storage_options_c[C:\\\\foo\\bar-C:\\\\foo\\bar] PASSED [ 96%] fsspec/tests/test_utils.py::test_infer_storage_options_c[c:/foo/bar-c:/foo/bar] PASSED [ 96%] fsspec/tests/test_utils.py::test_infer_storage_options_c[file:///c|\\foo\\bar-c:\\foo\\bar] PASSED [ 96%] fsspec/tests/test_utils.py::test_infer_storage_options_c[file:///C|/foo/bar-C:/foo/bar] PASSED [ 96%] fsspec/tests/test_utils.py::test_infer_storage_options_c[file:///C:/foo/bar-C:/foo/bar] PASSED [ 96%] fsspec/tests/test_utils.py::test_common_prefix[paths0-/more] PASSED [ 96%] fsspec/tests/test_utils.py::test_common_prefix[paths1-] PASSED [ 97%] fsspec/tests/test_utils.py::test_common_prefix[paths2-/] PASSED [ 97%] fsspec/tests/test_utils.py::test_common_prefix[paths3-] PASSED [ 97%] fsspec/tests/test_utils.py::test_common_prefix[paths4-/more] PASSED [ 97%] fsspec/tests/test_utils.py::test_common_prefix[paths5-more] PASSED [ 97%] fsspec/tests/test_utils.py::test_other_paths[paths0-/path2-False-expected0] PASSED [ 97%] fsspec/tests/test_utils.py::test_other_paths[paths1-/path2-True-expected1] PASSED [ 97%] fsspec/tests/test_utils.py::test_other_paths[paths2-/path2/-True-expected2] PASSED [ 97%] fsspec/tests/test_utils.py::test_other_paths[paths3-other3-False-expected3] PASSED [ 97%] fsspec/tests/test_utils.py::test_other_paths[paths4-other4-True-expected4] PASSED [ 97%] fsspec/tests/test_utils.py::test_other_paths[paths5-/path2-False-expected5] PASSED [ 97%] fsspec/tests/test_utils.py::test_other_paths[paths6-/path2-True-expected6] PASSED [ 97%] fsspec/tests/test_utils.py::test_other_paths[paths7-/path2-False-expected7] PASSED [ 97%] fsspec/tests/test_utils.py::test_other_paths[paths8-/path2-True-expected8] PASSED [ 97%] fsspec/tests/test_utils.py::test_other_paths[paths9-/path2/-False-expected9] PASSED [ 97%] fsspec/tests/test_utils.py::test_other_paths[paths10-/path2/-True-expected10] PASSED [ 97%] fsspec/tests/test_utils.py::test_other_paths[paths11-/path2/-False-expected11] PASSED [ 97%] fsspec/tests/test_utils.py::test_other_paths[paths12-/path2/-True-expected12] PASSED [ 97%] fsspec/tests/test_utils.py::test_other_paths[paths13-dest/-False-expected13] PASSED [ 98%] fsspec/tests/test_utils.py::test_other_paths[paths14-dest/-False-expected14] PASSED [ 98%] fsspec/tests/test_utils.py::test_log PASSED [ 98%] fsspec/tests/test_utils.py::test_get_protocol[par0] PASSED [ 98%] fsspec/tests/test_utils.py::test_get_protocol[par1] PASSED [ 98%] fsspec/tests/test_utils.py::test_get_protocol[par2] PASSED [ 98%] fsspec/tests/test_utils.py::test_get_protocol[par3] PASSED [ 98%] fsspec/tests/test_utils.py::test_get_protocol[par4] PASSED [ 98%] fsspec/tests/test_utils.py::test_get_protocol[par5] PASSED [ 98%] fsspec/tests/test_utils.py::test_get_protocol[par6] PASSED [ 98%] fsspec/tests/test_utils.py::test_get_protocol[par7] PASSED [ 98%] fsspec/tests/test_utils.py::test_can_local[par0] PASSED [ 98%] fsspec/tests/test_utils.py::test_can_local[par1] PASSED [ 98%] fsspec/tests/test_utils.py::test_can_local[par2] PASSED [ 98%] fsspec/tests/test_utils.py::test_can_local[par3] PASSED [ 98%] fsspec/tests/test_utils.py::test_can_local[par4] PASSED [ 98%] fsspec/tests/test_utils.py::test_can_local[par5] PASSED [ 98%] fsspec/tests/test_utils.py::test_can_local[par6] PASSED [ 98%] fsspec/tests/test_utils.py::test_mirror_from PASSED [ 99%] fsspec/tests/test_utils.py::test_merge_offset_ranges[None-0] PASSED [ 99%] fsspec/tests/test_utils.py::test_merge_offset_ranges[None-32] PASSED [ 99%] fsspec/tests/test_utils.py::test_merge_offset_ranges[128-0] PASSED [ 99%] fsspec/tests/test_utils.py::test_merge_offset_ranges[128-32] PASSED [ 99%] fsspec/tests/test_utils.py::test_size PASSED [ 99%] fsspec/tests/test_utils.py::test_stringify_path[foo-foo] PASSED [ 99%] fsspec/tests/test_utils.py::test_stringify_path[path1-foo] PASSED [ 99%] fsspec/tests/test_utils.py::test_stringify_path[path2-foo] PASSED [ 99%] fsspec/tests/test_utils.py::test_stringify_path[path3-foo] PASSED [ 99%] fsspec/tests/test_utils.py::test_stringify_path[path4-foo] PASSED [ 99%] fsspec/tests/test_utils.py::test_stringify_path[bytes-bytes] PASSED [ 99%] fsspec/tests/test_utils.py::test_stringify_path[None-None] PASSED [ 99%] fsspec/tests/test_utils.py::test_stringify_path[1-1] PASSED [ 99%] fsspec/tests/test_utils.py::test_stringify_path[True-True] PASSED [ 99%] fsspec/tests/test_utils.py::test_stringify_path[path9-expected9] PASSED [ 99%] fsspec/tests/test_utils.py::test_stringify_path[path10-expected10] PASSED [ 99%] fsspec/tests/test_utils.py::test_stringify_path[path11-expected11] PASSED [ 99%] fsspec/tests/test_utils.py::test_stringify_path[path12-expected12] PASSED [100%] =================================== FAILURES =================================== __________________________________ test_list ___________________________________ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. > hosts = await self._resolve_host(host, port, traces=traces) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1351: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.13/site-packages/aiohttp/connector.py:995: in _resolve_host return await asyncio.shield(resolved_host_task) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1026: in _resolve_host_with_throttle addrs = await self._resolver.resolve(host, port, family=self._family) /usr/lib64/python3.13/site-packages/aiohttp/resolver.py:36: in resolve infos = await self._loop.getaddrinfo( /usr/lib64/python3.13/asyncio/base_events.py:939: in getaddrinfo return await self.run_in_executor( /usr/lib64/python3.13/concurrent/futures/thread.py:59: in run result = self.fn(*self.args, **self.kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ host = 'a2f834a2b06c4fa6b7764975792da9f2', port = 41889 family = , type = proto = 0, flags = def getaddrinfo(host, port, family=0, type=0, proto=0, flags=0): """Resolve host and port into list of address info entries. Translate the host/port argument into a sequence of 5-tuples that contain all the necessary arguments for creating a socket connected to that service. host is a domain name, a string representation of an IPv4/v6 address or None. port is a string service name such as 'http', a numeric port number or None. By passing None as the value of host and port, you can pass NULL to the underlying C API. The family, type and proto arguments can be optionally specified in order to narrow the list of addresses returned. Passing zero as a value for each of these arguments selects the full range of results. """ # We override this function since we want to translate the numeric family # and socket type values to enum constants. addrlist = [] > for res in _socket.getaddrinfo(host, port, family, type, proto, flags): E socket.gaierror: [Errno -3] Temporary failure in name resolution /usr/lib64/python3.13/socket.py:977: gaierror The above exception was the direct cause of the following exception: server = namespace(address='http://a2f834a2b06c4fa6b7764975792da9f2:41889', realfile='http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile') def test_list(server): h = fsspec.filesystem("http") > out = h.glob(server.address + "/index/*") /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/tests/test_http.py:19: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:118: in wrapper return sync(self.loop, func, *args, **kwargs) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:103: in sync raise return_result /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:56: in _runner result[0] = await coro /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:494: in _glob allpaths = await self._find( /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:848: in _find if withdirs and path != "" and await self._isdir(path): /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:521: in _isdir return bool(await self._ls(path)) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:207: in _ls out = await self._ls_real(url, detail=detail, **kwargs) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:159: in _ls_real async with session.get(self.encode_url(url), **self.kwargs) as r: /usr/lib64/python3.13/site-packages/aiohttp/client.py:1425: in __aenter__ self._resp: _RetType = await self._coro /usr/lib64/python3.13/site-packages/aiohttp/client.py:703: in _request conn = await self._connector.connect( /usr/lib64/python3.13/site-packages/aiohttp/connector.py:548: in connect proto = await self._create_connection(req, traces, timeout) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1056: in _create_connection _, proto = await self._create_direct_connection(req, traces, timeout) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. hosts = await self._resolve_host(host, port, traces=traces) except OSError as exc: if exc.errno is None and isinstance(exc, asyncio.TimeoutError): raise # in case of proxy it is not ClientProxyConnectionError # it is problem of resolving proxy ip itself > raise ClientConnectorDNSError(req.connection_key, exc) from exc E aiohttp.client_exceptions.ClientConnectorDNSError: Cannot connect to host a2f834a2b06c4fa6b7764975792da9f2:41889 ssl:default [Temporary failure in name resolution] /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1357: ClientConnectorDNSError _______________________________ test_list_cache ________________________________ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. > hosts = await self._resolve_host(host, port, traces=traces) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1351: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.13/site-packages/aiohttp/connector.py:995: in _resolve_host return await asyncio.shield(resolved_host_task) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1026: in _resolve_host_with_throttle addrs = await self._resolver.resolve(host, port, family=self._family) /usr/lib64/python3.13/site-packages/aiohttp/resolver.py:36: in resolve infos = await self._loop.getaddrinfo( /usr/lib64/python3.13/asyncio/base_events.py:939: in getaddrinfo return await self.run_in_executor( /usr/lib64/python3.13/concurrent/futures/thread.py:59: in run result = self.fn(*self.args, **self.kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ host = 'a2f834a2b06c4fa6b7764975792da9f2', port = 41889 family = , type = proto = 0, flags = def getaddrinfo(host, port, family=0, type=0, proto=0, flags=0): """Resolve host and port into list of address info entries. Translate the host/port argument into a sequence of 5-tuples that contain all the necessary arguments for creating a socket connected to that service. host is a domain name, a string representation of an IPv4/v6 address or None. port is a string service name such as 'http', a numeric port number or None. By passing None as the value of host and port, you can pass NULL to the underlying C API. The family, type and proto arguments can be optionally specified in order to narrow the list of addresses returned. Passing zero as a value for each of these arguments selects the full range of results. """ # We override this function since we want to translate the numeric family # and socket type values to enum constants. addrlist = [] > for res in _socket.getaddrinfo(host, port, family, type, proto, flags): E socket.gaierror: [Errno -3] Temporary failure in name resolution /usr/lib64/python3.13/socket.py:977: gaierror The above exception was the direct cause of the following exception: server = namespace(address='http://a2f834a2b06c4fa6b7764975792da9f2:41889', realfile='http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile') def test_list_cache(server): h = fsspec.filesystem("http", use_listings_cache=True) > out = h.glob(server.address + "/index/*") /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/tests/test_http.py:31: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:118: in wrapper return sync(self.loop, func, *args, **kwargs) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:103: in sync raise return_result /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:56: in _runner result[0] = await coro /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:494: in _glob allpaths = await self._find( /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:848: in _find if withdirs and path != "" and await self._isdir(path): /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:521: in _isdir return bool(await self._ls(path)) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:207: in _ls out = await self._ls_real(url, detail=detail, **kwargs) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:159: in _ls_real async with session.get(self.encode_url(url), **self.kwargs) as r: /usr/lib64/python3.13/site-packages/aiohttp/client.py:1425: in __aenter__ self._resp: _RetType = await self._coro /usr/lib64/python3.13/site-packages/aiohttp/client.py:703: in _request conn = await self._connector.connect( /usr/lib64/python3.13/site-packages/aiohttp/connector.py:548: in connect proto = await self._create_connection(req, traces, timeout) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1056: in _create_connection _, proto = await self._create_direct_connection(req, traces, timeout) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. hosts = await self._resolve_host(host, port, traces=traces) except OSError as exc: if exc.errno is None and isinstance(exc, asyncio.TimeoutError): raise # in case of proxy it is not ClientProxyConnectionError # it is problem of resolving proxy ip itself > raise ClientConnectorDNSError(req.connection_key, exc) from exc E aiohttp.client_exceptions.ClientConnectorDNSError: Cannot connect to host a2f834a2b06c4fa6b7764975792da9f2:41889 ssl:default [Temporary failure in name resolution] /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1357: ClientConnectorDNSError ___________________ test_list_cache_with_expiry_time_cached ____________________ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. > hosts = await self._resolve_host(host, port, traces=traces) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1351: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.13/site-packages/aiohttp/connector.py:995: in _resolve_host return await asyncio.shield(resolved_host_task) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1026: in _resolve_host_with_throttle addrs = await self._resolver.resolve(host, port, family=self._family) /usr/lib64/python3.13/site-packages/aiohttp/resolver.py:36: in resolve infos = await self._loop.getaddrinfo( /usr/lib64/python3.13/asyncio/base_events.py:939: in getaddrinfo return await self.run_in_executor( /usr/lib64/python3.13/concurrent/futures/thread.py:59: in run result = self.fn(*self.args, **self.kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ host = 'a2f834a2b06c4fa6b7764975792da9f2', port = 41889 family = , type = proto = 0, flags = def getaddrinfo(host, port, family=0, type=0, proto=0, flags=0): """Resolve host and port into list of address info entries. Translate the host/port argument into a sequence of 5-tuples that contain all the necessary arguments for creating a socket connected to that service. host is a domain name, a string representation of an IPv4/v6 address or None. port is a string service name such as 'http', a numeric port number or None. By passing None as the value of host and port, you can pass NULL to the underlying C API. The family, type and proto arguments can be optionally specified in order to narrow the list of addresses returned. Passing zero as a value for each of these arguments selects the full range of results. """ # We override this function since we want to translate the numeric family # and socket type values to enum constants. addrlist = [] > for res in _socket.getaddrinfo(host, port, family, type, proto, flags): E socket.gaierror: [Errno -3] Temporary failure in name resolution /usr/lib64/python3.13/socket.py:977: gaierror The above exception was the direct cause of the following exception: server = namespace(address='http://a2f834a2b06c4fa6b7764975792da9f2:41889', realfile='http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile') def test_list_cache_with_expiry_time_cached(server): h = fsspec.filesystem("http", use_listings_cache=True, listings_expiry_time=30) # First, the directory cache is not initialized. assert not h.dircache # By querying the filesystem with "use_listings_cache=True", # the cache will automatically get populated. > out = h.glob(server.address + "/index/*") /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/tests/test_http.py:43: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:118: in wrapper return sync(self.loop, func, *args, **kwargs) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:103: in sync raise return_result /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:56: in _runner result[0] = await coro /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:494: in _glob allpaths = await self._find( /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:848: in _find if withdirs and path != "" and await self._isdir(path): /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:521: in _isdir return bool(await self._ls(path)) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:207: in _ls out = await self._ls_real(url, detail=detail, **kwargs) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:159: in _ls_real async with session.get(self.encode_url(url), **self.kwargs) as r: /usr/lib64/python3.13/site-packages/aiohttp/client.py:1425: in __aenter__ self._resp: _RetType = await self._coro /usr/lib64/python3.13/site-packages/aiohttp/client.py:703: in _request conn = await self._connector.connect( /usr/lib64/python3.13/site-packages/aiohttp/connector.py:548: in connect proto = await self._create_connection(req, traces, timeout) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1056: in _create_connection _, proto = await self._create_direct_connection(req, traces, timeout) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. hosts = await self._resolve_host(host, port, traces=traces) except OSError as exc: if exc.errno is None and isinstance(exc, asyncio.TimeoutError): raise # in case of proxy it is not ClientProxyConnectionError # it is problem of resolving proxy ip itself > raise ClientConnectorDNSError(req.connection_key, exc) from exc E aiohttp.client_exceptions.ClientConnectorDNSError: Cannot connect to host a2f834a2b06c4fa6b7764975792da9f2:41889 ssl:default [Temporary failure in name resolution] /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1357: ClientConnectorDNSError ___________________ test_list_cache_with_expiry_time_purged ____________________ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. > hosts = await self._resolve_host(host, port, traces=traces) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1351: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.13/site-packages/aiohttp/connector.py:995: in _resolve_host return await asyncio.shield(resolved_host_task) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1026: in _resolve_host_with_throttle addrs = await self._resolver.resolve(host, port, family=self._family) /usr/lib64/python3.13/site-packages/aiohttp/resolver.py:36: in resolve infos = await self._loop.getaddrinfo( /usr/lib64/python3.13/asyncio/base_events.py:939: in getaddrinfo return await self.run_in_executor( /usr/lib64/python3.13/concurrent/futures/thread.py:59: in run result = self.fn(*self.args, **self.kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ host = 'a2f834a2b06c4fa6b7764975792da9f2', port = 41889 family = , type = proto = 0, flags = def getaddrinfo(host, port, family=0, type=0, proto=0, flags=0): """Resolve host and port into list of address info entries. Translate the host/port argument into a sequence of 5-tuples that contain all the necessary arguments for creating a socket connected to that service. host is a domain name, a string representation of an IPv4/v6 address or None. port is a string service name such as 'http', a numeric port number or None. By passing None as the value of host and port, you can pass NULL to the underlying C API. The family, type and proto arguments can be optionally specified in order to narrow the list of addresses returned. Passing zero as a value for each of these arguments selects the full range of results. """ # We override this function since we want to translate the numeric family # and socket type values to enum constants. addrlist = [] > for res in _socket.getaddrinfo(host, port, family, type, proto, flags): E socket.gaierror: [Errno -3] Temporary failure in name resolution /usr/lib64/python3.13/socket.py:977: gaierror The above exception was the direct cause of the following exception: server = namespace(address='http://a2f834a2b06c4fa6b7764975792da9f2:41889', realfile='http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile') def test_list_cache_with_expiry_time_purged(server): h = fsspec.filesystem("http", use_listings_cache=True, listings_expiry_time=0.3) # First, the directory cache is not initialized. assert not h.dircache # By querying the filesystem with "use_listings_cache=True", # the cache will automatically get populated. > out = h.glob(server.address + "/index/*") /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/tests/test_http.py:61: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:118: in wrapper return sync(self.loop, func, *args, **kwargs) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:103: in sync raise return_result /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:56: in _runner result[0] = await coro /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:494: in _glob allpaths = await self._find( /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:848: in _find if withdirs and path != "" and await self._isdir(path): /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:521: in _isdir return bool(await self._ls(path)) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:207: in _ls out = await self._ls_real(url, detail=detail, **kwargs) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:159: in _ls_real async with session.get(self.encode_url(url), **self.kwargs) as r: /usr/lib64/python3.13/site-packages/aiohttp/client.py:1425: in __aenter__ self._resp: _RetType = await self._coro /usr/lib64/python3.13/site-packages/aiohttp/client.py:703: in _request conn = await self._connector.connect( /usr/lib64/python3.13/site-packages/aiohttp/connector.py:548: in connect proto = await self._create_connection(req, traces, timeout) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1056: in _create_connection _, proto = await self._create_direct_connection(req, traces, timeout) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. hosts = await self._resolve_host(host, port, traces=traces) except OSError as exc: if exc.errno is None and isinstance(exc, asyncio.TimeoutError): raise # in case of proxy it is not ClientProxyConnectionError # it is problem of resolving proxy ip itself > raise ClientConnectorDNSError(req.connection_key, exc) from exc E aiohttp.client_exceptions.ClientConnectorDNSError: Cannot connect to host a2f834a2b06c4fa6b7764975792da9f2:41889 ssl:default [Temporary failure in name resolution] /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1357: ClientConnectorDNSError ____________________________ test_list_cache_reuse _____________________________ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. > hosts = await self._resolve_host(host, port, traces=traces) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1351: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.13/site-packages/aiohttp/connector.py:995: in _resolve_host return await asyncio.shield(resolved_host_task) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1026: in _resolve_host_with_throttle addrs = await self._resolver.resolve(host, port, family=self._family) /usr/lib64/python3.13/site-packages/aiohttp/resolver.py:36: in resolve infos = await self._loop.getaddrinfo( /usr/lib64/python3.13/asyncio/base_events.py:939: in getaddrinfo return await self.run_in_executor( /usr/lib64/python3.13/concurrent/futures/thread.py:59: in run result = self.fn(*self.args, **self.kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ host = 'a2f834a2b06c4fa6b7764975792da9f2', port = 41889 family = , type = proto = 0, flags = def getaddrinfo(host, port, family=0, type=0, proto=0, flags=0): """Resolve host and port into list of address info entries. Translate the host/port argument into a sequence of 5-tuples that contain all the necessary arguments for creating a socket connected to that service. host is a domain name, a string representation of an IPv4/v6 address or None. port is a string service name such as 'http', a numeric port number or None. By passing None as the value of host and port, you can pass NULL to the underlying C API. The family, type and proto arguments can be optionally specified in order to narrow the list of addresses returned. Passing zero as a value for each of these arguments selects the full range of results. """ # We override this function since we want to translate the numeric family # and socket type values to enum constants. addrlist = [] > for res in _socket.getaddrinfo(host, port, family, type, proto, flags): E socket.gaierror: [Errno -3] Temporary failure in name resolution /usr/lib64/python3.13/socket.py:977: gaierror The above exception was the direct cause of the following exception: server = namespace(address='http://a2f834a2b06c4fa6b7764975792da9f2:41889', realfile='http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile') def test_list_cache_reuse(server): h = fsspec.filesystem("http", use_listings_cache=True, listings_expiry_time=5) # First, the directory cache is not initialized. assert not h.dircache # By querying the filesystem with "use_listings_cache=True", # the cache will automatically get populated. > out = h.glob(server.address + "/index/*") /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/tests/test_http.py:92: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:118: in wrapper return sync(self.loop, func, *args, **kwargs) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:103: in sync raise return_result /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:56: in _runner result[0] = await coro /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:494: in _glob allpaths = await self._find( /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:848: in _find if withdirs and path != "" and await self._isdir(path): /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:521: in _isdir return bool(await self._ls(path)) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:207: in _ls out = await self._ls_real(url, detail=detail, **kwargs) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:159: in _ls_real async with session.get(self.encode_url(url), **self.kwargs) as r: /usr/lib64/python3.13/site-packages/aiohttp/client.py:1425: in __aenter__ self._resp: _RetType = await self._coro /usr/lib64/python3.13/site-packages/aiohttp/client.py:703: in _request conn = await self._connector.connect( /usr/lib64/python3.13/site-packages/aiohttp/connector.py:548: in connect proto = await self._create_connection(req, traces, timeout) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1056: in _create_connection _, proto = await self._create_direct_connection(req, traces, timeout) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. hosts = await self._resolve_host(host, port, traces=traces) except OSError as exc: if exc.errno is None and isinstance(exc, asyncio.TimeoutError): raise # in case of proxy it is not ClientProxyConnectionError # it is problem of resolving proxy ip itself > raise ClientConnectorDNSError(req.connection_key, exc) from exc E aiohttp.client_exceptions.ClientConnectorDNSError: Cannot connect to host a2f834a2b06c4fa6b7764975792da9f2:41889 ssl:default [Temporary failure in name resolution] /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1357: ClientConnectorDNSError _________________________ test_ls_raises_filenotfound __________________________ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. > hosts = await self._resolve_host(host, port, traces=traces) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1351: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.13/site-packages/aiohttp/connector.py:995: in _resolve_host return await asyncio.shield(resolved_host_task) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1026: in _resolve_host_with_throttle addrs = await self._resolver.resolve(host, port, family=self._family) /usr/lib64/python3.13/site-packages/aiohttp/resolver.py:36: in resolve infos = await self._loop.getaddrinfo( /usr/lib64/python3.13/asyncio/base_events.py:939: in getaddrinfo return await self.run_in_executor( /usr/lib64/python3.13/concurrent/futures/thread.py:59: in run result = self.fn(*self.args, **self.kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ host = 'a2f834a2b06c4fa6b7764975792da9f2', port = 41889 family = , type = proto = 0, flags = def getaddrinfo(host, port, family=0, type=0, proto=0, flags=0): """Resolve host and port into list of address info entries. Translate the host/port argument into a sequence of 5-tuples that contain all the necessary arguments for creating a socket connected to that service. host is a domain name, a string representation of an IPv4/v6 address or None. port is a string service name such as 'http', a numeric port number or None. By passing None as the value of host and port, you can pass NULL to the underlying C API. The family, type and proto arguments can be optionally specified in order to narrow the list of addresses returned. Passing zero as a value for each of these arguments selects the full range of results. """ # We override this function since we want to translate the numeric family # and socket type values to enum constants. addrlist = [] > for res in _socket.getaddrinfo(host, port, family, type, proto, flags): E socket.gaierror: [Errno -3] Temporary failure in name resolution /usr/lib64/python3.13/socket.py:977: gaierror The above exception was the direct cause of the following exception: server = namespace(address='http://a2f834a2b06c4fa6b7764975792da9f2:41889', realfile='http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile') def test_ls_raises_filenotfound(server): h = fsspec.filesystem("http") with pytest.raises(FileNotFoundError): > h.ls(server.address + "/not-a-key") /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/tests/test_http.py:117: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:118: in wrapper return sync(self.loop, func, *args, **kwargs) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:103: in sync raise return_result /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:56: in _runner result[0] = await coro /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:207: in _ls out = await self._ls_real(url, detail=detail, **kwargs) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:159: in _ls_real async with session.get(self.encode_url(url), **self.kwargs) as r: /usr/lib64/python3.13/site-packages/aiohttp/client.py:1425: in __aenter__ self._resp: _RetType = await self._coro /usr/lib64/python3.13/site-packages/aiohttp/client.py:703: in _request conn = await self._connector.connect( /usr/lib64/python3.13/site-packages/aiohttp/connector.py:548: in connect proto = await self._create_connection(req, traces, timeout) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1056: in _create_connection _, proto = await self._create_direct_connection(req, traces, timeout) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. hosts = await self._resolve_host(host, port, traces=traces) except OSError as exc: if exc.errno is None and isinstance(exc, asyncio.TimeoutError): raise # in case of proxy it is not ClientProxyConnectionError # it is problem of resolving proxy ip itself > raise ClientConnectorDNSError(req.connection_key, exc) from exc E aiohttp.client_exceptions.ClientConnectorDNSError: Cannot connect to host a2f834a2b06c4fa6b7764975792da9f2:41889 ssl:default [Temporary failure in name resolution] /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1357: ClientConnectorDNSError ________________________ test_list_cache_with_max_paths ________________________ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. > hosts = await self._resolve_host(host, port, traces=traces) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1351: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.13/site-packages/aiohttp/connector.py:995: in _resolve_host return await asyncio.shield(resolved_host_task) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1026: in _resolve_host_with_throttle addrs = await self._resolver.resolve(host, port, family=self._family) /usr/lib64/python3.13/site-packages/aiohttp/resolver.py:36: in resolve infos = await self._loop.getaddrinfo( /usr/lib64/python3.13/asyncio/base_events.py:939: in getaddrinfo return await self.run_in_executor( /usr/lib64/python3.13/concurrent/futures/thread.py:59: in run result = self.fn(*self.args, **self.kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ host = 'a2f834a2b06c4fa6b7764975792da9f2', port = 41889 family = , type = proto = 0, flags = def getaddrinfo(host, port, family=0, type=0, proto=0, flags=0): """Resolve host and port into list of address info entries. Translate the host/port argument into a sequence of 5-tuples that contain all the necessary arguments for creating a socket connected to that service. host is a domain name, a string representation of an IPv4/v6 address or None. port is a string service name such as 'http', a numeric port number or None. By passing None as the value of host and port, you can pass NULL to the underlying C API. The family, type and proto arguments can be optionally specified in order to narrow the list of addresses returned. Passing zero as a value for each of these arguments selects the full range of results. """ # We override this function since we want to translate the numeric family # and socket type values to enum constants. addrlist = [] > for res in _socket.getaddrinfo(host, port, family, type, proto, flags): E socket.gaierror: [Errno -3] Temporary failure in name resolution /usr/lib64/python3.13/socket.py:977: gaierror The above exception was the direct cause of the following exception: server = namespace(address='http://a2f834a2b06c4fa6b7764975792da9f2:41889', realfile='http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile') def test_list_cache_with_max_paths(server): h = fsspec.filesystem("http", use_listings_cache=True, max_paths=5) > out = h.glob(server.address + "/index/*") /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/tests/test_http.py:122: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:118: in wrapper return sync(self.loop, func, *args, **kwargs) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:103: in sync raise return_result /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:56: in _runner result[0] = await coro /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:494: in _glob allpaths = await self._find( /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:848: in _find if withdirs and path != "" and await self._isdir(path): /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:521: in _isdir return bool(await self._ls(path)) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:207: in _ls out = await self._ls_real(url, detail=detail, **kwargs) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:159: in _ls_real async with session.get(self.encode_url(url), **self.kwargs) as r: /usr/lib64/python3.13/site-packages/aiohttp/client.py:1425: in __aenter__ self._resp: _RetType = await self._coro /usr/lib64/python3.13/site-packages/aiohttp/client.py:703: in _request conn = await self._connector.connect( /usr/lib64/python3.13/site-packages/aiohttp/connector.py:548: in connect proto = await self._create_connection(req, traces, timeout) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1056: in _create_connection _, proto = await self._create_direct_connection(req, traces, timeout) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. hosts = await self._resolve_host(host, port, traces=traces) except OSError as exc: if exc.errno is None and isinstance(exc, asyncio.TimeoutError): raise # in case of proxy it is not ClientProxyConnectionError # it is problem of resolving proxy ip itself > raise ClientConnectorDNSError(req.connection_key, exc) from exc E aiohttp.client_exceptions.ClientConnectorDNSError: Cannot connect to host a2f834a2b06c4fa6b7764975792da9f2:41889 ssl:default [Temporary failure in name resolution] /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1357: ClientConnectorDNSError ___________________ test_list_cache_with_skip_instance_cache ___________________ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. > hosts = await self._resolve_host(host, port, traces=traces) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1351: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.13/site-packages/aiohttp/connector.py:995: in _resolve_host return await asyncio.shield(resolved_host_task) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1026: in _resolve_host_with_throttle addrs = await self._resolver.resolve(host, port, family=self._family) /usr/lib64/python3.13/site-packages/aiohttp/resolver.py:36: in resolve infos = await self._loop.getaddrinfo( /usr/lib64/python3.13/asyncio/base_events.py:939: in getaddrinfo return await self.run_in_executor( /usr/lib64/python3.13/concurrent/futures/thread.py:59: in run result = self.fn(*self.args, **self.kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ host = 'a2f834a2b06c4fa6b7764975792da9f2', port = 41889 family = , type = proto = 0, flags = def getaddrinfo(host, port, family=0, type=0, proto=0, flags=0): """Resolve host and port into list of address info entries. Translate the host/port argument into a sequence of 5-tuples that contain all the necessary arguments for creating a socket connected to that service. host is a domain name, a string representation of an IPv4/v6 address or None. port is a string service name such as 'http', a numeric port number or None. By passing None as the value of host and port, you can pass NULL to the underlying C API. The family, type and proto arguments can be optionally specified in order to narrow the list of addresses returned. Passing zero as a value for each of these arguments selects the full range of results. """ # We override this function since we want to translate the numeric family # and socket type values to enum constants. addrlist = [] > for res in _socket.getaddrinfo(host, port, family, type, proto, flags): E socket.gaierror: [Errno -3] Temporary failure in name resolution /usr/lib64/python3.13/socket.py:977: gaierror The above exception was the direct cause of the following exception: server = namespace(address='http://a2f834a2b06c4fa6b7764975792da9f2:41889', realfile='http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile') def test_list_cache_with_skip_instance_cache(server): h = fsspec.filesystem("http", use_listings_cache=True, skip_instance_cache=True) > out = h.glob(server.address + "/index/*") /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/tests/test_http.py:128: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:118: in wrapper return sync(self.loop, func, *args, **kwargs) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:103: in sync raise return_result /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:56: in _runner result[0] = await coro /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:494: in _glob allpaths = await self._find( /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:848: in _find if withdirs and path != "" and await self._isdir(path): /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:521: in _isdir return bool(await self._ls(path)) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:207: in _ls out = await self._ls_real(url, detail=detail, **kwargs) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:159: in _ls_real async with session.get(self.encode_url(url), **self.kwargs) as r: /usr/lib64/python3.13/site-packages/aiohttp/client.py:1425: in __aenter__ self._resp: _RetType = await self._coro /usr/lib64/python3.13/site-packages/aiohttp/client.py:703: in _request conn = await self._connector.connect( /usr/lib64/python3.13/site-packages/aiohttp/connector.py:548: in connect proto = await self._create_connection(req, traces, timeout) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1056: in _create_connection _, proto = await self._create_direct_connection(req, traces, timeout) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. hosts = await self._resolve_host(host, port, traces=traces) except OSError as exc: if exc.errno is None and isinstance(exc, asyncio.TimeoutError): raise # in case of proxy it is not ClientProxyConnectionError # it is problem of resolving proxy ip itself > raise ClientConnectorDNSError(req.connection_key, exc) from exc E aiohttp.client_exceptions.ClientConnectorDNSError: Cannot connect to host a2f834a2b06c4fa6b7764975792da9f2:41889 ssl:default [Temporary failure in name resolution] /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1357: ClientConnectorDNSError _________________________ test_glob_return_subfolders __________________________ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. > hosts = await self._resolve_host(host, port, traces=traces) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1351: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.13/site-packages/aiohttp/connector.py:995: in _resolve_host return await asyncio.shield(resolved_host_task) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1026: in _resolve_host_with_throttle addrs = await self._resolver.resolve(host, port, family=self._family) /usr/lib64/python3.13/site-packages/aiohttp/resolver.py:36: in resolve infos = await self._loop.getaddrinfo( /usr/lib64/python3.13/asyncio/base_events.py:939: in getaddrinfo return await self.run_in_executor( /usr/lib64/python3.13/concurrent/futures/thread.py:59: in run result = self.fn(*self.args, **self.kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ host = 'a2f834a2b06c4fa6b7764975792da9f2', port = 41889 family = , type = proto = 0, flags = def getaddrinfo(host, port, family=0, type=0, proto=0, flags=0): """Resolve host and port into list of address info entries. Translate the host/port argument into a sequence of 5-tuples that contain all the necessary arguments for creating a socket connected to that service. host is a domain name, a string representation of an IPv4/v6 address or None. port is a string service name such as 'http', a numeric port number or None. By passing None as the value of host and port, you can pass NULL to the underlying C API. The family, type and proto arguments can be optionally specified in order to narrow the list of addresses returned. Passing zero as a value for each of these arguments selects the full range of results. """ # We override this function since we want to translate the numeric family # and socket type values to enum constants. addrlist = [] > for res in _socket.getaddrinfo(host, port, family, type, proto, flags): E socket.gaierror: [Errno -3] Temporary failure in name resolution /usr/lib64/python3.13/socket.py:977: gaierror The above exception was the direct cause of the following exception: server = namespace(address='http://a2f834a2b06c4fa6b7764975792da9f2:41889', realfile='http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile') def test_glob_return_subfolders(server): h = fsspec.filesystem("http") > out = h.glob(server.address + "/simple/*") /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/tests/test_http.py:134: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:118: in wrapper return sync(self.loop, func, *args, **kwargs) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:103: in sync raise return_result /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:56: in _runner result[0] = await coro /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:494: in _glob allpaths = await self._find( /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:848: in _find if withdirs and path != "" and await self._isdir(path): /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:521: in _isdir return bool(await self._ls(path)) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:207: in _ls out = await self._ls_real(url, detail=detail, **kwargs) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:159: in _ls_real async with session.get(self.encode_url(url), **self.kwargs) as r: /usr/lib64/python3.13/site-packages/aiohttp/client.py:1425: in __aenter__ self._resp: _RetType = await self._coro /usr/lib64/python3.13/site-packages/aiohttp/client.py:703: in _request conn = await self._connector.connect( /usr/lib64/python3.13/site-packages/aiohttp/connector.py:548: in connect proto = await self._create_connection(req, traces, timeout) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1056: in _create_connection _, proto = await self._create_direct_connection(req, traces, timeout) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. hosts = await self._resolve_host(host, port, traces=traces) except OSError as exc: if exc.errno is None and isinstance(exc, asyncio.TimeoutError): raise # in case of proxy it is not ClientProxyConnectionError # it is problem of resolving proxy ip itself > raise ClientConnectorDNSError(req.connection_key, exc) from exc E aiohttp.client_exceptions.ClientConnectorDNSError: Cannot connect to host a2f834a2b06c4fa6b7764975792da9f2:41889 ssl:default [Temporary failure in name resolution] /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1357: ClientConnectorDNSError __________________________________ test_isdir __________________________________ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. > hosts = await self._resolve_host(host, port, traces=traces) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1351: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.13/site-packages/aiohttp/connector.py:995: in _resolve_host return await asyncio.shield(resolved_host_task) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1026: in _resolve_host_with_throttle addrs = await self._resolver.resolve(host, port, family=self._family) /usr/lib64/python3.13/site-packages/aiohttp/resolver.py:36: in resolve infos = await self._loop.getaddrinfo( /usr/lib64/python3.13/asyncio/base_events.py:939: in getaddrinfo return await self.run_in_executor( /usr/lib64/python3.13/concurrent/futures/thread.py:59: in run result = self.fn(*self.args, **self.kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ host = 'a2f834a2b06c4fa6b7764975792da9f2', port = 41889 family = , type = proto = 0, flags = def getaddrinfo(host, port, family=0, type=0, proto=0, flags=0): """Resolve host and port into list of address info entries. Translate the host/port argument into a sequence of 5-tuples that contain all the necessary arguments for creating a socket connected to that service. host is a domain name, a string representation of an IPv4/v6 address or None. port is a string service name such as 'http', a numeric port number or None. By passing None as the value of host and port, you can pass NULL to the underlying C API. The family, type and proto arguments can be optionally specified in order to narrow the list of addresses returned. Passing zero as a value for each of these arguments selects the full range of results. """ # We override this function since we want to translate the numeric family # and socket type values to enum constants. addrlist = [] > for res in _socket.getaddrinfo(host, port, family, type, proto, flags): E socket.gaierror: [Errno -3] Temporary failure in name resolution /usr/lib64/python3.13/socket.py:977: gaierror The above exception was the direct cause of the following exception: server = namespace(address='http://a2f834a2b06c4fa6b7764975792da9f2:41889', realfile='http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile') def test_isdir(server): h = fsspec.filesystem("http") > assert h.isdir(server.address + "/index/") /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/tests/test_http.py:143: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:118: in wrapper return sync(self.loop, func, *args, **kwargs) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:103: in sync raise return_result /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:56: in _runner result[0] = await coro /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:521: in _isdir return bool(await self._ls(path)) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:207: in _ls out = await self._ls_real(url, detail=detail, **kwargs) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:159: in _ls_real async with session.get(self.encode_url(url), **self.kwargs) as r: /usr/lib64/python3.13/site-packages/aiohttp/client.py:1425: in __aenter__ self._resp: _RetType = await self._coro /usr/lib64/python3.13/site-packages/aiohttp/client.py:703: in _request conn = await self._connector.connect( /usr/lib64/python3.13/site-packages/aiohttp/connector.py:548: in connect proto = await self._create_connection(req, traces, timeout) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1056: in _create_connection _, proto = await self._create_direct_connection(req, traces, timeout) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. hosts = await self._resolve_host(host, port, traces=traces) except OSError as exc: if exc.errno is None and isinstance(exc, asyncio.TimeoutError): raise # in case of proxy it is not ClientProxyConnectionError # it is problem of resolving proxy ip itself > raise ClientConnectorDNSError(req.connection_key, exc) from exc E aiohttp.client_exceptions.ClientConnectorDNSError: Cannot connect to host a2f834a2b06c4fa6b7764975792da9f2:41889 ssl:default [Temporary failure in name resolution] /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1357: ClientConnectorDNSError _______________________________ test_policy_arg ________________________________ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. > hosts = await self._resolve_host(host, port, traces=traces) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1351: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.13/site-packages/aiohttp/connector.py:995: in _resolve_host return await asyncio.shield(resolved_host_task) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1026: in _resolve_host_with_throttle addrs = await self._resolver.resolve(host, port, family=self._family) /usr/lib64/python3.13/site-packages/aiohttp/resolver.py:36: in resolve infos = await self._loop.getaddrinfo( /usr/lib64/python3.13/asyncio/base_events.py:939: in getaddrinfo return await self.run_in_executor( /usr/lib64/python3.13/concurrent/futures/thread.py:59: in run result = self.fn(*self.args, **self.kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ host = 'a2f834a2b06c4fa6b7764975792da9f2', port = 41889 family = , type = proto = 0, flags = def getaddrinfo(host, port, family=0, type=0, proto=0, flags=0): """Resolve host and port into list of address info entries. Translate the host/port argument into a sequence of 5-tuples that contain all the necessary arguments for creating a socket connected to that service. host is a domain name, a string representation of an IPv4/v6 address or None. port is a string service name such as 'http', a numeric port number or None. By passing None as the value of host and port, you can pass NULL to the underlying C API. The family, type and proto arguments can be optionally specified in order to narrow the list of addresses returned. Passing zero as a value for each of these arguments selects the full range of results. """ # We override this function since we want to translate the numeric family # and socket type values to enum constants. addrlist = [] > for res in _socket.getaddrinfo(host, port, family, type, proto, flags): E socket.gaierror: [Errno -3] Temporary failure in name resolution /usr/lib64/python3.13/socket.py:977: gaierror The above exception was the direct cause of the following exception: server = namespace(address='http://a2f834a2b06c4fa6b7764975792da9f2:41889', realfile='http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile') def test_policy_arg(server): h = fsspec.filesystem("http", size_policy="get") > out = h.glob(server.address + "/index/*") /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/tests/test_http.py:150: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:118: in wrapper return sync(self.loop, func, *args, **kwargs) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:103: in sync raise return_result /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:56: in _runner result[0] = await coro /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:494: in _glob allpaths = await self._find( /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:848: in _find if withdirs and path != "" and await self._isdir(path): /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:521: in _isdir return bool(await self._ls(path)) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:207: in _ls out = await self._ls_real(url, detail=detail, **kwargs) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:159: in _ls_real async with session.get(self.encode_url(url), **self.kwargs) as r: /usr/lib64/python3.13/site-packages/aiohttp/client.py:1425: in __aenter__ self._resp: _RetType = await self._coro /usr/lib64/python3.13/site-packages/aiohttp/client.py:703: in _request conn = await self._connector.connect( /usr/lib64/python3.13/site-packages/aiohttp/connector.py:548: in connect proto = await self._create_connection(req, traces, timeout) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1056: in _create_connection _, proto = await self._create_direct_connection(req, traces, timeout) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. hosts = await self._resolve_host(host, port, traces=traces) except OSError as exc: if exc.errno is None and isinstance(exc, asyncio.TimeoutError): raise # in case of proxy it is not ClientProxyConnectionError # it is problem of resolving proxy ip itself > raise ClientConnectorDNSError(req.connection_key, exc) from exc E aiohttp.client_exceptions.ClientConnectorDNSError: Cannot connect to host a2f834a2b06c4fa6b7764975792da9f2:41889 ssl:default [Temporary failure in name resolution] /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1357: ClientConnectorDNSError _________________________________ test_exists __________________________________ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. > hosts = await self._resolve_host(host, port, traces=traces) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1351: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.13/site-packages/aiohttp/connector.py:995: in _resolve_host return await asyncio.shield(resolved_host_task) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1026: in _resolve_host_with_throttle addrs = await self._resolver.resolve(host, port, family=self._family) /usr/lib64/python3.13/site-packages/aiohttp/resolver.py:36: in resolve infos = await self._loop.getaddrinfo( /usr/lib64/python3.13/asyncio/base_events.py:939: in getaddrinfo return await self.run_in_executor( /usr/lib64/python3.13/concurrent/futures/thread.py:59: in run result = self.fn(*self.args, **self.kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ host = 'a2f834a2b06c4fa6b7764975792da9f2', port = 41889 family = , type = proto = 0, flags = def getaddrinfo(host, port, family=0, type=0, proto=0, flags=0): """Resolve host and port into list of address info entries. Translate the host/port argument into a sequence of 5-tuples that contain all the necessary arguments for creating a socket connected to that service. host is a domain name, a string representation of an IPv4/v6 address or None. port is a string service name such as 'http', a numeric port number or None. By passing None as the value of host and port, you can pass NULL to the underlying C API. The family, type and proto arguments can be optionally specified in order to narrow the list of addresses returned. Passing zero as a value for each of these arguments selects the full range of results. """ # We override this function since we want to translate the numeric family # and socket type values to enum constants. addrlist = [] > for res in _socket.getaddrinfo(host, port, family, type, proto, flags): E socket.gaierror: [Errno -3] Temporary failure in name resolution /usr/lib64/python3.13/socket.py:977: gaierror The above exception was the direct cause of the following exception: server = namespace(address='http://a2f834a2b06c4fa6b7764975792da9f2:41889', realfile='http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile') def test_exists(server): h = fsspec.filesystem("http") assert not h.exists(server.address + "/notafile") with pytest.raises(FileNotFoundError): > h.cat(server.address + "/notafile") /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/tests/test_http.py:158: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:118: in wrapper return sync(self.loop, func, *args, **kwargs) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:103: in sync raise return_result /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:56: in _runner result[0] = await coro /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:465: in _cat raise ex /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:245: in _run_coro return await asyncio.wait_for(coro, timeout=timeout), i /usr/lib64/python3.13/asyncio/tasks.py:507: in wait_for return await fut /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:234: in _cat_file async with session.get(self.encode_url(url), **kw) as r: /usr/lib64/python3.13/site-packages/aiohttp/client.py:1425: in __aenter__ self._resp: _RetType = await self._coro /usr/lib64/python3.13/site-packages/aiohttp/client.py:703: in _request conn = await self._connector.connect( /usr/lib64/python3.13/site-packages/aiohttp/connector.py:548: in connect proto = await self._create_connection(req, traces, timeout) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1056: in _create_connection _, proto = await self._create_direct_connection(req, traces, timeout) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. hosts = await self._resolve_host(host, port, traces=traces) except OSError as exc: if exc.errno is None and isinstance(exc, asyncio.TimeoutError): raise # in case of proxy it is not ClientProxyConnectionError # it is problem of resolving proxy ip itself > raise ClientConnectorDNSError(req.connection_key, exc) from exc E aiohttp.client_exceptions.ClientConnectorDNSError: Cannot connect to host a2f834a2b06c4fa6b7764975792da9f2:41889 ssl:default [Temporary failure in name resolution] /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1357: ClientConnectorDNSError __________________________________ test_read ___________________________________ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. > hosts = await self._resolve_host(host, port, traces=traces) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1351: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.13/site-packages/aiohttp/connector.py:995: in _resolve_host return await asyncio.shield(resolved_host_task) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1026: in _resolve_host_with_throttle addrs = await self._resolver.resolve(host, port, family=self._family) /usr/lib64/python3.13/site-packages/aiohttp/resolver.py:36: in resolve infos = await self._loop.getaddrinfo( /usr/lib64/python3.13/asyncio/base_events.py:939: in getaddrinfo return await self.run_in_executor( /usr/lib64/python3.13/concurrent/futures/thread.py:59: in run result = self.fn(*self.args, **self.kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ host = 'a2f834a2b06c4fa6b7764975792da9f2', port = 41889 family = , type = proto = 0, flags = def getaddrinfo(host, port, family=0, type=0, proto=0, flags=0): """Resolve host and port into list of address info entries. Translate the host/port argument into a sequence of 5-tuples that contain all the necessary arguments for creating a socket connected to that service. host is a domain name, a string representation of an IPv4/v6 address or None. port is a string service name such as 'http', a numeric port number or None. By passing None as the value of host and port, you can pass NULL to the underlying C API. The family, type and proto arguments can be optionally specified in order to narrow the list of addresses returned. Passing zero as a value for each of these arguments selects the full range of results. """ # We override this function since we want to translate the numeric family # and socket type values to enum constants. addrlist = [] > for res in _socket.getaddrinfo(host, port, family, type, proto, flags): E socket.gaierror: [Errno -3] Temporary failure in name resolution /usr/lib64/python3.13/socket.py:977: gaierror The above exception was the direct cause of the following exception: self = url = 'http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile' kwargs = {}, info = {} session = policy = 'get' async def _info(self, url, **kwargs): """Get info of URL Tries to access location via HEAD, and then GET methods, but does not fetch the data. It is possible that the server does not supply any size information, in which case size will be given as None (and certain operations on the corresponding file will not work). """ info = {} session = await self.set_session() for policy in ["head", "get"]: try: info.update( > await _file_info( self.encode_url(url), size_policy=policy, session=session, **self.kwargs, **kwargs, ) ) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:427: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:815: in _file_info r = await session.get(url, allow_redirects=ar, **kwargs) /usr/lib64/python3.13/site-packages/aiohttp/client.py:703: in _request conn = await self._connector.connect( /usr/lib64/python3.13/site-packages/aiohttp/connector.py:548: in connect proto = await self._create_connection(req, traces, timeout) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1056: in _create_connection _, proto = await self._create_direct_connection(req, traces, timeout) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. hosts = await self._resolve_host(host, port, traces=traces) except OSError as exc: if exc.errno is None and isinstance(exc, asyncio.TimeoutError): raise # in case of proxy it is not ClientProxyConnectionError # it is problem of resolving proxy ip itself > raise ClientConnectorDNSError(req.connection_key, exc) from exc E aiohttp.client_exceptions.ClientConnectorDNSError: Cannot connect to host a2f834a2b06c4fa6b7764975792da9f2:41889 ssl:default [Temporary failure in name resolution] /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1357: ClientConnectorDNSError The above exception was the direct cause of the following exception: server = namespace(address='http://a2f834a2b06c4fa6b7764975792da9f2:41889', realfile='http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile') def test_read(server): h = fsspec.filesystem("http") out = server.realfile > with h.open(out, "rb") as f: /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/tests/test_http.py:164: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/spec.py:1310: in open f = self._open( /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:366: in _open size = size or info.update(self.info(path, **kwargs)) or info["size"] /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:118: in wrapper return sync(self.loop, func, *args, **kwargs) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:103: in sync raise return_result /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:56: in _runner result[0] = await coro _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = url = 'http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile' kwargs = {}, info = {} session = policy = 'get' async def _info(self, url, **kwargs): """Get info of URL Tries to access location via HEAD, and then GET methods, but does not fetch the data. It is possible that the server does not supply any size information, in which case size will be given as None (and certain operations on the corresponding file will not work). """ info = {} session = await self.set_session() for policy in ["head", "get"]: try: info.update( await _file_info( self.encode_url(url), size_policy=policy, session=session, **self.kwargs, **kwargs, ) ) if info.get("size") is not None: break except Exception as exc: if policy == "get": # If get failed, then raise a FileNotFoundError > raise FileNotFoundError(url) from exc E FileNotFoundError: http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:440: FileNotFoundError _______________________________ test_file_pickle _______________________________ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. > hosts = await self._resolve_host(host, port, traces=traces) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1351: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.13/site-packages/aiohttp/connector.py:995: in _resolve_host return await asyncio.shield(resolved_host_task) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1026: in _resolve_host_with_throttle addrs = await self._resolver.resolve(host, port, family=self._family) /usr/lib64/python3.13/site-packages/aiohttp/resolver.py:36: in resolve infos = await self._loop.getaddrinfo( /usr/lib64/python3.13/asyncio/base_events.py:939: in getaddrinfo return await self.run_in_executor( /usr/lib64/python3.13/concurrent/futures/thread.py:59: in run result = self.fn(*self.args, **self.kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ host = 'a2f834a2b06c4fa6b7764975792da9f2', port = 41889 family = , type = proto = 0, flags = def getaddrinfo(host, port, family=0, type=0, proto=0, flags=0): """Resolve host and port into list of address info entries. Translate the host/port argument into a sequence of 5-tuples that contain all the necessary arguments for creating a socket connected to that service. host is a domain name, a string representation of an IPv4/v6 address or None. port is a string service name such as 'http', a numeric port number or None. By passing None as the value of host and port, you can pass NULL to the underlying C API. The family, type and proto arguments can be optionally specified in order to narrow the list of addresses returned. Passing zero as a value for each of these arguments selects the full range of results. """ # We override this function since we want to translate the numeric family # and socket type values to enum constants. addrlist = [] > for res in _socket.getaddrinfo(host, port, family, type, proto, flags): E socket.gaierror: [Errno -3] Temporary failure in name resolution /usr/lib64/python3.13/socket.py:977: gaierror The above exception was the direct cause of the following exception: self = url = 'http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile' kwargs = {}, info = {} session = policy = 'get' async def _info(self, url, **kwargs): """Get info of URL Tries to access location via HEAD, and then GET methods, but does not fetch the data. It is possible that the server does not supply any size information, in which case size will be given as None (and certain operations on the corresponding file will not work). """ info = {} session = await self.set_session() for policy in ["head", "get"]: try: info.update( > await _file_info( self.encode_url(url), size_policy=policy, session=session, **self.kwargs, **kwargs, ) ) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:427: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:815: in _file_info r = await session.get(url, allow_redirects=ar, **kwargs) /usr/lib64/python3.13/site-packages/aiohttp/client.py:703: in _request conn = await self._connector.connect( /usr/lib64/python3.13/site-packages/aiohttp/connector.py:548: in connect proto = await self._create_connection(req, traces, timeout) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1056: in _create_connection _, proto = await self._create_direct_connection(req, traces, timeout) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. hosts = await self._resolve_host(host, port, traces=traces) except OSError as exc: if exc.errno is None and isinstance(exc, asyncio.TimeoutError): raise # in case of proxy it is not ClientProxyConnectionError # it is problem of resolving proxy ip itself > raise ClientConnectorDNSError(req.connection_key, exc) from exc E aiohttp.client_exceptions.ClientConnectorDNSError: Cannot connect to host a2f834a2b06c4fa6b7764975792da9f2:41889 ssl:default [Temporary failure in name resolution] /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1357: ClientConnectorDNSError The above exception was the direct cause of the following exception: server = namespace(address='http://a2f834a2b06c4fa6b7764975792da9f2:41889', realfile='http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile') def test_file_pickle(server): import pickle # via HTTPFile h = fsspec.filesystem("http", headers={"give_length": "true", "head_ok": "true"}) out = server.realfile > with fsspec.open(out, headers={"give_length": "true", "head_ok": "true"}) as f: /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/tests/test_http.py:179: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/core.py:105: in __enter__ f = self.fs.open(self.path, mode=mode) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/spec.py:1310: in open f = self._open( /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:366: in _open size = size or info.update(self.info(path, **kwargs)) or info["size"] /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:118: in wrapper return sync(self.loop, func, *args, **kwargs) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:103: in sync raise return_result /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:56: in _runner result[0] = await coro _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = url = 'http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile' kwargs = {}, info = {} session = policy = 'get' async def _info(self, url, **kwargs): """Get info of URL Tries to access location via HEAD, and then GET methods, but does not fetch the data. It is possible that the server does not supply any size information, in which case size will be given as None (and certain operations on the corresponding file will not work). """ info = {} session = await self.set_session() for policy in ["head", "get"]: try: info.update( await _file_info( self.encode_url(url), size_policy=policy, session=session, **self.kwargs, **kwargs, ) ) if info.get("size") is not None: break except Exception as exc: if policy == "get": # If get failed, then raise a FileNotFoundError > raise FileNotFoundError(url) from exc E FileNotFoundError: http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:440: FileNotFoundError _________________________________ test_methods _________________________________ server = namespace(address='http://a2f834a2b06c4fa6b7764975792da9f2:41889', realfile='http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile') def test_methods(server): h = fsspec.filesystem("http") url = server.realfile > assert h.exists(url) E AssertionError: assert False E + where False = ('http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile') E + where = .exists /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/tests/test_http.py:202: AssertionError _________________________ test_random_access[headers0] _________________________ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. > hosts = await self._resolve_host(host, port, traces=traces) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1351: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.13/site-packages/aiohttp/connector.py:995: in _resolve_host return await asyncio.shield(resolved_host_task) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1026: in _resolve_host_with_throttle addrs = await self._resolver.resolve(host, port, family=self._family) /usr/lib64/python3.13/site-packages/aiohttp/resolver.py:36: in resolve infos = await self._loop.getaddrinfo( /usr/lib64/python3.13/asyncio/base_events.py:939: in getaddrinfo return await self.run_in_executor( /usr/lib64/python3.13/concurrent/futures/thread.py:59: in run result = self.fn(*self.args, **self.kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ host = 'a2f834a2b06c4fa6b7764975792da9f2', port = 41889 family = , type = proto = 0, flags = def getaddrinfo(host, port, family=0, type=0, proto=0, flags=0): """Resolve host and port into list of address info entries. Translate the host/port argument into a sequence of 5-tuples that contain all the necessary arguments for creating a socket connected to that service. host is a domain name, a string representation of an IPv4/v6 address or None. port is a string service name such as 'http', a numeric port number or None. By passing None as the value of host and port, you can pass NULL to the underlying C API. The family, type and proto arguments can be optionally specified in order to narrow the list of addresses returned. Passing zero as a value for each of these arguments selects the full range of results. """ # We override this function since we want to translate the numeric family # and socket type values to enum constants. addrlist = [] > for res in _socket.getaddrinfo(host, port, family, type, proto, flags): E socket.gaierror: [Errno -3] Temporary failure in name resolution /usr/lib64/python3.13/socket.py:977: gaierror The above exception was the direct cause of the following exception: self = url = 'http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile' kwargs = {}, info = {} session = policy = 'get' async def _info(self, url, **kwargs): """Get info of URL Tries to access location via HEAD, and then GET methods, but does not fetch the data. It is possible that the server does not supply any size information, in which case size will be given as None (and certain operations on the corresponding file will not work). """ info = {} session = await self.set_session() for policy in ["head", "get"]: try: info.update( > await _file_info( self.encode_url(url), size_policy=policy, session=session, **self.kwargs, **kwargs, ) ) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:427: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:815: in _file_info r = await session.get(url, allow_redirects=ar, **kwargs) /usr/lib64/python3.13/site-packages/aiohttp/client.py:703: in _request conn = await self._connector.connect( /usr/lib64/python3.13/site-packages/aiohttp/connector.py:548: in connect proto = await self._create_connection(req, traces, timeout) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1056: in _create_connection _, proto = await self._create_direct_connection(req, traces, timeout) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. hosts = await self._resolve_host(host, port, traces=traces) except OSError as exc: if exc.errno is None and isinstance(exc, asyncio.TimeoutError): raise # in case of proxy it is not ClientProxyConnectionError # it is problem of resolving proxy ip itself > raise ClientConnectorDNSError(req.connection_key, exc) from exc E aiohttp.client_exceptions.ClientConnectorDNSError: Cannot connect to host a2f834a2b06c4fa6b7764975792da9f2:41889 ssl:default [Temporary failure in name resolution] /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1357: ClientConnectorDNSError The above exception was the direct cause of the following exception: server = namespace(address='http://a2f834a2b06c4fa6b7764975792da9f2:41889', realfile='http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile') headers = {} @pytest.mark.parametrize( "headers", [ {}, {"give_length": "true"}, {"give_length": "true", "head_ok": "true"}, {"give_range": "true"}, {"give_length": "true", "head_not_auth": "true"}, {"give_range": "true", "head_not_auth": "true"}, {"use_206": "true", "head_ok": "true", "head_give_length": "true"}, {"use_206": "true", "give_length": "true"}, {"use_206": "true", "give_range": "true"}, ], ) def test_random_access(server, headers): h = fsspec.filesystem("http", headers=headers) url = server.realfile > with h.open(url, "rb") as f: /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/tests/test_http.py:223: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/spec.py:1310: in open f = self._open( /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:366: in _open size = size or info.update(self.info(path, **kwargs)) or info["size"] /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:118: in wrapper return sync(self.loop, func, *args, **kwargs) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:103: in sync raise return_result /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:56: in _runner result[0] = await coro _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = url = 'http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile' kwargs = {}, info = {} session = policy = 'get' async def _info(self, url, **kwargs): """Get info of URL Tries to access location via HEAD, and then GET methods, but does not fetch the data. It is possible that the server does not supply any size information, in which case size will be given as None (and certain operations on the corresponding file will not work). """ info = {} session = await self.set_session() for policy in ["head", "get"]: try: info.update( await _file_info( self.encode_url(url), size_policy=policy, session=session, **self.kwargs, **kwargs, ) ) if info.get("size") is not None: break except Exception as exc: if policy == "get": # If get failed, then raise a FileNotFoundError > raise FileNotFoundError(url) from exc E FileNotFoundError: http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:440: FileNotFoundError _________________________ test_random_access[headers1] _________________________ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. > hosts = await self._resolve_host(host, port, traces=traces) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1351: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.13/site-packages/aiohttp/connector.py:995: in _resolve_host return await asyncio.shield(resolved_host_task) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1026: in _resolve_host_with_throttle addrs = await self._resolver.resolve(host, port, family=self._family) /usr/lib64/python3.13/site-packages/aiohttp/resolver.py:36: in resolve infos = await self._loop.getaddrinfo( /usr/lib64/python3.13/asyncio/base_events.py:939: in getaddrinfo return await self.run_in_executor( /usr/lib64/python3.13/concurrent/futures/thread.py:59: in run result = self.fn(*self.args, **self.kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ host = 'a2f834a2b06c4fa6b7764975792da9f2', port = 41889 family = , type = proto = 0, flags = def getaddrinfo(host, port, family=0, type=0, proto=0, flags=0): """Resolve host and port into list of address info entries. Translate the host/port argument into a sequence of 5-tuples that contain all the necessary arguments for creating a socket connected to that service. host is a domain name, a string representation of an IPv4/v6 address or None. port is a string service name such as 'http', a numeric port number or None. By passing None as the value of host and port, you can pass NULL to the underlying C API. The family, type and proto arguments can be optionally specified in order to narrow the list of addresses returned. Passing zero as a value for each of these arguments selects the full range of results. """ # We override this function since we want to translate the numeric family # and socket type values to enum constants. addrlist = [] > for res in _socket.getaddrinfo(host, port, family, type, proto, flags): E socket.gaierror: [Errno -3] Temporary failure in name resolution /usr/lib64/python3.13/socket.py:977: gaierror The above exception was the direct cause of the following exception: self = url = 'http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile' kwargs = {}, info = {} session = policy = 'get' async def _info(self, url, **kwargs): """Get info of URL Tries to access location via HEAD, and then GET methods, but does not fetch the data. It is possible that the server does not supply any size information, in which case size will be given as None (and certain operations on the corresponding file will not work). """ info = {} session = await self.set_session() for policy in ["head", "get"]: try: info.update( > await _file_info( self.encode_url(url), size_policy=policy, session=session, **self.kwargs, **kwargs, ) ) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:427: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:815: in _file_info r = await session.get(url, allow_redirects=ar, **kwargs) /usr/lib64/python3.13/site-packages/aiohttp/client.py:703: in _request conn = await self._connector.connect( /usr/lib64/python3.13/site-packages/aiohttp/connector.py:548: in connect proto = await self._create_connection(req, traces, timeout) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1056: in _create_connection _, proto = await self._create_direct_connection(req, traces, timeout) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. hosts = await self._resolve_host(host, port, traces=traces) except OSError as exc: if exc.errno is None and isinstance(exc, asyncio.TimeoutError): raise # in case of proxy it is not ClientProxyConnectionError # it is problem of resolving proxy ip itself > raise ClientConnectorDNSError(req.connection_key, exc) from exc E aiohttp.client_exceptions.ClientConnectorDNSError: Cannot connect to host a2f834a2b06c4fa6b7764975792da9f2:41889 ssl:default [Temporary failure in name resolution] /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1357: ClientConnectorDNSError The above exception was the direct cause of the following exception: server = namespace(address='http://a2f834a2b06c4fa6b7764975792da9f2:41889', realfile='http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile') headers = {'give_length': 'true'} @pytest.mark.parametrize( "headers", [ {}, {"give_length": "true"}, {"give_length": "true", "head_ok": "true"}, {"give_range": "true"}, {"give_length": "true", "head_not_auth": "true"}, {"give_range": "true", "head_not_auth": "true"}, {"use_206": "true", "head_ok": "true", "head_give_length": "true"}, {"use_206": "true", "give_length": "true"}, {"use_206": "true", "give_range": "true"}, ], ) def test_random_access(server, headers): h = fsspec.filesystem("http", headers=headers) url = server.realfile > with h.open(url, "rb") as f: /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/tests/test_http.py:223: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/spec.py:1310: in open f = self._open( /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:366: in _open size = size or info.update(self.info(path, **kwargs)) or info["size"] /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:118: in wrapper return sync(self.loop, func, *args, **kwargs) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:103: in sync raise return_result /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:56: in _runner result[0] = await coro _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = url = 'http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile' kwargs = {}, info = {} session = policy = 'get' async def _info(self, url, **kwargs): """Get info of URL Tries to access location via HEAD, and then GET methods, but does not fetch the data. It is possible that the server does not supply any size information, in which case size will be given as None (and certain operations on the corresponding file will not work). """ info = {} session = await self.set_session() for policy in ["head", "get"]: try: info.update( await _file_info( self.encode_url(url), size_policy=policy, session=session, **self.kwargs, **kwargs, ) ) if info.get("size") is not None: break except Exception as exc: if policy == "get": # If get failed, then raise a FileNotFoundError > raise FileNotFoundError(url) from exc E FileNotFoundError: http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:440: FileNotFoundError _________________________ test_random_access[headers2] _________________________ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. > hosts = await self._resolve_host(host, port, traces=traces) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1351: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.13/site-packages/aiohttp/connector.py:995: in _resolve_host return await asyncio.shield(resolved_host_task) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1026: in _resolve_host_with_throttle addrs = await self._resolver.resolve(host, port, family=self._family) /usr/lib64/python3.13/site-packages/aiohttp/resolver.py:36: in resolve infos = await self._loop.getaddrinfo( /usr/lib64/python3.13/asyncio/base_events.py:939: in getaddrinfo return await self.run_in_executor( /usr/lib64/python3.13/concurrent/futures/thread.py:59: in run result = self.fn(*self.args, **self.kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ host = 'a2f834a2b06c4fa6b7764975792da9f2', port = 41889 family = , type = proto = 0, flags = def getaddrinfo(host, port, family=0, type=0, proto=0, flags=0): """Resolve host and port into list of address info entries. Translate the host/port argument into a sequence of 5-tuples that contain all the necessary arguments for creating a socket connected to that service. host is a domain name, a string representation of an IPv4/v6 address or None. port is a string service name such as 'http', a numeric port number or None. By passing None as the value of host and port, you can pass NULL to the underlying C API. The family, type and proto arguments can be optionally specified in order to narrow the list of addresses returned. Passing zero as a value for each of these arguments selects the full range of results. """ # We override this function since we want to translate the numeric family # and socket type values to enum constants. addrlist = [] > for res in _socket.getaddrinfo(host, port, family, type, proto, flags): E socket.gaierror: [Errno -3] Temporary failure in name resolution /usr/lib64/python3.13/socket.py:977: gaierror The above exception was the direct cause of the following exception: self = url = 'http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile' kwargs = {}, info = {} session = policy = 'get' async def _info(self, url, **kwargs): """Get info of URL Tries to access location via HEAD, and then GET methods, but does not fetch the data. It is possible that the server does not supply any size information, in which case size will be given as None (and certain operations on the corresponding file will not work). """ info = {} session = await self.set_session() for policy in ["head", "get"]: try: info.update( > await _file_info( self.encode_url(url), size_policy=policy, session=session, **self.kwargs, **kwargs, ) ) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:427: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:815: in _file_info r = await session.get(url, allow_redirects=ar, **kwargs) /usr/lib64/python3.13/site-packages/aiohttp/client.py:703: in _request conn = await self._connector.connect( /usr/lib64/python3.13/site-packages/aiohttp/connector.py:548: in connect proto = await self._create_connection(req, traces, timeout) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1056: in _create_connection _, proto = await self._create_direct_connection(req, traces, timeout) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. hosts = await self._resolve_host(host, port, traces=traces) except OSError as exc: if exc.errno is None and isinstance(exc, asyncio.TimeoutError): raise # in case of proxy it is not ClientProxyConnectionError # it is problem of resolving proxy ip itself > raise ClientConnectorDNSError(req.connection_key, exc) from exc E aiohttp.client_exceptions.ClientConnectorDNSError: Cannot connect to host a2f834a2b06c4fa6b7764975792da9f2:41889 ssl:default [Temporary failure in name resolution] /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1357: ClientConnectorDNSError The above exception was the direct cause of the following exception: server = namespace(address='http://a2f834a2b06c4fa6b7764975792da9f2:41889', realfile='http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile') headers = {'give_length': 'true', 'head_ok': 'true'} @pytest.mark.parametrize( "headers", [ {}, {"give_length": "true"}, {"give_length": "true", "head_ok": "true"}, {"give_range": "true"}, {"give_length": "true", "head_not_auth": "true"}, {"give_range": "true", "head_not_auth": "true"}, {"use_206": "true", "head_ok": "true", "head_give_length": "true"}, {"use_206": "true", "give_length": "true"}, {"use_206": "true", "give_range": "true"}, ], ) def test_random_access(server, headers): h = fsspec.filesystem("http", headers=headers) url = server.realfile > with h.open(url, "rb") as f: /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/tests/test_http.py:223: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/spec.py:1310: in open f = self._open( /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:366: in _open size = size or info.update(self.info(path, **kwargs)) or info["size"] /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:118: in wrapper return sync(self.loop, func, *args, **kwargs) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:103: in sync raise return_result /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:56: in _runner result[0] = await coro _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = url = 'http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile' kwargs = {}, info = {} session = policy = 'get' async def _info(self, url, **kwargs): """Get info of URL Tries to access location via HEAD, and then GET methods, but does not fetch the data. It is possible that the server does not supply any size information, in which case size will be given as None (and certain operations on the corresponding file will not work). """ info = {} session = await self.set_session() for policy in ["head", "get"]: try: info.update( await _file_info( self.encode_url(url), size_policy=policy, session=session, **self.kwargs, **kwargs, ) ) if info.get("size") is not None: break except Exception as exc: if policy == "get": # If get failed, then raise a FileNotFoundError > raise FileNotFoundError(url) from exc E FileNotFoundError: http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:440: FileNotFoundError _________________________ test_random_access[headers3] _________________________ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. > hosts = await self._resolve_host(host, port, traces=traces) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1351: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.13/site-packages/aiohttp/connector.py:995: in _resolve_host return await asyncio.shield(resolved_host_task) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1026: in _resolve_host_with_throttle addrs = await self._resolver.resolve(host, port, family=self._family) /usr/lib64/python3.13/site-packages/aiohttp/resolver.py:36: in resolve infos = await self._loop.getaddrinfo( /usr/lib64/python3.13/asyncio/base_events.py:939: in getaddrinfo return await self.run_in_executor( /usr/lib64/python3.13/concurrent/futures/thread.py:59: in run result = self.fn(*self.args, **self.kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ host = 'a2f834a2b06c4fa6b7764975792da9f2', port = 41889 family = , type = proto = 0, flags = def getaddrinfo(host, port, family=0, type=0, proto=0, flags=0): """Resolve host and port into list of address info entries. Translate the host/port argument into a sequence of 5-tuples that contain all the necessary arguments for creating a socket connected to that service. host is a domain name, a string representation of an IPv4/v6 address or None. port is a string service name such as 'http', a numeric port number or None. By passing None as the value of host and port, you can pass NULL to the underlying C API. The family, type and proto arguments can be optionally specified in order to narrow the list of addresses returned. Passing zero as a value for each of these arguments selects the full range of results. """ # We override this function since we want to translate the numeric family # and socket type values to enum constants. addrlist = [] > for res in _socket.getaddrinfo(host, port, family, type, proto, flags): E socket.gaierror: [Errno -3] Temporary failure in name resolution /usr/lib64/python3.13/socket.py:977: gaierror The above exception was the direct cause of the following exception: self = url = 'http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile' kwargs = {}, info = {} session = policy = 'get' async def _info(self, url, **kwargs): """Get info of URL Tries to access location via HEAD, and then GET methods, but does not fetch the data. It is possible that the server does not supply any size information, in which case size will be given as None (and certain operations on the corresponding file will not work). """ info = {} session = await self.set_session() for policy in ["head", "get"]: try: info.update( > await _file_info( self.encode_url(url), size_policy=policy, session=session, **self.kwargs, **kwargs, ) ) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:427: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:815: in _file_info r = await session.get(url, allow_redirects=ar, **kwargs) /usr/lib64/python3.13/site-packages/aiohttp/client.py:703: in _request conn = await self._connector.connect( /usr/lib64/python3.13/site-packages/aiohttp/connector.py:548: in connect proto = await self._create_connection(req, traces, timeout) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1056: in _create_connection _, proto = await self._create_direct_connection(req, traces, timeout) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. hosts = await self._resolve_host(host, port, traces=traces) except OSError as exc: if exc.errno is None and isinstance(exc, asyncio.TimeoutError): raise # in case of proxy it is not ClientProxyConnectionError # it is problem of resolving proxy ip itself > raise ClientConnectorDNSError(req.connection_key, exc) from exc E aiohttp.client_exceptions.ClientConnectorDNSError: Cannot connect to host a2f834a2b06c4fa6b7764975792da9f2:41889 ssl:default [Temporary failure in name resolution] /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1357: ClientConnectorDNSError The above exception was the direct cause of the following exception: server = namespace(address='http://a2f834a2b06c4fa6b7764975792da9f2:41889', realfile='http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile') headers = {'give_range': 'true'} @pytest.mark.parametrize( "headers", [ {}, {"give_length": "true"}, {"give_length": "true", "head_ok": "true"}, {"give_range": "true"}, {"give_length": "true", "head_not_auth": "true"}, {"give_range": "true", "head_not_auth": "true"}, {"use_206": "true", "head_ok": "true", "head_give_length": "true"}, {"use_206": "true", "give_length": "true"}, {"use_206": "true", "give_range": "true"}, ], ) def test_random_access(server, headers): h = fsspec.filesystem("http", headers=headers) url = server.realfile > with h.open(url, "rb") as f: /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/tests/test_http.py:223: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/spec.py:1310: in open f = self._open( /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:366: in _open size = size or info.update(self.info(path, **kwargs)) or info["size"] /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:118: in wrapper return sync(self.loop, func, *args, **kwargs) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:103: in sync raise return_result /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:56: in _runner result[0] = await coro _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = url = 'http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile' kwargs = {}, info = {} session = policy = 'get' async def _info(self, url, **kwargs): """Get info of URL Tries to access location via HEAD, and then GET methods, but does not fetch the data. It is possible that the server does not supply any size information, in which case size will be given as None (and certain operations on the corresponding file will not work). """ info = {} session = await self.set_session() for policy in ["head", "get"]: try: info.update( await _file_info( self.encode_url(url), size_policy=policy, session=session, **self.kwargs, **kwargs, ) ) if info.get("size") is not None: break except Exception as exc: if policy == "get": # If get failed, then raise a FileNotFoundError > raise FileNotFoundError(url) from exc E FileNotFoundError: http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:440: FileNotFoundError _________________________ test_random_access[headers4] _________________________ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. > hosts = await self._resolve_host(host, port, traces=traces) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1351: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.13/site-packages/aiohttp/connector.py:995: in _resolve_host return await asyncio.shield(resolved_host_task) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1026: in _resolve_host_with_throttle addrs = await self._resolver.resolve(host, port, family=self._family) /usr/lib64/python3.13/site-packages/aiohttp/resolver.py:36: in resolve infos = await self._loop.getaddrinfo( /usr/lib64/python3.13/asyncio/base_events.py:939: in getaddrinfo return await self.run_in_executor( /usr/lib64/python3.13/concurrent/futures/thread.py:59: in run result = self.fn(*self.args, **self.kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ host = 'a2f834a2b06c4fa6b7764975792da9f2', port = 41889 family = , type = proto = 0, flags = def getaddrinfo(host, port, family=0, type=0, proto=0, flags=0): """Resolve host and port into list of address info entries. Translate the host/port argument into a sequence of 5-tuples that contain all the necessary arguments for creating a socket connected to that service. host is a domain name, a string representation of an IPv4/v6 address or None. port is a string service name such as 'http', a numeric port number or None. By passing None as the value of host and port, you can pass NULL to the underlying C API. The family, type and proto arguments can be optionally specified in order to narrow the list of addresses returned. Passing zero as a value for each of these arguments selects the full range of results. """ # We override this function since we want to translate the numeric family # and socket type values to enum constants. addrlist = [] > for res in _socket.getaddrinfo(host, port, family, type, proto, flags): E socket.gaierror: [Errno -3] Temporary failure in name resolution /usr/lib64/python3.13/socket.py:977: gaierror The above exception was the direct cause of the following exception: self = url = 'http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile' kwargs = {}, info = {} session = policy = 'get' async def _info(self, url, **kwargs): """Get info of URL Tries to access location via HEAD, and then GET methods, but does not fetch the data. It is possible that the server does not supply any size information, in which case size will be given as None (and certain operations on the corresponding file will not work). """ info = {} session = await self.set_session() for policy in ["head", "get"]: try: info.update( > await _file_info( self.encode_url(url), size_policy=policy, session=session, **self.kwargs, **kwargs, ) ) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:427: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:815: in _file_info r = await session.get(url, allow_redirects=ar, **kwargs) /usr/lib64/python3.13/site-packages/aiohttp/client.py:703: in _request conn = await self._connector.connect( /usr/lib64/python3.13/site-packages/aiohttp/connector.py:548: in connect proto = await self._create_connection(req, traces, timeout) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1056: in _create_connection _, proto = await self._create_direct_connection(req, traces, timeout) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. hosts = await self._resolve_host(host, port, traces=traces) except OSError as exc: if exc.errno is None and isinstance(exc, asyncio.TimeoutError): raise # in case of proxy it is not ClientProxyConnectionError # it is problem of resolving proxy ip itself > raise ClientConnectorDNSError(req.connection_key, exc) from exc E aiohttp.client_exceptions.ClientConnectorDNSError: Cannot connect to host a2f834a2b06c4fa6b7764975792da9f2:41889 ssl:default [Temporary failure in name resolution] /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1357: ClientConnectorDNSError The above exception was the direct cause of the following exception: server = namespace(address='http://a2f834a2b06c4fa6b7764975792da9f2:41889', realfile='http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile') headers = {'give_length': 'true', 'head_not_auth': 'true'} @pytest.mark.parametrize( "headers", [ {}, {"give_length": "true"}, {"give_length": "true", "head_ok": "true"}, {"give_range": "true"}, {"give_length": "true", "head_not_auth": "true"}, {"give_range": "true", "head_not_auth": "true"}, {"use_206": "true", "head_ok": "true", "head_give_length": "true"}, {"use_206": "true", "give_length": "true"}, {"use_206": "true", "give_range": "true"}, ], ) def test_random_access(server, headers): h = fsspec.filesystem("http", headers=headers) url = server.realfile > with h.open(url, "rb") as f: /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/tests/test_http.py:223: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/spec.py:1310: in open f = self._open( /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:366: in _open size = size or info.update(self.info(path, **kwargs)) or info["size"] /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:118: in wrapper return sync(self.loop, func, *args, **kwargs) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:103: in sync raise return_result /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:56: in _runner result[0] = await coro _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = url = 'http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile' kwargs = {}, info = {} session = policy = 'get' async def _info(self, url, **kwargs): """Get info of URL Tries to access location via HEAD, and then GET methods, but does not fetch the data. It is possible that the server does not supply any size information, in which case size will be given as None (and certain operations on the corresponding file will not work). """ info = {} session = await self.set_session() for policy in ["head", "get"]: try: info.update( await _file_info( self.encode_url(url), size_policy=policy, session=session, **self.kwargs, **kwargs, ) ) if info.get("size") is not None: break except Exception as exc: if policy == "get": # If get failed, then raise a FileNotFoundError > raise FileNotFoundError(url) from exc E FileNotFoundError: http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:440: FileNotFoundError _________________________ test_random_access[headers5] _________________________ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. > hosts = await self._resolve_host(host, port, traces=traces) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1351: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.13/site-packages/aiohttp/connector.py:995: in _resolve_host return await asyncio.shield(resolved_host_task) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1026: in _resolve_host_with_throttle addrs = await self._resolver.resolve(host, port, family=self._family) /usr/lib64/python3.13/site-packages/aiohttp/resolver.py:36: in resolve infos = await self._loop.getaddrinfo( /usr/lib64/python3.13/asyncio/base_events.py:939: in getaddrinfo return await self.run_in_executor( /usr/lib64/python3.13/concurrent/futures/thread.py:59: in run result = self.fn(*self.args, **self.kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ host = 'a2f834a2b06c4fa6b7764975792da9f2', port = 41889 family = , type = proto = 0, flags = def getaddrinfo(host, port, family=0, type=0, proto=0, flags=0): """Resolve host and port into list of address info entries. Translate the host/port argument into a sequence of 5-tuples that contain all the necessary arguments for creating a socket connected to that service. host is a domain name, a string representation of an IPv4/v6 address or None. port is a string service name such as 'http', a numeric port number or None. By passing None as the value of host and port, you can pass NULL to the underlying C API. The family, type and proto arguments can be optionally specified in order to narrow the list of addresses returned. Passing zero as a value for each of these arguments selects the full range of results. """ # We override this function since we want to translate the numeric family # and socket type values to enum constants. addrlist = [] > for res in _socket.getaddrinfo(host, port, family, type, proto, flags): E socket.gaierror: [Errno -3] Temporary failure in name resolution /usr/lib64/python3.13/socket.py:977: gaierror The above exception was the direct cause of the following exception: self = url = 'http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile' kwargs = {}, info = {} session = policy = 'get' async def _info(self, url, **kwargs): """Get info of URL Tries to access location via HEAD, and then GET methods, but does not fetch the data. It is possible that the server does not supply any size information, in which case size will be given as None (and certain operations on the corresponding file will not work). """ info = {} session = await self.set_session() for policy in ["head", "get"]: try: info.update( > await _file_info( self.encode_url(url), size_policy=policy, session=session, **self.kwargs, **kwargs, ) ) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:427: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:815: in _file_info r = await session.get(url, allow_redirects=ar, **kwargs) /usr/lib64/python3.13/site-packages/aiohttp/client.py:703: in _request conn = await self._connector.connect( /usr/lib64/python3.13/site-packages/aiohttp/connector.py:548: in connect proto = await self._create_connection(req, traces, timeout) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1056: in _create_connection _, proto = await self._create_direct_connection(req, traces, timeout) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. hosts = await self._resolve_host(host, port, traces=traces) except OSError as exc: if exc.errno is None and isinstance(exc, asyncio.TimeoutError): raise # in case of proxy it is not ClientProxyConnectionError # it is problem of resolving proxy ip itself > raise ClientConnectorDNSError(req.connection_key, exc) from exc E aiohttp.client_exceptions.ClientConnectorDNSError: Cannot connect to host a2f834a2b06c4fa6b7764975792da9f2:41889 ssl:default [Temporary failure in name resolution] /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1357: ClientConnectorDNSError The above exception was the direct cause of the following exception: server = namespace(address='http://a2f834a2b06c4fa6b7764975792da9f2:41889', realfile='http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile') headers = {'give_range': 'true', 'head_not_auth': 'true'} @pytest.mark.parametrize( "headers", [ {}, {"give_length": "true"}, {"give_length": "true", "head_ok": "true"}, {"give_range": "true"}, {"give_length": "true", "head_not_auth": "true"}, {"give_range": "true", "head_not_auth": "true"}, {"use_206": "true", "head_ok": "true", "head_give_length": "true"}, {"use_206": "true", "give_length": "true"}, {"use_206": "true", "give_range": "true"}, ], ) def test_random_access(server, headers): h = fsspec.filesystem("http", headers=headers) url = server.realfile > with h.open(url, "rb") as f: /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/tests/test_http.py:223: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/spec.py:1310: in open f = self._open( /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:366: in _open size = size or info.update(self.info(path, **kwargs)) or info["size"] /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:118: in wrapper return sync(self.loop, func, *args, **kwargs) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:103: in sync raise return_result /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:56: in _runner result[0] = await coro _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = url = 'http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile' kwargs = {}, info = {} session = policy = 'get' async def _info(self, url, **kwargs): """Get info of URL Tries to access location via HEAD, and then GET methods, but does not fetch the data. It is possible that the server does not supply any size information, in which case size will be given as None (and certain operations on the corresponding file will not work). """ info = {} session = await self.set_session() for policy in ["head", "get"]: try: info.update( await _file_info( self.encode_url(url), size_policy=policy, session=session, **self.kwargs, **kwargs, ) ) if info.get("size") is not None: break except Exception as exc: if policy == "get": # If get failed, then raise a FileNotFoundError > raise FileNotFoundError(url) from exc E FileNotFoundError: http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:440: FileNotFoundError _________________________ test_random_access[headers6] _________________________ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. > hosts = await self._resolve_host(host, port, traces=traces) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1351: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.13/site-packages/aiohttp/connector.py:995: in _resolve_host return await asyncio.shield(resolved_host_task) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1026: in _resolve_host_with_throttle addrs = await self._resolver.resolve(host, port, family=self._family) /usr/lib64/python3.13/site-packages/aiohttp/resolver.py:36: in resolve infos = await self._loop.getaddrinfo( /usr/lib64/python3.13/asyncio/base_events.py:939: in getaddrinfo return await self.run_in_executor( /usr/lib64/python3.13/concurrent/futures/thread.py:59: in run result = self.fn(*self.args, **self.kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ host = 'a2f834a2b06c4fa6b7764975792da9f2', port = 41889 family = , type = proto = 0, flags = def getaddrinfo(host, port, family=0, type=0, proto=0, flags=0): """Resolve host and port into list of address info entries. Translate the host/port argument into a sequence of 5-tuples that contain all the necessary arguments for creating a socket connected to that service. host is a domain name, a string representation of an IPv4/v6 address or None. port is a string service name such as 'http', a numeric port number or None. By passing None as the value of host and port, you can pass NULL to the underlying C API. The family, type and proto arguments can be optionally specified in order to narrow the list of addresses returned. Passing zero as a value for each of these arguments selects the full range of results. """ # We override this function since we want to translate the numeric family # and socket type values to enum constants. addrlist = [] > for res in _socket.getaddrinfo(host, port, family, type, proto, flags): E socket.gaierror: [Errno -3] Temporary failure in name resolution /usr/lib64/python3.13/socket.py:977: gaierror The above exception was the direct cause of the following exception: self = url = 'http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile' kwargs = {}, info = {} session = policy = 'get' async def _info(self, url, **kwargs): """Get info of URL Tries to access location via HEAD, and then GET methods, but does not fetch the data. It is possible that the server does not supply any size information, in which case size will be given as None (and certain operations on the corresponding file will not work). """ info = {} session = await self.set_session() for policy in ["head", "get"]: try: info.update( > await _file_info( self.encode_url(url), size_policy=policy, session=session, **self.kwargs, **kwargs, ) ) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:427: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:815: in _file_info r = await session.get(url, allow_redirects=ar, **kwargs) /usr/lib64/python3.13/site-packages/aiohttp/client.py:703: in _request conn = await self._connector.connect( /usr/lib64/python3.13/site-packages/aiohttp/connector.py:548: in connect proto = await self._create_connection(req, traces, timeout) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1056: in _create_connection _, proto = await self._create_direct_connection(req, traces, timeout) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. hosts = await self._resolve_host(host, port, traces=traces) except OSError as exc: if exc.errno is None and isinstance(exc, asyncio.TimeoutError): raise # in case of proxy it is not ClientProxyConnectionError # it is problem of resolving proxy ip itself > raise ClientConnectorDNSError(req.connection_key, exc) from exc E aiohttp.client_exceptions.ClientConnectorDNSError: Cannot connect to host a2f834a2b06c4fa6b7764975792da9f2:41889 ssl:default [Temporary failure in name resolution] /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1357: ClientConnectorDNSError The above exception was the direct cause of the following exception: server = namespace(address='http://a2f834a2b06c4fa6b7764975792da9f2:41889', realfile='http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile') headers = {'head_give_length': 'true', 'head_ok': 'true', 'use_206': 'true'} @pytest.mark.parametrize( "headers", [ {}, {"give_length": "true"}, {"give_length": "true", "head_ok": "true"}, {"give_range": "true"}, {"give_length": "true", "head_not_auth": "true"}, {"give_range": "true", "head_not_auth": "true"}, {"use_206": "true", "head_ok": "true", "head_give_length": "true"}, {"use_206": "true", "give_length": "true"}, {"use_206": "true", "give_range": "true"}, ], ) def test_random_access(server, headers): h = fsspec.filesystem("http", headers=headers) url = server.realfile > with h.open(url, "rb") as f: /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/tests/test_http.py:223: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/spec.py:1310: in open f = self._open( /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:366: in _open size = size or info.update(self.info(path, **kwargs)) or info["size"] /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:118: in wrapper return sync(self.loop, func, *args, **kwargs) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:103: in sync raise return_result /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:56: in _runner result[0] = await coro _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = url = 'http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile' kwargs = {}, info = {} session = policy = 'get' async def _info(self, url, **kwargs): """Get info of URL Tries to access location via HEAD, and then GET methods, but does not fetch the data. It is possible that the server does not supply any size information, in which case size will be given as None (and certain operations on the corresponding file will not work). """ info = {} session = await self.set_session() for policy in ["head", "get"]: try: info.update( await _file_info( self.encode_url(url), size_policy=policy, session=session, **self.kwargs, **kwargs, ) ) if info.get("size") is not None: break except Exception as exc: if policy == "get": # If get failed, then raise a FileNotFoundError > raise FileNotFoundError(url) from exc E FileNotFoundError: http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:440: FileNotFoundError _________________________ test_random_access[headers7] _________________________ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. > hosts = await self._resolve_host(host, port, traces=traces) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1351: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.13/site-packages/aiohttp/connector.py:995: in _resolve_host return await asyncio.shield(resolved_host_task) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1026: in _resolve_host_with_throttle addrs = await self._resolver.resolve(host, port, family=self._family) /usr/lib64/python3.13/site-packages/aiohttp/resolver.py:36: in resolve infos = await self._loop.getaddrinfo( /usr/lib64/python3.13/asyncio/base_events.py:939: in getaddrinfo return await self.run_in_executor( /usr/lib64/python3.13/concurrent/futures/thread.py:59: in run result = self.fn(*self.args, **self.kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ host = 'a2f834a2b06c4fa6b7764975792da9f2', port = 41889 family = , type = proto = 0, flags = def getaddrinfo(host, port, family=0, type=0, proto=0, flags=0): """Resolve host and port into list of address info entries. Translate the host/port argument into a sequence of 5-tuples that contain all the necessary arguments for creating a socket connected to that service. host is a domain name, a string representation of an IPv4/v6 address or None. port is a string service name such as 'http', a numeric port number or None. By passing None as the value of host and port, you can pass NULL to the underlying C API. The family, type and proto arguments can be optionally specified in order to narrow the list of addresses returned. Passing zero as a value for each of these arguments selects the full range of results. """ # We override this function since we want to translate the numeric family # and socket type values to enum constants. addrlist = [] > for res in _socket.getaddrinfo(host, port, family, type, proto, flags): E socket.gaierror: [Errno -3] Temporary failure in name resolution /usr/lib64/python3.13/socket.py:977: gaierror The above exception was the direct cause of the following exception: self = url = 'http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile' kwargs = {}, info = {} session = policy = 'get' async def _info(self, url, **kwargs): """Get info of URL Tries to access location via HEAD, and then GET methods, but does not fetch the data. It is possible that the server does not supply any size information, in which case size will be given as None (and certain operations on the corresponding file will not work). """ info = {} session = await self.set_session() for policy in ["head", "get"]: try: info.update( > await _file_info( self.encode_url(url), size_policy=policy, session=session, **self.kwargs, **kwargs, ) ) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:427: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:815: in _file_info r = await session.get(url, allow_redirects=ar, **kwargs) /usr/lib64/python3.13/site-packages/aiohttp/client.py:703: in _request conn = await self._connector.connect( /usr/lib64/python3.13/site-packages/aiohttp/connector.py:548: in connect proto = await self._create_connection(req, traces, timeout) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1056: in _create_connection _, proto = await self._create_direct_connection(req, traces, timeout) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. hosts = await self._resolve_host(host, port, traces=traces) except OSError as exc: if exc.errno is None and isinstance(exc, asyncio.TimeoutError): raise # in case of proxy it is not ClientProxyConnectionError # it is problem of resolving proxy ip itself > raise ClientConnectorDNSError(req.connection_key, exc) from exc E aiohttp.client_exceptions.ClientConnectorDNSError: Cannot connect to host a2f834a2b06c4fa6b7764975792da9f2:41889 ssl:default [Temporary failure in name resolution] /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1357: ClientConnectorDNSError The above exception was the direct cause of the following exception: server = namespace(address='http://a2f834a2b06c4fa6b7764975792da9f2:41889', realfile='http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile') headers = {'give_length': 'true', 'use_206': 'true'} @pytest.mark.parametrize( "headers", [ {}, {"give_length": "true"}, {"give_length": "true", "head_ok": "true"}, {"give_range": "true"}, {"give_length": "true", "head_not_auth": "true"}, {"give_range": "true", "head_not_auth": "true"}, {"use_206": "true", "head_ok": "true", "head_give_length": "true"}, {"use_206": "true", "give_length": "true"}, {"use_206": "true", "give_range": "true"}, ], ) def test_random_access(server, headers): h = fsspec.filesystem("http", headers=headers) url = server.realfile > with h.open(url, "rb") as f: /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/tests/test_http.py:223: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/spec.py:1310: in open f = self._open( /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:366: in _open size = size or info.update(self.info(path, **kwargs)) or info["size"] /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:118: in wrapper return sync(self.loop, func, *args, **kwargs) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:103: in sync raise return_result /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:56: in _runner result[0] = await coro _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = url = 'http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile' kwargs = {}, info = {} session = policy = 'get' async def _info(self, url, **kwargs): """Get info of URL Tries to access location via HEAD, and then GET methods, but does not fetch the data. It is possible that the server does not supply any size information, in which case size will be given as None (and certain operations on the corresponding file will not work). """ info = {} session = await self.set_session() for policy in ["head", "get"]: try: info.update( await _file_info( self.encode_url(url), size_policy=policy, session=session, **self.kwargs, **kwargs, ) ) if info.get("size") is not None: break except Exception as exc: if policy == "get": # If get failed, then raise a FileNotFoundError > raise FileNotFoundError(url) from exc E FileNotFoundError: http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:440: FileNotFoundError _________________________ test_random_access[headers8] _________________________ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. > hosts = await self._resolve_host(host, port, traces=traces) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1351: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.13/site-packages/aiohttp/connector.py:995: in _resolve_host return await asyncio.shield(resolved_host_task) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1026: in _resolve_host_with_throttle addrs = await self._resolver.resolve(host, port, family=self._family) /usr/lib64/python3.13/site-packages/aiohttp/resolver.py:36: in resolve infos = await self._loop.getaddrinfo( /usr/lib64/python3.13/asyncio/base_events.py:939: in getaddrinfo return await self.run_in_executor( /usr/lib64/python3.13/concurrent/futures/thread.py:59: in run result = self.fn(*self.args, **self.kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ host = 'a2f834a2b06c4fa6b7764975792da9f2', port = 41889 family = , type = proto = 0, flags = def getaddrinfo(host, port, family=0, type=0, proto=0, flags=0): """Resolve host and port into list of address info entries. Translate the host/port argument into a sequence of 5-tuples that contain all the necessary arguments for creating a socket connected to that service. host is a domain name, a string representation of an IPv4/v6 address or None. port is a string service name such as 'http', a numeric port number or None. By passing None as the value of host and port, you can pass NULL to the underlying C API. The family, type and proto arguments can be optionally specified in order to narrow the list of addresses returned. Passing zero as a value for each of these arguments selects the full range of results. """ # We override this function since we want to translate the numeric family # and socket type values to enum constants. addrlist = [] > for res in _socket.getaddrinfo(host, port, family, type, proto, flags): E socket.gaierror: [Errno -3] Temporary failure in name resolution /usr/lib64/python3.13/socket.py:977: gaierror The above exception was the direct cause of the following exception: self = url = 'http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile' kwargs = {}, info = {} session = policy = 'get' async def _info(self, url, **kwargs): """Get info of URL Tries to access location via HEAD, and then GET methods, but does not fetch the data. It is possible that the server does not supply any size information, in which case size will be given as None (and certain operations on the corresponding file will not work). """ info = {} session = await self.set_session() for policy in ["head", "get"]: try: info.update( > await _file_info( self.encode_url(url), size_policy=policy, session=session, **self.kwargs, **kwargs, ) ) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:427: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:815: in _file_info r = await session.get(url, allow_redirects=ar, **kwargs) /usr/lib64/python3.13/site-packages/aiohttp/client.py:703: in _request conn = await self._connector.connect( /usr/lib64/python3.13/site-packages/aiohttp/connector.py:548: in connect proto = await self._create_connection(req, traces, timeout) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1056: in _create_connection _, proto = await self._create_direct_connection(req, traces, timeout) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. hosts = await self._resolve_host(host, port, traces=traces) except OSError as exc: if exc.errno is None and isinstance(exc, asyncio.TimeoutError): raise # in case of proxy it is not ClientProxyConnectionError # it is problem of resolving proxy ip itself > raise ClientConnectorDNSError(req.connection_key, exc) from exc E aiohttp.client_exceptions.ClientConnectorDNSError: Cannot connect to host a2f834a2b06c4fa6b7764975792da9f2:41889 ssl:default [Temporary failure in name resolution] /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1357: ClientConnectorDNSError The above exception was the direct cause of the following exception: server = namespace(address='http://a2f834a2b06c4fa6b7764975792da9f2:41889', realfile='http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile') headers = {'give_range': 'true', 'use_206': 'true'} @pytest.mark.parametrize( "headers", [ {}, {"give_length": "true"}, {"give_length": "true", "head_ok": "true"}, {"give_range": "true"}, {"give_length": "true", "head_not_auth": "true"}, {"give_range": "true", "head_not_auth": "true"}, {"use_206": "true", "head_ok": "true", "head_give_length": "true"}, {"use_206": "true", "give_length": "true"}, {"use_206": "true", "give_range": "true"}, ], ) def test_random_access(server, headers): h = fsspec.filesystem("http", headers=headers) url = server.realfile > with h.open(url, "rb") as f: /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/tests/test_http.py:223: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/spec.py:1310: in open f = self._open( /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:366: in _open size = size or info.update(self.info(path, **kwargs)) or info["size"] /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:118: in wrapper return sync(self.loop, func, *args, **kwargs) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:103: in sync raise return_result /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:56: in _runner result[0] = await coro _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = url = 'http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile' kwargs = {}, info = {} session = policy = 'get' async def _info(self, url, **kwargs): """Get info of URL Tries to access location via HEAD, and then GET methods, but does not fetch the data. It is possible that the server does not supply any size information, in which case size will be given as None (and certain operations on the corresponding file will not work). """ info = {} session = await self.set_session() for policy in ["head", "get"]: try: info.update( await _file_info( self.encode_url(url), size_policy=policy, session=session, **self.kwargs, **kwargs, ) ) if info.get("size") is not None: break except Exception as exc: if policy == "get": # If get failed, then raise a FileNotFoundError > raise FileNotFoundError(url) from exc E FileNotFoundError: http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:440: FileNotFoundError _______________________ test_no_range_support[headers0] ________________________ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. > hosts = await self._resolve_host(host, port, traces=traces) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1351: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.13/site-packages/aiohttp/connector.py:995: in _resolve_host return await asyncio.shield(resolved_host_task) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1026: in _resolve_host_with_throttle addrs = await self._resolver.resolve(host, port, family=self._family) /usr/lib64/python3.13/site-packages/aiohttp/resolver.py:36: in resolve infos = await self._loop.getaddrinfo( /usr/lib64/python3.13/asyncio/base_events.py:939: in getaddrinfo return await self.run_in_executor( /usr/lib64/python3.13/concurrent/futures/thread.py:59: in run result = self.fn(*self.args, **self.kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ host = 'a2f834a2b06c4fa6b7764975792da9f2', port = 41889 family = , type = proto = 0, flags = def getaddrinfo(host, port, family=0, type=0, proto=0, flags=0): """Resolve host and port into list of address info entries. Translate the host/port argument into a sequence of 5-tuples that contain all the necessary arguments for creating a socket connected to that service. host is a domain name, a string representation of an IPv4/v6 address or None. port is a string service name such as 'http', a numeric port number or None. By passing None as the value of host and port, you can pass NULL to the underlying C API. The family, type and proto arguments can be optionally specified in order to narrow the list of addresses returned. Passing zero as a value for each of these arguments selects the full range of results. """ # We override this function since we want to translate the numeric family # and socket type values to enum constants. addrlist = [] > for res in _socket.getaddrinfo(host, port, family, type, proto, flags): E socket.gaierror: [Errno -3] Temporary failure in name resolution /usr/lib64/python3.13/socket.py:977: gaierror The above exception was the direct cause of the following exception: self = url = 'http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile' kwargs = {}, info = {} session = policy = 'get' async def _info(self, url, **kwargs): """Get info of URL Tries to access location via HEAD, and then GET methods, but does not fetch the data. It is possible that the server does not supply any size information, in which case size will be given as None (and certain operations on the corresponding file will not work). """ info = {} session = await self.set_session() for policy in ["head", "get"]: try: info.update( > await _file_info( self.encode_url(url), size_policy=policy, session=session, **self.kwargs, **kwargs, ) ) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:427: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:815: in _file_info r = await session.get(url, allow_redirects=ar, **kwargs) /usr/lib64/python3.13/site-packages/aiohttp/client.py:703: in _request conn = await self._connector.connect( /usr/lib64/python3.13/site-packages/aiohttp/connector.py:548: in connect proto = await self._create_connection(req, traces, timeout) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1056: in _create_connection _, proto = await self._create_direct_connection(req, traces, timeout) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. hosts = await self._resolve_host(host, port, traces=traces) except OSError as exc: if exc.errno is None and isinstance(exc, asyncio.TimeoutError): raise # in case of proxy it is not ClientProxyConnectionError # it is problem of resolving proxy ip itself > raise ClientConnectorDNSError(req.connection_key, exc) from exc E aiohttp.client_exceptions.ClientConnectorDNSError: Cannot connect to host a2f834a2b06c4fa6b7764975792da9f2:41889 ssl:default [Temporary failure in name resolution] /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1357: ClientConnectorDNSError The above exception was the direct cause of the following exception: server = namespace(address='http://a2f834a2b06c4fa6b7764975792da9f2:41889', realfile='http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile') headers = {'head_give_length': 'true', 'head_ok': 'true'} @pytest.mark.parametrize( "headers", [ # HTTPFile seeks, response headers lack size, assumed no range support {"head_ok": "true", "head_give_length": "true"}, # HTTPFile seeks, response is not a range {"ignore_range": "true", "give_length": "true"}, {"ignore_range": "true", "give_range": "true"}, # HTTPStreamFile does not seek (past 0) {"accept_range": "none", "head_ok": "true", "give_length": "true"}, ], ) def test_no_range_support(server, headers): h = fsspec.filesystem("http", headers=headers) url = server.realfile > with h.open(url, "rb") as f: /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/tests/test_http.py:252: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/spec.py:1310: in open f = self._open( /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:366: in _open size = size or info.update(self.info(path, **kwargs)) or info["size"] /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:118: in wrapper return sync(self.loop, func, *args, **kwargs) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:103: in sync raise return_result /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:56: in _runner result[0] = await coro _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = url = 'http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile' kwargs = {}, info = {} session = policy = 'get' async def _info(self, url, **kwargs): """Get info of URL Tries to access location via HEAD, and then GET methods, but does not fetch the data. It is possible that the server does not supply any size information, in which case size will be given as None (and certain operations on the corresponding file will not work). """ info = {} session = await self.set_session() for policy in ["head", "get"]: try: info.update( await _file_info( self.encode_url(url), size_policy=policy, session=session, **self.kwargs, **kwargs, ) ) if info.get("size") is not None: break except Exception as exc: if policy == "get": # If get failed, then raise a FileNotFoundError > raise FileNotFoundError(url) from exc E FileNotFoundError: http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:440: FileNotFoundError _______________________ test_no_range_support[headers1] ________________________ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. > hosts = await self._resolve_host(host, port, traces=traces) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1351: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.13/site-packages/aiohttp/connector.py:995: in _resolve_host return await asyncio.shield(resolved_host_task) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1026: in _resolve_host_with_throttle addrs = await self._resolver.resolve(host, port, family=self._family) /usr/lib64/python3.13/site-packages/aiohttp/resolver.py:36: in resolve infos = await self._loop.getaddrinfo( /usr/lib64/python3.13/asyncio/base_events.py:939: in getaddrinfo return await self.run_in_executor( /usr/lib64/python3.13/concurrent/futures/thread.py:59: in run result = self.fn(*self.args, **self.kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ host = 'a2f834a2b06c4fa6b7764975792da9f2', port = 41889 family = , type = proto = 0, flags = def getaddrinfo(host, port, family=0, type=0, proto=0, flags=0): """Resolve host and port into list of address info entries. Translate the host/port argument into a sequence of 5-tuples that contain all the necessary arguments for creating a socket connected to that service. host is a domain name, a string representation of an IPv4/v6 address or None. port is a string service name such as 'http', a numeric port number or None. By passing None as the value of host and port, you can pass NULL to the underlying C API. The family, type and proto arguments can be optionally specified in order to narrow the list of addresses returned. Passing zero as a value for each of these arguments selects the full range of results. """ # We override this function since we want to translate the numeric family # and socket type values to enum constants. addrlist = [] > for res in _socket.getaddrinfo(host, port, family, type, proto, flags): E socket.gaierror: [Errno -3] Temporary failure in name resolution /usr/lib64/python3.13/socket.py:977: gaierror The above exception was the direct cause of the following exception: self = url = 'http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile' kwargs = {}, info = {} session = policy = 'get' async def _info(self, url, **kwargs): """Get info of URL Tries to access location via HEAD, and then GET methods, but does not fetch the data. It is possible that the server does not supply any size information, in which case size will be given as None (and certain operations on the corresponding file will not work). """ info = {} session = await self.set_session() for policy in ["head", "get"]: try: info.update( > await _file_info( self.encode_url(url), size_policy=policy, session=session, **self.kwargs, **kwargs, ) ) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:427: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:815: in _file_info r = await session.get(url, allow_redirects=ar, **kwargs) /usr/lib64/python3.13/site-packages/aiohttp/client.py:703: in _request conn = await self._connector.connect( /usr/lib64/python3.13/site-packages/aiohttp/connector.py:548: in connect proto = await self._create_connection(req, traces, timeout) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1056: in _create_connection _, proto = await self._create_direct_connection(req, traces, timeout) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. hosts = await self._resolve_host(host, port, traces=traces) except OSError as exc: if exc.errno is None and isinstance(exc, asyncio.TimeoutError): raise # in case of proxy it is not ClientProxyConnectionError # it is problem of resolving proxy ip itself > raise ClientConnectorDNSError(req.connection_key, exc) from exc E aiohttp.client_exceptions.ClientConnectorDNSError: Cannot connect to host a2f834a2b06c4fa6b7764975792da9f2:41889 ssl:default [Temporary failure in name resolution] /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1357: ClientConnectorDNSError The above exception was the direct cause of the following exception: server = namespace(address='http://a2f834a2b06c4fa6b7764975792da9f2:41889', realfile='http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile') headers = {'give_length': 'true', 'ignore_range': 'true'} @pytest.mark.parametrize( "headers", [ # HTTPFile seeks, response headers lack size, assumed no range support {"head_ok": "true", "head_give_length": "true"}, # HTTPFile seeks, response is not a range {"ignore_range": "true", "give_length": "true"}, {"ignore_range": "true", "give_range": "true"}, # HTTPStreamFile does not seek (past 0) {"accept_range": "none", "head_ok": "true", "give_length": "true"}, ], ) def test_no_range_support(server, headers): h = fsspec.filesystem("http", headers=headers) url = server.realfile > with h.open(url, "rb") as f: /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/tests/test_http.py:252: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/spec.py:1310: in open f = self._open( /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:366: in _open size = size or info.update(self.info(path, **kwargs)) or info["size"] /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:118: in wrapper return sync(self.loop, func, *args, **kwargs) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:103: in sync raise return_result /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:56: in _runner result[0] = await coro _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = url = 'http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile' kwargs = {}, info = {} session = policy = 'get' async def _info(self, url, **kwargs): """Get info of URL Tries to access location via HEAD, and then GET methods, but does not fetch the data. It is possible that the server does not supply any size information, in which case size will be given as None (and certain operations on the corresponding file will not work). """ info = {} session = await self.set_session() for policy in ["head", "get"]: try: info.update( await _file_info( self.encode_url(url), size_policy=policy, session=session, **self.kwargs, **kwargs, ) ) if info.get("size") is not None: break except Exception as exc: if policy == "get": # If get failed, then raise a FileNotFoundError > raise FileNotFoundError(url) from exc E FileNotFoundError: http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:440: FileNotFoundError _______________________ test_no_range_support[headers2] ________________________ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. > hosts = await self._resolve_host(host, port, traces=traces) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1351: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.13/site-packages/aiohttp/connector.py:995: in _resolve_host return await asyncio.shield(resolved_host_task) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1026: in _resolve_host_with_throttle addrs = await self._resolver.resolve(host, port, family=self._family) /usr/lib64/python3.13/site-packages/aiohttp/resolver.py:36: in resolve infos = await self._loop.getaddrinfo( /usr/lib64/python3.13/asyncio/base_events.py:939: in getaddrinfo return await self.run_in_executor( /usr/lib64/python3.13/concurrent/futures/thread.py:59: in run result = self.fn(*self.args, **self.kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ host = 'a2f834a2b06c4fa6b7764975792da9f2', port = 41889 family = , type = proto = 0, flags = def getaddrinfo(host, port, family=0, type=0, proto=0, flags=0): """Resolve host and port into list of address info entries. Translate the host/port argument into a sequence of 5-tuples that contain all the necessary arguments for creating a socket connected to that service. host is a domain name, a string representation of an IPv4/v6 address or None. port is a string service name such as 'http', a numeric port number or None. By passing None as the value of host and port, you can pass NULL to the underlying C API. The family, type and proto arguments can be optionally specified in order to narrow the list of addresses returned. Passing zero as a value for each of these arguments selects the full range of results. """ # We override this function since we want to translate the numeric family # and socket type values to enum constants. addrlist = [] > for res in _socket.getaddrinfo(host, port, family, type, proto, flags): E socket.gaierror: [Errno -3] Temporary failure in name resolution /usr/lib64/python3.13/socket.py:977: gaierror The above exception was the direct cause of the following exception: self = url = 'http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile' kwargs = {}, info = {} session = policy = 'get' async def _info(self, url, **kwargs): """Get info of URL Tries to access location via HEAD, and then GET methods, but does not fetch the data. It is possible that the server does not supply any size information, in which case size will be given as None (and certain operations on the corresponding file will not work). """ info = {} session = await self.set_session() for policy in ["head", "get"]: try: info.update( > await _file_info( self.encode_url(url), size_policy=policy, session=session, **self.kwargs, **kwargs, ) ) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:427: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:815: in _file_info r = await session.get(url, allow_redirects=ar, **kwargs) /usr/lib64/python3.13/site-packages/aiohttp/client.py:703: in _request conn = await self._connector.connect( /usr/lib64/python3.13/site-packages/aiohttp/connector.py:548: in connect proto = await self._create_connection(req, traces, timeout) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1056: in _create_connection _, proto = await self._create_direct_connection(req, traces, timeout) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. hosts = await self._resolve_host(host, port, traces=traces) except OSError as exc: if exc.errno is None and isinstance(exc, asyncio.TimeoutError): raise # in case of proxy it is not ClientProxyConnectionError # it is problem of resolving proxy ip itself > raise ClientConnectorDNSError(req.connection_key, exc) from exc E aiohttp.client_exceptions.ClientConnectorDNSError: Cannot connect to host a2f834a2b06c4fa6b7764975792da9f2:41889 ssl:default [Temporary failure in name resolution] /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1357: ClientConnectorDNSError The above exception was the direct cause of the following exception: server = namespace(address='http://a2f834a2b06c4fa6b7764975792da9f2:41889', realfile='http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile') headers = {'give_range': 'true', 'ignore_range': 'true'} @pytest.mark.parametrize( "headers", [ # HTTPFile seeks, response headers lack size, assumed no range support {"head_ok": "true", "head_give_length": "true"}, # HTTPFile seeks, response is not a range {"ignore_range": "true", "give_length": "true"}, {"ignore_range": "true", "give_range": "true"}, # HTTPStreamFile does not seek (past 0) {"accept_range": "none", "head_ok": "true", "give_length": "true"}, ], ) def test_no_range_support(server, headers): h = fsspec.filesystem("http", headers=headers) url = server.realfile > with h.open(url, "rb") as f: /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/tests/test_http.py:252: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/spec.py:1310: in open f = self._open( /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:366: in _open size = size or info.update(self.info(path, **kwargs)) or info["size"] /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:118: in wrapper return sync(self.loop, func, *args, **kwargs) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:103: in sync raise return_result /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:56: in _runner result[0] = await coro _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = url = 'http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile' kwargs = {}, info = {} session = policy = 'get' async def _info(self, url, **kwargs): """Get info of URL Tries to access location via HEAD, and then GET methods, but does not fetch the data. It is possible that the server does not supply any size information, in which case size will be given as None (and certain operations on the corresponding file will not work). """ info = {} session = await self.set_session() for policy in ["head", "get"]: try: info.update( await _file_info( self.encode_url(url), size_policy=policy, session=session, **self.kwargs, **kwargs, ) ) if info.get("size") is not None: break except Exception as exc: if policy == "get": # If get failed, then raise a FileNotFoundError > raise FileNotFoundError(url) from exc E FileNotFoundError: http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:440: FileNotFoundError _______________________ test_no_range_support[headers3] ________________________ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. > hosts = await self._resolve_host(host, port, traces=traces) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1351: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.13/site-packages/aiohttp/connector.py:995: in _resolve_host return await asyncio.shield(resolved_host_task) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1026: in _resolve_host_with_throttle addrs = await self._resolver.resolve(host, port, family=self._family) /usr/lib64/python3.13/site-packages/aiohttp/resolver.py:36: in resolve infos = await self._loop.getaddrinfo( /usr/lib64/python3.13/asyncio/base_events.py:939: in getaddrinfo return await self.run_in_executor( /usr/lib64/python3.13/concurrent/futures/thread.py:59: in run result = self.fn(*self.args, **self.kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ host = 'a2f834a2b06c4fa6b7764975792da9f2', port = 41889 family = , type = proto = 0, flags = def getaddrinfo(host, port, family=0, type=0, proto=0, flags=0): """Resolve host and port into list of address info entries. Translate the host/port argument into a sequence of 5-tuples that contain all the necessary arguments for creating a socket connected to that service. host is a domain name, a string representation of an IPv4/v6 address or None. port is a string service name such as 'http', a numeric port number or None. By passing None as the value of host and port, you can pass NULL to the underlying C API. The family, type and proto arguments can be optionally specified in order to narrow the list of addresses returned. Passing zero as a value for each of these arguments selects the full range of results. """ # We override this function since we want to translate the numeric family # and socket type values to enum constants. addrlist = [] > for res in _socket.getaddrinfo(host, port, family, type, proto, flags): E socket.gaierror: [Errno -3] Temporary failure in name resolution /usr/lib64/python3.13/socket.py:977: gaierror The above exception was the direct cause of the following exception: self = url = 'http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile' kwargs = {}, info = {} session = policy = 'get' async def _info(self, url, **kwargs): """Get info of URL Tries to access location via HEAD, and then GET methods, but does not fetch the data. It is possible that the server does not supply any size information, in which case size will be given as None (and certain operations on the corresponding file will not work). """ info = {} session = await self.set_session() for policy in ["head", "get"]: try: info.update( > await _file_info( self.encode_url(url), size_policy=policy, session=session, **self.kwargs, **kwargs, ) ) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:427: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:815: in _file_info r = await session.get(url, allow_redirects=ar, **kwargs) /usr/lib64/python3.13/site-packages/aiohttp/client.py:703: in _request conn = await self._connector.connect( /usr/lib64/python3.13/site-packages/aiohttp/connector.py:548: in connect proto = await self._create_connection(req, traces, timeout) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1056: in _create_connection _, proto = await self._create_direct_connection(req, traces, timeout) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. hosts = await self._resolve_host(host, port, traces=traces) except OSError as exc: if exc.errno is None and isinstance(exc, asyncio.TimeoutError): raise # in case of proxy it is not ClientProxyConnectionError # it is problem of resolving proxy ip itself > raise ClientConnectorDNSError(req.connection_key, exc) from exc E aiohttp.client_exceptions.ClientConnectorDNSError: Cannot connect to host a2f834a2b06c4fa6b7764975792da9f2:41889 ssl:default [Temporary failure in name resolution] /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1357: ClientConnectorDNSError The above exception was the direct cause of the following exception: server = namespace(address='http://a2f834a2b06c4fa6b7764975792da9f2:41889', realfile='http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile') headers = {'accept_range': 'none', 'give_length': 'true', 'head_ok': 'true'} @pytest.mark.parametrize( "headers", [ # HTTPFile seeks, response headers lack size, assumed no range support {"head_ok": "true", "head_give_length": "true"}, # HTTPFile seeks, response is not a range {"ignore_range": "true", "give_length": "true"}, {"ignore_range": "true", "give_range": "true"}, # HTTPStreamFile does not seek (past 0) {"accept_range": "none", "head_ok": "true", "give_length": "true"}, ], ) def test_no_range_support(server, headers): h = fsspec.filesystem("http", headers=headers) url = server.realfile > with h.open(url, "rb") as f: /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/tests/test_http.py:252: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/spec.py:1310: in open f = self._open( /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:366: in _open size = size or info.update(self.info(path, **kwargs)) or info["size"] /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:118: in wrapper return sync(self.loop, func, *args, **kwargs) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:103: in sync raise return_result /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:56: in _runner result[0] = await coro _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = url = 'http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile' kwargs = {}, info = {} session = policy = 'get' async def _info(self, url, **kwargs): """Get info of URL Tries to access location via HEAD, and then GET methods, but does not fetch the data. It is possible that the server does not supply any size information, in which case size will be given as None (and certain operations on the corresponding file will not work). """ info = {} session = await self.set_session() for policy in ["head", "get"]: try: info.update( await _file_info( self.encode_url(url), size_policy=policy, session=session, **self.kwargs, **kwargs, ) ) if info.get("size") is not None: break except Exception as exc: if policy == "get": # If get failed, then raise a FileNotFoundError > raise FileNotFoundError(url) from exc E FileNotFoundError: http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:440: FileNotFoundError _______________________________ test_stream_seek _______________________________ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. > hosts = await self._resolve_host(host, port, traces=traces) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1351: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.13/site-packages/aiohttp/connector.py:995: in _resolve_host return await asyncio.shield(resolved_host_task) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1026: in _resolve_host_with_throttle addrs = await self._resolver.resolve(host, port, family=self._family) /usr/lib64/python3.13/site-packages/aiohttp/resolver.py:36: in resolve infos = await self._loop.getaddrinfo( /usr/lib64/python3.13/asyncio/base_events.py:939: in getaddrinfo return await self.run_in_executor( /usr/lib64/python3.13/concurrent/futures/thread.py:59: in run result = self.fn(*self.args, **self.kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ host = 'a2f834a2b06c4fa6b7764975792da9f2', port = 41889 family = , type = proto = 0, flags = def getaddrinfo(host, port, family=0, type=0, proto=0, flags=0): """Resolve host and port into list of address info entries. Translate the host/port argument into a sequence of 5-tuples that contain all the necessary arguments for creating a socket connected to that service. host is a domain name, a string representation of an IPv4/v6 address or None. port is a string service name such as 'http', a numeric port number or None. By passing None as the value of host and port, you can pass NULL to the underlying C API. The family, type and proto arguments can be optionally specified in order to narrow the list of addresses returned. Passing zero as a value for each of these arguments selects the full range of results. """ # We override this function since we want to translate the numeric family # and socket type values to enum constants. addrlist = [] > for res in _socket.getaddrinfo(host, port, family, type, proto, flags): E socket.gaierror: [Errno -3] Temporary failure in name resolution /usr/lib64/python3.13/socket.py:977: gaierror The above exception was the direct cause of the following exception: self = url = 'http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile' kwargs = {}, info = {} session = policy = 'get' async def _info(self, url, **kwargs): """Get info of URL Tries to access location via HEAD, and then GET methods, but does not fetch the data. It is possible that the server does not supply any size information, in which case size will be given as None (and certain operations on the corresponding file will not work). """ info = {} session = await self.set_session() for policy in ["head", "get"]: try: info.update( > await _file_info( self.encode_url(url), size_policy=policy, session=session, **self.kwargs, **kwargs, ) ) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:427: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:815: in _file_info r = await session.get(url, allow_redirects=ar, **kwargs) /usr/lib64/python3.13/site-packages/aiohttp/client.py:703: in _request conn = await self._connector.connect( /usr/lib64/python3.13/site-packages/aiohttp/connector.py:548: in connect proto = await self._create_connection(req, traces, timeout) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1056: in _create_connection _, proto = await self._create_direct_connection(req, traces, timeout) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. hosts = await self._resolve_host(host, port, traces=traces) except OSError as exc: if exc.errno is None and isinstance(exc, asyncio.TimeoutError): raise # in case of proxy it is not ClientProxyConnectionError # it is problem of resolving proxy ip itself > raise ClientConnectorDNSError(req.connection_key, exc) from exc E aiohttp.client_exceptions.ClientConnectorDNSError: Cannot connect to host a2f834a2b06c4fa6b7764975792da9f2:41889 ssl:default [Temporary failure in name resolution] /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1357: ClientConnectorDNSError The above exception was the direct cause of the following exception: server = namespace(address='http://a2f834a2b06c4fa6b7764975792da9f2:41889', realfile='http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile') def test_stream_seek(server): h = fsspec.filesystem("http") url = server.realfile > with h.open(url, "rb") as f: /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/tests/test_http.py:266: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/spec.py:1310: in open f = self._open( /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:366: in _open size = size or info.update(self.info(path, **kwargs)) or info["size"] /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:118: in wrapper return sync(self.loop, func, *args, **kwargs) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:103: in sync raise return_result /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:56: in _runner result[0] = await coro _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = url = 'http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile' kwargs = {}, info = {} session = policy = 'get' async def _info(self, url, **kwargs): """Get info of URL Tries to access location via HEAD, and then GET methods, but does not fetch the data. It is possible that the server does not supply any size information, in which case size will be given as None (and certain operations on the corresponding file will not work). """ info = {} session = await self.set_session() for policy in ["head", "get"]: try: info.update( await _file_info( self.encode_url(url), size_policy=policy, session=session, **self.kwargs, **kwargs, ) ) if info.get("size") is not None: break except Exception as exc: if policy == "get": # If get failed, then raise a FileNotFoundError > raise FileNotFoundError(url) from exc E FileNotFoundError: http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:440: FileNotFoundError _______________________________ test_mapper_url ________________________________ server = namespace(address='http://a2f834a2b06c4fa6b7764975792da9f2:41889', realfile='http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile') def test_mapper_url(server): h = fsspec.filesystem("http") mapper = h.get_mapper(server.address + "/index/") assert mapper.root.startswith("http:") > assert list(mapper) E assert [] E + where [] = list() /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/tests/test_http.py:280: AssertionError ___________________________ test_content_length_zero ___________________________ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. > hosts = await self._resolve_host(host, port, traces=traces) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1351: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.13/site-packages/aiohttp/connector.py:995: in _resolve_host return await asyncio.shield(resolved_host_task) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1026: in _resolve_host_with_throttle addrs = await self._resolver.resolve(host, port, family=self._family) /usr/lib64/python3.13/site-packages/aiohttp/resolver.py:36: in resolve infos = await self._loop.getaddrinfo( /usr/lib64/python3.13/asyncio/base_events.py:939: in getaddrinfo return await self.run_in_executor( /usr/lib64/python3.13/concurrent/futures/thread.py:59: in run result = self.fn(*self.args, **self.kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ host = 'a2f834a2b06c4fa6b7764975792da9f2', port = 41889 family = , type = proto = 0, flags = def getaddrinfo(host, port, family=0, type=0, proto=0, flags=0): """Resolve host and port into list of address info entries. Translate the host/port argument into a sequence of 5-tuples that contain all the necessary arguments for creating a socket connected to that service. host is a domain name, a string representation of an IPv4/v6 address or None. port is a string service name such as 'http', a numeric port number or None. By passing None as the value of host and port, you can pass NULL to the underlying C API. The family, type and proto arguments can be optionally specified in order to narrow the list of addresses returned. Passing zero as a value for each of these arguments selects the full range of results. """ # We override this function since we want to translate the numeric family # and socket type values to enum constants. addrlist = [] > for res in _socket.getaddrinfo(host, port, family, type, proto, flags): E socket.gaierror: [Errno -3] Temporary failure in name resolution /usr/lib64/python3.13/socket.py:977: gaierror The above exception was the direct cause of the following exception: self = url = 'http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile' kwargs = {}, info = {} session = policy = 'get' async def _info(self, url, **kwargs): """Get info of URL Tries to access location via HEAD, and then GET methods, but does not fetch the data. It is possible that the server does not supply any size information, in which case size will be given as None (and certain operations on the corresponding file will not work). """ info = {} session = await self.set_session() for policy in ["head", "get"]: try: info.update( > await _file_info( self.encode_url(url), size_policy=policy, session=session, **self.kwargs, **kwargs, ) ) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:427: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:815: in _file_info r = await session.get(url, allow_redirects=ar, **kwargs) /usr/lib64/python3.13/site-packages/aiohttp/client.py:703: in _request conn = await self._connector.connect( /usr/lib64/python3.13/site-packages/aiohttp/connector.py:548: in connect proto = await self._create_connection(req, traces, timeout) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1056: in _create_connection _, proto = await self._create_direct_connection(req, traces, timeout) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. hosts = await self._resolve_host(host, port, traces=traces) except OSError as exc: if exc.errno is None and isinstance(exc, asyncio.TimeoutError): raise # in case of proxy it is not ClientProxyConnectionError # it is problem of resolving proxy ip itself > raise ClientConnectorDNSError(req.connection_key, exc) from exc E aiohttp.client_exceptions.ClientConnectorDNSError: Cannot connect to host a2f834a2b06c4fa6b7764975792da9f2:41889 ssl:default [Temporary failure in name resolution] /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1357: ClientConnectorDNSError The above exception was the direct cause of the following exception: server = namespace(address='http://a2f834a2b06c4fa6b7764975792da9f2:41889', realfile='http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile') def test_content_length_zero(server): h = fsspec.filesystem( "http", headers={"give_length": "true", "zero_length": "true"} ) url = server.realfile > with h.open(url, "rb") as f: /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/tests/test_http.py:293: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/spec.py:1310: in open f = self._open( /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:366: in _open size = size or info.update(self.info(path, **kwargs)) or info["size"] /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:118: in wrapper return sync(self.loop, func, *args, **kwargs) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:103: in sync raise return_result /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:56: in _runner result[0] = await coro _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = url = 'http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile' kwargs = {}, info = {} session = policy = 'get' async def _info(self, url, **kwargs): """Get info of URL Tries to access location via HEAD, and then GET methods, but does not fetch the data. It is possible that the server does not supply any size information, in which case size will be given as None (and certain operations on the corresponding file will not work). """ info = {} session = await self.set_session() for policy in ["head", "get"]: try: info.update( await _file_info( self.encode_url(url), size_policy=policy, session=session, **self.kwargs, **kwargs, ) ) if info.get("size") is not None: break except Exception as exc: if policy == "get": # If get failed, then raise a FileNotFoundError > raise FileNotFoundError(url) from exc E FileNotFoundError: http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:440: FileNotFoundError __________________________ test_content_encoding_gzip __________________________ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. > hosts = await self._resolve_host(host, port, traces=traces) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1351: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.13/site-packages/aiohttp/connector.py:995: in _resolve_host return await asyncio.shield(resolved_host_task) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1026: in _resolve_host_with_throttle addrs = await self._resolver.resolve(host, port, family=self._family) /usr/lib64/python3.13/site-packages/aiohttp/resolver.py:36: in resolve infos = await self._loop.getaddrinfo( /usr/lib64/python3.13/asyncio/base_events.py:939: in getaddrinfo return await self.run_in_executor( /usr/lib64/python3.13/concurrent/futures/thread.py:59: in run result = self.fn(*self.args, **self.kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ host = 'a2f834a2b06c4fa6b7764975792da9f2', port = 41889 family = , type = proto = 0, flags = def getaddrinfo(host, port, family=0, type=0, proto=0, flags=0): """Resolve host and port into list of address info entries. Translate the host/port argument into a sequence of 5-tuples that contain all the necessary arguments for creating a socket connected to that service. host is a domain name, a string representation of an IPv4/v6 address or None. port is a string service name such as 'http', a numeric port number or None. By passing None as the value of host and port, you can pass NULL to the underlying C API. The family, type and proto arguments can be optionally specified in order to narrow the list of addresses returned. Passing zero as a value for each of these arguments selects the full range of results. """ # We override this function since we want to translate the numeric family # and socket type values to enum constants. addrlist = [] > for res in _socket.getaddrinfo(host, port, family, type, proto, flags): E socket.gaierror: [Errno -3] Temporary failure in name resolution /usr/lib64/python3.13/socket.py:977: gaierror The above exception was the direct cause of the following exception: self = url = 'http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile' kwargs = {}, info = {} session = policy = 'get' async def _info(self, url, **kwargs): """Get info of URL Tries to access location via HEAD, and then GET methods, but does not fetch the data. It is possible that the server does not supply any size information, in which case size will be given as None (and certain operations on the corresponding file will not work). """ info = {} session = await self.set_session() for policy in ["head", "get"]: try: info.update( > await _file_info( self.encode_url(url), size_policy=policy, session=session, **self.kwargs, **kwargs, ) ) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:427: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:815: in _file_info r = await session.get(url, allow_redirects=ar, **kwargs) /usr/lib64/python3.13/site-packages/aiohttp/client.py:703: in _request conn = await self._connector.connect( /usr/lib64/python3.13/site-packages/aiohttp/connector.py:548: in connect proto = await self._create_connection(req, traces, timeout) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1056: in _create_connection _, proto = await self._create_direct_connection(req, traces, timeout) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. hosts = await self._resolve_host(host, port, traces=traces) except OSError as exc: if exc.errno is None and isinstance(exc, asyncio.TimeoutError): raise # in case of proxy it is not ClientProxyConnectionError # it is problem of resolving proxy ip itself > raise ClientConnectorDNSError(req.connection_key, exc) from exc E aiohttp.client_exceptions.ClientConnectorDNSError: Cannot connect to host a2f834a2b06c4fa6b7764975792da9f2:41889 ssl:default [Temporary failure in name resolution] /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1357: ClientConnectorDNSError The above exception was the direct cause of the following exception: server = namespace(address='http://a2f834a2b06c4fa6b7764975792da9f2:41889', realfile='http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile') def test_content_encoding_gzip(server): h = fsspec.filesystem( "http", headers={"give_length": "true", "gzip_encoding": "true"} ) url = server.realfile > with h.open(url, "rb") as f: /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/tests/test_http.py:303: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/spec.py:1310: in open f = self._open( /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:366: in _open size = size or info.update(self.info(path, **kwargs)) or info["size"] /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:118: in wrapper return sync(self.loop, func, *args, **kwargs) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:103: in sync raise return_result /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:56: in _runner result[0] = await coro _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = url = 'http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile' kwargs = {}, info = {} session = policy = 'get' async def _info(self, url, **kwargs): """Get info of URL Tries to access location via HEAD, and then GET methods, but does not fetch the data. It is possible that the server does not supply any size information, in which case size will be given as None (and certain operations on the corresponding file will not work). """ info = {} session = await self.set_session() for policy in ["head", "get"]: try: info.update( await _file_info( self.encode_url(url), size_policy=policy, session=session, **self.kwargs, **kwargs, ) ) if info.get("size") is not None: break except Exception as exc: if policy == "get": # If get failed, then raise a FileNotFoundError > raise FileNotFoundError(url) from exc E FileNotFoundError: http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:440: FileNotFoundError ________________________________ test_download _________________________________ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. > hosts = await self._resolve_host(host, port, traces=traces) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1351: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.13/site-packages/aiohttp/connector.py:995: in _resolve_host return await asyncio.shield(resolved_host_task) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1026: in _resolve_host_with_throttle addrs = await self._resolver.resolve(host, port, family=self._family) /usr/lib64/python3.13/site-packages/aiohttp/resolver.py:36: in resolve infos = await self._loop.getaddrinfo( /usr/lib64/python3.13/asyncio/base_events.py:939: in getaddrinfo return await self.run_in_executor( /usr/lib64/python3.13/concurrent/futures/thread.py:59: in run result = self.fn(*self.args, **self.kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ host = 'a2f834a2b06c4fa6b7764975792da9f2', port = 41889 family = , type = proto = 0, flags = def getaddrinfo(host, port, family=0, type=0, proto=0, flags=0): """Resolve host and port into list of address info entries. Translate the host/port argument into a sequence of 5-tuples that contain all the necessary arguments for creating a socket connected to that service. host is a domain name, a string representation of an IPv4/v6 address or None. port is a string service name such as 'http', a numeric port number or None. By passing None as the value of host and port, you can pass NULL to the underlying C API. The family, type and proto arguments can be optionally specified in order to narrow the list of addresses returned. Passing zero as a value for each of these arguments selects the full range of results. """ # We override this function since we want to translate the numeric family # and socket type values to enum constants. addrlist = [] > for res in _socket.getaddrinfo(host, port, family, type, proto, flags): E socket.gaierror: [Errno -3] Temporary failure in name resolution /usr/lib64/python3.13/socket.py:977: gaierror The above exception was the direct cause of the following exception: server = namespace(address='http://a2f834a2b06c4fa6b7764975792da9f2:41889', realfile='http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile') tmpdir = local('/tmp/pytest-of-mockbuild/pytest-0/test_download0') def test_download(server, tmpdir): h = fsspec.filesystem("http", headers={"give_length": "true", "head_ok": "true "}) url = server.realfile fn = os.path.join(tmpdir, "afile") > h.get(url, fn) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/tests/test_http.py:313: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:118: in wrapper return sync(self.loop, func, *args, **kwargs) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:103: in sync raise return_result /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:56: in _runner result[0] = await coro /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:639: in _get p for p in rpaths if not (trailing_sep(p) or await self._isdir(p)) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:521: in _isdir return bool(await self._ls(path)) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:207: in _ls out = await self._ls_real(url, detail=detail, **kwargs) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:159: in _ls_real async with session.get(self.encode_url(url), **self.kwargs) as r: /usr/lib64/python3.13/site-packages/aiohttp/client.py:1425: in __aenter__ self._resp: _RetType = await self._coro /usr/lib64/python3.13/site-packages/aiohttp/client.py:703: in _request conn = await self._connector.connect( /usr/lib64/python3.13/site-packages/aiohttp/connector.py:548: in connect proto = await self._create_connection(req, traces, timeout) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1056: in _create_connection _, proto = await self._create_direct_connection(req, traces, timeout) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. hosts = await self._resolve_host(host, port, traces=traces) except OSError as exc: if exc.errno is None and isinstance(exc, asyncio.TimeoutError): raise # in case of proxy it is not ClientProxyConnectionError # it is problem of resolving proxy ip itself > raise ClientConnectorDNSError(req.connection_key, exc) from exc E aiohttp.client_exceptions.ClientConnectorDNSError: Cannot connect to host a2f834a2b06c4fa6b7764975792da9f2:41889 ssl:default [Temporary failure in name resolution] /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1357: ClientConnectorDNSError _____________________________ test_multi_download ______________________________ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. > hosts = await self._resolve_host(host, port, traces=traces) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1351: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.13/site-packages/aiohttp/connector.py:995: in _resolve_host return await asyncio.shield(resolved_host_task) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1351: in _create_direct_connection hosts = await self._resolve_host(host, port, traces=traces) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:970: in _resolve_host await future /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1026: in _resolve_host_with_throttle addrs = await self._resolver.resolve(host, port, family=self._family) /usr/lib64/python3.13/site-packages/aiohttp/resolver.py:36: in resolve infos = await self._loop.getaddrinfo( /usr/lib64/python3.13/asyncio/base_events.py:939: in getaddrinfo return await self.run_in_executor( /usr/lib64/python3.13/concurrent/futures/thread.py:59: in run result = self.fn(*self.args, **self.kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ host = 'a2f834a2b06c4fa6b7764975792da9f2', port = 41889 family = , type = proto = 0, flags = def getaddrinfo(host, port, family=0, type=0, proto=0, flags=0): """Resolve host and port into list of address info entries. Translate the host/port argument into a sequence of 5-tuples that contain all the necessary arguments for creating a socket connected to that service. host is a domain name, a string representation of an IPv4/v6 address or None. port is a string service name such as 'http', a numeric port number or None. By passing None as the value of host and port, you can pass NULL to the underlying C API. The family, type and proto arguments can be optionally specified in order to narrow the list of addresses returned. Passing zero as a value for each of these arguments selects the full range of results. """ # We override this function since we want to translate the numeric family # and socket type values to enum constants. addrlist = [] > for res in _socket.getaddrinfo(host, port, family, type, proto, flags): E socket.gaierror: [Errno -3] Temporary failure in name resolution /usr/lib64/python3.13/socket.py:977: gaierror The above exception was the direct cause of the following exception: server = namespace(address='http://a2f834a2b06c4fa6b7764975792da9f2:41889', realfile='http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile') tmpdir = local('/tmp/pytest-of-mockbuild/pytest-0/test_multi_download0') def test_multi_download(server, tmpdir): h = fsspec.filesystem("http", headers={"give_length": "true", "head_ok": "true "}) urla = server.realfile urlb = server.address + "/index/otherfile" fna = os.path.join(tmpdir, "afile") fnb = os.path.join(tmpdir, "bfile") > h.get([urla, urlb], [fna, fnb]) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/tests/test_http.py:323: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:118: in wrapper return sync(self.loop, func, *args, **kwargs) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:103: in sync raise return_result /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:56: in _runner result[0] = await coro /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:669: in _get return await _run_coros_in_chunks( /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:268: in _run_coros_in_chunks result, k = await done.pop() /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:245: in _run_coro return await asyncio.wait_for(coro, timeout=timeout), i /usr/lib64/python3.13/asyncio/tasks.py:507: in wait_for return await fut /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/callbacks.py:81: in func return await fn(path1, path2, callback=child, **kwargs) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:246: in _get_file async with session.get(self.encode_url(rpath), **kw) as r: /usr/lib64/python3.13/site-packages/aiohttp/client.py:1425: in __aenter__ self._resp: _RetType = await self._coro /usr/lib64/python3.13/site-packages/aiohttp/client.py:703: in _request conn = await self._connector.connect( /usr/lib64/python3.13/site-packages/aiohttp/connector.py:548: in connect proto = await self._create_connection(req, traces, timeout) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1056: in _create_connection _, proto = await self._create_direct_connection(req, traces, timeout) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. hosts = await self._resolve_host(host, port, traces=traces) except OSError as exc: if exc.errno is None and isinstance(exc, asyncio.TimeoutError): raise # in case of proxy it is not ClientProxyConnectionError # it is problem of resolving proxy ip itself > raise ClientConnectorDNSError(req.connection_key, exc) from exc E aiohttp.client_exceptions.ClientConnectorDNSError: Cannot connect to host a2f834a2b06c4fa6b7764975792da9f2:41889 ssl:default [Temporary failure in name resolution] /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1357: ClientConnectorDNSError ___________________________________ test_ls ____________________________________ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. > hosts = await self._resolve_host(host, port, traces=traces) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1351: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.13/site-packages/aiohttp/connector.py:995: in _resolve_host return await asyncio.shield(resolved_host_task) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1026: in _resolve_host_with_throttle addrs = await self._resolver.resolve(host, port, family=self._family) /usr/lib64/python3.13/site-packages/aiohttp/resolver.py:36: in resolve infos = await self._loop.getaddrinfo( /usr/lib64/python3.13/asyncio/base_events.py:939: in getaddrinfo return await self.run_in_executor( /usr/lib64/python3.13/concurrent/futures/thread.py:59: in run result = self.fn(*self.args, **self.kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ host = 'a2f834a2b06c4fa6b7764975792da9f2', port = 41889 family = , type = proto = 0, flags = def getaddrinfo(host, port, family=0, type=0, proto=0, flags=0): """Resolve host and port into list of address info entries. Translate the host/port argument into a sequence of 5-tuples that contain all the necessary arguments for creating a socket connected to that service. host is a domain name, a string representation of an IPv4/v6 address or None. port is a string service name such as 'http', a numeric port number or None. By passing None as the value of host and port, you can pass NULL to the underlying C API. The family, type and proto arguments can be optionally specified in order to narrow the list of addresses returned. Passing zero as a value for each of these arguments selects the full range of results. """ # We override this function since we want to translate the numeric family # and socket type values to enum constants. addrlist = [] > for res in _socket.getaddrinfo(host, port, family, type, proto, flags): E socket.gaierror: [Errno -3] Temporary failure in name resolution /usr/lib64/python3.13/socket.py:977: gaierror The above exception was the direct cause of the following exception: server = namespace(address='http://a2f834a2b06c4fa6b7764975792da9f2:41889', realfile='http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile') def test_ls(server): h = fsspec.filesystem("http") > l = h.ls(server.address + "/data/20020401/", detail=False) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/tests/test_http.py:330: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:118: in wrapper return sync(self.loop, func, *args, **kwargs) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:103: in sync raise return_result /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:56: in _runner result[0] = await coro /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:207: in _ls out = await self._ls_real(url, detail=detail, **kwargs) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:159: in _ls_real async with session.get(self.encode_url(url), **self.kwargs) as r: /usr/lib64/python3.13/site-packages/aiohttp/client.py:1425: in __aenter__ self._resp: _RetType = await self._coro /usr/lib64/python3.13/site-packages/aiohttp/client.py:703: in _request conn = await self._connector.connect( /usr/lib64/python3.13/site-packages/aiohttp/connector.py:548: in connect proto = await self._create_connection(req, traces, timeout) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1056: in _create_connection _, proto = await self._create_direct_connection(req, traces, timeout) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. hosts = await self._resolve_host(host, port, traces=traces) except OSError as exc: if exc.errno is None and isinstance(exc, asyncio.TimeoutError): raise # in case of proxy it is not ClientProxyConnectionError # it is problem of resolving proxy ip itself > raise ClientConnectorDNSError(req.connection_key, exc) from exc E aiohttp.client_exceptions.ClientConnectorDNSError: Cannot connect to host a2f834a2b06c4fa6b7764975792da9f2:41889 ssl:default [Temporary failure in name resolution] /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1357: ClientConnectorDNSError __________________________________ test_mcat ___________________________________ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. > hosts = await self._resolve_host(host, port, traces=traces) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1351: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.13/site-packages/aiohttp/connector.py:995: in _resolve_host return await asyncio.shield(resolved_host_task) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1351: in _create_direct_connection hosts = await self._resolve_host(host, port, traces=traces) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:970: in _resolve_host await future /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1026: in _resolve_host_with_throttle addrs = await self._resolver.resolve(host, port, family=self._family) /usr/lib64/python3.13/site-packages/aiohttp/resolver.py:36: in resolve infos = await self._loop.getaddrinfo( /usr/lib64/python3.13/asyncio/base_events.py:939: in getaddrinfo return await self.run_in_executor( /usr/lib64/python3.13/concurrent/futures/thread.py:59: in run result = self.fn(*self.args, **self.kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ host = 'a2f834a2b06c4fa6b7764975792da9f2', port = 41889 family = , type = proto = 0, flags = def getaddrinfo(host, port, family=0, type=0, proto=0, flags=0): """Resolve host and port into list of address info entries. Translate the host/port argument into a sequence of 5-tuples that contain all the necessary arguments for creating a socket connected to that service. host is a domain name, a string representation of an IPv4/v6 address or None. port is a string service name such as 'http', a numeric port number or None. By passing None as the value of host and port, you can pass NULL to the underlying C API. The family, type and proto arguments can be optionally specified in order to narrow the list of addresses returned. Passing zero as a value for each of these arguments selects the full range of results. """ # We override this function since we want to translate the numeric family # and socket type values to enum constants. addrlist = [] > for res in _socket.getaddrinfo(host, port, family, type, proto, flags): E socket.gaierror: [Errno -3] Temporary failure in name resolution /usr/lib64/python3.13/socket.py:977: gaierror The above exception was the direct cause of the following exception: server = namespace(address='http://a2f834a2b06c4fa6b7764975792da9f2:41889', realfile='http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile') def test_mcat(server): h = fsspec.filesystem("http", headers={"give_length": "true", "head_ok": "true "}) urla = server.realfile urlb = server.address + "/index/otherfile" > out = h.cat([urla, urlb]) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/tests/test_http.py:342: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:118: in wrapper return sync(self.loop, func, *args, **kwargs) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:103: in sync raise return_result /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:56: in _runner result[0] = await coro /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:465: in _cat raise ex /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:245: in _run_coro return await asyncio.wait_for(coro, timeout=timeout), i /usr/lib64/python3.13/asyncio/tasks.py:507: in wait_for return await fut /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:234: in _cat_file async with session.get(self.encode_url(url), **kw) as r: /usr/lib64/python3.13/site-packages/aiohttp/client.py:1425: in __aenter__ self._resp: _RetType = await self._coro /usr/lib64/python3.13/site-packages/aiohttp/client.py:703: in _request conn = await self._connector.connect( /usr/lib64/python3.13/site-packages/aiohttp/connector.py:548: in connect proto = await self._create_connection(req, traces, timeout) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1056: in _create_connection _, proto = await self._create_direct_connection(req, traces, timeout) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. hosts = await self._resolve_host(host, port, traces=traces) except OSError as exc: if exc.errno is None and isinstance(exc, asyncio.TimeoutError): raise # in case of proxy it is not ClientProxyConnectionError # it is problem of resolving proxy ip itself > raise ClientConnectorDNSError(req.connection_key, exc) from exc E aiohttp.client_exceptions.ClientConnectorDNSError: Cannot connect to host a2f834a2b06c4fa6b7764975792da9f2:41889 ssl:default [Temporary failure in name resolution] /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1357: ClientConnectorDNSError _____________________________ test_cat_file_range ______________________________ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. > hosts = await self._resolve_host(host, port, traces=traces) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1351: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.13/site-packages/aiohttp/connector.py:995: in _resolve_host return await asyncio.shield(resolved_host_task) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1026: in _resolve_host_with_throttle addrs = await self._resolver.resolve(host, port, family=self._family) /usr/lib64/python3.13/site-packages/aiohttp/resolver.py:36: in resolve infos = await self._loop.getaddrinfo( /usr/lib64/python3.13/asyncio/base_events.py:939: in getaddrinfo return await self.run_in_executor( /usr/lib64/python3.13/concurrent/futures/thread.py:59: in run result = self.fn(*self.args, **self.kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ host = 'a2f834a2b06c4fa6b7764975792da9f2', port = 41889 family = , type = proto = 0, flags = def getaddrinfo(host, port, family=0, type=0, proto=0, flags=0): """Resolve host and port into list of address info entries. Translate the host/port argument into a sequence of 5-tuples that contain all the necessary arguments for creating a socket connected to that service. host is a domain name, a string representation of an IPv4/v6 address or None. port is a string service name such as 'http', a numeric port number or None. By passing None as the value of host and port, you can pass NULL to the underlying C API. The family, type and proto arguments can be optionally specified in order to narrow the list of addresses returned. Passing zero as a value for each of these arguments selects the full range of results. """ # We override this function since we want to translate the numeric family # and socket type values to enum constants. addrlist = [] > for res in _socket.getaddrinfo(host, port, family, type, proto, flags): E socket.gaierror: [Errno -3] Temporary failure in name resolution /usr/lib64/python3.13/socket.py:977: gaierror The above exception was the direct cause of the following exception: server = namespace(address='http://a2f834a2b06c4fa6b7764975792da9f2:41889', realfile='http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile') def test_cat_file_range(server): h = fsspec.filesystem("http", headers={"give_length": "true", "head_ok": "true "}) urla = server.realfile > assert h.cat(urla, start=1, end=10) == data[1:10] /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/tests/test_http.py:349: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:118: in wrapper return sync(self.loop, func, *args, **kwargs) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:103: in sync raise return_result /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:56: in _runner result[0] = await coro /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:465: in _cat raise ex /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:245: in _run_coro return await asyncio.wait_for(coro, timeout=timeout), i /usr/lib64/python3.13/asyncio/tasks.py:507: in wait_for return await fut /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:234: in _cat_file async with session.get(self.encode_url(url), **kw) as r: /usr/lib64/python3.13/site-packages/aiohttp/client.py:1425: in __aenter__ self._resp: _RetType = await self._coro /usr/lib64/python3.13/site-packages/aiohttp/client.py:703: in _request conn = await self._connector.connect( /usr/lib64/python3.13/site-packages/aiohttp/connector.py:548: in connect proto = await self._create_connection(req, traces, timeout) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1056: in _create_connection _, proto = await self._create_direct_connection(req, traces, timeout) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. hosts = await self._resolve_host(host, port, traces=traces) except OSError as exc: if exc.errno is None and isinstance(exc, asyncio.TimeoutError): raise # in case of proxy it is not ClientProxyConnectionError # it is problem of resolving proxy ip itself > raise ClientConnectorDNSError(req.connection_key, exc) from exc E aiohttp.client_exceptions.ClientConnectorDNSError: Cannot connect to host a2f834a2b06c4fa6b7764975792da9f2:41889 ssl:default [Temporary failure in name resolution] /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1357: ClientConnectorDNSError __________________________ test_cat_file_range_numpy ___________________________ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. > hosts = await self._resolve_host(host, port, traces=traces) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1351: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.13/site-packages/aiohttp/connector.py:995: in _resolve_host return await asyncio.shield(resolved_host_task) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1026: in _resolve_host_with_throttle addrs = await self._resolver.resolve(host, port, family=self._family) /usr/lib64/python3.13/site-packages/aiohttp/resolver.py:36: in resolve infos = await self._loop.getaddrinfo( /usr/lib64/python3.13/asyncio/base_events.py:939: in getaddrinfo return await self.run_in_executor( /usr/lib64/python3.13/concurrent/futures/thread.py:59: in run result = self.fn(*self.args, **self.kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ host = 'a2f834a2b06c4fa6b7764975792da9f2', port = 41889 family = , type = proto = 0, flags = def getaddrinfo(host, port, family=0, type=0, proto=0, flags=0): """Resolve host and port into list of address info entries. Translate the host/port argument into a sequence of 5-tuples that contain all the necessary arguments for creating a socket connected to that service. host is a domain name, a string representation of an IPv4/v6 address or None. port is a string service name such as 'http', a numeric port number or None. By passing None as the value of host and port, you can pass NULL to the underlying C API. The family, type and proto arguments can be optionally specified in order to narrow the list of addresses returned. Passing zero as a value for each of these arguments selects the full range of results. """ # We override this function since we want to translate the numeric family # and socket type values to enum constants. addrlist = [] > for res in _socket.getaddrinfo(host, port, family, type, proto, flags): E socket.gaierror: [Errno -3] Temporary failure in name resolution /usr/lib64/python3.13/socket.py:977: gaierror The above exception was the direct cause of the following exception: server = namespace(address='http://a2f834a2b06c4fa6b7764975792da9f2:41889', realfile='http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile') def test_cat_file_range_numpy(server): np = pytest.importorskip("numpy") h = fsspec.filesystem("http", headers={"give_length": "true", "head_ok": "true "}) urla = server.realfile > assert h.cat(urla, start=np.int8(1), end=np.int8(10)) == data[1:10] /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/tests/test_http.py:362: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:118: in wrapper return sync(self.loop, func, *args, **kwargs) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:103: in sync raise return_result /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:56: in _runner result[0] = await coro /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:465: in _cat raise ex /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:245: in _run_coro return await asyncio.wait_for(coro, timeout=timeout), i /usr/lib64/python3.13/asyncio/tasks.py:507: in wait_for return await fut /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:234: in _cat_file async with session.get(self.encode_url(url), **kw) as r: /usr/lib64/python3.13/site-packages/aiohttp/client.py:1425: in __aenter__ self._resp: _RetType = await self._coro /usr/lib64/python3.13/site-packages/aiohttp/client.py:703: in _request conn = await self._connector.connect( /usr/lib64/python3.13/site-packages/aiohttp/connector.py:548: in connect proto = await self._create_connection(req, traces, timeout) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1056: in _create_connection _, proto = await self._create_direct_connection(req, traces, timeout) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. hosts = await self._resolve_host(host, port, traces=traces) except OSError as exc: if exc.errno is None and isinstance(exc, asyncio.TimeoutError): raise # in case of proxy it is not ClientProxyConnectionError # it is problem of resolving proxy ip itself > raise ClientConnectorDNSError(req.connection_key, exc) from exc E aiohttp.client_exceptions.ClientConnectorDNSError: Cannot connect to host a2f834a2b06c4fa6b7764975792da9f2:41889 ssl:default [Temporary failure in name resolution] /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1357: ClientConnectorDNSError _______________________________ test_mcat_cache ________________________________ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. > hosts = await self._resolve_host(host, port, traces=traces) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1351: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.13/site-packages/aiohttp/connector.py:995: in _resolve_host return await asyncio.shield(resolved_host_task) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1351: in _create_direct_connection hosts = await self._resolve_host(host, port, traces=traces) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:970: in _resolve_host await future /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1026: in _resolve_host_with_throttle addrs = await self._resolver.resolve(host, port, family=self._family) /usr/lib64/python3.13/site-packages/aiohttp/resolver.py:36: in resolve infos = await self._loop.getaddrinfo( /usr/lib64/python3.13/asyncio/base_events.py:939: in getaddrinfo return await self.run_in_executor( /usr/lib64/python3.13/concurrent/futures/thread.py:59: in run result = self.fn(*self.args, **self.kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ host = 'a2f834a2b06c4fa6b7764975792da9f2', port = 41889 family = , type = proto = 0, flags = def getaddrinfo(host, port, family=0, type=0, proto=0, flags=0): """Resolve host and port into list of address info entries. Translate the host/port argument into a sequence of 5-tuples that contain all the necessary arguments for creating a socket connected to that service. host is a domain name, a string representation of an IPv4/v6 address or None. port is a string service name such as 'http', a numeric port number or None. By passing None as the value of host and port, you can pass NULL to the underlying C API. The family, type and proto arguments can be optionally specified in order to narrow the list of addresses returned. Passing zero as a value for each of these arguments selects the full range of results. """ # We override this function since we want to translate the numeric family # and socket type values to enum constants. addrlist = [] > for res in _socket.getaddrinfo(host, port, family, type, proto, flags): E socket.gaierror: [Errno -3] Temporary failure in name resolution /usr/lib64/python3.13/socket.py:977: gaierror The above exception was the direct cause of the following exception: server = namespace(address='http://a2f834a2b06c4fa6b7764975792da9f2:41889', realfile='http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile') def test_mcat_cache(server): urla = server.realfile urlb = server.address + "/index/otherfile" fs = fsspec.filesystem("simplecache", target_protocol="http") > assert fs.cat([urla, urlb]) == {urla: data, urlb: data} /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/tests/test_http.py:371: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/cached.py:446: in return lambda *args, **kw: getattr(type(self), item).__get__(self)( /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/cached.py:639: in cat self.fs.get(getpaths, storepaths) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:118: in wrapper return sync(self.loop, func, *args, **kwargs) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:103: in sync raise return_result /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:56: in _runner result[0] = await coro /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:669: in _get return await _run_coros_in_chunks( /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:268: in _run_coros_in_chunks result, k = await done.pop() /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:245: in _run_coro return await asyncio.wait_for(coro, timeout=timeout), i /usr/lib64/python3.13/asyncio/tasks.py:507: in wait_for return await fut /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/callbacks.py:81: in func return await fn(path1, path2, callback=child, **kwargs) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:246: in _get_file async with session.get(self.encode_url(rpath), **kw) as r: /usr/lib64/python3.13/site-packages/aiohttp/client.py:1425: in __aenter__ self._resp: _RetType = await self._coro /usr/lib64/python3.13/site-packages/aiohttp/client.py:703: in _request conn = await self._connector.connect( /usr/lib64/python3.13/site-packages/aiohttp/connector.py:548: in connect proto = await self._create_connection(req, traces, timeout) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1056: in _create_connection _, proto = await self._create_direct_connection(req, traces, timeout) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. hosts = await self._resolve_host(host, port, traces=traces) except OSError as exc: if exc.errno is None and isinstance(exc, asyncio.TimeoutError): raise # in case of proxy it is not ClientProxyConnectionError # it is problem of resolving proxy ip itself > raise ClientConnectorDNSError(req.connection_key, exc) from exc E aiohttp.client_exceptions.ClientConnectorDNSError: Cannot connect to host a2f834a2b06c4fa6b7764975792da9f2:41889 ssl:default [Temporary failure in name resolution] /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1357: ClientConnectorDNSError _______________________________ test_mcat_expand _______________________________ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. > hosts = await self._resolve_host(host, port, traces=traces) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1351: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.13/site-packages/aiohttp/connector.py:995: in _resolve_host return await asyncio.shield(resolved_host_task) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1026: in _resolve_host_with_throttle addrs = await self._resolver.resolve(host, port, family=self._family) /usr/lib64/python3.13/site-packages/aiohttp/resolver.py:36: in resolve infos = await self._loop.getaddrinfo( /usr/lib64/python3.13/asyncio/base_events.py:939: in getaddrinfo return await self.run_in_executor( /usr/lib64/python3.13/concurrent/futures/thread.py:59: in run result = self.fn(*self.args, **self.kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ host = 'a2f834a2b06c4fa6b7764975792da9f2', port = 41889 family = , type = proto = 0, flags = def getaddrinfo(host, port, family=0, type=0, proto=0, flags=0): """Resolve host and port into list of address info entries. Translate the host/port argument into a sequence of 5-tuples that contain all the necessary arguments for creating a socket connected to that service. host is a domain name, a string representation of an IPv4/v6 address or None. port is a string service name such as 'http', a numeric port number or None. By passing None as the value of host and port, you can pass NULL to the underlying C API. The family, type and proto arguments can be optionally specified in order to narrow the list of addresses returned. Passing zero as a value for each of these arguments selects the full range of results. """ # We override this function since we want to translate the numeric family # and socket type values to enum constants. addrlist = [] > for res in _socket.getaddrinfo(host, port, family, type, proto, flags): E socket.gaierror: [Errno -3] Temporary failure in name resolution /usr/lib64/python3.13/socket.py:977: gaierror The above exception was the direct cause of the following exception: server = namespace(address='http://a2f834a2b06c4fa6b7764975792da9f2:41889', realfile='http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile') def test_mcat_expand(server): h = fsspec.filesystem("http", headers={"give_length": "true", "head_ok": "true "}) > out = h.cat(server.address + "/index/*") /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/tests/test_http.py:376: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:118: in wrapper return sync(self.loop, func, *args, **kwargs) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:103: in sync raise return_result /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:56: in _runner result[0] = await coro /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:456: in _cat paths = await self._expand_path(path, recursive=recursive) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:871: in _expand_path out = await self._expand_path([path], recursive, maxdepth) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:877: in _expand_path bit = set(await self._glob(p, maxdepth=maxdepth)) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:494: in _glob allpaths = await self._find( /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:848: in _find if withdirs and path != "" and await self._isdir(path): /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:521: in _isdir return bool(await self._ls(path)) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:207: in _ls out = await self._ls_real(url, detail=detail, **kwargs) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:159: in _ls_real async with session.get(self.encode_url(url), **self.kwargs) as r: /usr/lib64/python3.13/site-packages/aiohttp/client.py:1425: in __aenter__ self._resp: _RetType = await self._coro /usr/lib64/python3.13/site-packages/aiohttp/client.py:703: in _request conn = await self._connector.connect( /usr/lib64/python3.13/site-packages/aiohttp/connector.py:548: in connect proto = await self._create_connection(req, traces, timeout) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1056: in _create_connection _, proto = await self._create_direct_connection(req, traces, timeout) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. hosts = await self._resolve_host(host, port, traces=traces) except OSError as exc: if exc.errno is None and isinstance(exc, asyncio.TimeoutError): raise # in case of proxy it is not ClientProxyConnectionError # it is problem of resolving proxy ip itself > raise ClientConnectorDNSError(req.connection_key, exc) from exc E aiohttp.client_exceptions.ClientConnectorDNSError: Cannot connect to host a2f834a2b06c4fa6b7764975792da9f2:41889 ssl:default [Temporary failure in name resolution] /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1357: ClientConnectorDNSError __________________________________ test_info ___________________________________ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. > hosts = await self._resolve_host(host, port, traces=traces) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1351: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.13/site-packages/aiohttp/connector.py:995: in _resolve_host return await asyncio.shield(resolved_host_task) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1026: in _resolve_host_with_throttle addrs = await self._resolver.resolve(host, port, family=self._family) /usr/lib64/python3.13/site-packages/aiohttp/resolver.py:36: in resolve infos = await self._loop.getaddrinfo( /usr/lib64/python3.13/asyncio/base_events.py:939: in getaddrinfo return await self.run_in_executor( /usr/lib64/python3.13/concurrent/futures/thread.py:59: in run result = self.fn(*self.args, **self.kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ host = 'a2f834a2b06c4fa6b7764975792da9f2', port = 41889 family = , type = proto = 0, flags = def getaddrinfo(host, port, family=0, type=0, proto=0, flags=0): """Resolve host and port into list of address info entries. Translate the host/port argument into a sequence of 5-tuples that contain all the necessary arguments for creating a socket connected to that service. host is a domain name, a string representation of an IPv4/v6 address or None. port is a string service name such as 'http', a numeric port number or None. By passing None as the value of host and port, you can pass NULL to the underlying C API. The family, type and proto arguments can be optionally specified in order to narrow the list of addresses returned. Passing zero as a value for each of these arguments selects the full range of results. """ # We override this function since we want to translate the numeric family # and socket type values to enum constants. addrlist = [] > for res in _socket.getaddrinfo(host, port, family, type, proto, flags): E socket.gaierror: [Errno -3] Temporary failure in name resolution /usr/lib64/python3.13/socket.py:977: gaierror The above exception was the direct cause of the following exception: self = url = 'http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile' kwargs = {}, info = {} session = policy = 'get' async def _info(self, url, **kwargs): """Get info of URL Tries to access location via HEAD, and then GET methods, but does not fetch the data. It is possible that the server does not supply any size information, in which case size will be given as None (and certain operations on the corresponding file will not work). """ info = {} session = await self.set_session() for policy in ["head", "get"]: try: info.update( > await _file_info( self.encode_url(url), size_policy=policy, session=session, **self.kwargs, **kwargs, ) ) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:427: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:815: in _file_info r = await session.get(url, allow_redirects=ar, **kwargs) /usr/lib64/python3.13/site-packages/aiohttp/client.py:703: in _request conn = await self._connector.connect( /usr/lib64/python3.13/site-packages/aiohttp/connector.py:548: in connect proto = await self._create_connection(req, traces, timeout) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1056: in _create_connection _, proto = await self._create_direct_connection(req, traces, timeout) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. hosts = await self._resolve_host(host, port, traces=traces) except OSError as exc: if exc.errno is None and isinstance(exc, asyncio.TimeoutError): raise # in case of proxy it is not ClientProxyConnectionError # it is problem of resolving proxy ip itself > raise ClientConnectorDNSError(req.connection_key, exc) from exc E aiohttp.client_exceptions.ClientConnectorDNSError: Cannot connect to host a2f834a2b06c4fa6b7764975792da9f2:41889 ssl:default [Temporary failure in name resolution] /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1357: ClientConnectorDNSError The above exception was the direct cause of the following exception: server = namespace(address='http://a2f834a2b06c4fa6b7764975792da9f2:41889', realfile='http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile') def test_info(server): fs = fsspec.filesystem("http", headers={"give_etag": "true", "head_ok": "true"}) > info = fs.info(server.realfile) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/tests/test_http.py:382: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:118: in wrapper return sync(self.loop, func, *args, **kwargs) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:103: in sync raise return_result /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:56: in _runner result[0] = await coro _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = url = 'http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile' kwargs = {}, info = {} session = policy = 'get' async def _info(self, url, **kwargs): """Get info of URL Tries to access location via HEAD, and then GET methods, but does not fetch the data. It is possible that the server does not supply any size information, in which case size will be given as None (and certain operations on the corresponding file will not work). """ info = {} session = await self.set_session() for policy in ["head", "get"]: try: info.update( await _file_info( self.encode_url(url), size_policy=policy, session=session, **self.kwargs, **kwargs, ) ) if info.get("size") is not None: break except Exception as exc: if policy == "get": # If get failed, then raise a FileNotFoundError > raise FileNotFoundError(url) from exc E FileNotFoundError: http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:440: FileNotFoundError _____________________________ test_put_file[POST] ______________________________ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. > hosts = await self._resolve_host(host, port, traces=traces) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1351: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.13/site-packages/aiohttp/connector.py:995: in _resolve_host return await asyncio.shield(resolved_host_task) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1026: in _resolve_host_with_throttle addrs = await self._resolver.resolve(host, port, family=self._family) /usr/lib64/python3.13/site-packages/aiohttp/resolver.py:36: in resolve infos = await self._loop.getaddrinfo( /usr/lib64/python3.13/asyncio/base_events.py:939: in getaddrinfo return await self.run_in_executor( /usr/lib64/python3.13/concurrent/futures/thread.py:59: in run result = self.fn(*self.args, **self.kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ host = 'a2f834a2b06c4fa6b7764975792da9f2', port = 41889 family = , type = proto = 0, flags = def getaddrinfo(host, port, family=0, type=0, proto=0, flags=0): """Resolve host and port into list of address info entries. Translate the host/port argument into a sequence of 5-tuples that contain all the necessary arguments for creating a socket connected to that service. host is a domain name, a string representation of an IPv4/v6 address or None. port is a string service name such as 'http', a numeric port number or None. By passing None as the value of host and port, you can pass NULL to the underlying C API. The family, type and proto arguments can be optionally specified in order to narrow the list of addresses returned. Passing zero as a value for each of these arguments selects the full range of results. """ # We override this function since we want to translate the numeric family # and socket type values to enum constants. addrlist = [] > for res in _socket.getaddrinfo(host, port, family, type, proto, flags): E socket.gaierror: [Errno -3] Temporary failure in name resolution /usr/lib64/python3.13/socket.py:977: gaierror The above exception was the direct cause of the following exception: server = namespace(address='http://a2f834a2b06c4fa6b7764975792da9f2:41889', realfile='http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile') tmp_path = PosixPath('/tmp/pytest-of-mockbuild/pytest-0/test_put_file_POST_0') method = 'POST', reset_files = None @pytest.mark.parametrize("method", ["POST", "PUT"]) def test_put_file(server, tmp_path, method, reset_files): src_file = tmp_path / "file_1" src_file.write_bytes(data) dwl_file = tmp_path / "down_1" fs = fsspec.filesystem("http", headers={"head_ok": "true", "give_length": "true"}) with pytest.raises(FileNotFoundError): fs.info(server.address + "/hey") > fs.put_file(src_file, server.address + "/hey", method=method) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/tests/test_http.py:405: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:118: in wrapper return sync(self.loop, func, *args, **kwargs) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:103: in sync raise return_result /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:56: in _runner result[0] = await coro /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:316: in _put_file async with meth(self.encode_url(rpath), data=gen_chunks(), **kw) as resp: /usr/lib64/python3.13/site-packages/aiohttp/client.py:1425: in __aenter__ self._resp: _RetType = await self._coro /usr/lib64/python3.13/site-packages/aiohttp/client.py:703: in _request conn = await self._connector.connect( /usr/lib64/python3.13/site-packages/aiohttp/connector.py:548: in connect proto = await self._create_connection(req, traces, timeout) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1056: in _create_connection _, proto = await self._create_direct_connection(req, traces, timeout) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. hosts = await self._resolve_host(host, port, traces=traces) except OSError as exc: if exc.errno is None and isinstance(exc, asyncio.TimeoutError): raise # in case of proxy it is not ClientProxyConnectionError # it is problem of resolving proxy ip itself > raise ClientConnectorDNSError(req.connection_key, exc) from exc E aiohttp.client_exceptions.ClientConnectorDNSError: Cannot connect to host a2f834a2b06c4fa6b7764975792da9f2:41889 ssl:default [Temporary failure in name resolution] /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1357: ClientConnectorDNSError ______________________________ test_put_file[PUT] ______________________________ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. > hosts = await self._resolve_host(host, port, traces=traces) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1351: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.13/site-packages/aiohttp/connector.py:995: in _resolve_host return await asyncio.shield(resolved_host_task) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1026: in _resolve_host_with_throttle addrs = await self._resolver.resolve(host, port, family=self._family) /usr/lib64/python3.13/site-packages/aiohttp/resolver.py:36: in resolve infos = await self._loop.getaddrinfo( /usr/lib64/python3.13/asyncio/base_events.py:939: in getaddrinfo return await self.run_in_executor( /usr/lib64/python3.13/concurrent/futures/thread.py:59: in run result = self.fn(*self.args, **self.kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ host = 'a2f834a2b06c4fa6b7764975792da9f2', port = 41889 family = , type = proto = 0, flags = def getaddrinfo(host, port, family=0, type=0, proto=0, flags=0): """Resolve host and port into list of address info entries. Translate the host/port argument into a sequence of 5-tuples that contain all the necessary arguments for creating a socket connected to that service. host is a domain name, a string representation of an IPv4/v6 address or None. port is a string service name such as 'http', a numeric port number or None. By passing None as the value of host and port, you can pass NULL to the underlying C API. The family, type and proto arguments can be optionally specified in order to narrow the list of addresses returned. Passing zero as a value for each of these arguments selects the full range of results. """ # We override this function since we want to translate the numeric family # and socket type values to enum constants. addrlist = [] > for res in _socket.getaddrinfo(host, port, family, type, proto, flags): E socket.gaierror: [Errno -3] Temporary failure in name resolution /usr/lib64/python3.13/socket.py:977: gaierror The above exception was the direct cause of the following exception: server = namespace(address='http://a2f834a2b06c4fa6b7764975792da9f2:41889', realfile='http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile') tmp_path = PosixPath('/tmp/pytest-of-mockbuild/pytest-0/test_put_file_PUT_0') method = 'PUT', reset_files = None @pytest.mark.parametrize("method", ["POST", "PUT"]) def test_put_file(server, tmp_path, method, reset_files): src_file = tmp_path / "file_1" src_file.write_bytes(data) dwl_file = tmp_path / "down_1" fs = fsspec.filesystem("http", headers={"head_ok": "true", "give_length": "true"}) with pytest.raises(FileNotFoundError): fs.info(server.address + "/hey") > fs.put_file(src_file, server.address + "/hey", method=method) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/tests/test_http.py:405: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:118: in wrapper return sync(self.loop, func, *args, **kwargs) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:103: in sync raise return_result /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:56: in _runner result[0] = await coro /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:316: in _put_file async with meth(self.encode_url(rpath), data=gen_chunks(), **kw) as resp: /usr/lib64/python3.13/site-packages/aiohttp/client.py:1425: in __aenter__ self._resp: _RetType = await self._coro /usr/lib64/python3.13/site-packages/aiohttp/client.py:703: in _request conn = await self._connector.connect( /usr/lib64/python3.13/site-packages/aiohttp/connector.py:548: in connect proto = await self._create_connection(req, traces, timeout) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1056: in _create_connection _, proto = await self._create_direct_connection(req, traces, timeout) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. hosts = await self._resolve_host(host, port, traces=traces) except OSError as exc: if exc.errno is None and isinstance(exc, asyncio.TimeoutError): raise # in case of proxy it is not ClientProxyConnectionError # it is problem of resolving proxy ip itself > raise ClientConnectorDNSError(req.connection_key, exc) from exc E aiohttp.client_exceptions.ClientConnectorDNSError: Cannot connect to host a2f834a2b06c4fa6b7764975792da9f2:41889 ssl:default [Temporary failure in name resolution] /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1357: ClientConnectorDNSError ___________________________ test_async_other_thread ____________________________ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. > hosts = await self._resolve_host(host, port, traces=traces) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1351: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.13/site-packages/aiohttp/connector.py:995: in _resolve_host return await asyncio.shield(resolved_host_task) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1026: in _resolve_host_with_throttle addrs = await self._resolver.resolve(host, port, family=self._family) /usr/lib64/python3.13/site-packages/aiohttp/resolver.py:36: in resolve infos = await self._loop.getaddrinfo( /usr/lib64/python3.13/asyncio/base_events.py:939: in getaddrinfo return await self.run_in_executor( /usr/lib64/python3.13/concurrent/futures/thread.py:59: in run result = self.fn(*self.args, **self.kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ host = 'a2f834a2b06c4fa6b7764975792da9f2', port = 41889 family = , type = proto = 0, flags = def getaddrinfo(host, port, family=0, type=0, proto=0, flags=0): """Resolve host and port into list of address info entries. Translate the host/port argument into a sequence of 5-tuples that contain all the necessary arguments for creating a socket connected to that service. host is a domain name, a string representation of an IPv4/v6 address or None. port is a string service name such as 'http', a numeric port number or None. By passing None as the value of host and port, you can pass NULL to the underlying C API. The family, type and proto arguments can be optionally specified in order to narrow the list of addresses returned. Passing zero as a value for each of these arguments selects the full range of results. """ # We override this function since we want to translate the numeric family # and socket type values to enum constants. addrlist = [] > for res in _socket.getaddrinfo(host, port, family, type, proto, flags): E socket.gaierror: [Errno -3] Temporary failure in name resolution /usr/lib64/python3.13/socket.py:977: gaierror The above exception was the direct cause of the following exception: server = namespace(address='http://a2f834a2b06c4fa6b7764975792da9f2:41889', realfile='http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile') def test_async_other_thread(server): import threading loop = asyncio.get_event_loop() th = threading.Thread(target=loop.run_forever) th.daemon = True th.start() fs = fsspec.filesystem("http", asynchronous=True, loop=loop) asyncio.run_coroutine_threadsafe(fs.set_session(), loop=loop).result() url = server.realfile cor = fs._cat([url]) fut = asyncio.run_coroutine_threadsafe(cor, loop=loop) > assert fut.result() == {url: data} /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/tests/test_http.py:456: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.13/concurrent/futures/_base.py:456: in result return self.__get_result() /usr/lib64/python3.13/concurrent/futures/_base.py:401: in __get_result raise self._exception /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:465: in _cat raise ex /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:245: in _run_coro return await asyncio.wait_for(coro, timeout=timeout), i /usr/lib64/python3.13/asyncio/tasks.py:507: in wait_for return await fut /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:234: in _cat_file async with session.get(self.encode_url(url), **kw) as r: /usr/lib64/python3.13/site-packages/aiohttp/client.py:1425: in __aenter__ self._resp: _RetType = await self._coro /usr/lib64/python3.13/site-packages/aiohttp/client.py:703: in _request conn = await self._connector.connect( /usr/lib64/python3.13/site-packages/aiohttp/connector.py:548: in connect proto = await self._create_connection(req, traces, timeout) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1056: in _create_connection _, proto = await self._create_direct_connection(req, traces, timeout) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. hosts = await self._resolve_host(host, port, traces=traces) except OSError as exc: if exc.errno is None and isinstance(exc, asyncio.TimeoutError): raise # in case of proxy it is not ClientProxyConnectionError # it is problem of resolving proxy ip itself > raise ClientConnectorDNSError(req.connection_key, exc) from exc E aiohttp.client_exceptions.ClientConnectorDNSError: Cannot connect to host a2f834a2b06c4fa6b7764975792da9f2:41889 ssl:default [Temporary failure in name resolution] /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1357: ClientConnectorDNSError ____________________________ test_async_this_thread ____________________________ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. > hosts = await self._resolve_host(host, port, traces=traces) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1351: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.13/site-packages/aiohttp/connector.py:995: in _resolve_host return await asyncio.shield(resolved_host_task) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1026: in _resolve_host_with_throttle addrs = await self._resolver.resolve(host, port, family=self._family) /usr/lib64/python3.13/site-packages/aiohttp/resolver.py:36: in resolve infos = await self._loop.getaddrinfo( /usr/lib64/python3.13/asyncio/base_events.py:939: in getaddrinfo return await self.run_in_executor( /usr/lib64/python3.13/concurrent/futures/thread.py:59: in run result = self.fn(*self.args, **self.kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ host = 'a2f834a2b06c4fa6b7764975792da9f2', port = 41889 family = , type = proto = 0, flags = def getaddrinfo(host, port, family=0, type=0, proto=0, flags=0): """Resolve host and port into list of address info entries. Translate the host/port argument into a sequence of 5-tuples that contain all the necessary arguments for creating a socket connected to that service. host is a domain name, a string representation of an IPv4/v6 address or None. port is a string service name such as 'http', a numeric port number or None. By passing None as the value of host and port, you can pass NULL to the underlying C API. The family, type and proto arguments can be optionally specified in order to narrow the list of addresses returned. Passing zero as a value for each of these arguments selects the full range of results. """ # We override this function since we want to translate the numeric family # and socket type values to enum constants. addrlist = [] > for res in _socket.getaddrinfo(host, port, family, type, proto, flags): E socket.gaierror: [Errno -3] Temporary failure in name resolution /usr/lib64/python3.13/socket.py:977: gaierror The above exception was the direct cause of the following exception: server = namespace(address='http://a2f834a2b06c4fa6b7764975792da9f2:41889', realfile='http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile') def test_async_this_thread(server): async def _(): fs = fsspec.filesystem("http", asynchronous=True) session = await fs.set_session() # creates client url = server.realfile with pytest.raises((NotImplementedError, RuntimeError)): fs.cat([url]) out = await fs._cat([url]) del fs assert out == {url: data} await session.close() > asyncio.run(_()) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/tests/test_http.py:474: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.13/asyncio/runners.py:195: in run return runner.run(main) /usr/lib64/python3.13/asyncio/runners.py:118: in run return self._loop.run_until_complete(task) /usr/lib64/python3.13/asyncio/base_events.py:725: in run_until_complete return future.result() /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/tests/test_http.py:469: in _ out = await fs._cat([url]) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:465: in _cat raise ex /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:245: in _run_coro return await asyncio.wait_for(coro, timeout=timeout), i /usr/lib64/python3.13/asyncio/tasks.py:507: in wait_for return await fut /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:234: in _cat_file async with session.get(self.encode_url(url), **kw) as r: /usr/lib64/python3.13/site-packages/aiohttp/client.py:1425: in __aenter__ self._resp: _RetType = await self._coro /usr/lib64/python3.13/site-packages/aiohttp/client.py:703: in _request conn = await self._connector.connect( /usr/lib64/python3.13/site-packages/aiohttp/connector.py:548: in connect proto = await self._create_connection(req, traces, timeout) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1056: in _create_connection _, proto = await self._create_direct_connection(req, traces, timeout) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. hosts = await self._resolve_host(host, port, traces=traces) except OSError as exc: if exc.errno is None and isinstance(exc, asyncio.TimeoutError): raise # in case of proxy it is not ClientProxyConnectionError # it is problem of resolving proxy ip itself > raise ClientConnectorDNSError(req.connection_key, exc) from exc E aiohttp.client_exceptions.ClientConnectorDNSError: Cannot connect to host a2f834a2b06c4fa6b7764975792da9f2:41889 ssl:default [Temporary failure in name resolution] /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1357: ClientConnectorDNSError ____________________________ test_processes[spawn] _____________________________ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. > hosts = await self._resolve_host(host, port, traces=traces) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1351: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.13/site-packages/aiohttp/connector.py:995: in _resolve_host return await asyncio.shield(resolved_host_task) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1026: in _resolve_host_with_throttle addrs = await self._resolver.resolve(host, port, family=self._family) /usr/lib64/python3.13/site-packages/aiohttp/resolver.py:36: in resolve infos = await self._loop.getaddrinfo( /usr/lib64/python3.13/asyncio/base_events.py:939: in getaddrinfo return await self.run_in_executor( /usr/lib64/python3.13/concurrent/futures/thread.py:59: in run result = self.fn(*self.args, **self.kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ host = 'a2f834a2b06c4fa6b7764975792da9f2', port = 41889 family = , type = proto = 0, flags = def getaddrinfo(host, port, family=0, type=0, proto=0, flags=0): """Resolve host and port into list of address info entries. Translate the host/port argument into a sequence of 5-tuples that contain all the necessary arguments for creating a socket connected to that service. host is a domain name, a string representation of an IPv4/v6 address or None. port is a string service name such as 'http', a numeric port number or None. By passing None as the value of host and port, you can pass NULL to the underlying C API. The family, type and proto arguments can be optionally specified in order to narrow the list of addresses returned. Passing zero as a value for each of these arguments selects the full range of results. """ # We override this function since we want to translate the numeric family # and socket type values to enum constants. addrlist = [] > for res in _socket.getaddrinfo(host, port, family, type, proto, flags): E socket.gaierror: [Errno -3] Temporary failure in name resolution /usr/lib64/python3.13/socket.py:977: gaierror The above exception was the direct cause of the following exception: server = namespace(address='http://a2f834a2b06c4fa6b7764975792da9f2:41889', realfile='http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile') method = 'spawn' @pytest.mark.parametrize("method", ["spawn", "forkserver"]) def test_processes(server, method): import multiprocessing as mp if win and method != "spawn": pytest.skip("Windows can only spawn") ctx = mp.get_context(method) fn = server.realfile fs = fsspec.filesystem("http") q = ctx.Queue() p = ctx.Process(target=_inner_pass, args=(fs, q, fn)) p.start() out = q.get() > assert out == fs.cat(fn) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/tests/test_http.py:503: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:118: in wrapper return sync(self.loop, func, *args, **kwargs) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:103: in sync raise return_result /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:56: in _runner result[0] = await coro /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:465: in _cat raise ex /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:245: in _run_coro return await asyncio.wait_for(coro, timeout=timeout), i /usr/lib64/python3.13/asyncio/tasks.py:507: in wait_for return await fut /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:234: in _cat_file async with session.get(self.encode_url(url), **kw) as r: /usr/lib64/python3.13/site-packages/aiohttp/client.py:1425: in __aenter__ self._resp: _RetType = await self._coro /usr/lib64/python3.13/site-packages/aiohttp/client.py:703: in _request conn = await self._connector.connect( /usr/lib64/python3.13/site-packages/aiohttp/connector.py:548: in connect proto = await self._create_connection(req, traces, timeout) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1056: in _create_connection _, proto = await self._create_direct_connection(req, traces, timeout) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. hosts = await self._resolve_host(host, port, traces=traces) except OSError as exc: if exc.errno is None and isinstance(exc, asyncio.TimeoutError): raise # in case of proxy it is not ClientProxyConnectionError # it is problem of resolving proxy ip itself > raise ClientConnectorDNSError(req.connection_key, exc) from exc E aiohttp.client_exceptions.ClientConnectorDNSError: Cannot connect to host a2f834a2b06c4fa6b7764975792da9f2:41889 ssl:default [Temporary failure in name resolution] /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1357: ClientConnectorDNSError __________________________ test_processes[forkserver] __________________________ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. > hosts = await self._resolve_host(host, port, traces=traces) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1351: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.13/site-packages/aiohttp/connector.py:995: in _resolve_host return await asyncio.shield(resolved_host_task) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1026: in _resolve_host_with_throttle addrs = await self._resolver.resolve(host, port, family=self._family) /usr/lib64/python3.13/site-packages/aiohttp/resolver.py:36: in resolve infos = await self._loop.getaddrinfo( /usr/lib64/python3.13/asyncio/base_events.py:939: in getaddrinfo return await self.run_in_executor( /usr/lib64/python3.13/concurrent/futures/thread.py:59: in run result = self.fn(*self.args, **self.kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ host = 'a2f834a2b06c4fa6b7764975792da9f2', port = 41889 family = , type = proto = 0, flags = def getaddrinfo(host, port, family=0, type=0, proto=0, flags=0): """Resolve host and port into list of address info entries. Translate the host/port argument into a sequence of 5-tuples that contain all the necessary arguments for creating a socket connected to that service. host is a domain name, a string representation of an IPv4/v6 address or None. port is a string service name such as 'http', a numeric port number or None. By passing None as the value of host and port, you can pass NULL to the underlying C API. The family, type and proto arguments can be optionally specified in order to narrow the list of addresses returned. Passing zero as a value for each of these arguments selects the full range of results. """ # We override this function since we want to translate the numeric family # and socket type values to enum constants. addrlist = [] > for res in _socket.getaddrinfo(host, port, family, type, proto, flags): E socket.gaierror: [Errno -3] Temporary failure in name resolution /usr/lib64/python3.13/socket.py:977: gaierror The above exception was the direct cause of the following exception: server = namespace(address='http://a2f834a2b06c4fa6b7764975792da9f2:41889', realfile='http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile') method = 'forkserver' @pytest.mark.parametrize("method", ["spawn", "forkserver"]) def test_processes(server, method): import multiprocessing as mp if win and method != "spawn": pytest.skip("Windows can only spawn") ctx = mp.get_context(method) fn = server.realfile fs = fsspec.filesystem("http") q = ctx.Queue() p = ctx.Process(target=_inner_pass, args=(fs, q, fn)) p.start() out = q.get() > assert out == fs.cat(fn) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/tests/test_http.py:503: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:118: in wrapper return sync(self.loop, func, *args, **kwargs) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:103: in sync raise return_result /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:56: in _runner result[0] = await coro /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:465: in _cat raise ex /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:245: in _run_coro return await asyncio.wait_for(coro, timeout=timeout), i /usr/lib64/python3.13/asyncio/tasks.py:507: in wait_for return await fut /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:234: in _cat_file async with session.get(self.encode_url(url), **kw) as r: /usr/lib64/python3.13/site-packages/aiohttp/client.py:1425: in __aenter__ self._resp: _RetType = await self._coro /usr/lib64/python3.13/site-packages/aiohttp/client.py:703: in _request conn = await self._connector.connect( /usr/lib64/python3.13/site-packages/aiohttp/connector.py:548: in connect proto = await self._create_connection(req, traces, timeout) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1056: in _create_connection _, proto = await self._create_direct_connection(req, traces, timeout) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. hosts = await self._resolve_host(host, port, traces=traces) except OSError as exc: if exc.errno is None and isinstance(exc, asyncio.TimeoutError): raise # in case of proxy it is not ClientProxyConnectionError # it is problem of resolving proxy ip itself > raise ClientConnectorDNSError(req.connection_key, exc) from exc E aiohttp.client_exceptions.ClientConnectorDNSError: Cannot connect to host a2f834a2b06c4fa6b7764975792da9f2:41889 ssl:default [Temporary failure in name resolution] /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1357: ClientConnectorDNSError _______________________________ test_async_file ________________________________ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. > hosts = await self._resolve_host(host, port, traces=traces) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1351: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.13/site-packages/aiohttp/connector.py:995: in _resolve_host return await asyncio.shield(resolved_host_task) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1026: in _resolve_host_with_throttle addrs = await self._resolver.resolve(host, port, family=self._family) /usr/lib64/python3.13/site-packages/aiohttp/resolver.py:36: in resolve infos = await self._loop.getaddrinfo( /usr/lib64/python3.13/asyncio/base_events.py:939: in getaddrinfo return await self.run_in_executor( /usr/lib64/python3.13/concurrent/futures/thread.py:59: in run result = self.fn(*self.args, **self.kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ host = 'a2f834a2b06c4fa6b7764975792da9f2', port = 41889 family = , type = proto = 0, flags = def getaddrinfo(host, port, family=0, type=0, proto=0, flags=0): """Resolve host and port into list of address info entries. Translate the host/port argument into a sequence of 5-tuples that contain all the necessary arguments for creating a socket connected to that service. host is a domain name, a string representation of an IPv4/v6 address or None. port is a string service name such as 'http', a numeric port number or None. By passing None as the value of host and port, you can pass NULL to the underlying C API. The family, type and proto arguments can be optionally specified in order to narrow the list of addresses returned. Passing zero as a value for each of these arguments selects the full range of results. """ # We override this function since we want to translate the numeric family # and socket type values to enum constants. addrlist = [] > for res in _socket.getaddrinfo(host, port, family, type, proto, flags): E socket.gaierror: [Errno -3] Temporary failure in name resolution /usr/lib64/python3.13/socket.py:977: gaierror The above exception was the direct cause of the following exception: server = namespace(address='http://a2f834a2b06c4fa6b7764975792da9f2:41889', realfile='http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile') @pytest.mark.asyncio async def test_async_file(server): fs = fsspec.filesystem("http", asynchronous=True, skip_instance_cache=True) fn = server.realfile of = await fs.open_async(fn) async with of as f: > out1 = await f.read(10) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/tests/test_http.py:519: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:765: in read r = await self.session.get( /usr/lib64/python3.13/site-packages/aiohttp/client.py:1425: in __aenter__ self._resp: _RetType = await self._coro /usr/lib64/python3.13/site-packages/aiohttp/client.py:703: in _request conn = await self._connector.connect( /usr/lib64/python3.13/site-packages/aiohttp/connector.py:548: in connect proto = await self._create_connection(req, traces, timeout) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1056: in _create_connection _, proto = await self._create_direct_connection(req, traces, timeout) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. hosts = await self._resolve_host(host, port, traces=traces) except OSError as exc: if exc.errno is None and isinstance(exc, asyncio.TimeoutError): raise # in case of proxy it is not ClientProxyConnectionError # it is problem of resolving proxy ip itself > raise ClientConnectorDNSError(req.connection_key, exc) from exc E aiohttp.client_exceptions.ClientConnectorDNSError: Cannot connect to host a2f834a2b06c4fa6b7764975792da9f2:41889 ssl:default [Temporary failure in name resolution] /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1357: ClientConnectorDNSError _________________________________ test_encoded _________________________________ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. > hosts = await self._resolve_host(host, port, traces=traces) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1351: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.13/site-packages/aiohttp/connector.py:995: in _resolve_host return await asyncio.shield(resolved_host_task) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1026: in _resolve_host_with_throttle addrs = await self._resolver.resolve(host, port, family=self._family) /usr/lib64/python3.13/site-packages/aiohttp/resolver.py:36: in resolve infos = await self._loop.getaddrinfo( /usr/lib64/python3.13/asyncio/base_events.py:939: in getaddrinfo return await self.run_in_executor( /usr/lib64/python3.13/concurrent/futures/thread.py:59: in run result = self.fn(*self.args, **self.kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ host = 'a2f834a2b06c4fa6b7764975792da9f2', port = 41889 family = , type = proto = 0, flags = def getaddrinfo(host, port, family=0, type=0, proto=0, flags=0): """Resolve host and port into list of address info entries. Translate the host/port argument into a sequence of 5-tuples that contain all the necessary arguments for creating a socket connected to that service. host is a domain name, a string representation of an IPv4/v6 address or None. port is a string service name such as 'http', a numeric port number or None. By passing None as the value of host and port, you can pass NULL to the underlying C API. The family, type and proto arguments can be optionally specified in order to narrow the list of addresses returned. Passing zero as a value for each of these arguments selects the full range of results. """ # We override this function since we want to translate the numeric family # and socket type values to enum constants. addrlist = [] > for res in _socket.getaddrinfo(host, port, family, type, proto, flags): E socket.gaierror: [Errno -3] Temporary failure in name resolution /usr/lib64/python3.13/socket.py:977: gaierror The above exception was the direct cause of the following exception: server = namespace(address='http://a2f834a2b06c4fa6b7764975792da9f2:41889', realfile='http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile') def test_encoded(server): fs = fsspec.filesystem("http", encoded=True) > out = fs.cat( server.address + "/Hello%3A%20G%C3%BCnter", headers={"give_path": "true"} ) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/tests/test_http.py:528: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:118: in wrapper return sync(self.loop, func, *args, **kwargs) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:103: in sync raise return_result /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:56: in _runner result[0] = await coro /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:465: in _cat raise ex /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:245: in _run_coro return await asyncio.wait_for(coro, timeout=timeout), i /usr/lib64/python3.13/asyncio/tasks.py:507: in wait_for return await fut /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:234: in _cat_file async with session.get(self.encode_url(url), **kw) as r: /usr/lib64/python3.13/site-packages/aiohttp/client.py:1425: in __aenter__ self._resp: _RetType = await self._coro /usr/lib64/python3.13/site-packages/aiohttp/client.py:703: in _request conn = await self._connector.connect( /usr/lib64/python3.13/site-packages/aiohttp/connector.py:548: in connect proto = await self._create_connection(req, traces, timeout) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1056: in _create_connection _, proto = await self._create_direct_connection(req, traces, timeout) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. hosts = await self._resolve_host(host, port, traces=traces) except OSError as exc: if exc.errno is None and isinstance(exc, asyncio.TimeoutError): raise # in case of proxy it is not ClientProxyConnectionError # it is problem of resolving proxy ip itself > raise ClientConnectorDNSError(req.connection_key, exc) from exc E aiohttp.client_exceptions.ClientConnectorDNSError: Cannot connect to host a2f834a2b06c4fa6b7764975792da9f2:41889 ssl:default [Temporary failure in name resolution] /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1357: ClientConnectorDNSError _______________________________ test_with_cache ________________________________ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. > hosts = await self._resolve_host(host, port, traces=traces) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1351: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.13/site-packages/aiohttp/connector.py:995: in _resolve_host return await asyncio.shield(resolved_host_task) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1026: in _resolve_host_with_throttle addrs = await self._resolver.resolve(host, port, family=self._family) /usr/lib64/python3.13/site-packages/aiohttp/resolver.py:36: in resolve infos = await self._loop.getaddrinfo( /usr/lib64/python3.13/asyncio/base_events.py:939: in getaddrinfo return await self.run_in_executor( /usr/lib64/python3.13/concurrent/futures/thread.py:59: in run result = self.fn(*self.args, **self.kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ host = 'a2f834a2b06c4fa6b7764975792da9f2', port = 41889 family = , type = proto = 0, flags = def getaddrinfo(host, port, family=0, type=0, proto=0, flags=0): """Resolve host and port into list of address info entries. Translate the host/port argument into a sequence of 5-tuples that contain all the necessary arguments for creating a socket connected to that service. host is a domain name, a string representation of an IPv4/v6 address or None. port is a string service name such as 'http', a numeric port number or None. By passing None as the value of host and port, you can pass NULL to the underlying C API. The family, type and proto arguments can be optionally specified in order to narrow the list of addresses returned. Passing zero as a value for each of these arguments selects the full range of results. """ # We override this function since we want to translate the numeric family # and socket type values to enum constants. addrlist = [] > for res in _socket.getaddrinfo(host, port, family, type, proto, flags): E socket.gaierror: [Errno -3] Temporary failure in name resolution /usr/lib64/python3.13/socket.py:977: gaierror The above exception was the direct cause of the following exception: self = url = 'http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile' kwargs = {}, info = {} session = policy = 'get' async def _info(self, url, **kwargs): """Get info of URL Tries to access location via HEAD, and then GET methods, but does not fetch the data. It is possible that the server does not supply any size information, in which case size will be given as None (and certain operations on the corresponding file will not work). """ info = {} session = await self.set_session() for policy in ["head", "get"]: try: info.update( > await _file_info( self.encode_url(url), size_policy=policy, session=session, **self.kwargs, **kwargs, ) ) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:427: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:815: in _file_info r = await session.get(url, allow_redirects=ar, **kwargs) /usr/lib64/python3.13/site-packages/aiohttp/client.py:703: in _request conn = await self._connector.connect( /usr/lib64/python3.13/site-packages/aiohttp/connector.py:548: in connect proto = await self._create_connection(req, traces, timeout) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1056: in _create_connection _, proto = await self._create_direct_connection(req, traces, timeout) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. hosts = await self._resolve_host(host, port, traces=traces) except OSError as exc: if exc.errno is None and isinstance(exc, asyncio.TimeoutError): raise # in case of proxy it is not ClientProxyConnectionError # it is problem of resolving proxy ip itself > raise ClientConnectorDNSError(req.connection_key, exc) from exc E aiohttp.client_exceptions.ClientConnectorDNSError: Cannot connect to host a2f834a2b06c4fa6b7764975792da9f2:41889 ssl:default [Temporary failure in name resolution] /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1357: ClientConnectorDNSError The above exception was the direct cause of the following exception: server = namespace(address='http://a2f834a2b06c4fa6b7764975792da9f2:41889', realfile='http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile') def test_with_cache(server): fs = fsspec.filesystem("http", headers={"head_ok": "true", "give_length": "true"}) fn = server.realfile fs1 = fsspec.filesystem("blockcache", fs=fs) > with fs1.open(fn, "rb") as f: /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/tests/test_http.py:544: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/cached.py:446: in return lambda *args, **kw: getattr(type(self), item).__get__(self)( /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/spec.py:1310: in open f = self._open( /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/cached.py:446: in return lambda *args, **kw: getattr(type(self), item).__get__(self)( /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/cached.py:340: in _open f = self.fs._open( /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:366: in _open size = size or info.update(self.info(path, **kwargs)) or info["size"] /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:118: in wrapper return sync(self.loop, func, *args, **kwargs) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:103: in sync raise return_result /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:56: in _runner result[0] = await coro _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = url = 'http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile' kwargs = {}, info = {} session = policy = 'get' async def _info(self, url, **kwargs): """Get info of URL Tries to access location via HEAD, and then GET methods, but does not fetch the data. It is possible that the server does not supply any size information, in which case size will be given as None (and certain operations on the corresponding file will not work). """ info = {} session = await self.set_session() for policy in ["head", "get"]: try: info.update( await _file_info( self.encode_url(url), size_policy=policy, session=session, **self.kwargs, **kwargs, ) ) if info.get("size") is not None: break except Exception as exc: if policy == "get": # If get failed, then raise a FileNotFoundError > raise FileNotFoundError(url) from exc E FileNotFoundError: http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:440: FileNotFoundError ____________________________ test_async_expand_path ____________________________ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. > hosts = await self._resolve_host(host, port, traces=traces) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1351: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.13/site-packages/aiohttp/connector.py:995: in _resolve_host return await asyncio.shield(resolved_host_task) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1026: in _resolve_host_with_throttle addrs = await self._resolver.resolve(host, port, family=self._family) /usr/lib64/python3.13/site-packages/aiohttp/resolver.py:36: in resolve infos = await self._loop.getaddrinfo( /usr/lib64/python3.13/asyncio/base_events.py:939: in getaddrinfo return await self.run_in_executor( /usr/lib64/python3.13/concurrent/futures/thread.py:59: in run result = self.fn(*self.args, **self.kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ host = 'a2f834a2b06c4fa6b7764975792da9f2', port = 41889 family = , type = proto = 0, flags = def getaddrinfo(host, port, family=0, type=0, proto=0, flags=0): """Resolve host and port into list of address info entries. Translate the host/port argument into a sequence of 5-tuples that contain all the necessary arguments for creating a socket connected to that service. host is a domain name, a string representation of an IPv4/v6 address or None. port is a string service name such as 'http', a numeric port number or None. By passing None as the value of host and port, you can pass NULL to the underlying C API. The family, type and proto arguments can be optionally specified in order to narrow the list of addresses returned. Passing zero as a value for each of these arguments selects the full range of results. """ # We override this function since we want to translate the numeric family # and socket type values to enum constants. addrlist = [] > for res in _socket.getaddrinfo(host, port, family, type, proto, flags): E socket.gaierror: [Errno -3] Temporary failure in name resolution /usr/lib64/python3.13/socket.py:977: gaierror The above exception was the direct cause of the following exception: server = namespace(address='http://a2f834a2b06c4fa6b7764975792da9f2:41889', realfile='http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile') @pytest.mark.asyncio async def test_async_expand_path(server): fs = fsspec.filesystem("http", asynchronous=True, skip_instance_cache=True) # maxdepth=1 > assert await fs._expand_path( server.address + "/index", recursive=True, maxdepth=1 ) == [ server.address + "/index", server.address + "/index/realfile", ] /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/tests/test_http.py:554: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:871: in _expand_path out = await self._expand_path([path], recursive, maxdepth) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:894: in _expand_path rec = set(await self._find(p, maxdepth=maxdepth, withdirs=True)) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/asyn.py:848: in _find if withdirs and path != "" and await self._isdir(path): /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:521: in _isdir return bool(await self._ls(path)) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:207: in _ls out = await self._ls_real(url, detail=detail, **kwargs) /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/http.py:159: in _ls_real async with session.get(self.encode_url(url), **self.kwargs) as r: /usr/lib64/python3.13/site-packages/aiohttp/client.py:1425: in __aenter__ self._resp: _RetType = await self._coro /usr/lib64/python3.13/site-packages/aiohttp/client.py:703: in _request conn = await self._connector.connect( /usr/lib64/python3.13/site-packages/aiohttp/connector.py:548: in connect proto = await self._create_connection(req, traces, timeout) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1056: in _create_connection _, proto = await self._create_direct_connection(req, traces, timeout) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. hosts = await self._resolve_host(host, port, traces=traces) except OSError as exc: if exc.errno is None and isinstance(exc, asyncio.TimeoutError): raise # in case of proxy it is not ClientProxyConnectionError # it is problem of resolving proxy ip itself > raise ClientConnectorDNSError(req.connection_key, exc) from exc E aiohttp.client_exceptions.ClientConnectorDNSError: Cannot connect to host a2f834a2b06c4fa6b7764975792da9f2:41889 ssl:default [Temporary failure in name resolution] /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1357: ClientConnectorDNSError _______________________________ test_async_walk ________________________________ server = namespace(address='http://a2f834a2b06c4fa6b7764975792da9f2:41889', realfile='http://a2f834a2b06c4fa6b7764975792da9f2:41889/index/realfile') @pytest.mark.asyncio async def test_async_walk(server): fs = fsspec.filesystem("http", asynchronous=True, skip_instance_cache=True) # No maxdepth res = [a async for a in fs._walk(server.address + "/index")] > assert res == [(server.address + "/index", [], ["realfile"])] E AssertionError: assert [('http://a2f...dex', [], [])] == [('http://a2f...['realfile'])] E E At index 0 diff: ('http://a2f834a2b06c4fa6b7764975792da9f2:41889/index', [], []) != ('http://a2f834a2b06c4fa6b7764975792da9f2:41889/index', [], ['realfile']) E E Full diff: E [ E ( E 'http://a2f834a2b06c4fa6b7764975792da9f2:41889/index',... E E ...Full output truncated (8 lines hidden), use '-vv' to show /builddir/build/BUILD/python-fsspec-2024.12.0-build/filesystem_spec-2024.12.0/fsspec/implementations/tests/test_http.py:576: AssertionError _________________________________ test_simple __________________________________ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. > hosts = await self._resolve_host(host, port, traces=traces) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1351: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.13/site-packages/aiohttp/connector.py:995: in _resolve_host return await asyncio.shield(resolved_host_task) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1026: in _resolve_host_with_throttle addrs = await self._resolver.resolve(host, port, family=self._family) /usr/lib64/python3.13/site-packages/aiohttp/resolver.py:36: in resolve infos = await self._loop.getaddrinfo( /usr/lib64/python3.13/asyncio/base_events.py:939: in getaddrinfo return await self.run_in_executor( /usr/lib64/python3.13/concurrent/futures/thread.py:59: in run result = self.fn(*self.args, **self.kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ host = 'a2f834a2b06c4fa6b7764975792da9f2', port = 43491 family = , type = proto = 0, flags = def getaddrinfo(host, port, family=0, type=0, proto=0, flags=0): """Resolve host and port into list of address info entries. Translate the host/port argument into a sequence of 5-tuples that contain all the necessary arguments for creating a socket connected to that service. host is a domain name, a string representation of an IPv4/v6 address or None. port is a string service name such as 'http', a numeric port number or None. By passing None as the value of host and port, you can pass NULL to the underlying C API. The family, type and proto arguments can be optionally specified in order to narrow the list of addresses returned. Passing zero as a value for each of these arguments selects the full range of results. """ # We override this function since we want to translate the numeric family # and socket type values to enum constants. addrlist = [] > for res in _socket.getaddrinfo(host, port, family, type, proto, flags): E socket.gaierror: [Errno -3] Temporary failure in name resolution /usr/lib64/python3.13/socket.py:977: gaierror The above exception was the direct cause of the following exception: coro = , i = 0 async def _run_coro(coro, i): try: > return await asyncio.wait_for(coro, timeout=timeout), i fsspec/asyn.py:245: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.13/asyncio/tasks.py:507: in wait_for return await fut fsspec/implementations/http.py:234: in _cat_file async with session.get(self.encode_url(url), **kw) as r: /usr/lib64/python3.13/site-packages/aiohttp/client.py:1425: in __aenter__ self._resp: _RetType = await self._coro /usr/lib64/python3.13/site-packages/aiohttp/client.py:703: in _request conn = await self._connector.connect( /usr/lib64/python3.13/site-packages/aiohttp/connector.py:548: in connect proto = await self._create_connection(req, traces, timeout) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1056: in _create_connection _, proto = await self._create_direct_connection(req, traces, timeout) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. hosts = await self._resolve_host(host, port, traces=traces) except OSError as exc: if exc.errno is None and isinstance(exc, asyncio.TimeoutError): raise # in case of proxy it is not ClientProxyConnectionError # it is problem of resolving proxy ip itself > raise ClientConnectorDNSError(req.connection_key, exc) from exc E aiohttp.client_exceptions.ClientConnectorDNSError: Cannot connect to host a2f834a2b06c4fa6b7764975792da9f2:43491 ssl:default [Temporary failure in name resolution] /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1357: ClientConnectorDNSError The above exception was the direct cause of the following exception: server = namespace(address='http://a2f834a2b06c4fa6b7764975792da9f2:43491', realfile='http://a2f834a2b06c4fa6b7764975792da9f2:43491/index/realfile') def test_simple(server): # The dictionary in refs may be dumped with a different separator # depending on whether json or ujson is imported from fsspec.implementations.reference import json as json_impl refs = { "a": b"data", "b": (server.realfile, 0, 5), "c": (server.realfile, 1, 5), "d": b"base64:aGVsbG8=", "e": {"key": "value"}, } h = fsspec.filesystem("http") fs = fsspec.filesystem("reference", fo=refs, fs=h) assert fs.cat("a") == b"data" > assert fs.cat("b") == data[:5] fsspec/implementations/tests/test_reference.py:32: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = path = 'b', recursive = False, on_error = 'raise', kwargs = {} proto_dict = {'http': ['b']} out = {'b': ClientConnectorDNSError(ConnectionKey(host='a2f834a2b06c4fa6b7764975792da9f2', port=43491, is_ssl=False, ssl=True, proxy=None, proxy_auth=None, proxy_headers_hash=None), gaierror(-3, 'Temporary failure in name resolution'))} proto = 'http', paths = ['b'] fs = urls = ['http://a2f834a2b06c4fa6b7764975792da9f2:43491/index/realfile'] starts = [0] def cat(self, path, recursive=False, on_error="raise", **kwargs): if isinstance(path, str) and recursive: raise NotImplementedError if isinstance(path, list) and (recursive or any("*" in p for p in path)): raise NotImplementedError # TODO: if references is lazy, pre-fetch all paths in batch before access proto_dict = _protocol_groups(path, self.references) out = {} for proto, paths in proto_dict.items(): fs = self.fss[proto] urls, starts, ends, valid_paths = [], [], [], [] for p in paths: # find references or label not-found. Early exit if any not # found and on_error is "raise" try: u, s, e = self._cat_common(p) if not isinstance(u, (bytes, str)): # nan/None from parquet continue except FileNotFoundError as err: if on_error == "raise": raise if on_error != "omit": out[p] = err else: urls.append(u) starts.append(s) ends.append(e) valid_paths.append(p) # process references into form for merging urls2 = [] starts2 = [] ends2 = [] paths2 = [] whole_files = set() for u, s, e, p in zip(urls, starts, ends, valid_paths): if isinstance(u, bytes): # data out[p] = u elif s is None: # whole file - limits are None, None, but no further # entries take for this file whole_files.add(u) urls2.append(u) starts2.append(s) ends2.append(e) paths2.append(p) for u, s, e, p in zip(urls, starts, ends, valid_paths): # second run to account for files that are to be loaded whole if s is not None and u not in whole_files: urls2.append(u) starts2.append(s) ends2.append(e) paths2.append(p) # merge and fetch consolidated ranges new_paths, new_starts, new_ends = merge_offset_ranges( list(urls2), list(starts2), list(ends2), sort=True, max_gap=self.max_gap, max_block=self.max_block, ) bytes_out = fs.cat_ranges(new_paths, new_starts, new_ends) # unbundle from merged bytes - simple approach for u, s, e, p in zip(urls, starts, ends, valid_paths): if p in out: continue # was bytes, already handled for np, ns, ne, b in zip(new_paths, new_starts, new_ends, bytes_out): if np == u and (ns is None or ne is None): if isinstance(b, Exception): out[p] = b else: out[p] = b[s:e] elif np == u and s >= ns and e <= ne: if isinstance(b, Exception): out[p] = b else: out[p] = b[s - ns : (e - ne) or None] for k, v in out.copy().items(): # these were valid references, but fetch failed, so transform exc if isinstance(v, Exception) and k in self.references: ex = out[k] new_ex = ReferenceNotReachable(k, self.references[k]) new_ex.__cause__ = ex if on_error == "raise": > raise new_ex E fsspec.implementations.reference.ReferenceNotReachable: Reference "b" failed to fetch target ('http://a2f834a2b06c4fa6b7764975792da9f2:43491/index/realfile', 0, 5) fsspec/implementations/reference.py:958: ReferenceNotReachable _______________________________ test_simple_ver1 _______________________________ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. > hosts = await self._resolve_host(host, port, traces=traces) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1351: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.13/site-packages/aiohttp/connector.py:995: in _resolve_host return await asyncio.shield(resolved_host_task) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1026: in _resolve_host_with_throttle addrs = await self._resolver.resolve(host, port, family=self._family) /usr/lib64/python3.13/site-packages/aiohttp/resolver.py:36: in resolve infos = await self._loop.getaddrinfo( /usr/lib64/python3.13/asyncio/base_events.py:939: in getaddrinfo return await self.run_in_executor( /usr/lib64/python3.13/concurrent/futures/thread.py:59: in run result = self.fn(*self.args, **self.kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ host = 'a2f834a2b06c4fa6b7764975792da9f2', port = 43491 family = , type = proto = 0, flags = def getaddrinfo(host, port, family=0, type=0, proto=0, flags=0): """Resolve host and port into list of address info entries. Translate the host/port argument into a sequence of 5-tuples that contain all the necessary arguments for creating a socket connected to that service. host is a domain name, a string representation of an IPv4/v6 address or None. port is a string service name such as 'http', a numeric port number or None. By passing None as the value of host and port, you can pass NULL to the underlying C API. The family, type and proto arguments can be optionally specified in order to narrow the list of addresses returned. Passing zero as a value for each of these arguments selects the full range of results. """ # We override this function since we want to translate the numeric family # and socket type values to enum constants. addrlist = [] > for res in _socket.getaddrinfo(host, port, family, type, proto, flags): E socket.gaierror: [Errno -3] Temporary failure in name resolution /usr/lib64/python3.13/socket.py:977: gaierror The above exception was the direct cause of the following exception: coro = , i = 0 async def _run_coro(coro, i): try: > return await asyncio.wait_for(coro, timeout=timeout), i fsspec/asyn.py:245: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.13/asyncio/tasks.py:507: in wait_for return await fut fsspec/implementations/http.py:234: in _cat_file async with session.get(self.encode_url(url), **kw) as r: /usr/lib64/python3.13/site-packages/aiohttp/client.py:1425: in __aenter__ self._resp: _RetType = await self._coro /usr/lib64/python3.13/site-packages/aiohttp/client.py:703: in _request conn = await self._connector.connect( /usr/lib64/python3.13/site-packages/aiohttp/connector.py:548: in connect proto = await self._create_connection(req, traces, timeout) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1056: in _create_connection _, proto = await self._create_direct_connection(req, traces, timeout) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. hosts = await self._resolve_host(host, port, traces=traces) except OSError as exc: if exc.errno is None and isinstance(exc, asyncio.TimeoutError): raise # in case of proxy it is not ClientProxyConnectionError # it is problem of resolving proxy ip itself > raise ClientConnectorDNSError(req.connection_key, exc) from exc E aiohttp.client_exceptions.ClientConnectorDNSError: Cannot connect to host a2f834a2b06c4fa6b7764975792da9f2:43491 ssl:default [Temporary failure in name resolution] /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1357: ClientConnectorDNSError The above exception was the direct cause of the following exception: server = namespace(address='http://a2f834a2b06c4fa6b7764975792da9f2:43491', realfile='http://a2f834a2b06c4fa6b7764975792da9f2:43491/index/realfile') def test_simple_ver1(server): # The dictionary in refs may be dumped with a different separator # depending on whether json or ujson is imported from fsspec.implementations.reference import json as json_impl in_data = { "version": 1, "refs": { "a": b"data", "b": (server.realfile, 0, 5), "c": (server.realfile, 1, 5), "d": b"base64:aGVsbG8=", "e": {"key": "value"}, }, } h = fsspec.filesystem("http") fs = fsspec.filesystem("reference", fo=in_data, fs=h) assert fs.cat("a") == b"data" > assert fs.cat("b") == data[:5] fsspec/implementations/tests/test_reference.py:59: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = path = 'b', recursive = False, on_error = 'raise', kwargs = {} proto_dict = {'http': ['b']} out = {'b': ClientConnectorDNSError(ConnectionKey(host='a2f834a2b06c4fa6b7764975792da9f2', port=43491, is_ssl=False, ssl=True, proxy=None, proxy_auth=None, proxy_headers_hash=None), gaierror(-3, 'Temporary failure in name resolution'))} proto = 'http', paths = ['b'] fs = urls = ['http://a2f834a2b06c4fa6b7764975792da9f2:43491/index/realfile'] starts = [0] def cat(self, path, recursive=False, on_error="raise", **kwargs): if isinstance(path, str) and recursive: raise NotImplementedError if isinstance(path, list) and (recursive or any("*" in p for p in path)): raise NotImplementedError # TODO: if references is lazy, pre-fetch all paths in batch before access proto_dict = _protocol_groups(path, self.references) out = {} for proto, paths in proto_dict.items(): fs = self.fss[proto] urls, starts, ends, valid_paths = [], [], [], [] for p in paths: # find references or label not-found. Early exit if any not # found and on_error is "raise" try: u, s, e = self._cat_common(p) if not isinstance(u, (bytes, str)): # nan/None from parquet continue except FileNotFoundError as err: if on_error == "raise": raise if on_error != "omit": out[p] = err else: urls.append(u) starts.append(s) ends.append(e) valid_paths.append(p) # process references into form for merging urls2 = [] starts2 = [] ends2 = [] paths2 = [] whole_files = set() for u, s, e, p in zip(urls, starts, ends, valid_paths): if isinstance(u, bytes): # data out[p] = u elif s is None: # whole file - limits are None, None, but no further # entries take for this file whole_files.add(u) urls2.append(u) starts2.append(s) ends2.append(e) paths2.append(p) for u, s, e, p in zip(urls, starts, ends, valid_paths): # second run to account for files that are to be loaded whole if s is not None and u not in whole_files: urls2.append(u) starts2.append(s) ends2.append(e) paths2.append(p) # merge and fetch consolidated ranges new_paths, new_starts, new_ends = merge_offset_ranges( list(urls2), list(starts2), list(ends2), sort=True, max_gap=self.max_gap, max_block=self.max_block, ) bytes_out = fs.cat_ranges(new_paths, new_starts, new_ends) # unbundle from merged bytes - simple approach for u, s, e, p in zip(urls, starts, ends, valid_paths): if p in out: continue # was bytes, already handled for np, ns, ne, b in zip(new_paths, new_starts, new_ends, bytes_out): if np == u and (ns is None or ne is None): if isinstance(b, Exception): out[p] = b else: out[p] = b[s:e] elif np == u and s >= ns and e <= ne: if isinstance(b, Exception): out[p] = b else: out[p] = b[s - ns : (e - ne) or None] for k, v in out.copy().items(): # these were valid references, but fetch failed, so transform exc if isinstance(v, Exception) and k in self.references: ex = out[k] new_ex = ReferenceNotReachable(k, self.references[k]) new_ex.__cause__ = ex if on_error == "raise": > raise new_ex E fsspec.implementations.reference.ReferenceNotReachable: Reference "b" failed to fetch target ('http://a2f834a2b06c4fa6b7764975792da9f2:43491/index/realfile', 0, 5) fsspec/implementations/reference.py:958: ReferenceNotReachable __________________________________ test_info ___________________________________ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. > hosts = await self._resolve_host(host, port, traces=traces) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1351: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.13/site-packages/aiohttp/connector.py:995: in _resolve_host return await asyncio.shield(resolved_host_task) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1026: in _resolve_host_with_throttle addrs = await self._resolver.resolve(host, port, family=self._family) /usr/lib64/python3.13/site-packages/aiohttp/resolver.py:36: in resolve infos = await self._loop.getaddrinfo( /usr/lib64/python3.13/asyncio/base_events.py:939: in getaddrinfo return await self.run_in_executor( /usr/lib64/python3.13/concurrent/futures/thread.py:59: in run result = self.fn(*self.args, **self.kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ host = 'a2f834a2b06c4fa6b7764975792da9f2', port = 43491 family = , type = proto = 0, flags = def getaddrinfo(host, port, family=0, type=0, proto=0, flags=0): """Resolve host and port into list of address info entries. Translate the host/port argument into a sequence of 5-tuples that contain all the necessary arguments for creating a socket connected to that service. host is a domain name, a string representation of an IPv4/v6 address or None. port is a string service name such as 'http', a numeric port number or None. By passing None as the value of host and port, you can pass NULL to the underlying C API. The family, type and proto arguments can be optionally specified in order to narrow the list of addresses returned. Passing zero as a value for each of these arguments selects the full range of results. """ # We override this function since we want to translate the numeric family # and socket type values to enum constants. addrlist = [] > for res in _socket.getaddrinfo(host, port, family, type, proto, flags): E socket.gaierror: [Errno -3] Temporary failure in name resolution /usr/lib64/python3.13/socket.py:977: gaierror The above exception was the direct cause of the following exception: self = url = 'http://a2f834a2b06c4fa6b7764975792da9f2:43491/index/realfile' kwargs = {}, info = {} session = policy = 'get' async def _info(self, url, **kwargs): """Get info of URL Tries to access location via HEAD, and then GET methods, but does not fetch the data. It is possible that the server does not supply any size information, in which case size will be given as None (and certain operations on the corresponding file will not work). """ info = {} session = await self.set_session() for policy in ["head", "get"]: try: info.update( > await _file_info( self.encode_url(url), size_policy=policy, session=session, **self.kwargs, **kwargs, ) ) fsspec/implementations/http.py:427: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ fsspec/implementations/http.py:815: in _file_info r = await session.get(url, allow_redirects=ar, **kwargs) /usr/lib64/python3.13/site-packages/aiohttp/client.py:703: in _request conn = await self._connector.connect( /usr/lib64/python3.13/site-packages/aiohttp/connector.py:548: in connect proto = await self._create_connection(req, traces, timeout) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1056: in _create_connection _, proto = await self._create_direct_connection(req, traces, timeout) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. hosts = await self._resolve_host(host, port, traces=traces) except OSError as exc: if exc.errno is None and isinstance(exc, asyncio.TimeoutError): raise # in case of proxy it is not ClientProxyConnectionError # it is problem of resolving proxy ip itself > raise ClientConnectorDNSError(req.connection_key, exc) from exc E aiohttp.client_exceptions.ClientConnectorDNSError: Cannot connect to host a2f834a2b06c4fa6b7764975792da9f2:43491 ssl:default [Temporary failure in name resolution] /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1357: ClientConnectorDNSError The above exception was the direct cause of the following exception: server = namespace(address='http://a2f834a2b06c4fa6b7764975792da9f2:43491', realfile='http://a2f834a2b06c4fa6b7764975792da9f2:43491/index/realfile') def test_info(server): refs = { "a": b"data", "b": (server.realfile, 0, 5), "c/d": (server.realfile, 1, 6), "e": (server.realfile,), } h = fsspec.filesystem("http", headers={"give_length": "true", "head_ok": "true"}) fs = fsspec.filesystem("reference", fo=refs, fs=h) assert fs.size("a") == 4 assert fs.size("b") == 5 assert fs.size("c/d") == 6 > assert fs.info("e")["size"] == len(data) fsspec/implementations/tests/test_reference.py:114: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ fsspec/implementations/reference.py:1177: in info out0[0]["size"] = self.fss[prot].size(self.references[path][0]) fsspec/asyn.py:118: in wrapper return sync(self.loop, func, *args, **kwargs) fsspec/asyn.py:103: in sync raise return_result fsspec/asyn.py:56: in _runner result[0] = await coro fsspec/asyn.py:686: in _size return (await self._info(path)).get("size", None) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = url = 'http://a2f834a2b06c4fa6b7764975792da9f2:43491/index/realfile' kwargs = {}, info = {} session = policy = 'get' async def _info(self, url, **kwargs): """Get info of URL Tries to access location via HEAD, and then GET methods, but does not fetch the data. It is possible that the server does not supply any size information, in which case size will be given as None (and certain operations on the corresponding file will not work). """ info = {} session = await self.set_session() for policy in ["head", "get"]: try: info.update( await _file_info( self.encode_url(url), size_policy=policy, session=session, **self.kwargs, **kwargs, ) ) if info.get("size") is not None: break except Exception as exc: if policy == "get": # If get failed, then raise a FileNotFoundError > raise FileNotFoundError(url) from exc E FileNotFoundError: http://a2f834a2b06c4fa6b7764975792da9f2:43491/index/realfile fsspec/implementations/http.py:440: FileNotFoundError ________________________________ test_defaults _________________________________ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. > hosts = await self._resolve_host(host, port, traces=traces) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1351: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.13/site-packages/aiohttp/connector.py:995: in _resolve_host return await asyncio.shield(resolved_host_task) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1026: in _resolve_host_with_throttle addrs = await self._resolver.resolve(host, port, family=self._family) /usr/lib64/python3.13/site-packages/aiohttp/resolver.py:36: in resolve infos = await self._loop.getaddrinfo( /usr/lib64/python3.13/asyncio/base_events.py:939: in getaddrinfo return await self.run_in_executor( /usr/lib64/python3.13/concurrent/futures/thread.py:59: in run result = self.fn(*self.args, **self.kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ host = 'a2f834a2b06c4fa6b7764975792da9f2', port = 43491 family = , type = proto = 0, flags = def getaddrinfo(host, port, family=0, type=0, proto=0, flags=0): """Resolve host and port into list of address info entries. Translate the host/port argument into a sequence of 5-tuples that contain all the necessary arguments for creating a socket connected to that service. host is a domain name, a string representation of an IPv4/v6 address or None. port is a string service name such as 'http', a numeric port number or None. By passing None as the value of host and port, you can pass NULL to the underlying C API. The family, type and proto arguments can be optionally specified in order to narrow the list of addresses returned. Passing zero as a value for each of these arguments selects the full range of results. """ # We override this function since we want to translate the numeric family # and socket type values to enum constants. addrlist = [] > for res in _socket.getaddrinfo(host, port, family, type, proto, flags): E socket.gaierror: [Errno -3] Temporary failure in name resolution /usr/lib64/python3.13/socket.py:977: gaierror The above exception was the direct cause of the following exception: coro = , i = 0 async def _run_coro(coro, i): try: > return await asyncio.wait_for(coro, timeout=timeout), i fsspec/asyn.py:245: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.13/asyncio/tasks.py:507: in wait_for return await fut fsspec/implementations/http.py:234: in _cat_file async with session.get(self.encode_url(url), **kw) as r: /usr/lib64/python3.13/site-packages/aiohttp/client.py:1425: in __aenter__ self._resp: _RetType = await self._coro /usr/lib64/python3.13/site-packages/aiohttp/client.py:703: in _request conn = await self._connector.connect( /usr/lib64/python3.13/site-packages/aiohttp/connector.py:548: in connect proto = await self._create_connection(req, traces, timeout) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1056: in _create_connection _, proto = await self._create_direct_connection(req, traces, timeout) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. hosts = await self._resolve_host(host, port, traces=traces) except OSError as exc: if exc.errno is None and isinstance(exc, asyncio.TimeoutError): raise # in case of proxy it is not ClientProxyConnectionError # it is problem of resolving proxy ip itself > raise ClientConnectorDNSError(req.connection_key, exc) from exc E aiohttp.client_exceptions.ClientConnectorDNSError: Cannot connect to host a2f834a2b06c4fa6b7764975792da9f2:43491 ssl:default [Temporary failure in name resolution] /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1357: ClientConnectorDNSError The above exception was the direct cause of the following exception: server = namespace(address='http://a2f834a2b06c4fa6b7764975792da9f2:43491', realfile='http://a2f834a2b06c4fa6b7764975792da9f2:43491/index/realfile') def test_defaults(server): refs = {"a": b"data", "b": (None, 0, 5)} fs = fsspec.filesystem( "reference", fo=refs, target_protocol="http", target=server.realfile, remote_protocol="http", ) assert fs.cat("a") == b"data" > assert fs.cat("b") == data[:5] fsspec/implementations/tests/test_reference.py:187: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = path = 'b', recursive = False, on_error = 'raise', kwargs = {} proto_dict = {None: ['b']} out = {'b': ClientConnectorDNSError(ConnectionKey(host='a2f834a2b06c4fa6b7764975792da9f2', port=43491, is_ssl=False, ssl=True, proxy=None, proxy_auth=None, proxy_headers_hash=None), gaierror(-3, 'Temporary failure in name resolution'))} proto = None, paths = ['b'] fs = urls = ['http://a2f834a2b06c4fa6b7764975792da9f2:43491/index/realfile'] starts = [0] def cat(self, path, recursive=False, on_error="raise", **kwargs): if isinstance(path, str) and recursive: raise NotImplementedError if isinstance(path, list) and (recursive or any("*" in p for p in path)): raise NotImplementedError # TODO: if references is lazy, pre-fetch all paths in batch before access proto_dict = _protocol_groups(path, self.references) out = {} for proto, paths in proto_dict.items(): fs = self.fss[proto] urls, starts, ends, valid_paths = [], [], [], [] for p in paths: # find references or label not-found. Early exit if any not # found and on_error is "raise" try: u, s, e = self._cat_common(p) if not isinstance(u, (bytes, str)): # nan/None from parquet continue except FileNotFoundError as err: if on_error == "raise": raise if on_error != "omit": out[p] = err else: urls.append(u) starts.append(s) ends.append(e) valid_paths.append(p) # process references into form for merging urls2 = [] starts2 = [] ends2 = [] paths2 = [] whole_files = set() for u, s, e, p in zip(urls, starts, ends, valid_paths): if isinstance(u, bytes): # data out[p] = u elif s is None: # whole file - limits are None, None, but no further # entries take for this file whole_files.add(u) urls2.append(u) starts2.append(s) ends2.append(e) paths2.append(p) for u, s, e, p in zip(urls, starts, ends, valid_paths): # second run to account for files that are to be loaded whole if s is not None and u not in whole_files: urls2.append(u) starts2.append(s) ends2.append(e) paths2.append(p) # merge and fetch consolidated ranges new_paths, new_starts, new_ends = merge_offset_ranges( list(urls2), list(starts2), list(ends2), sort=True, max_gap=self.max_gap, max_block=self.max_block, ) bytes_out = fs.cat_ranges(new_paths, new_starts, new_ends) # unbundle from merged bytes - simple approach for u, s, e, p in zip(urls, starts, ends, valid_paths): if p in out: continue # was bytes, already handled for np, ns, ne, b in zip(new_paths, new_starts, new_ends, bytes_out): if np == u and (ns is None or ne is None): if isinstance(b, Exception): out[p] = b else: out[p] = b[s:e] elif np == u and s >= ns and e <= ne: if isinstance(b, Exception): out[p] = b else: out[p] = b[s - ns : (e - ne) or None] for k, v in out.copy().items(): # these were valid references, but fetch failed, so transform exc if isinstance(v, Exception) and k in self.references: ex = out[k] new_ex = ReferenceNotReachable(k, self.references[k]) new_ex.__cause__ = ex if on_error == "raise": > raise new_ex E fsspec.implementations.reference.ReferenceNotReachable: Reference "b" failed to fetch target (None, 0, 5) fsspec/implementations/reference.py:958: ReferenceNotReachable _______________________________ test_background ________________________________ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. > hosts = await self._resolve_host(host, port, traces=traces) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1351: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.13/site-packages/aiohttp/connector.py:995: in _resolve_host return await asyncio.shield(resolved_host_task) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1026: in _resolve_host_with_throttle addrs = await self._resolver.resolve(host, port, family=self._family) /usr/lib64/python3.13/site-packages/aiohttp/resolver.py:36: in resolve infos = await self._loop.getaddrinfo( /usr/lib64/python3.13/asyncio/base_events.py:939: in getaddrinfo return await self.run_in_executor( /usr/lib64/python3.13/concurrent/futures/thread.py:59: in run result = self.fn(*self.args, **self.kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ host = 'a2f834a2b06c4fa6b7764975792da9f2', port = 42603 family = , type = proto = 0, flags = def getaddrinfo(host, port, family=0, type=0, proto=0, flags=0): """Resolve host and port into list of address info entries. Translate the host/port argument into a sequence of 5-tuples that contain all the necessary arguments for creating a socket connected to that service. host is a domain name, a string representation of an IPv4/v6 address or None. port is a string service name such as 'http', a numeric port number or None. By passing None as the value of host and port, you can pass NULL to the underlying C API. The family, type and proto arguments can be optionally specified in order to narrow the list of addresses returned. Passing zero as a value for each of these arguments selects the full range of results. """ # We override this function since we want to translate the numeric family # and socket type values to enum constants. addrlist = [] > for res in _socket.getaddrinfo(host, port, family, type, proto, flags): E socket.gaierror: [Errno -3] Temporary failure in name resolution /usr/lib64/python3.13/socket.py:977: gaierror The above exception was the direct cause of the following exception: self = url = 'http://a2f834a2b06c4fa6b7764975792da9f2:42603/index/realfile' kwargs = {}, info = {} session = policy = 'get' async def _info(self, url, **kwargs): """Get info of URL Tries to access location via HEAD, and then GET methods, but does not fetch the data. It is possible that the server does not supply any size information, in which case size will be given as None (and certain operations on the corresponding file will not work). """ info = {} session = await self.set_session() for policy in ["head", "get"]: try: info.update( > await _file_info( self.encode_url(url), size_policy=policy, session=session, **self.kwargs, **kwargs, ) ) fsspec/implementations/http.py:427: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ fsspec/implementations/http.py:815: in _file_info r = await session.get(url, allow_redirects=ar, **kwargs) /usr/lib64/python3.13/site-packages/aiohttp/client.py:703: in _request conn = await self._connector.connect( /usr/lib64/python3.13/site-packages/aiohttp/connector.py:548: in connect proto = await self._create_connection(req, traces, timeout) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1056: in _create_connection _, proto = await self._create_direct_connection(req, traces, timeout) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. hosts = await self._resolve_host(host, port, traces=traces) except OSError as exc: if exc.errno is None and isinstance(exc, asyncio.TimeoutError): raise # in case of proxy it is not ClientProxyConnectionError # it is problem of resolving proxy ip itself > raise ClientConnectorDNSError(req.connection_key, exc) from exc E aiohttp.client_exceptions.ClientConnectorDNSError: Cannot connect to host a2f834a2b06c4fa6b7764975792da9f2:42603 ssl:default [Temporary failure in name resolution] /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1357: ClientConnectorDNSError The above exception was the direct cause of the following exception: server = namespace(address='http://a2f834a2b06c4fa6b7764975792da9f2:42603', realfile='http://a2f834a2b06c4fa6b7764975792da9f2:42603/index/realfile') monkeypatch = <_pytest.monkeypatch.MonkeyPatch object at 0x7ff203599010> def test_background(server, monkeypatch): import threading import time import fsspec head = {"head_ok": "true", "head_give_length": "true"} urla = server.realfile h = fsspec.filesystem("http", headers=head) thread_ids = {threading.current_thread().ident} > f = h.open(urla, block_size=5, cache_type="background") fsspec/tests/test_caches.py:221: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ fsspec/spec.py:1310: in open f = self._open( fsspec/implementations/http.py:366: in _open size = size or info.update(self.info(path, **kwargs)) or info["size"] fsspec/asyn.py:118: in wrapper return sync(self.loop, func, *args, **kwargs) fsspec/asyn.py:103: in sync raise return_result fsspec/asyn.py:56: in _runner result[0] = await coro _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = url = 'http://a2f834a2b06c4fa6b7764975792da9f2:42603/index/realfile' kwargs = {}, info = {} session = policy = 'get' async def _info(self, url, **kwargs): """Get info of URL Tries to access location via HEAD, and then GET methods, but does not fetch the data. It is possible that the server does not supply any size information, in which case size will be given as None (and certain operations on the corresponding file will not work). """ info = {} session = await self.set_session() for policy in ["head", "get"]: try: info.update( await _file_info( self.encode_url(url), size_policy=policy, session=session, **self.kwargs, **kwargs, ) ) if info.get("size") is not None: break except Exception as exc: if policy == "get": # If get failed, then raise a FileNotFoundError > raise FileNotFoundError(url) from exc E FileNotFoundError: http://a2f834a2b06c4fa6b7764975792da9f2:42603/index/realfile fsspec/implementations/http.py:440: FileNotFoundError ____________________________ test_remote_async_ops _____________________________ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. > hosts = await self._resolve_host(host, port, traces=traces) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1351: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.13/site-packages/aiohttp/connector.py:995: in _resolve_host return await asyncio.shield(resolved_host_task) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1026: in _resolve_host_with_throttle addrs = await self._resolver.resolve(host, port, family=self._family) /usr/lib64/python3.13/site-packages/aiohttp/resolver.py:36: in resolve infos = await self._loop.getaddrinfo( /usr/lib64/python3.13/asyncio/base_events.py:939: in getaddrinfo return await self.run_in_executor( /usr/lib64/python3.13/concurrent/futures/thread.py:59: in run result = self.fn(*self.args, **self.kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ host = 'a2f834a2b06c4fa6b7764975792da9f2', port = 41955 family = , type = proto = 0, flags = def getaddrinfo(host, port, family=0, type=0, proto=0, flags=0): """Resolve host and port into list of address info entries. Translate the host/port argument into a sequence of 5-tuples that contain all the necessary arguments for creating a socket connected to that service. host is a domain name, a string representation of an IPv4/v6 address or None. port is a string service name such as 'http', a numeric port number or None. By passing None as the value of host and port, you can pass NULL to the underlying C API. The family, type and proto arguments can be optionally specified in order to narrow the list of addresses returned. Passing zero as a value for each of these arguments selects the full range of results. """ # We override this function since we want to translate the numeric family # and socket type values to enum constants. addrlist = [] > for res in _socket.getaddrinfo(host, port, family, type, proto, flags): E socket.gaierror: [Errno -3] Temporary failure in name resolution /usr/lib64/python3.13/socket.py:977: gaierror The above exception was the direct cause of the following exception: self = url = 'http://a2f834a2b06c4fa6b7764975792da9f2:41955/index/realfile' kwargs = {}, info = {} session = policy = 'get' async def _info(self, url, **kwargs): """Get info of URL Tries to access location via HEAD, and then GET methods, but does not fetch the data. It is possible that the server does not supply any size information, in which case size will be given as None (and certain operations on the corresponding file will not work). """ info = {} session = await self.set_session() for policy in ["head", "get"]: try: info.update( > await _file_info( self.encode_url(url), size_policy=policy, session=session, **self.kwargs, **kwargs, ) ) fsspec/implementations/http.py:427: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ fsspec/implementations/http.py:815: in _file_info r = await session.get(url, allow_redirects=ar, **kwargs) /usr/lib64/python3.13/site-packages/aiohttp/client.py:703: in _request conn = await self._connector.connect( /usr/lib64/python3.13/site-packages/aiohttp/connector.py:548: in connect proto = await self._create_connection(req, traces, timeout) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1056: in _create_connection _, proto = await self._create_direct_connection(req, traces, timeout) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. hosts = await self._resolve_host(host, port, traces=traces) except OSError as exc: if exc.errno is None and isinstance(exc, asyncio.TimeoutError): raise # in case of proxy it is not ClientProxyConnectionError # it is problem of resolving proxy ip itself > raise ClientConnectorDNSError(req.connection_key, exc) from exc E aiohttp.client_exceptions.ClientConnectorDNSError: Cannot connect to host a2f834a2b06c4fa6b7764975792da9f2:41955 ssl:default [Temporary failure in name resolution] /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1357: ClientConnectorDNSError The above exception was the direct cause of the following exception: server = namespace(address='http://a2f834a2b06c4fa6b7764975792da9f2:41955', realfile='http://a2f834a2b06c4fa6b7764975792da9f2:41955/index/realfile') def test_remote_async_ops(server): fsspec.filesystem("http", headers={"give_length": "true", "head_ok": "true"}) fs = fsspec.filesystem("generic", default_method="current") > out = fs.info(server.realfile) fsspec/tests/test_generic.py:10: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ fsspec/asyn.py:118: in wrapper return sync(self.loop, func, *args, **kwargs) fsspec/asyn.py:103: in sync raise return_result fsspec/asyn.py:56: in _runner result[0] = await coro fsspec/generic.py:211: in _info out = await fs._info(url, **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = url = 'http://a2f834a2b06c4fa6b7764975792da9f2:41955/index/realfile' kwargs = {}, info = {} session = policy = 'get' async def _info(self, url, **kwargs): """Get info of URL Tries to access location via HEAD, and then GET methods, but does not fetch the data. It is possible that the server does not supply any size information, in which case size will be given as None (and certain operations on the corresponding file will not work). """ info = {} session = await self.set_session() for policy in ["head", "get"]: try: info.update( await _file_info( self.encode_url(url), size_policy=policy, session=session, **self.kwargs, **kwargs, ) ) if info.get("size") is not None: break except Exception as exc: if policy == "get": # If get failed, then raise a FileNotFoundError > raise FileNotFoundError(url) from exc E FileNotFoundError: http://a2f834a2b06c4fa6b7764975792da9f2:41955/index/realfile fsspec/implementations/http.py:440: FileNotFoundError ____________________________ test_cp_async_to_sync _____________________________ self = path = '/realfile', start = None, end = None, kwargs = {} def cat_file(self, path, start=None, end=None, **kwargs): logger.debug("cat: %s", path) path = self._strip_protocol(path) try: > return bytes(self.store[path].getbuffer()[start:end]) E KeyError: '/realfile' fsspec/implementations/memory.py:231: KeyError The above exception was the direct cause of the following exception: server = namespace(address='http://a2f834a2b06c4fa6b7764975792da9f2:41955', realfile='http://a2f834a2b06c4fa6b7764975792da9f2:41955/index/realfile') m = def test_cp_async_to_sync(server, m): fsspec.filesystem("http", headers={"give_length": "true", "head_ok": "true"}) fs = fsspec.filesystem("generic", default_method="current") fs.cp([server.realfile], ["memory://realfile"]) > assert m.cat("realfile") == data fsspec/tests/test_generic.py:33: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ fsspec/spec.py:884: in cat return self.cat_file(paths[0], **kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = path = '/realfile', start = None, end = None, kwargs = {} def cat_file(self, path, start=None, end=None, **kwargs): logger.debug("cat: %s", path) path = self._strip_protocol(path) try: return bytes(self.store[path].getbuffer()[start:end]) except KeyError as e: > raise FileNotFoundError(path) from e E FileNotFoundError: /realfile fsspec/implementations/memory.py:233: FileNotFoundError ________________________________ test_cat_async ________________________________ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. > hosts = await self._resolve_host(host, port, traces=traces) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1351: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.13/site-packages/aiohttp/connector.py:995: in _resolve_host return await asyncio.shield(resolved_host_task) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1026: in _resolve_host_with_throttle addrs = await self._resolver.resolve(host, port, family=self._family) /usr/lib64/python3.13/site-packages/aiohttp/resolver.py:36: in resolve infos = await self._loop.getaddrinfo( /usr/lib64/python3.13/asyncio/base_events.py:939: in getaddrinfo return await self.run_in_executor( /usr/lib64/python3.13/concurrent/futures/thread.py:59: in run result = self.fn(*self.args, **self.kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ host = 'a2f834a2b06c4fa6b7764975792da9f2', port = 41955 family = , type = proto = 0, flags = def getaddrinfo(host, port, family=0, type=0, proto=0, flags=0): """Resolve host and port into list of address info entries. Translate the host/port argument into a sequence of 5-tuples that contain all the necessary arguments for creating a socket connected to that service. host is a domain name, a string representation of an IPv4/v6 address or None. port is a string service name such as 'http', a numeric port number or None. By passing None as the value of host and port, you can pass NULL to the underlying C API. The family, type and proto arguments can be optionally specified in order to narrow the list of addresses returned. Passing zero as a value for each of these arguments selects the full range of results. """ # We override this function since we want to translate the numeric family # and socket type values to enum constants. addrlist = [] > for res in _socket.getaddrinfo(host, port, family, type, proto, flags): E socket.gaierror: [Errno -3] Temporary failure in name resolution /usr/lib64/python3.13/socket.py:977: gaierror The above exception was the direct cause of the following exception: server = namespace(address='http://a2f834a2b06c4fa6b7764975792da9f2:41955', realfile='http://a2f834a2b06c4fa6b7764975792da9f2:41955/index/realfile') def test_cat_async(server): fsspec.filesystem("http", headers={"give_length": "true", "head_ok": "true"}) fs = fsspec.filesystem("generic", default_method="current") > assert fs.cat(server.realfile) == data fsspec/tests/test_generic.py:48: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ fsspec/asyn.py:118: in wrapper return sync(self.loop, func, *args, **kwargs) fsspec/asyn.py:103: in sync raise return_result fsspec/asyn.py:56: in _runner result[0] = await coro fsspec/asyn.py:465: in _cat raise ex fsspec/asyn.py:245: in _run_coro return await asyncio.wait_for(coro, timeout=timeout), i /usr/lib64/python3.13/asyncio/tasks.py:507: in wait_for return await fut fsspec/generic.py:244: in _cat_file return await fs._cat_file(url, **kwargs) fsspec/implementations/http.py:234: in _cat_file async with session.get(self.encode_url(url), **kw) as r: /usr/lib64/python3.13/site-packages/aiohttp/client.py:1425: in __aenter__ self._resp: _RetType = await self._coro /usr/lib64/python3.13/site-packages/aiohttp/client.py:703: in _request conn = await self._connector.connect( /usr/lib64/python3.13/site-packages/aiohttp/connector.py:548: in connect proto = await self._create_connection(req, traces, timeout) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1056: in _create_connection _, proto = await self._create_direct_connection(req, traces, timeout) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. hosts = await self._resolve_host(host, port, traces=traces) except OSError as exc: if exc.errno is None and isinstance(exc, asyncio.TimeoutError): raise # in case of proxy it is not ClientProxyConnectionError # it is problem of resolving proxy ip itself > raise ClientConnectorDNSError(req.connection_key, exc) from exc E aiohttp.client_exceptions.ClientConnectorDNSError: Cannot connect to host a2f834a2b06c4fa6b7764975792da9f2:41955 ssl:default [Temporary failure in name resolution] /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1357: ClientConnectorDNSError ____________________________ test_cache_not_pickled ____________________________ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. > hosts = await self._resolve_host(host, port, traces=traces) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1351: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ /usr/lib64/python3.13/site-packages/aiohttp/connector.py:995: in _resolve_host return await asyncio.shield(resolved_host_task) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1026: in _resolve_host_with_throttle addrs = await self._resolver.resolve(host, port, family=self._family) /usr/lib64/python3.13/site-packages/aiohttp/resolver.py:36: in resolve infos = await self._loop.getaddrinfo( /usr/lib64/python3.13/asyncio/base_events.py:939: in getaddrinfo return await self.run_in_executor( /usr/lib64/python3.13/concurrent/futures/thread.py:59: in run result = self.fn(*self.args, **self.kwargs) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ host = 'a2f834a2b06c4fa6b7764975792da9f2', port = 45199 family = , type = proto = 0, flags = def getaddrinfo(host, port, family=0, type=0, proto=0, flags=0): """Resolve host and port into list of address info entries. Translate the host/port argument into a sequence of 5-tuples that contain all the necessary arguments for creating a socket connected to that service. host is a domain name, a string representation of an IPv4/v6 address or None. port is a string service name such as 'http', a numeric port number or None. By passing None as the value of host and port, you can pass NULL to the underlying C API. The family, type and proto arguments can be optionally specified in order to narrow the list of addresses returned. Passing zero as a value for each of these arguments selects the full range of results. """ # We override this function since we want to translate the numeric family # and socket type values to enum constants. addrlist = [] > for res in _socket.getaddrinfo(host, port, family, type, proto, flags): E socket.gaierror: [Errno -3] Temporary failure in name resolution /usr/lib64/python3.13/socket.py:977: gaierror The above exception was the direct cause of the following exception: self = url = 'http://a2f834a2b06c4fa6b7764975792da9f2:45199/index/realfile' kwargs = {}, info = {} session = policy = 'get' async def _info(self, url, **kwargs): """Get info of URL Tries to access location via HEAD, and then GET methods, but does not fetch the data. It is possible that the server does not supply any size information, in which case size will be given as None (and certain operations on the corresponding file will not work). """ info = {} session = await self.set_session() for policy in ["head", "get"]: try: info.update( > await _file_info( self.encode_url(url), size_policy=policy, session=session, **self.kwargs, **kwargs, ) ) fsspec/implementations/http.py:427: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ fsspec/implementations/http.py:815: in _file_info r = await session.get(url, allow_redirects=ar, **kwargs) /usr/lib64/python3.13/site-packages/aiohttp/client.py:703: in _request conn = await self._connector.connect( /usr/lib64/python3.13/site-packages/aiohttp/connector.py:548: in connect proto = await self._create_connection(req, traces, timeout) /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1056: in _create_connection _, proto = await self._create_direct_connection(req, traces, timeout) _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = req = traces = [] timeout = ClientTimeout(total=300, connect=None, sock_read=None, sock_connect=30, ceil_threshold=5) async def _create_direct_connection( self, req: ClientRequest, traces: List["Trace"], timeout: "ClientTimeout", *, client_error: Type[Exception] = ClientConnectorError, ) -> Tuple[asyncio.Transport, ResponseHandler]: sslcontext = self._get_ssl_context(req) fingerprint = self._get_fingerprint(req) host = req.url.raw_host assert host is not None # Replace multiple trailing dots with a single one. # A trailing dot is only present for fully-qualified domain names. # See https://github.com/aio-libs/aiohttp/pull/7364. if host.endswith(".."): host = host.rstrip(".") + "." port = req.port assert port is not None try: # Cancelling this lookup should not cancel the underlying lookup # or else the cancel event will get broadcast to all the waiters # across all connections. hosts = await self._resolve_host(host, port, traces=traces) except OSError as exc: if exc.errno is None and isinstance(exc, asyncio.TimeoutError): raise # in case of proxy it is not ClientProxyConnectionError # it is problem of resolving proxy ip itself > raise ClientConnectorDNSError(req.connection_key, exc) from exc E aiohttp.client_exceptions.ClientConnectorDNSError: Cannot connect to host a2f834a2b06c4fa6b7764975792da9f2:45199 ssl:default [Temporary failure in name resolution] /usr/lib64/python3.13/site-packages/aiohttp/connector.py:1357: ClientConnectorDNSError The above exception was the direct cause of the following exception: server = namespace(address='http://a2f834a2b06c4fa6b7764975792da9f2:45199', realfile='http://a2f834a2b06c4fa6b7764975792da9f2:45199/index/realfile') def test_cache_not_pickled(server): fs = fsspec.filesystem( "http", cache_type="readahead", headers={"give_length": "true", "head_ok": "true"}, ) filepath = server.realfile length = 3 > f = fs.open(filepath, mode="rb") fsspec/tests/test_spec.py:756: _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ fsspec/spec.py:1310: in open f = self._open( fsspec/implementations/http.py:366: in _open size = size or info.update(self.info(path, **kwargs)) or info["size"] fsspec/asyn.py:118: in wrapper return sync(self.loop, func, *args, **kwargs) fsspec/asyn.py:103: in sync raise return_result fsspec/asyn.py:56: in _runner result[0] = await coro _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ self = url = 'http://a2f834a2b06c4fa6b7764975792da9f2:45199/index/realfile' kwargs = {}, info = {} session = policy = 'get' async def _info(self, url, **kwargs): """Get info of URL Tries to access location via HEAD, and then GET methods, but does not fetch the data. It is possible that the server does not supply any size information, in which case size will be given as None (and certain operations on the corresponding file will not work). """ info = {} session = await self.set_session() for policy in ["head", "get"]: try: info.update( await _file_info( self.encode_url(url), size_policy=policy, session=session, **self.kwargs, **kwargs, ) ) if info.get("size") is not None: break except Exception as exc: if policy == "get": # If get failed, then raise a FileNotFoundError > raise FileNotFoundError(url) from exc E FileNotFoundError: http://a2f834a2b06c4fa6b7764975792da9f2:45199/index/realfile fsspec/implementations/http.py:440: FileNotFoundError =============================== warnings summary =============================== fsspec/tests/test_async.py::test_async_streamed_file_write /usr/lib64/python3.13/functools.py:53: RuntimeWarning: coroutine 'test_run_coros_in_chunks..runner' was never awaited value = getattr(wrapped, attr) Enable tracemalloc to get traceback where the object was allocated. See https://docs.pytest.org/en/stable/how-to/capture-warnings.html#resource-warnings for more info. fsspec/tests/test_fuse.py::test_mount /usr/lib64/python3.13/multiprocessing/popen_fork.py:67: DeprecationWarning: This process (pid=790) is multi-threaded, use of fork() may lead to deadlocks in the child. self.pid = os.fork() -- Docs: https://docs.pytest.org/en/stable/how-to/capture-warnings.html =========================== short test summary info ============================ SKIPPED [1] fsspec/implementations/tests/test_dbfs.py:35: These tests need to be re-recorded. SKIPPED [1] fsspec/tests/test_downstream.py:3: could not import 's3fs': No module named 's3fs' SKIPPED [1] fsspec/tests/test_gui.py:3: could not import 'panel': No module named 'panel' SKIPPED [2] fsspec/implementations/tests/test_cached.py:222: could not import 'pyftpdlib': No module named 'pyftpdlib' SKIPPED [3] fsspec/implementations/tests/test_cached.py:270: could not import 'pyftpdlib': No module named 'pyftpdlib' SKIPPED [3] fsspec/implementations/tests/test_cached.py:298: could not import 'pyftpdlib': No module named 'pyftpdlib' SKIPPED [1] fsspec/implementations/tests/test_cached.py:535: could not import 'pyftpdlib': No module named 'pyftpdlib' SKIPPED [1] fsspec/implementations/tests/test_cached.py:553: could not import 'pyftpdlib': No module named 'pyftpdlib' SKIPPED [1] fsspec/implementations/tests/test_cached.py:584: could not import 'pyftpdlib': No module named 'pyftpdlib' SKIPPED [1] fsspec/implementations/tests/test_cached.py:920: could not import 'pyftpdlib': No module named 'pyftpdlib' SKIPPED [4] fsspec/implementations/tests/test_cached.py:1034: could not import 'pyftpdlib': No module named 'pyftpdlib' SKIPPED [2] fsspec/implementations/tests/test_ftp.py:33: could not import 'pyftpdlib': No module named 'pyftpdlib' SKIPPED [4] fsspec/implementations/tests/test_ftp.py:46: could not import 'pyftpdlib': No module named 'pyftpdlib' SKIPPED [1] fsspec/implementations/tests/test_ftp.py:63: could not import 'pyftpdlib': No module named 'pyftpdlib' SKIPPED [1] fsspec/implementations/tests/test_ftp.py:70: could not import 'pyftpdlib': No module named 'pyftpdlib' SKIPPED [2] fsspec/implementations/tests/test_ftp.py:88: could not import 'pyftpdlib': No module named 'pyftpdlib' SKIPPED [1] fsspec/implementations/tests/test_ftp.py:111: could not import 'pyftpdlib': No module named 'pyftpdlib' SKIPPED [1] fsspec/implementations/tests/test_ftp.py:119: could not import 'pyftpdlib': No module named 'pyftpdlib' SKIPPED [2] fsspec/implementations/tests/test_ftp.py:129: could not import 'pyftpdlib': No module named 'pyftpdlib' SKIPPED [1] fsspec/implementations/tests/test_ftp.py:147: could not import 'pyftpdlib': No module named 'pyftpdlib' SKIPPED [1] fsspec/implementations/tests/test_ftp.py:163: could not import 'pyftpdlib': No module named 'pyftpdlib' SKIPPED [1] fsspec/implementations/tests/test_ftp.py:177: could not import 'pyftpdlib': No module named 'pyftpdlib' SKIPPED [1] fsspec/implementations/tests/test_ftp.py:190: could not import 'pyftpdlib': No module named 'pyftpdlib' SKIPPED [1] fsspec/implementations/tests/test_ftp.py:204: could not import 'pyftpdlib': No module named 'pyftpdlib' SKIPPED [1] fsspec/implementations/tests/test_libarchive.py:7: could not import 'pyftpdlib': No module named 'pyftpdlib' SKIPPED [1] fsspec/implementations/tests/test_local.py:135: could not import 's3fs': No module named 's3fs' SKIPPED [2] fsspec/implementations/tests/test_local.py:785: Windows only SKIPPED [2] fsspec/implementations/tests/test_local.py:801: Windows only SKIPPED [5] fsspec/implementations/tests/test_local.py:823: Windows only SKIPPED [3] fsspec/implementations/tests/test_local.py:880: Windows only SKIPPED [1] fsspec/implementations/tests/test_local.py:895: Windows only SKIPPED [1] fsspec/implementations/tests/test_reference.py:608: could not import 'pandas': No module named 'pandas' SKIPPED [1] fsspec/implementations/tests/test_reference.py:654: could not import 'pandas': No module named 'pandas' SKIPPED [1] fsspec/implementations/tests/test_reference.py:764: could not import 'kerchunk': No module named 'kerchunk' SKIPPED [2] fsspec/implementations/tests/test_reference.py:796: could not import 'kerchunk': No module named 'kerchunk' SKIPPED [1] fsspec/implementations/tests/test_sftp.py:71: docker run not available SKIPPED [2] fsspec/implementations/tests/test_sftp.py:86: docker run not available SKIPPED [2] fsspec/implementations/tests/test_sftp.py:104: docker run not available SKIPPED [1] fsspec/implementations/tests/test_sftp.py:143: docker run not available SKIPPED [1] fsspec/implementations/tests/test_sftp.py:152: docker run not available SKIPPED [1] fsspec/implementations/tests/test_sftp.py:183: docker run not available SKIPPED [2] fsspec/implementations/tests/test_sftp.py:205: docker run not available SKIPPED [2] fsspec/implementations/tests/test_sftp.py:222: docker run not available SKIPPED [3] fsspec/implementations/tests/test_smb.py:81: docker run not available SKIPPED [3] fsspec/implementations/tests/test_smb.py:98: docker run not available SKIPPED [3] fsspec/implementations/tests/test_smb.py:125: docker run not available SKIPPED [3] fsspec/implementations/tests/test_smb.py:140: docker run not available SKIPPED [3] fsspec/implementations/tests/test_smb.py:161: docker run not available SKIPPED [3] fsspec/implementations/tests/test_smb.py:168: docker run not available SKIPPED [1] fsspec/implementations/tests/test_webhdfs.py:43: htcluster not found SKIPPED [1] fsspec/implementations/tests/test_webhdfs.py:49: htcluster not found SKIPPED [1] fsspec/implementations/tests/test_webhdfs.py:57: htcluster not found SKIPPED [1] fsspec/implementations/tests/test_webhdfs.py:67: htcluster not found SKIPPED [1] fsspec/implementations/tests/test_webhdfs.py:84: htcluster not found SKIPPED [1] fsspec/implementations/tests/test_webhdfs.py:100: htcluster not found SKIPPED [1] fsspec/implementations/tests/test_webhdfs.py:121: htcluster not found SKIPPED [1] fsspec/implementations/tests/test_webhdfs.py:140: htcluster not found SKIPPED [1] fsspec/implementations/tests/test_webhdfs.py:153: htcluster not found SKIPPED [1] fsspec/implementations/tests/test_webhdfs.py:163: htcluster not found SKIPPED [1] fsspec/implementations/tests/test_webhdfs.py:177: htcluster not found SKIPPED [1] fsspec/implementations/tests/test_webhdfs.py:200: htcluster not found SKIPPED [1] fsspec/tests/test_async.py:134: only for windows SKIPPED [1] fsspec/tests/test_core.py:357: could not import 's3fs': No module named 's3fs' SKIPPED [1] fsspec/tests/test_core.py:362: could not import 'pyftpdlib': No module named 'pyftpdlib' SKIPPED [1] fsspec/tests/test_core.py:397: could not import 'pyftpdlib': No module named 'pyftpdlib' SKIPPED [1] fsspec/tests/test_core.py:427: could not import 'pyftpdlib': No module named 'pyftpdlib' SKIPPED [1] fsspec/tests/test_core.py:445: could not import 'pyftpdlib': No module named 'pyftpdlib' SKIPPED [1] fsspec/tests/test_core.py:471: could not import 'adlfs': No module named 'adlfs' SKIPPED [1] fsspec/tests/test_file.py:12: could not import 'pyftpdlib': No module named 'pyftpdlib' SKIPPED [1] fsspec/tests/test_file.py:22: could not import 'pyftpdlib': No module named 'pyftpdlib' SKIPPED [1] fsspec/tests/test_file.py:49: could not import 'pyftpdlib': No module named 'pyftpdlib' SKIPPED [1] fsspec/tests/test_file.py:64: could not import 'pyftpdlib': No module named 'pyftpdlib' SKIPPED [1] fsspec/tests/test_file.py:80: could not import 'pyftpdlib': No module named 'pyftpdlib' SKIPPED [1] fsspec/tests/test_file.py:100: could not import 'pyftpdlib': No module named 'pyftpdlib' SKIPPED [1] fsspec/tests/test_file.py:126: could not import 'pyftpdlib': No module named 'pyftpdlib' SKIPPED [1] fsspec/tests/test_file.py:148: could not import 'pyftpdlib': No module named 'pyftpdlib' SKIPPED [1] fsspec/tests/test_file.py:162: could not import 'pyftpdlib': No module named 'pyftpdlib' SKIPPED [1] fsspec/tests/test_file.py:186: could not import 'pyftpdlib': No module named 'pyftpdlib' SKIPPED [64] fsspec/tests/test_parquet.py:37: fastparquet not found SKIPPED [128] fsspec/tests/test_parquet.py:46: could not import 'pandas': No module named 'pandas' SKIPPED [1] fsspec/tests/test_registry.py:129: could not import 's3fs': No module named 's3fs' SKIPPED [10] fsspec/tests/test_spec.py:1115: could not import 'pyftpdlib': No module named 'pyftpdlib' XFAIL fsspec/tests/test_api.py::test_multilevel_chained_fs - see issue #334 XFAIL fsspec/tests/test_spec.py::test_find FAILED fsspec/implementations/tests/test_http.py::test_list - aiohttp.client_... FAILED fsspec/implementations/tests/test_http.py::test_list_cache - aiohttp.c... FAILED fsspec/implementations/tests/test_http.py::test_list_cache_with_expiry_time_cached FAILED fsspec/implementations/tests/test_http.py::test_list_cache_with_expiry_time_purged FAILED fsspec/implementations/tests/test_http.py::test_list_cache_reuse - aio... FAILED fsspec/implementations/tests/test_http.py::test_ls_raises_filenotfound FAILED fsspec/implementations/tests/test_http.py::test_list_cache_with_max_paths FAILED fsspec/implementations/tests/test_http.py::test_list_cache_with_skip_instance_cache FAILED fsspec/implementations/tests/test_http.py::test_glob_return_subfolders FAILED fsspec/implementations/tests/test_http.py::test_isdir - aiohttp.client... FAILED fsspec/implementations/tests/test_http.py::test_policy_arg - aiohttp.c... FAILED fsspec/implementations/tests/test_http.py::test_exists - aiohttp.clien... FAILED fsspec/implementations/tests/test_http.py::test_read - FileNotFoundErr... FAILED fsspec/implementations/tests/test_http.py::test_file_pickle - FileNotF... FAILED fsspec/implementations/tests/test_http.py::test_methods - AssertionErr... FAILED fsspec/implementations/tests/test_http.py::test_random_access[headers0] FAILED fsspec/implementations/tests/test_http.py::test_random_access[headers1] FAILED fsspec/implementations/tests/test_http.py::test_random_access[headers2] FAILED fsspec/implementations/tests/test_http.py::test_random_access[headers3] FAILED fsspec/implementations/tests/test_http.py::test_random_access[headers4] FAILED fsspec/implementations/tests/test_http.py::test_random_access[headers5] FAILED fsspec/implementations/tests/test_http.py::test_random_access[headers6] FAILED fsspec/implementations/tests/test_http.py::test_random_access[headers7] FAILED fsspec/implementations/tests/test_http.py::test_random_access[headers8] FAILED fsspec/implementations/tests/test_http.py::test_no_range_support[headers0] FAILED fsspec/implementations/tests/test_http.py::test_no_range_support[headers1] FAILED fsspec/implementations/tests/test_http.py::test_no_range_support[headers2] FAILED fsspec/implementations/tests/test_http.py::test_no_range_support[headers3] FAILED fsspec/implementations/tests/test_http.py::test_stream_seek - FileNotF... FAILED fsspec/implementations/tests/test_http.py::test_mapper_url - assert [] FAILED fsspec/implementations/tests/test_http.py::test_content_length_zero - ... FAILED fsspec/implementations/tests/test_http.py::test_content_encoding_gzip FAILED fsspec/implementations/tests/test_http.py::test_download - aiohttp.cli... FAILED fsspec/implementations/tests/test_http.py::test_multi_download - aioht... FAILED fsspec/implementations/tests/test_http.py::test_ls - aiohttp.client_ex... FAILED fsspec/implementations/tests/test_http.py::test_mcat - aiohttp.client_... FAILED fsspec/implementations/tests/test_http.py::test_cat_file_range - aioht... FAILED fsspec/implementations/tests/test_http.py::test_cat_file_range_numpy FAILED fsspec/implementations/tests/test_http.py::test_mcat_cache - aiohttp.c... FAILED fsspec/implementations/tests/test_http.py::test_mcat_expand - aiohttp.... FAILED fsspec/implementations/tests/test_http.py::test_info - FileNotFoundErr... FAILED fsspec/implementations/tests/test_http.py::test_put_file[POST] - aioht... FAILED fsspec/implementations/tests/test_http.py::test_put_file[PUT] - aiohtt... FAILED fsspec/implementations/tests/test_http.py::test_async_other_thread - a... FAILED fsspec/implementations/tests/test_http.py::test_async_this_thread - ai... FAILED fsspec/implementations/tests/test_http.py::test_processes[spawn] - aio... FAILED fsspec/implementations/tests/test_http.py::test_processes[forkserver] FAILED fsspec/implementations/tests/test_http.py::test_async_file - aiohttp.c... FAILED fsspec/implementations/tests/test_http.py::test_encoded - aiohttp.clie... FAILED fsspec/implementations/tests/test_http.py::test_with_cache - FileNotFo... FAILED fsspec/implementations/tests/test_http.py::test_async_expand_path - ai... FAILED fsspec/implementations/tests/test_http.py::test_async_walk - Assertion... FAILED fsspec/implementations/tests/test_reference.py::test_simple - fsspec.i... FAILED fsspec/implementations/tests/test_reference.py::test_simple_ver1 - fss... FAILED fsspec/implementations/tests/test_reference.py::test_info - FileNotFou... FAILED fsspec/implementations/tests/test_reference.py::test_defaults - fsspec... FAILED fsspec/tests/test_caches.py::test_background - FileNotFoundError: http... FAILED fsspec/tests/test_generic.py::test_remote_async_ops - FileNotFoundErro... FAILED fsspec/tests/test_generic.py::test_cp_async_to_sync - FileNotFoundErro... FAILED fsspec/tests/test_generic.py::test_cat_async - aiohttp.client_exceptio... FAILED fsspec/tests/test_spec.py::test_cache_not_pickled - FileNotFoundError:... = 61 failed, 1438 passed, 320 skipped, 4 deselected, 2 xfailed, 2 warnings in 38.18s = Unclosed client session client_session: error: Bad exit status from /var/tmp/rpm-tmp.TAcJoT (%check) Bad exit status from /var/tmp/rpm-tmp.TAcJoT (%check) RPM build errors: Finish: rpmbuild python-fsspec-2024.12.0-2.fc43.src.rpm Finish: build phase for python-fsspec-2024.12.0-2.fc43.src.rpm INFO: chroot_scan: 1 files copied to /var/lib/copr-rpmbuild/results/chroot_scan INFO: /var/lib/mock/fedora-rawhide-x86_64-1739997622.433147/root/var/log/dnf5.log INFO: chroot_scan: creating tarball /var/lib/copr-rpmbuild/results/chroot_scan.tar.gz /bin/tar: Removing leading `/' from member names ERROR: Exception(/var/lib/copr-rpmbuild/results/python-fsspec-2024.12.0-2.fc43.src.rpm) Config(fedora-rawhide-x86_64) 0 minutes 59 seconds INFO: Results and/or logs in: /var/lib/copr-rpmbuild/results INFO: Cleaning up build root ('cleanup_on_failure=True') Start: clean chroot INFO: unmounting tmpfs. Finish: clean chroot ERROR: Command failed: # /usr/bin/systemd-nspawn -q -M a2f834a2b06c4fa6b7764975792da9f2 -D /var/lib/mock/fedora-rawhide-x86_64-1739997622.433147/root -a -u mockbuild --capability=cap_ipc_lock --rlimit=RLIMIT_NOFILE=10240 --capability=cap_ipc_lock --bind=/tmp/mock-resolv.bpesot27:/etc/resolv.conf --bind=/dev/btrfs-control --bind=/dev/mapper/control --bind=/dev/fuse --bind=/dev/loop-control --bind=/dev/loop0 --bind=/dev/loop1 --bind=/dev/loop2 --bind=/dev/loop3 --bind=/dev/loop4 --bind=/dev/loop5 --bind=/dev/loop6 --bind=/dev/loop7 --bind=/dev/loop8 --bind=/dev/loop9 --bind=/dev/loop10 --bind=/dev/loop11 --console=pipe --setenv=TERM=vt100 --setenv=SHELL=/bin/bash --setenv=HOME=/builddir --setenv=HOSTNAME=mock --setenv=PATH=/usr/bin:/bin:/usr/sbin:/sbin '--setenv=PROMPT_COMMAND=printf "\033]0;\007"' '--setenv=PS1= \s-\v\$ ' --setenv=LANG=C.UTF-8 --resolv-conf=off bash --login -c '/usr/bin/rpmbuild -ba --noprep --target x86_64 /builddir/build/originals/python-fsspec.spec' Copr build error: Build failed