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

Make unitests pass with 3.13 #1831

Closed
cooperlees opened this issue Dec 4, 2024 · 2 comments
Closed

Make unitests pass with 3.13 #1831

cooperlees opened this issue Dec 4, 2024 · 2 comments
Labels
bug Something isn't working enhancement New feature or request help wanted Extra attention is needed

Comments

@cooperlees
Copy link
Contributor

s3path and s3 storage plugin are back for fun with my first attempt of python 3.13.

Will take a PR making CI pass with 3.13.

Integreation test on works on 3.13 (only tested on my latest MacOS X M1 laptop):

2024-12-03 22:09:02,962 DEBUG: Closing Master's aiohttp ClientSession and waiting 0.1 seconds (master.py:102)
Bandersnatch PyPI CI finished successfully!
@cooperlees cooperlees added bug Something isn't working enhancement New feature or request help wanted Extra attention is needed labels Dec 4, 2024
@cooperlees
Copy link
Contributor Author

Tested unittests - It's all PureS3Path fun. s3path module claims 3.13 support for 3.13 for 0.6.0.

Error:

self = PureS3Path('/'), args = ('/',), new_parts = ['/']

    def __init__(self, *args):
        super().__init__(*args)
    
        new_parts = list(self.parts)
        for part in new_parts[1:]:
            if part == '..':
                index = new_parts.index(part)
                new_parts.pop(index - 1)
                new_parts.remove(part)
    
        self._raw_paths = new_parts
>       self._load_parts()
E       AttributeError: 'PureS3Path' object has no attribute '_load_parts'

.tox/py3/lib/python3.13/site-packages/s3path/current_version.py:73: AttributeError

Updated to 0.6.0 and we worked on 3.13! Commit pushed here: 228183b

Got a python warning to debug:

src/bandersnatch/tests/test_master.py::test_master_doesnt_raise_if_serial_equal
  /usr/lib64/python3.13/asyncio/base_events.py:745: RuntimeWarning: coroutine method 'aclose' of 'Master.get' was never awaited
    self._ready.clear()
  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.

@cooperlees
Copy link
Contributor Author

cooperlees commented Jan 8, 2025

Everything passes with 3.13 since #1848

Will be in release of 6.7.0

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working enhancement New feature or request help wanted Extra attention is needed
Projects
None yet
Development

No branches or pull requests

1 participant