> It seems like the need for this tool could have been obviated if "twistd > web" had better support for composing plugins of its own. I'd encourage you > to look at 'twistd web --help' and see if maybe some future release can > provide all the functionality you want.
Yes, I think that it would be able to do the same things. The only unknown is whether it would be easy to use. I think if you added an rc-file type thing for the web plugin, it would work quite nicely. The more I think about it, the more I like it. This turned into four bugs: * #3752 to add the composable command line options * #3753 to add the overlay resource infrastructure * #3755 to add a proxy/reverse proxy option * #3756 to add simple configuration files If twistd web and twisted.web had those four things, it would totally rock my world and there would not be a need for Tape. > HTTPFactory should take a FilePath-like object (not a file-like object, > since it may need to control when the log is opened and closed. #3757 > _openLogFile is specifically documented as being for overriding in > subclasses, yet it's private. That doesn't make much sense. Luckily the > interface is broken anyway, so when we switch over to using a FilePath we > can switch. #3758 > While we're at it, twisted.python.logfile should really be updated to use > FilePath as well, rather than direct os.path operations. #3759 > The CLF-formatting logic really ought to be separated from the code that > decides to actually write it to a file. Off the top of my head it really > seems like this should be a method on Request, but a free function would be > fine too. #3760 > In addition, there's this bug: > > http://twistedmatrix.com/trac/ticket/75 > > which is maybe too vague to actually be actionable, but I think the idea was > to publish Request objects with a custom format string via > twisted.python.log. I updated #75 to point to the other 4 bugs. >> * log() never gets called when a ReverseProxyResource is used. It >> appears as though request.finish() is never called, though I wasn't >> able to fully track this down. I find this behavior very odd. > > This one's an existing bug: > > http://twistedmatrix.com/trac/ticket/2677 > > Please feel free to attach commentary. Done. > * In the long term, static.File really ought to compose in a FilePath, not > inherit from it. I don't know if it's possible to salvage static.File in > its current state; I think we need a new static-content class that generally > works the right way. I'm not sure I'm the best person to write this bug. Perhaps you could do a quick brain dump into a ticket so it doesn't get lost. > * The parameters to __init__ should obviously be documented. #3761 > * createSimilarFile should be documented. #3762 > In Nevow and web2, locateChild allows you to consume multiple segments at > once. The plan has always been to port these to twisted.web, but I can't > find a ticket for that plan. #3763 >> * ReverseProxyResource returns nothing if you don't give it a '/' at >> the end. I had to work around this by doing a redirect in the >> subclass and then returning a new ReverseProxyResource when the '' >> child is accessed. It seems that if ReverseProxyResource's path is >> '', it just keels over with no error. > > This could do with a bit more detail (mostly about what "keels over" means), > but certainly sounds like a valid bug. Fair enough. The server literally hangs up the connection without returning any response. #3764 Thanks for your help; it was certainly useful to help me file better reports. jack. _______________________________________________ Twisted-web mailing list [email protected] http://twistedmatrix.com/cgi-bin/mailman/listinfo/twisted-web
