Skip to content

MAINT: Modify setup requirements#7993

Merged
bashtage merged 2 commits into
statsmodels:mainfrom
bashtage:modify-setup-requires
Jan 7, 2022
Merged

MAINT: Modify setup requirements#7993
bashtage merged 2 commits into
statsmodels:mainfrom
bashtage:modify-setup-requires

Conversation

@bashtage

@bashtage bashtage commented Jan 7, 2022

Copy link
Copy Markdown
Member

Remove secondary check which is incompatible with using pip
and oldest-numpy-version

closes #7992

Details

Notes:

  • It is essential that you add a test when making code changes. Tests are not
    needed for doc changes.
  • When adding a new function, test values should usually be verified in another package (e.g., R/SAS/Stata).
  • When fixing a bug, you must add a test that would produce the bug in main and
    then show that it is fixed with the new code.
  • New code additions must be well formatted. Changes should pass flake8. If on Linux or OSX, you can
    verify you changes are well formatted by running
    git diff upstream/main -u -- "*.py" | flake8 --diff --isolated
    
    assuming flake8 is installed. This command is also available on Windows
    using the Windows System for Linux once flake8 is installed in the
    local Linux environment. While passing this test is not required, it is good practice and it help
    improve code quality in statsmodels.
  • Docstring additions must render correctly, including escapes and LaTeX.

@bashtage bashtage force-pushed the modify-setup-requires branch from a14daf2 to c32f8f3 Compare January 7, 2022 10:01
@lgtm-com

lgtm-com Bot commented Jan 7, 2022

Copy link
Copy Markdown

This pull request introduces 1 alert when merging c32f8f3 into 19db796 - view on LGTM.com

new alerts:

  • 1 for Comparison using is when operands support `__eq__`

Remove secondary check which is incompatible with using pip
and oldest-numpy-version

closes statsmodels#7992
Follow NEP and drop 3.7
@bashtage bashtage force-pushed the modify-setup-requires branch from b65150c to d83c175 Compare January 7, 2022 13:10
@bashtage bashtage merged commit a0b2bef into statsmodels:main Jan 7, 2022
@bashtage bashtage deleted the modify-setup-requires branch January 7, 2022 14:35
Comment thread setup.py
# These are strictly installation requirements. Builds requirements are
# managed in pyproject.toml
INSTALL_REQUIREMENTS = {
"numpy": "1.18", # released December 2019

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@bashtage We were having issues using statsmodels with Python 3.9 on a Red Hat cluster due to the install requirement on numpy 1.17 (see numpy/numpy#14147). Glad to see this has been upgraded to numpy 1.18. Any plans for a pypi release in the near future that would include this change?

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you not set the c99 flag and build with that in the environment? I'll see if I can cut a 0.13.2 this week. It is overdue a bit.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Normally we would not bump install req for a released version. These changes are for the 0.14 release.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the quick response! We can use the c99 flag, but our environment makes it difficult to do so cleanly. If this change is not coming until 0.14, we may delay using statsmodels in combination with Python 3.9 until then.

Copy link
Copy Markdown
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I suspect that it won't be out until 2014, although the build requirements will change - it is possible that the build reqs are the main issue rather than the minimum install reqs. The build reqs for 3.7 will likely drop to 1.14 since we have moved to oldest supported NumPy.

@bashtage bashtage added this to the 0.14 milestone Apr 14, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

pip install git+https://github.com/statsmodels/statsmodels.git fails with numpy is installed but older (1.14.5) than required (1.17)

2 participants