Skip to content

adopt NEP-29 #828

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
mikofski opened this issue Dec 4, 2019 · 3 comments · Fixed by #830
Closed

adopt NEP-29 #828

mikofski opened this issue Dec 4, 2019 · 3 comments · Fixed by #830

Comments

@mikofski
Copy link
Member

mikofski commented Dec 4, 2019

Is your feature request related to a problem? Please describe.
the travis-ci test fails for #823 because the minimum NumPy version for py35-min is version 1.10.4 - the np.roll() function used was updated to allow multiple axes in NumPy-1.12

Describe the solution you'd like
NEP-29 is a proposal by maintainers of IPython, Matplotlib, SciPy, and NumPy that proposes the support window for Python and Numpy.

TL;DR: in the immediate future, drop support for Python-3.5 and Numpy<1.14

Describe alternatives you've considered

  • statically create the 3 rotation matrices, removing the use of np.roll completely
  • use the pre-NumPy-1.12 version of np.roll

Additional context
Since many other major packages that are used by pvlib are conforming to NEP-29, it makes a lot of sense for pvlib to also conform.

@wholmgren
Copy link
Member

I think NEP-29 is too aggressive. I'm fine with adopting NEP-29 rules for expected compatibility. But NEP-29 seems to go a step farther and suggest that every downstream project release should only support the prescribed versions regardless of if it's actually necessary. In the specific case above, why should we restrict pvlib to numpy 1.14 when numpy 1.12 and 1.13 will work just as well?

I suggest that we instead aggressively drop numpy/python versions when 1. there is a reason to do so and 2. the versions are outside the NEP-29 windows.

This was referenced Dec 4, 2019
@mikofski
Copy link
Member Author

mikofski commented Dec 4, 2019

an alternate approach would also be to create a requires_numpy_1_12 decorator in conftest.py

@wholmgren
Copy link
Member

better to just bump the requirement.

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

Successfully merging a pull request may close this issue.

2 participants