Bug 281877

Summary: Python 3.13 support
Product: WebKit Reporter: Sam Sneddon [:gsnedders] <gsnedders>
Component: Tools / TestsAssignee: Nobody <webkit-unassigned>
Status: NEW    
Severity: Normal CC: Hironori.Fujii, webkit-bug-importer
Priority: P2 Keywords: InRadar
Version: Other   
Hardware: Unspecified   
OS: Unspecified   
See Also: https://bugs.webkit.org/show_bug.cgi?id=261113
Bug Depends on: 282197    
Bug Blocks:    

Sam Sneddon [:gsnedders]
Reported 2024-10-21 15:03:57 PDT
With Python 3.13 in a venv, with setuptools installed (see bug 261113), we potentially surprisingly almost manage to work: We get: No archives for zope-interface-7.0.1 found No archives for MarkupSafe-2.1.5 found Both of these are modules where we require wheels, and neither have Python 3.13 wheels for macOS: see https://pypi.org/project/zope.interface/7.0.1/#files and https://pypi.org/project/MarkupSafe/2.1.5/#files That said, I can't see anything that requires zope-interface-7.0.1, though MarkupSafe-2.1.5 is required by jinja2 which we use in a couple of places. Perhaps surprisingly, all the webkitpy tests do appear to pass on Python 3.13, but we get yet more deprecation warnings.
Attachments
Radar WebKit Bug Importer
Comment 1 2024-10-21 15:04:17 PDT
Sam Sneddon [:gsnedders]
Comment 2 2024-10-21 16:00:52 PDT
Running more than just webkitpy, one discovers webkitflaskpy depends on hiredis-3.0.0 and lupa-2.2, neither of which have 3.13 wheels. But again, with them installed from source, we do actually pass all tests on Python 3.13.
Sam Sneddon [:gsnedders]
Comment 3 2024-10-21 16:08:03 PDT
So I think the main thing necessary for 3.13 support is upgrading pyfakefs to avoid https://github.com/pytest-dev/pyfakefs/issues/1017, and then we're gonna need to bump versions of the other dependencies or allow them to install (compile) from source.
Sam Sneddon [:gsnedders]
Comment 4 2024-10-21 16:11:55 PDT
Oh, and I forgot to mention "upgrading cffi", which is also necessary.
Note You need to log in before you can comment on or make changes to this bug.