-
-
Notifications
You must be signed in to change notification settings - Fork 2.1k
Closed
Labels
Description
Overview
Hey team, sorry if this is a duplicate but I didn't see any other related issue.
Per PEP 0745, Python 3.14 is scheduled to release next month on 2025-10-07
. I noticed our repo's CI failing when trying to run on 3.14-dev
and discovered it was due to not being able to install aiohttp
on ubuntu when using Python 3.14.
Is there ongoing work or a timeline for getting this issue resolved? Would appreciate any update here, thank you!
Reproduction Steps
Try to install aiohttp using Python 3.14 on an ubuntu machine:
ubuntu@ip-172-31-28-218:~$ uv venv -p 3.14
Using CPython 3.14.0rc2 interpreter at: .local/bin/python3.14
Creating virtual environment at: .venv
Activate with: source .venv/bin/activate
ubuntu@ip-172-31-28-218:~$ . .venv/bin/activate
(ubuntu) ubuntu@ip-172-31-28-218:~$ uv pip install aiohttp
Resolved 9 packages in 132ms
× Failed to build `aiohttp==3.12.15`
├─▶ The build backend returned an error
╰─▶ Call to `setuptools.build_meta.build_wheel` failed (exit status: 1)
[stdout]
running bdist_wheel
running build
running build_py
copying aiohttp/client_middlewares.py -> build/lib.linux-x86_64-cpython-314/aiohttp
copying aiohttp/http_exceptions.py -> build/lib.linux-x86_64-cpython-314/aiohttp
copying aiohttp/typedefs.py -> build/lib.linux-x86_64-cpython-314/aiohttp
copying aiohttp/__init__.py -> build/lib.linux-x86_64-cpython-314/aiohttp
copying aiohttp/multipart.py -> build/lib.linux-x86_64-cpython-314/aiohttp
copying aiohttp/worker.py -> build/lib.linux-x86_64-cpython-314/aiohttp
copying aiohttp/streams.py -> build/lib.linux-x86_64-cpython-314/aiohttp
copying aiohttp/web_middlewares.py -> build/lib.linux-x86_64-cpython-314/aiohttp
copying aiohttp/http_websocket.py -> build/lib.linux-x86_64-cpython-314/aiohttp
copying aiohttp/base_protocol.py -> build/lib.linux-x86_64-cpython-314/aiohttp
copying aiohttp/web_app.py -> build/lib.linux-x86_64-cpython-314/aiohttp
copying aiohttp/resolver.py -> build/lib.linux-x86_64-cpython-314/aiohttp
copying aiohttp/cookiejar.py -> build/lib.linux-x86_64-cpython-314/aiohttp
copying aiohttp/web_urldispatcher.py -> build/lib.linux-x86_64-cpython-314/aiohttp
copying aiohttp/client_exceptions.py -> build/lib.linux-x86_64-cpython-314/aiohttp
copying aiohttp/payload.py -> build/lib.linux-x86_64-cpython-314/aiohttp
copying aiohttp/abc.py -> build/lib.linux-x86_64-cpython-314/aiohttp
copying aiohttp/_cookie_helpers.py -> build/lib.linux-x86_64-cpython-314/aiohttp
copying aiohttp/web_routedef.py -> build/lib.linux-x86_64-cpython-314/aiohttp
copying aiohttp/web_server.py -> build/lib.linux-x86_64-cpython-314/aiohttp
copying aiohttp/web_protocol.py -> build/lib.linux-x86_64-cpython-314/aiohttp
copying aiohttp/formdata.py -> build/lib.linux-x86_64-cpython-314/aiohttp
copying aiohttp/hdrs.py -> build/lib.linux-x86_64-cpython-314/aiohttp
copying aiohttp/web_request.py -> build/lib.linux-x86_64-cpython-314/aiohttp
copying aiohttp/client_proto.py -> build/lib.linux-x86_64-cpython-314/aiohttp
copying aiohttp/tracing.py -> build/lib.linux-x86_64-cpython-314/aiohttp
copying aiohttp/tcp_helpers.py -> build/lib.linux-x86_64-cpython-314/aiohttp
copying aiohttp/web.py -> build/lib.linux-x86_64-cpython-314/aiohttp
copying aiohttp/web_fileresponse.py -> build/lib.linux-x86_64-cpython-314/aiohttp
copying aiohttp/http.py -> build/lib.linux-x86_64-cpython-314/aiohttp
copying aiohttp/pytest_plugin.py -> build/lib.linux-x86_64-cpython-314/aiohttp
copying aiohttp/http_parser.py -> build/lib.linux-x86_64-cpython-314/aiohttp
copying aiohttp/compression_utils.py -> build/lib.linux-x86_64-cpython-314/aiohttp
copying aiohttp/client_middleware_digest_auth.py -> build/lib.linux-x86_64-cpython-314/aiohttp
copying aiohttp/log.py -> build/lib.linux-x86_64-cpython-314/aiohttp
copying aiohttp/web_runner.py -> build/lib.linux-x86_64-cpython-314/aiohttp
copying aiohttp/web_log.py -> build/lib.linux-x86_64-cpython-314/aiohttp
copying aiohttp/test_utils.py -> build/lib.linux-x86_64-cpython-314/aiohttp
copying aiohttp/client_ws.py -> build/lib.linux-x86_64-cpython-314/aiohttp
copying aiohttp/web_exceptions.py -> build/lib.linux-x86_64-cpython-314/aiohttp
copying aiohttp/payload_streamer.py -> build/lib.linux-x86_64-cpython-314/aiohttp
copying aiohttp/client.py -> build/lib.linux-x86_64-cpython-314/aiohttp
copying aiohttp/helpers.py -> build/lib.linux-x86_64-cpython-314/aiohttp
copying aiohttp/web_response.py -> build/lib.linux-x86_64-cpython-314/aiohttp
copying aiohttp/http_writer.py -> build/lib.linux-x86_64-cpython-314/aiohttp
copying aiohttp/web_ws.py -> build/lib.linux-x86_64-cpython-314/aiohttp
copying aiohttp/connector.py -> build/lib.linux-x86_64-cpython-314/aiohttp
copying aiohttp/client_reqrep.py -> build/lib.linux-x86_64-cpython-314/aiohttp
copying aiohttp/_websocket/__init__.py -> build/lib.linux-x86_64-cpython-314/aiohttp/_websocket
copying aiohttp/_websocket/models.py -> build/lib.linux-x86_64-cpython-314/aiohttp/_websocket
copying aiohttp/_websocket/reader_c.py -> build/lib.linux-x86_64-cpython-314/aiohttp/_websocket
copying aiohttp/_websocket/helpers.py -> build/lib.linux-x86_64-cpython-314/aiohttp/_websocket
copying aiohttp/_websocket/writer.py -> build/lib.linux-x86_64-cpython-314/aiohttp/_websocket
copying aiohttp/_websocket/reader.py -> build/lib.linux-x86_64-cpython-314/aiohttp/_websocket
copying aiohttp/_websocket/reader_py.py -> build/lib.linux-x86_64-cpython-314/aiohttp/_websocket
running egg_info
writing aiohttp.egg-info/PKG-INFO
writing dependency_links to aiohttp.egg-info/dependency_links.txt
writing requirements to aiohttp.egg-info/requires.txt
writing top-level names to aiohttp.egg-info/top_level.txt
reading manifest file 'aiohttp.egg-info/SOURCES.txt'
reading manifest template 'MANIFEST.in'
adding license file 'LICENSE.txt'
adding license file 'vendor/llhttp/LICENSE'
writing manifest file 'aiohttp.egg-info/SOURCES.txt'
copying aiohttp/_cparser.pxd -> build/lib.linux-x86_64-cpython-314/aiohttp
copying aiohttp/_find_header.pxd -> build/lib.linux-x86_64-cpython-314/aiohttp
copying aiohttp/_headers.pxi -> build/lib.linux-x86_64-cpython-314/aiohttp
copying aiohttp/_http_parser.pyx -> build/lib.linux-x86_64-cpython-314/aiohttp
copying aiohttp/_http_writer.pyx -> build/lib.linux-x86_64-cpython-314/aiohttp
copying aiohttp/py.typed -> build/lib.linux-x86_64-cpython-314/aiohttp
copying aiohttp/.hash/_cparser.pxd.hash -> build/lib.linux-x86_64-cpython-314/aiohttp/.hash
copying aiohttp/.hash/_find_header.pxd.hash -> build/lib.linux-x86_64-cpython-314/aiohttp/.hash
copying aiohttp/.hash/_http_parser.pyx.hash -> build/lib.linux-x86_64-cpython-314/aiohttp/.hash
copying aiohttp/.hash/_http_writer.pyx.hash -> build/lib.linux-x86_64-cpython-314/aiohttp/.hash
copying aiohttp/.hash/hdrs.py.hash -> build/lib.linux-x86_64-cpython-314/aiohttp/.hash
copying aiohttp/_websocket/mask.pxd -> build/lib.linux-x86_64-cpython-314/aiohttp/_websocket
copying aiohttp/_websocket/mask.pyx -> build/lib.linux-x86_64-cpython-314/aiohttp/_websocket
copying aiohttp/_websocket/reader_c.pxd -> build/lib.linux-x86_64-cpython-314/aiohttp/_websocket
copying aiohttp/_websocket/.hash/mask.pxd.hash -> build/lib.linux-x86_64-cpython-314/aiohttp/_websocket/.hash
copying aiohttp/_websocket/.hash/mask.pyx.hash -> build/lib.linux-x86_64-cpython-314/aiohttp/_websocket/.hash
copying aiohttp/_websocket/.hash/reader_c.pxd.hash -> build/lib.linux-x86_64-cpython-314/aiohttp/_websocket/.hash
running build_ext
building 'aiohttp._websocket.mask' extension
cc -pthread -fno-strict-overflow -Wsign-compare -Wunreachable-code -DNDEBUG -g -O3 -Wall -fPIC -fPIC -I/home/ubuntu/.cache/uv/builds-v0/.tmplRRJVM/include -I/home/ubuntu/.local/share/uv/python/cpython-3.14.0rc2-linux-x86_64-gnu/include/python3.14
-c aiohttp/_websocket/mask.c -o build/temp.linux-x86_64-cpython-314/aiohttp/_websocket/mask.o
[stderr]
*********************
* Accelerated build *
*********************
warning: no files found matching 'aiohttp' anywhere in distribution
warning: no files found matching '*.pyi' anywhere in distribution
warning: no previously-included files matching '*.pyc' found anywhere in distribution
warning: no previously-included files matching '*.pyd' found anywhere in distribution
warning: no previously-included files matching '*.so' found anywhere in distribution
warning: no previously-included files matching '*.lib' found anywhere in distribution
warning: no previously-included files matching '*.dll' found anywhere in distribution
warning: no previously-included files matching '*.a' found anywhere in distribution
warning: no previously-included files matching '*.obj' found anywhere in distribution
warning: no previously-included files found matching 'aiohttp/*.html'
no previously-included directories found matching 'docs/_build'
error: command 'cc' failed: No such file or directory
hint: This usually indicates a problem with the package or the build environment.
Describe the solution you'd like
Aiohttp to be installable using Python 3.14 on ubuntu.
Describe alternatives you've considered
N/A
Related component
Client
Additional context
No response
Code of Conduct
- I agree to follow the aio-libs Code of Conduct