[Python-Dev] PEP 8 updates/clarifications

Phillip J. Eby pje at telecommunity.com
Tue Dec 13 18:00:27 CET 2005


At 03:25 PM 12/13/2005 +0000, Michael Hoffman wrote:
>[Jim Fulton]
> > Sure, if you only have one module, and if your module doesn't do any
> > dynamic imports, and if the things your importing don't have dependencies,
> > and ...
> >
> > I think it would be simpler to have a formal dependency system.
>
>More useful, yes, for all the reasons you listed. The fact that people
>are still working on a formal dependency system, however, indicates
>that it is not simpler.

Depends on your definition of "still working on".  I'd characterize the 
dependency system offered by setuptools as receiving fine-tuning, rather 
than being under design or development.  A few things have been tweaked in 
the last few months according to real-world feedback: breadth-first 
processing worked out to be better than depth-first when complex recursive 
dependencies are involved, and the handling of '-' in version numbers 
needed a minor adjustment.

In any case, the algorithms involved are near-trivial; the most complex 
piece is the processing of complex version specifications like 
"CherryPy>=2.1.0,!=2.1.1-rc2,<2.2a" into a series of version intervals.

The only outstanding feature request for the dependency resolution 
algorithm is supporting optional or replaceable dependencies such as "we 
need either scipy *or* Numeric".



More information about the Python-Dev mailing list