Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Test regressions with Python 3.13 #245

Closed
Tracked by #223
musicinmybrain opened this issue Jul 30, 2024 · 1 comment · Fixed by #275 · May be fixed by #270
Closed
Tracked by #223

Test regressions with Python 3.13 #245

musicinmybrain opened this issue Jul 30, 2024 · 1 comment · Fixed by #275 · May be fixed by #270
Labels
bug 🐛 Something isn't working
Milestone

Comments

@musicinmybrain
Copy link

Control test:

$ gh repo clone fsspec/universal_pathlib
$ cd universal_pathlib
$ python3.12 -m venv _e
$ . _e/bin/activate
(_e) $ python --version
Python 3.12.4
(_e) $ pip install -e .[tests,dev]
(_e) $ python -m pytest
[…]
Results (10.55s):
    1073 passed
       1 xpassed
       2 xfailed
     433 skipped
      77 deselected
(_e) $ deactivate

Now, with Python 3.13:

$ python3.13 -m venv _f
$ . _f/bin/activate
(_f) $ python --version
Python 3.13.0b3
(_f) $ pip install -e .[tests,dev]
(_f) $ pip install cffi==1.17.0rc1
(_f) $ python -m pytest
[…]
FAILED upath/tests/implementations/test_data.py::TestUPathDataPath::test_access_to_private_api - AttributeError: _drv
FAILED upath/tests/implementations/test_github.py::TestUPathGitHubPath::test_iterdir - AttributeError: 'super' object has no attribute '_make_child_relpath'
FAILED upath/tests/implementations/test_github.py::TestUPathGitHubPath::test_iterdir2 - AttributeError: 'super' object has no attribute '_make_child_relpath'
FAILED upath/tests/implementations/test_github.py::TestUPathGitHubPath::test_iterdir_trailing_slash - AttributeError: 'super' object has no attribute '_make_child_relpath'
FAILED upath/tests/implementations/test_github.py::TestUPathGitHubPath::test_rmdir_not_empty - AttributeError: 'super' object has no attribute '_make_child_relpath'
FAILED upath/tests/implementations/test_github.py::TestUPathGitHubPath::test_access_to_private_api - AttributeError: _drv
FAILED upath/tests/implementations/test_http.py::TestUPathHttp::test_is_dir - AttributeError: 'super' object has no attribute '_make_child_relpath'
FAILED upath/tests/implementations/test_http.py::TestUPathHttp::test_is_file - AttributeError: 'super' object has no attribute '_make_child_relpath'
FAILED upath/tests/implementations/test_http.py::TestUPathHttp::test_iterdir - AttributeError: 'super' object has no attribute '_make_child_relpath'
FAILED upath/tests/implementations/test_http.py::TestUPathHttp::test_iterdir2 - AttributeError: 'super' object has no attribute '_make_child_relpath'
FAILED upath/tests/implementations/test_http.py::TestUPathHttp::test_iterdir_trailing_slash - AttributeError: 'super' object has no attribute '_make_child_relpath'
FAILED upath/tests/implementations/test_http.py::TestUPathHttp::test_rmdir_not_empty - AttributeError: 'super' object has no attribute '_make_child_relpath'
FAILED upath/tests/implementations/test_http.py::TestUPathHttp::test_access_to_private_api - AttributeError: _drv
FAILED upath/tests/implementations/test_http.py::TestUPathHttp::test_work_at_root - AttributeError: 'super' object has no attribute '_make_child_relpath'
FAILED upath/tests/implementations/test_local.py::TestFSSpecLocal::test_iterdir - AttributeError: 'super' object has no attribute '_make_child_relpath'
FAILED upath/tests/implementations/test_local.py::TestFSSpecLocal::test_iterdir2 - AttributeError: 'super' object has no attribute '_make_child_relpath'
FAILED upath/tests/implementations/test_local.py::TestFSSpecLocal::test_iterdir_trailing_slash - AttributeError: 'super' object has no attribute '_make_child_relpath'
FAILED upath/tests/implementations/test_local.py::TestFSSpecLocal::test_rmdir_not_empty - AttributeError: 'super' object has no attribute '_make_child_relpath'
FAILED upath/tests/implementations/test_local.py::TestFSSpecLocal::test_access_to_private_api - AttributeError: _drv
FAILED upath/tests/implementations/test_local.py::TestRayIOFSSpecLocal::test_iterdir - AttributeError: 'super' object has no attribute '_make_child_relpath'
FAILED upath/tests/implementations/test_local.py::TestRayIOFSSpecLocal::test_iterdir2 - AttributeError: 'super' object has no attribute '_make_child_relpath'
FAILED upath/tests/implementations/test_local.py::TestRayIOFSSpecLocal::test_iterdir_trailing_slash - AttributeError: 'super' object has no attribute '_make_child_relpath'
FAILED upath/tests/implementations/test_local.py::TestRayIOFSSpecLocal::test_rmdir_not_empty - AttributeError: 'super' object has no attribute '_make_child_relpath'
FAILED upath/tests/implementations/test_local.py::TestRayIOFSSpecLocal::test_access_to_private_api - AttributeError: _drv
FAILED upath/tests/implementations/test_memory.py::TestMemoryPath::test_iterdir - AttributeError: 'super' object has no attribute '_make_child_relpath'
FAILED upath/tests/implementations/test_memory.py::TestMemoryPath::test_iterdir2 - AttributeError: 'super' object has no attribute '_make_child_relpath'
FAILED upath/tests/implementations/test_memory.py::TestMemoryPath::test_iterdir_trailing_slash - AttributeError: 'super' object has no attribute '_make_child_relpath'
FAILED upath/tests/implementations/test_memory.py::TestMemoryPath::test_rmdir_not_empty - AttributeError: 'super' object has no attribute '_make_child_relpath'
FAILED upath/tests/implementations/test_memory.py::TestMemoryPath::test_access_to_private_api - AttributeError: _drv
FAILED upath/tests/implementations/test_s3.py::TestUPathS3::test_iterdir - AttributeError: 'super' object has no attribute '_make_child_relpath'
FAILED upath/tests/implementations/test_s3.py::TestUPathS3::test_iterdir2 - AttributeError: 'super' object has no attribute '_make_child_relpath'
FAILED upath/tests/implementations/test_s3.py::TestUPathS3::test_iterdir_trailing_slash - AttributeError: 'super' object has no attribute '_make_child_relpath'
FAILED upath/tests/implementations/test_s3.py::TestUPathS3::test_rmdir_not_empty - AttributeError: 'super' object has no attribute '_make_child_relpath'
FAILED upath/tests/implementations/test_s3.py::TestUPathS3::test_access_to_private_api - AttributeError: _drv
FAILED upath/tests/implementations/test_s3.py::TestUPathS3::test_iterdir_root - AttributeError: 'super' object has no attribute '_make_child_relpath'
FAILED upath/tests/implementations/test_s3.py::TestUPathS3::test_iterdir_with_plus_in_name - AttributeError: 'super' object has no attribute '_make_child_relpath'
FAILED upath/tests/implementations/test_webdav.py::TestUPathWebdav::test_iterdir - AttributeError: 'super' object has no attribute '_make_child_relpath'
FAILED upath/tests/implementations/test_webdav.py::TestUPathWebdav::test_iterdir2 - AttributeError: 'super' object has no attribute '_make_child_relpath'
FAILED upath/tests/implementations/test_webdav.py::TestUPathWebdav::test_iterdir_trailing_slash - AttributeError: 'super' object has no attribute '_make_child_relpath'
FAILED upath/tests/implementations/test_webdav.py::TestUPathWebdav::test_rmdir_not_empty - AttributeError: 'super' object has no attribute '_make_child_relpath'
FAILED upath/tests/implementations/test_webdav.py::TestUPathWebdav::test_access_to_private_api - AttributeError: _drv
FAILED upath/tests/test_core.py::TestUpath::test_iterdir - AttributeError: 'super' object has no attribute '_make_child_relpath'
FAILED upath/tests/test_core.py::TestUpath::test_iterdir2 - AttributeError: 'super' object has no attribute '_make_child_relpath'
FAILED upath/tests/test_core.py::TestUpath::test_iterdir_trailing_slash - AttributeError: 'super' object has no attribute '_make_child_relpath'
FAILED upath/tests/test_core.py::TestUpath::test_rmdir_not_empty - AttributeError: 'super' object has no attribute '_make_child_relpath'
FAILED upath/tests/test_core.py::TestUpath::test_access_to_private_api - AttributeError: _drv
FAILED upath/tests/test_core.py::test_normalize[http://example.com/a/../..//-http://example.com//] - AssertionError: assert HTTPPath('http://example.com//') == HTTPPath('http://example.com/')
FAILED upath/tests/test_core.py::test_normalize[http://example.com/a/..//-http://example.com//] - AssertionError: assert HTTPPath('http://example.com//') == HTTPPath('http://example.com/')
FAILED upath/tests/test_core.py::test_normalize[http://example.com/a/..//.-http://example.com//] - AssertionError: assert HTTPPath('http://example.com//') == HTTPPath('http://example.com/')
FAILED upath/tests/test_core.py::test_normalize[http://example.com/a/..//b-http://example.com//b] - AssertionError: assert HTTPPath('http://example.com//b') == HTTPPath('http://example.com/b')
FAILED upath/tests/test_core.py::test_normalize[http://example.com/a//../..//-http://example.com//] - AssertionError: assert HTTPPath('http://example.com//') == HTTPPath('http://example.com/')
FAILED upath/tests/test_core.py::test_normalize[http://example.com/a//..//-http://example.com/a//] - AssertionError: assert HTTPPath('http://example.com/a//') == HTTPPath('http://example.com/a/')
FAILED upath/tests/test_core.py::test_normalize[http://example.com/a//..//.-http://example.com/a//] - AssertionError: assert HTTPPath('http://example.com/a//') == HTTPPath('http://example.com/a/')
FAILED upath/tests/test_core.py::test_normalize[http://example.com/a//..//b-http://example.com/a//b] - AssertionError: assert HTTPPath('http://example.com/a//b') == HTTPPath('http://example.com/a/b')

Results (9.60s):
     739 passed
       1 xpassed
      54 failed
         - upath/tests/cases.py:511 TestUPathDataPath.test_access_to_private_api
         - upath/tests/cases.py:136 TestUPathGitHubPath.test_iterdir
         - upath/tests/cases.py:150 TestUPathGitHubPath.test_iterdir2
         - upath/tests/cases.py:163 TestUPathGitHubPath.test_iterdir_trailing_slash
         - upath/tests/cases.py:470 TestUPathGitHubPath.test_rmdir_not_empty
         - upath/tests/cases.py:511 TestUPathGitHubPath.test_access_to_private_api
         - upath/tests/cases.py:104 TestUPathHttp.test_is_dir
         - upath/tests/cases.py:111 TestUPathHttp.test_is_file
         - upath/tests/cases.py:136 TestUPathHttp.test_iterdir
         - upath/tests/cases.py:150 TestUPathHttp.test_iterdir2
         - upath/tests/cases.py:163 TestUPathHttp.test_iterdir_trailing_slash
         - upath/tests/cases.py:470 TestUPathHttp.test_rmdir_not_empty
         - upath/tests/cases.py:511 TestUPathHttp.test_access_to_private_api
         - upath/tests/implementations/test_http.py:39 TestUPathHttp.test_work_at_root
         - upath/tests/cases.py:136 TestFSSpecLocal.test_iterdir
         - upath/tests/cases.py:150 TestFSSpecLocal.test_iterdir2
         - upath/tests/cases.py:163 TestFSSpecLocal.test_iterdir_trailing_slash
         - upath/tests/cases.py:470 TestFSSpecLocal.test_rmdir_not_empty
         - upath/tests/cases.py:511 TestFSSpecLocal.test_access_to_private_api
         - upath/tests/cases.py:136 TestRayIOFSSpecLocal.test_iterdir
         - upath/tests/cases.py:150 TestRayIOFSSpecLocal.test_iterdir2
         - upath/tests/cases.py:163 TestRayIOFSSpecLocal.test_iterdir_trailing_slash
         - upath/tests/cases.py:470 TestRayIOFSSpecLocal.test_rmdir_not_empty
         - upath/tests/cases.py:511 TestRayIOFSSpecLocal.test_access_to_private_api
         - upath/tests/cases.py:136 TestMemoryPath.test_iterdir
         - upath/tests/cases.py:150 TestMemoryPath.test_iterdir2
         - upath/tests/cases.py:163 TestMemoryPath.test_iterdir_trailing_slash
         - upath/tests/cases.py:470 TestMemoryPath.test_rmdir_not_empty
         - upath/tests/cases.py:511 TestMemoryPath.test_access_to_private_api
         - upath/tests/cases.py:136 TestUPathS3.test_iterdir
         - upath/tests/cases.py:150 TestUPathS3.test_iterdir2
         - upath/tests/cases.py:163 TestUPathS3.test_iterdir_trailing_slash
         - upath/tests/cases.py:470 TestUPathS3.test_rmdir_not_empty
         - upath/tests/cases.py:511 TestUPathS3.test_access_to_private_api
         - upath/tests/implementations/test_s3.py:44 TestUPathS3.test_iterdir_root
         - upath/tests/implementations/test_s3.py:82 TestUPathS3.test_iterdir_with_plus_in_name
         - upath/tests/cases.py:136 TestUPathWebdav.test_iterdir
         - upath/tests/cases.py:150 TestUPathWebdav.test_iterdir2
         - upath/tests/cases.py:163 TestUPathWebdav.test_iterdir_trailing_slash
         - upath/tests/cases.py:470 TestUPathWebdav.test_rmdir_not_empty
         - upath/tests/cases.py:511 TestUPathWebdav.test_access_to_private_api
         - upath/tests/cases.py:136 TestUpath.test_iterdir
         - upath/tests/cases.py:150 TestUpath.test_iterdir2
         - upath/tests/cases.py:163 TestUpath.test_iterdir_trailing_slash
         - upath/tests/cases.py:470 TestUpath.test_rmdir_not_empty
         - upath/tests/cases.py:511 TestUpath.test_access_to_private_api
         - upath/tests/test_core.py:389 test_normalize[http://example.com/a/../..//-http://example.com//]
         - upath/tests/test_core.py:389 test_normalize[http://example.com/a/..//-http://example.com//]
         - upath/tests/test_core.py:389 test_normalize[http://example.com/a/..//.-http://example.com//]
         - upath/tests/test_core.py:389 test_normalize[http://example.com/a/..//b-http://example.com//b]
         - upath/tests/test_core.py:389 test_normalize[http://example.com/a//../..//-http://example.com//]
         - upath/tests/test_core.py:389 test_normalize[http://example.com/a//..//-http://example.com/a//]
         - upath/tests/test_core.py:389 test_normalize[http://example.com/a//..//.-http://example.com/a//]
         - upath/tests/test_core.py:389 test_normalize[http://example.com/a//..//b-http://example.com/a//b]
       2 xfailed
     286 skipped
      77 deselected
(_f) $ deactivate

At the time of reporting, main was 92675f0.

This is related to #221. I opened this issue to track specific regressions in Python 3.13.

@ap--
Copy link
Collaborator

ap-- commented Jul 30, 2024

Thank you for the report. It looks like to support 3.13 we should finally refactor and move to pathlib-abc #193

@ap-- ap-- added the bug 🐛 Something isn't working label Jul 30, 2024
@ap-- ap-- added this to the v0.3.0 milestone Aug 23, 2024
This was referenced Sep 3, 2024
@ap-- ap-- modified the milestones: v0.3.0, v0.2.5 Sep 8, 2024
@ap-- ap-- closed this as completed in #275 Sep 8, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug 🐛 Something isn't working
Projects
None yet
2 participants