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
Update pandas requirements #118
Conversation
@@ -7,7 +7,7 @@ jobs: | |||
|
|||
strategy: | |||
matrix: | |||
os: [ubuntu-latest, macos-latest, windows-latest] | |||
os: [ubuntu-latest, macos-10.15, windows-latest] # macos-latest does not have py3.6 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This has nothing to do with the pandas change; it's because macos-latest
recently changed to macos 11 instead of macos 10, and they dropped python 3.6 in macos 11. That made the 3.6 test fail here because this is the first PR since the change. See the table here: actions/runner-images#4060.
We might consider dropping python 3.6 from testing though as it is slated to reach EOL in a week or two: https://devguide.python.org/#status-of-python-branches
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
+1 to dropping support for python 3.6. I'm OK to do that in this PR if it simplifies the pandas requirement.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't think dropping 3.6 changes anything for the pandas requirement. pvanalytics's current minimum (0.24.0) supports python 3.7, so dropping 3.6 is not itself an excuse to bump our minimum and skip over the problematic 1.1.x series.
Do you think we want to prohibit pandas 1.1 across the board? It's just a few functions that depend on the rolling groupby functionality. I'd kind of like to just add a guard in front of those functions that causes an error if the 1.1.x is installed (or issues a warning), but I'm not sure of the added maintenance burden on that approach. |
Normally I'd also support doing a little gymnastics to not drop support unnecessarily, so I wouldn't object to some kind of function-level version check here. RdTools has its own set of pandas restrictions (link), so that's another motivator, at least to the extent that we want pvanalytics and RdTools to be used in tandem. |
I say we merge this for v0.2 and add an issue to drop support for py36 and pandas<1.2 in v0.3. |
Thanks @kanderso-nrel |
Description
This PR updates the requirements spec to prohibit
pandas==1.1.*
. I figured there was little point in cooking up a workaround that works on all pandas versions because there were only ~6 months between 1.0.5 and 1.2.0 and it's been about a year since 1.2.0 was released.I tested a range of pandas versions locally (windows) before opening this PR and include the results for reference:
pandas==1.1.0
: access violation/segfaultpandas>=1.1.1,<=1.1.5
: test failurepandas>=1.2.0
: passChecklist
Added new API functions todocs/api.rst
Clearly documented all new API functions with PEP257 and numpydoc compliant docstringsin
docs/whatsnew
for all changes. Includes link to the GitHub Issue with
:issue:`num`
or this Pull Request with
:pull:`num`
. Includes contributor nameand/or GitHub username (link with
:ghuser:`user`
).Non-API functions clearly documented with docstrings or comments as necessaryAdded tests to cover all new or modified code