I have been debugging an odd problem that apparently is arising in web2.stream.FileStream. One thing I noticed while poring over the source is that its read() method will try to instantiate SendfileBuffer if you try to use its sendfile option. However, there's no reference To such a class anywhere in the module or anywhere else in the Twisted source tree, for that matter. I understand that sendfile isn't supported, but it's horrible coding practice to let that just sit there in the source.
As requested by Dialtone, and to borrow liberally from what he wrote in an IRC chat with me today, web2.stream code is pretty badly tested and someone should do something about it. (I would also add that it is pretty badly documented, but that problem is widespread in Twisted's source, despite my ranting about it for years and offering bounties for people to contribute docstrings.) Dialtone says that there are numerous other problems about streams. He says, and I wholeheartedly agree, that they are mostly a substitution for something that already exists in twisted, namely Producer/Consumer. (Please guys, stop chasing butterflies and direct your considerable talents toward improving what already works!) Dialtone says that glyph once wrote a replacement for the CompundStream using Producer/Consumer paradigm; instead of streams, we could use functions that combine different producers or consumers. I can't believe that the world's greatest networking platform *still* doesn't have an adequately supported HTTP server! Best regards, Ed _______________________________________________ Twisted-web mailing list [email protected] http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-web
