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

Future support for HTTP/3? #375

Open
NovaAndrom3da opened this issue Apr 15, 2022 · 4 comments
Open

Future support for HTTP/3? #375

NovaAndrom3da opened this issue Apr 15, 2022 · 4 comments

Comments

@NovaAndrom3da
Copy link

Is HTTP/3 in the roadmap for waitress? Or has someone done this on a fork? Any help would be much appreciated.

@digitalresistor
Copy link
Member

Until there are good libraries available for it in Python, it is unlikely that Waitress will support it. As it currently stands HTTP/3 is not yet standardized and is a rapidly changing target.

@NovaAndrom3da
Copy link
Author

Could this be somehow acieved using (iirc) the AIOQUIC module?

@merwok
Copy link

merwok commented Nov 24, 2024

No, waitress is not based on asyncio or modern async/await paradigm, but on predecessor module asynchat.

@digitalresistor
Copy link
Member

I've spent some time looking at replacing the existing asyncore based setup with async/await with asyncio, however the current way of doing IO is deeply integrated into the way waitress works and operates. There is no good abstraction to easily replace, and would require a large rewrite.

I also don't expect there to be a lot to gain making that change.

Adding external libraries like aioquic means that it is also no longer a pure Python web server, as it relies on C extensions and having OpenSSL available to compile against, if there is no wheel for the platform...

If having HTTP/3 in Waitress is a requirement, I'd recommend forking this project. It is unlikely that I will accept the additional complexity and changes necessary to make it work in this current code base.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants