8000 Numpy should be installable with setuptool's easy_install (Trac #81) · Issue #679 · numpy/numpy · GitHub
[go: up one dir, main page]

Skip to content

Numpy should be installable with setuptool's easy_install (Trac #81) #679

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
numpy-gitbot opened this issue Oct 19, 2012 · 2 comments
Closed

Comments

@numpy-gitbot
Copy link

Original ticket http://projects.scipy.org/numpy/ticket/81 on 2006-04-26 by @dmcooke, assigned to @dmcooke.

Currently, with the 0.9.6 release, easy_install run as
easy_install numpy will find the right source file for 0.9.6 on sourceforge, but the setup.py fails.

When testing to get this working, this is useful:

easy_install -f 'http://svn.scipy.org/svn/numpy/trunk#egg=numpy-dev' numpy==dev

to grab the version out of subversion, or make an sdist .tar.gz, and put it on a local webserver.

I'm going to try to get this working before the 0.9.8 release.

@numpy-gitbot
Copy link
Author

@dmcooke wrote on 2006-05-15

(It's easier to use easy_install <numpy_source_directory> for testing, btw.)

This looks like it's going to be a real bear to fix. Setuptools and numpy.distutils use of the data_files argument to setup() look to be incompatible. It looks like setuptools does away with data_files entirely, in preference to package_data. We could use package_data instead, but that looks like it requires the data files to actually be in the package in the source tree, which we can't guarantee (for instance, including the generated header files).

@numpy-gitbot
Copy link
Author

@dmcooke wrote on 2006-05-16

Actually, I was wrong.

A Configuration object, when asked to add data files (or include directories, or scripts), will either add them to itself, or add them to distutils.core._setup_distribution, if the later is not None. This last bit is necessary for code that adds data files after setup is called (like that which generates the include files for the C API). distutils.core._setup_distribution is set by setup.

However, easy_install has a call to a barebones setup(), which ends up executing the package's call to setup(). That means distutils.core._setup_distribution is set to something not None (it 710B uses a class defined internally to the main() function in setuptools.command.easy_install), which does not allow the same things as the usual one would. Plus, it gets replaced by the package's call to setup().

The fix in r2505 is to check if distutils.core._setup_distribution is this temporary Distribution object, and if so, don't use it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

1 participant
0