Hello Twisted list,
We had a brief Twisted birds-of-a-feather session at PyCon 2024.
One issue that came up was that while Twisted works fine for the things that it
does, we don't have a great onboarding process to motivate new developers to
get involved and maintain it or build new things. In particular, Twisted's
main value these days is no longer in the reactor, as the stdlib's core asyncio
functionality is quite capable, but in our suite of protocol implementations
and integrations. However, "it's got a ton of custom wire protocols" is less
interesting in an era where there are fewer mainstream things that use custom
wire protocols. So what are interesting things that we already do with wire
protocols that, with a fresh coat of paint, could appeal to an audience of new
developers to revitalize the project in general?
To that end, we discussed a few projects:
We should resurrect the effort to build a first-party websockets
implementation: <https://github.com/twisted/twisted/issues/4173>. It's been
nice to have Autobahn available, but websockets are by far the quickest and
easiest way to provide a native demonstration of Twisted's capabilities.
Luckily, we do not have to build an implementation ourselves, as a maintained
sans-io kernel implementation exists in the
<https://github.com/python-hyper/wsproto> project. So we just need to do a
direct integration with the Resource model in twisted.web. I will probably do
some work on this project myself.
Twitch's chat is IRC <https://dev.twitch.tv/docs/irc/>, but Twisted's IRC
implementation is missing some implementation details. An IRC bot tutorial
could thus actually be a very relevant introduction to a large audience of
developers. Joel McGrady has volunteered for this effort and has written up
some of the IRCv3 issues that will need addressing as part of it:
https://github.com/twisted/twisted/issues/12180
We could probably do something interesting and fun with email, if we updated
twisted.mail to make sure it worked with recent mail clients and did a little
tutorial? Email is still relentlessly popular despite decades of progress.
Nobody has volunteered for this yet.
We already have a ton of work on SMB that just needs to be un-stuck, both in
terms of reviews and fixes: <https://github.com/twisted/twisted/pull/1274>. I
really appreciate Ian contributing this to Twisted and I'd like it to see it
eventually make it into a release, so I'm highlighting it here. If anyone
wants to pick up responding to review feedback, you can make a fork of his
fork, grab the branch and open a new PR to start addressing things.
Everyone then mumbled "HTTP/3"? But nobody seemed to actually care about that.
All of these efforts should be done documentation-first, to try to evaluate how
to build a successor to the aging "finger" tutorial series, and to make sure
that we have something to point new developers at so that they can find their
way around Twisted.
-g
_______________________________________________
Twisted mailing list -- twisted@python.org
To unsubscribe send an email to twisted-le...@python.org
https://mail.python.org/mailman3/lists/twisted.python.org/
Message archived at
https://mail.python.org/archives/list/twisted@python.org/message/XGSMXM3X2IVD7GEUI3AKYTP2YTJK356M/
Code of Conduct: https://twisted.org/conduct