[Distutils] [Python-Dev] distlib updated with resources API

David Cournapeau cournape at gmail.com
Mon Oct 1 00:50:49 CEST 2012


On Sun, Sep 30, 2012 at 11:35 PM, Donald Stufft <donald.stufft at gmail.com> wrote:
> On Sunday, September 30, 2012 at 6:21 PM, David Cournapeau wrote:
>
> Right, in that case, it would work, but in my experience, it is
> important to be able to apply conditionals to more than just
> requirements (packages definition and so on).
>
> A significant problem is caused by the allowance of if statements in
> setup.py for trying to generically pull data out. Obviously the limited
> conditionals of Bento make that easier, but you still need to essentially
> maintain a matrix of every possible combination of conditions in order
> to accurately represent that data when you don't know what the target
> system is going to look at. If other fields benefit from the environment
> markers then by all means lets add them to other fields.
>
> A static piece of metadata that is unchanging is a powerful tool on the
> index side. It allows some of the current stuff i've been experimenting
> with to work very cleanly, such as being able to fetch an entire dependency
> tree in one request.

I am not sure I understand the argument: whatever the syntax, if the
feature is there, you will have the same problem ? The fact that it is
used by existing solutions tend to convince me it is not a problem
(cabal works much better than distutils/etc... in pretty much every
way, including installing things with dependency from their package
servers, not to speak about RPM).

This could be abused of course, but it should not be too difficult to
give suggestions in those cases (one big advantage of
whatever-format-we-want compared to setup.py).

Conditional markers do make the dependency harder to get right, as
conditional in dependencies + provides is what makes dependency graph
building complicated. It seems this can be solved neatly though (see
http://www.slideshare.net/naderman/dependency-resolution-with-sat-symfony-live-2011-paris).

David


More information about the Distutils-SIG mailing list