Skip to content
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

BLD: Fix build issues #2007

Merged
merged 2 commits into from Sep 25, 2014

Conversation

Projects
None yet
2 participants
@jseabold
Copy link
Member

commented Sep 25, 2014

Fixes for #2003 and should fix #1897. AFAICT, there's no reason to be conditional about adding the build and install dependencies depending on what command we've given setup.py. Given that egg_info is in sys.argv for a regular pip install, let's not try to special case when we do this, because I don't know what any of these mean and a cursory reading of the docs didn't get there.

If everything is already importable, you won't reinstall anything. If not, then you'll install it and you'll get pip's recursive upgrade behavior for any of our dependencies I guess. Oh well.

I think we finally have sane dependency handling.

jseabold added a commit that referenced this pull request Sep 25, 2014

@jseabold jseabold merged commit a4e4eb8 into statsmodels:master Sep 25, 2014

1 check was pending

continuous-integration/travis-ci The Travis CI build is in progress
Details

@jseabold jseabold deleted the jseabold:fix-build-issues branch Sep 25, 2014


if _have_setuptools:
setuptools_kwargs['setup_requires'] = setup_requires
setuptools_kwargs['install_requires'] = install_requires

This comment has been minimized.

Copy link
@josef-pkt

josef-pkt Sep 26, 2014

Member

This looks to me now you will always trigger an update of numpy, exactly what we want to avoid.
Doesn't it?
unconditional install_requires, setup_requires

pip will have _have_setuptools is True

This comment has been minimized.

Copy link
@jseabold

jseabold Sep 26, 2014

Author Member

On Thu, Sep 25, 2014 at 8:33 PM, Josef Perktold notifications@github.com
wrote:

In setup.py:

@@ -389,12 +389,12 @@ def get_data_files():
# 3.3 needs numpy 1.7+
min_versions.update({"numpy" : "1.7.0b2"})

  • if not no_frills:
  •    (setup_requires,
    
  •     install_requires) = check_dependency_versions(min_versions)
    
  •    if _have_setuptools:
    
  •        setuptools_kwargs['setup_requires'] = setup_requires
    
  •        setuptools_kwargs['install_requires'] = install_requires
    
  • (setup_requires,
  • install_requires) = check_dependency_versions(min_versions)
    
  • if _have_setuptools:
  •    setuptools_kwargs['setup_requires'] = setup_requires
    
  •    setuptools_kwargs['install_requires'] = install_requires
    

This looks to me now you will always trigger an update of numpy, exactly
what we want to avoid.
Doesn't it?

No.

unconditional install_requires, setup_requires

That are empty.

pip will have _have_setuptools is True

Reply to this email directly or view it on GitHub
https://github.com/statsmodels/statsmodels/pull/2007/files#r18068910.

This comment has been minimized.

Copy link
@josef-pkt

josef-pkt Sep 26, 2014

Member

If patsy is missing, then install_requires contains 'patsy' (which triggers a chain reaction) ?

@josef-pkt

This comment has been minimized.

Copy link
Member

commented Sep 26, 2014

What we could do is make it conditional on
if 'numpy not in setup_requires: then let pip/setuptools handle all dependencies.
else throw an error as we did before.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.