Skip to content

setup_requires feature does not handle multiple versions #141

@ghost

Description

Originally reported by: marscher (Bitbucket: marscher, GitHub: marscher)


This seems somehow related to issue323 in distribute.

Why is a not met requirement not simply installed local as an egg and then inserted to path, if it is required via setup_requires?

Scenario:
system wide installation of package A, version 1.0 (which can not be upgraded as non administrative user)
setup_requires=[('A > 1.0')]

Instead of building A > 1.0 before the build process starts, pkg_resources throws a VersionConflict:

#!python

 File "build/bdist.linux-x86_64/egg/pkg_resources.py", line 576, in resolve
    dist = best[req.key] = env.best_match(req, self, installer)
pkg_resources.VersionConflict: (numpy 1.6.2 (/usr/lib/pymodules/python2.7), Requirement.parse('numpy>=1.8'))

Is this behaviour intended? And if that is the case it should be somehow documented, because it is not intuitive.


Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions