[Distutils] setuptools on jython

Philip Jenvey pjenvey at groovie.org
Sun Jan 13 02:57:48 CET 2008

On Jan 11, 2008, at 8:51 PM, Phillip J. Eby wrote:

> At 07:57 PM 1/11/2008 -0800, Philip Jenvey wrote:
>> Jython trunk has made a lot of progress on setuptools support. The
>> gory details are here:
>> http://wiki.python.org/jython/SetuptoolsOnJython
> By the way, the reason setuptools uses -E for the subprocess is so  
> that Python will ignore any environment variables such as  
> PYTHONPATH et al.  It's not clear to me whether making -E a no-op  
> for Jython will actually make this work correctly.

Right, Jython doesn't support environment variables (a historical  
thing) -- its equivalent is the 'registry', a java properties file. I  
actually held off on having -E disable the registry because I have a  
feeling there could be evil repercussions, like jython not working at  
all in some environments. I have to investigate more before going  
that route.

> I also have some concerns about how the $py.class stuff will work  
> with distutils in general as well as setuptools in particular, but  
> I've tried as much as possible to make setuptools follow the  
> distutils rather than do its own thing.  So hopefully most of the  
> relevant things will be taken care of by Jython-level distutils  
> patches.

distutils support was just recently added, specifically for  
setuptools =]. It probably has some rough edges still -- but I'm  
thinking setuptools will be in pretty good shape after these two  

>> o to find un-zip_safe variables/calls when a distribution doesn't
>> specify zip_safetyness. Probably the easiest way to deal with this is
>> to just fallback to zip_safe=False on these platforms
> That's probably reasonable.  An alternative would be to use the  
> tokenize module to read the source code, since all it really does  
> is look at name tokens and string constants, which can both be  
> identified via tokenization without any higher-level parsing.

There's always the rare case of an egg containing only byte code,  
though. Not that I've ever seen eggs like this, but I've heard talk  
of them before.

Attached is a simple patch to disable the zip_safe scan on Jython/ 
IronPython. Maybe in the future we can use tokenize when all of the  
source code is present in an archive.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: jython_zip_safe-r59934.diff
Type: application/octet-stream
Size: 978 bytes
Desc: not available
Url : http://mail.python.org/pipermail/distutils-sig/attachments/20080112/235e8f96/attachment.obj 
-------------- next part --------------

Philip Jenvey

More information about the Distutils-SIG mailing list