[Twisted-Python] Subproject releases

James Y Knight foom at fuhm.net
Wed Oct 19 12:10:42 EDT 2005


On Oct 18, 2005, at 8:23 PM, Jonathan Lange wrote:

> Are you recommending that we remove filename support from the Trial
> command line?  Or just that we leave the filename support in a
> slightly-broken state, and spit out some warnings?

I was recommending leaving it alone in slightly-broken state.

> If we remove filename support entirely, then there are consequences
> for the buildbot quick build: there will be no easy way to test
> changed files.  Buildbot passes filenames of changed files to Trial
> via the (poorly named) --testmodule option. Sometimes these files are
> actual test modules, which need to be imported and ran.  If we remove
> filename support, we break this buildbot feature.

This also still be broken even if we keep semi-broken filename  
support, unless we also ensure that all of twisted's tests can be run  
without being imported under their proper module name. Sigh.

A possibly better alternative is to write a bit of Twisted-specific  
code for the buildbot quickbuilder to do the backwards translation  
from filename->modulename. That is not very hard (delete "$project/"  
prefix, '.py' suffix, replace '/' with '.'), but it is twisted-repo- 
layout-specific, so it can't really be reasonably done in trial itself.

On Oct 18, 2005, at 8:03 PM, Glyph Lefkowitz wrote:
> While we're at this, should we also be talking about running unit  
> tests
> which are packaged within zipfiles?  It seems like some of the same
> problems might be addressed, as long as we are suggesting that
> specifying filenames for tests is not a good idea.
>
> I'm more interested in testing the actual code packaged in zipfiles  
> than
> running the tests from there, but it seems like having the whole  
> package
> zipped up would be an interesting meta-test case.

Yes, I was thinking about that as well, and it looks like we should  
be able to modify the new recursive code to work inside a zipfile  
(and other setuptools-compatible-loaders). It provides replacement  
listdir, isdir, and exists functions, which is all that this code needs.

James




More information about the Twisted-Python mailing list