[Twisted-Python] Slow PB imports
glyph at twistedmatrix.com
Wed Nov 2 18:51:07 EDT 2011
On Nov 2, 2011, at 9:10 AM, Itamar Turner-Trauring wrote:
> On Wed, 2011-11-02 at 13:01 +0000, exarkun at twistedmatrix.com wrote:
>> This isn't a great idea, since Twisted doesn't support being installed
>> as a zipfile (which is what I guess you meant, since a .egg directory
>> wouldn't be any different from the standard installation in terms of
>> import performance).
> Oh right, plugins don't work or something?
Actually, you can pre-generate a dropin.cache for your zip file, and the plugin system will work fine out of a zip file, since about 5 years ago: <http://twistedmatrix.com/trac/changeset/19305>.
Basically, portions of Twisted can work just fine out of a zip file, and it might be adequate for many applications. But (A) we don't have a buildbot anywhere that tests things in a zipfile configuration, and (B) there are many, many modules within Twisted, especially within tests, which expect that they can look at __file__ and assume it's a path on the filesystem. So big chunks of it definitely won't work.
I'd love to fix this, but it is just _super_ low priority for me right now; I kinda hope that someone else will show up with another embedded system running Twisted and do some work in this area, since the last time I genuinely cared about zip files was when I was putting Twisted on a tiny flash card to install in buses :).
More information about the Twisted-Python