Commit 5dc898f
feat: globbing with fsspec (#1061)
* feat: add fsspec as required dependency (#1021)
* fsspec requirements
* simplify fsspec import
* use loop property
* correctly create schemes list
* feat: set fsspec as default source (#1023)
* feat: add fsspec as required dependency (#1021)
* fsspec requirements
* simplify fsspec import
* use loop property
* correctly create schemes list
* remove deprecated handlers from docs
* simplify source selection
* return object source
* pickle executor
* rename test
* test more handlers
* option to check writeable file-like object
* rename test
* explicitly set handler
* fix s3 source
* rename test
* Revert "fix s3 source"
This reverts commit e76fdbb.
* sesparate PR for s3 fix (#1024)
* strip file://
* rename test
* rename tests
* add aiohttp skip
* attempt to parse windows paths
* test ci
* Revert "test ci"
This reverts commit 4c1c8a5.
* rename test
* remove fsspec from test
* remove *_handler options
* update defaults
* do not override default s3
* do not use fsspec for multiprocessing
* rename test
* fix not selecting object source
* missing import
* normalize doc
* remove helper
* never return None as source
* remove unnecessary xrootd source default override since fsspec is default now
* rename test
* add empty class to pass old pickle test
* feat: set `fsspec` (`s3fs`) as default handler for s3 paths (#1032)
* feat: add fsspec as required dependency (#1021)
* fsspec requirements
* simplify fsspec import
* use loop property
* correctly create schemes list
* feat: set fsspec as default source (#1023)
* feat: add fsspec as required dependency (#1021)
* fsspec requirements
* simplify fsspec import
* use loop property
* correctly create schemes list
* remove deprecated handlers from docs
* simplify source selection
* return object source
* pickle executor
* rename test
* test more handlers
* option to check writeable file-like object
* rename test
* explicitly set handler
* fix s3 source
* rename test
* Revert "fix s3 source"
This reverts commit e76fdbb.
* sesparate PR for s3 fix (#1024)
* strip file://
* rename test
* rename tests
* add aiohttp skip
* attempt to parse windows paths
* test ci
* Revert "test ci"
This reverts commit 4c1c8a5.
* rename test
* remove fsspec from test
* remove *_handler options
* update defaults
* do not override default s3
* do not use fsspec for multiprocessing
* rename test
* fix not selecting object source
* missing import
* normalize doc
* remove helper
* never return None as source
* remove unnecessary xrootd source default override since fsspec is default now
* rename test
* add empty class to pass old pickle test
* set version to 5.2.0rc1 (release candidate)
* set s3fs as default for s3
* test different handlers
* correct serialization of fsspec source
* feat: simplify object path split (#1028)
* simplify object path split
* add example from #975
* fix tests
* add more test cases
* test case update
* remove scheme unused regex
* feat: fsspec for all non-object writing - %-encoded urls no longer decoded (#1034)
* writing goes through fsspec
* increase rc version
* type hints and docs
* add helper methods, create
* throw more specific error
* add additional test for `create` failure with scheme other than local
* simplify source selection
* remove windows specific code
* raise exception if invalid combination of handler / input (file-like object and fsspec)
* use softer check for file-like object
* cover problematic case with additional slash (file:///c:/file.root)
* test "file:" scheme (no slash)
* test backslash
* test: improve path object split tests (#1039)
* feat: add fsspec as required dependency (#1021)
* fsspec requirements
* simplify fsspec import
* use loop property
* correctly create schemes list
* feat: set fsspec as default source (#1023)
* feat: add fsspec as required dependency (#1021)
* fsspec requirements
* simplify fsspec import
* use loop property
* correctly create schemes list
* remove deprecated handlers from docs
* simplify source selection
* return object source
* pickle executor
* rename test
* test more handlers
* option to check writeable file-like object
* rename test
* explicitly set handler
* fix s3 source
* rename test
* Revert "fix s3 source"
This reverts commit e76fdbb.
* sesparate PR for s3 fix (#1024)
* strip file://
* rename test
* rename tests
* add aiohttp skip
* attempt to parse windows paths
* test ci
* Revert "test ci"
This reverts commit 4c1c8a5.
* rename test
* remove fsspec from test
* remove *_handler options
* update defaults
* do not override default s3
* do not use fsspec for multiprocessing
* rename test
* fix not selecting object source
* missing import
* normalize doc
* remove helper
* never return None as source
* remove unnecessary xrootd source default override since fsspec is default now
* rename test
* add empty class to pass old pickle test
* feat: set `fsspec` (`s3fs`) as default handler for s3 paths (#1032)
* feat: add fsspec as required dependency (#1021)
* fsspec requirements
* simplify fsspec import
* use loop property
* correctly create schemes list
* feat: set fsspec as default source (#1023)
* feat: add fsspec as required dependency (#1021)
* fsspec requirements
* simplify fsspec import
* use loop property
* correctly create schemes list
* remove deprecated handlers from docs
* simplify source selection
* return object source
* pickle executor
* rename test
* test more handlers
* option to check writeable file-like object
* rename test
* explicitly set handler
* fix s3 source
* rename test
* Revert "fix s3 source"
This reverts commit e76fdbb.
* sesparate PR for s3 fix (#1024)
* strip file://
* rename test
* rename tests
* add aiohttp skip
* attempt to parse windows paths
* test ci
* Revert "test ci"
This reverts commit 4c1c8a5.
* rename test
* remove fsspec from test
* remove *_handler options
* update defaults
* do not override default s3
* do not use fsspec for multiprocessing
* rename test
* fix not selecting object source
* missing import
* normalize doc
* remove helper
* never return None as source
* remove unnecessary xrootd source default override since fsspec is default now
* rename test
* add empty class to pass old pickle test
* set version to 5.2.0rc1 (release candidate)
* set s3fs as default for s3
* test different handlers
* correct serialization of fsspec source
* feat: simplify object path split (#1028)
* simplify object path split
* add example from #975
* fix tests
* add more test cases
* test case update
* remove scheme unused regex
* feat: fsspec for all non-object writing - %-encoded urls no longer decoded (#1034)
* writing goes through fsspec
* increase rc version
* type hints and docs
* add helper methods, create
* throw more specific error
* add additional test for `create` failure with scheme other than local
* simplify source selection
* remove windows specific code
* raise exception if invalid combination of handler / input (file-like object and fsspec)
* use softer check for file-like object
* cover problematic case with additional slash (file:///c:/file.root)
* test "file:" scheme (no slash)
* test backslash
* add new test case
* split big test in two
* retry on socket error
* xrootd iterator
* iterate over different files
* iterate over tree
* pytest fixture for test directory
* pytest fixture for test directory
* add annotation to open argument
* remove repeated test
* test: add test for issue 1054 (newer fsspec failing to parse files with colons in name) (#1055)
* add test for issue 1054
* additional test
* make sure fsspec fix works
* try new test in older fsspec version (need to test windows)
* skip test in windows due to colons in name
* add explicit object-path split with open
* revert use fsspec fork in ci
* use fsspec to expand glob
* skip root from remote_schemas
* test iterate over xrootd
* test
* add temporary install to ci
* remove ci debug
* feat: add fsspec as required dependency (#1021)
* fsspec requirements
* simplify fsspec import
* use loop property
* correctly create schemes list
* feat: set fsspec as default source (#1023)
* feat: add fsspec as required dependency (#1021)
* fsspec requirements
* simplify fsspec import
* use loop property
* correctly create schemes list
* remove deprecated handlers from docs
* simplify source selection
* return object source
* pickle executor
* rename test
* test more handlers
* option to check writeable file-like object
* rename test
* explicitly set handler
* fix s3 source
* rename test
* Revert "fix s3 source"
This reverts commit e76fdbb.
* sesparate PR for s3 fix (#1024)
* strip file://
* rename test
* rename tests
* add aiohttp skip
* attempt to parse windows paths
* test ci
* Revert "test ci"
This reverts commit 4c1c8a5.
* rename test
* remove fsspec from test
* remove *_handler options
* update defaults
* do not override default s3
* do not use fsspec for multiprocessing
* rename test
* fix not selecting object source
* missing import
* normalize doc
* remove helper
* never return None as source
* remove unnecessary xrootd source default override since fsspec is default now
* rename test
* add empty class to pass old pickle test
* feat: set `fsspec` (`s3fs`) as default handler for s3 paths (#1032)
* feat: add fsspec as required dependency (#1021)
* fsspec requirements
* simplify fsspec import
* use loop property
* correctly create schemes list
* feat: set fsspec as default source (#1023)
* feat: add fsspec as required dependency (#1021)
* fsspec requirements
* simplify fsspec import
* use loop property
* correctly create schemes list
* remove deprecated handlers from docs
* simplify source selection
* return object source
* pickle executor
* rename test
* test more handlers
* option to check writeable file-like object
* rename test
* explicitly set handler
* fix s3 source
* rename test
* Revert "fix s3 source"
This reverts commit e76fdbb.
* sesparate PR for s3 fix (#1024)
* strip file://
* rename test
* rename tests
* add aiohttp skip
* attempt to parse windows paths
* test ci
* Revert "test ci"
This reverts commit 4c1c8a5.
* rename test
* remove fsspec from test
* remove *_handler options
* update defaults
* do not override default s3
* do not use fsspec for multiprocessing
* rename test
* fix not selecting object source
* missing import
* normalize doc
* remove helper
* never return None as source
* remove unnecessary xrootd source default override since fsspec is default now
* rename test
* add empty class to pass old pickle test
* set version to 5.2.0rc1 (release candidate)
* set s3fs as default for s3
* test different handlers
* correct serialization of fsspec source
* feat: simplify object path split (#1028)
* simplify object path split
* add example from #975
* fix tests
* add more test cases
* test case update
* remove scheme unused regex
* feat: fsspec for all non-object writing - %-encoded urls no longer decoded (#1034)
* writing goes through fsspec
* increase rc version
* type hints and docs
* add helper methods, create
* throw more specific error
* add additional test for `create` failure with scheme other than local
* simplify source selection
* remove windows specific code
* raise exception if invalid combination of handler / input (file-like object and fsspec)
* use softer check for file-like object
* cover problematic case with additional slash (file:///c:/file.root)
* test "file:" scheme (no slash)
* test backslash
* test: add test for issue 1054 (newer fsspec failing to parse files with colons in name) (#1055)
* add test for issue 1054
* additional test
* make sure fsspec fix works
* try new test in older fsspec version (need to test windows)
* skip test in windows due to colons in name
* add explicit object-path split with open
* revert use fsspec fork in ci
* test: improve path object split tests (#1039)
* feat: add fsspec as required dependency (#1021)
* fsspec requirements
* simplify fsspec import
* use loop property
* correctly create schemes list
* feat: set fsspec as default source (#1023)
* feat: add fsspec as required dependency (#1021)
* fsspec requirements
* simplify fsspec import
* use loop property
* correctly create schemes list
* remove deprecated handlers from docs
* simplify source selection
* return object source
* pickle executor
* rename test
* test more handlers
* option to check writeable file-like object
* rename test
* explicitly set handler
* fix s3 source
* rename test
* Revert "fix s3 source"
This reverts commit e76fdbb.
* sesparate PR for s3 fix (#1024)
* strip file://
* rename test
* rename tests
* add aiohttp skip
* attempt to parse windows paths
* test ci
* Revert "test ci"
This reverts commit 4c1c8a5.
* rename test
* remove fsspec from test
* remove *_handler options
* update defaults
* do not override default s3
* do not use fsspec for multiprocessing
* rename test
* fix not selecting object source
* missing import
* normalize doc
* remove helper
* never return None as source
* remove unnecessary xrootd source default override since fsspec is default now
* rename test
* add empty class to pass old pickle test
* feat: set `fsspec` (`s3fs`) as default handler for s3 paths (#1032)
* feat: add fsspec as required dependency (#1021)
* fsspec requirements
* simplify fsspec import
* use loop property
* correctly create schemes list
* feat: set fsspec as default source (#1023)
* feat: add fsspec as required dependency (#1021)
* fsspec requirements
* simplify fsspec import
* use loop property
* correctly create schemes list
* remove deprecated handlers from docs
* simplify source selection
* return object source
* pickle executor
* rename test
* test more handlers
* option to check writeable file-like object
* rename test
* explicitly set handler
* fix s3 source
* rename test
* Revert "fix s3 source"
This reverts commit e76fdbb.
* sesparate PR for s3 fix (#1024)
* strip file://
* rename test
* rename tests
* add aiohttp skip
* attempt to parse windows paths
* test ci
* Revert "test ci"
This reverts commit 4c1c8a5.
* rename test
* remove fsspec from test
* remove *_handler options
* update defaults
* do not override default s3
* do not use fsspec for multiprocessing
* rename test
* fix not selecting object source
* missing import
* normalize doc
* remove helper
* never return None as source
* remove unnecessary xrootd source default override since fsspec is default now
* rename test
* add empty class to pass old pickle test
* set version to 5.2.0rc1 (release candidate)
* set s3fs as default for s3
* test different handlers
* correct serialization of fsspec source
* feat: simplify object path split (#1028)
* simplify object path split
* add example from #975
* fix tests
* add more test cases
* test case update
* remove scheme unused regex
* feat: fsspec for all non-object writing - %-encoded urls no longer decoded (#1034)
* writing goes through fsspec
* increase rc version
* type hints and docs
* add helper methods, create
* throw more specific error
* add additional test for `create` failure with scheme other than local
* simplify source selection
* remove windows specific code
* raise exception if invalid combination of handler / input (file-like object and fsspec)
* use softer check for file-like object
* cover problematic case with additional slash (file:///c:/file.root)
* test "file:" scheme (no slash)
* test backslash
* add new test case
* split big test in two
* retry on socket error
* xrootd iterator
* iterate over different files
* iterate over tree
* pytest fixture for test directory
* pytest fixture for test directory
* add annotation to open argument
* remove repeated test
* test: add test for issue 1054 (newer fsspec failing to parse files with colons in name) (#1055)
* add test for issue 1054
* additional test
* make sure fsspec fix works
* try new test in older fsspec version (need to test windows)
* skip test in windows due to colons in name
* add explicit object-path split with open
* revert use fsspec fork in ci
* try to expand all glob strings if they have the protocol
* making it work on windows
* testing globbing for s3
* add failing test for http globbing
* test more handlers, failing test for xrootd (missing files)
* understanding error
* add class method to extract fsspec options
* call super constructor for fsspec source
* pass options to regularize files util
* python 3.12 aiohttp test in other PR
* attempt to hide the ssl destructor error
* retry on "expired"
* style: pre-commit fixes
---------
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>1 parent 6330f65 commit 5dc898f
File tree
6 files changed
+137
-30
lines changed- src/uproot
- behaviors
- models
- source
- tests
6 files changed
+137
-30
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
161 | 161 | | |
162 | 162 | | |
163 | 163 | | |
164 | | - | |
| 164 | + | |
165 | 165 | | |
166 | 166 | | |
167 | 167 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
287 | 287 | | |
288 | 288 | | |
289 | 289 | | |
290 | | - | |
291 | | - | |
292 | | - | |
293 | | - | |
294 | | - | |
295 | 290 | | |
296 | 291 | | |
297 | 292 | | |
| |||
815 | 810 | | |
816 | 811 | | |
817 | 812 | | |
818 | | - | |
| 813 | + | |
| 814 | + | |
| 815 | + | |
819 | 816 | | |
820 | 817 | | |
821 | 818 | | |
| |||
830 | 827 | | |
831 | 828 | | |
832 | 829 | | |
| 830 | + | |
833 | 831 | | |
834 | | - | |
835 | | - | |
836 | | - | |
837 | | - | |
| 832 | + | |
| 833 | + | |
| 834 | + | |
| 835 | + | |
| 836 | + | |
| 837 | + | |
| 838 | + | |
| 839 | + | |
| 840 | + | |
| 841 | + | |
| 842 | + | |
| 843 | + | |
| 844 | + | |
| 845 | + | |
838 | 846 | | |
| 847 | + | |
839 | 848 | | |
840 | 849 | | |
841 | 850 | | |
| |||
885 | 894 | | |
886 | 895 | | |
887 | 896 | | |
| 897 | + | |
888 | 898 | | |
889 | 899 | | |
890 | 900 | | |
891 | 901 | | |
892 | 902 | | |
893 | 903 | | |
894 | 904 | | |
895 | | - | |
| 905 | + | |
896 | 906 | | |
897 | 907 | | |
898 | 908 | | |
| |||
905 | 915 | | |
906 | 916 | | |
907 | 917 | | |
908 | | - | |
| 918 | + | |
909 | 919 | | |
910 | 920 | | |
911 | 921 | | |
| |||
915 | 925 | | |
916 | 926 | | |
917 | 927 | | |
918 | | - | |
| 928 | + | |
919 | 929 | | |
920 | 930 | | |
921 | 931 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
174 | 174 | | |
175 | 175 | | |
176 | 176 | | |
177 | | - | |
| 177 | + | |
178 | 178 | | |
179 | 179 | | |
180 | 180 | | |
| |||
340 | 340 | | |
341 | 341 | | |
342 | 342 | | |
343 | | - | |
| 343 | + | |
344 | 344 | | |
345 | 345 | | |
346 | 346 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
906 | 906 | | |
907 | 907 | | |
908 | 908 | | |
909 | | - | |
910 | 909 | | |
911 | 910 | | |
912 | 911 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
27 | 27 | | |
28 | 28 | | |
29 | 29 | | |
30 | | - | |
31 | | - | |
32 | | - | |
33 | | - | |
34 | | - | |
35 | | - | |
36 | | - | |
37 | | - | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
38 | 34 | | |
39 | 35 | | |
40 | 36 | | |
41 | 37 | | |
42 | | - | |
43 | 38 | | |
44 | 39 | | |
45 | 40 | | |
46 | | - | |
47 | | - | |
48 | | - | |
49 | | - | |
50 | 41 | | |
51 | 42 | | |
52 | 43 | | |
53 | 44 | | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
54 | 53 | | |
55 | 54 | | |
56 | 55 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
388 | 388 | | |
389 | 389 | | |
390 | 390 | | |
| 391 | + | |
| 392 | + | |
| 393 | + | |
| 394 | + | |
| 395 | + | |
| 396 | + | |
| 397 | + | |
| 398 | + | |
| 399 | + | |
| 400 | + | |
| 401 | + | |
| 402 | + | |
| 403 | + | |
| 404 | + | |
| 405 | + | |
| 406 | + | |
| 407 | + | |
| 408 | + | |
| 409 | + | |
| 410 | + | |
| 411 | + | |
| 412 | + | |
| 413 | + | |
| 414 | + | |
| 415 | + | |
| 416 | + | |
| 417 | + | |
| 418 | + | |
| 419 | + | |
| 420 | + | |
| 421 | + | |
| 422 | + | |
| 423 | + | |
| 424 | + | |
| 425 | + | |
| 426 | + | |
| 427 | + | |
| 428 | + | |
| 429 | + | |
| 430 | + | |
| 431 | + | |
| 432 | + | |
| 433 | + | |
| 434 | + | |
| 435 | + | |
| 436 | + | |
| 437 | + | |
| 438 | + | |
| 439 | + | |
| 440 | + | |
| 441 | + | |
| 442 | + | |
| 443 | + | |
| 444 | + | |
| 445 | + | |
| 446 | + | |
| 447 | + | |
| 448 | + | |
| 449 | + | |
| 450 | + | |
| 451 | + | |
| 452 | + | |
| 453 | + | |
| 454 | + | |
| 455 | + | |
| 456 | + | |
| 457 | + | |
| 458 | + | |
| 459 | + | |
| 460 | + | |
| 461 | + | |
| 462 | + | |
| 463 | + | |
| 464 | + | |
| 465 | + | |
| 466 | + | |
| 467 | + | |
| 468 | + | |
| 469 | + | |
| 470 | + | |
| 471 | + | |
| 472 | + | |
| 473 | + | |
| 474 | + | |
| 475 | + | |
| 476 | + | |
| 477 | + | |
| 478 | + | |
| 479 | + | |
| 480 | + | |
| 481 | + | |
| 482 | + | |
| 483 | + | |
| 484 | + | |
| 485 | + | |
| 486 | + | |
| 487 | + | |
| 488 | + | |
| 489 | + | |
0 commit comments