8000 Create github action to check consistency of requirements.txt and notebook_requirements.txt by kandersolar · Pull Request #297 · NREL/rdtools · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

Create github action to check consistency of requirements.txt and notebook_requirements.txt #297

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

Merged
merged 9 commits into from
Dec 1, 2021

Conversation

kandersolar
Copy link
Member
@kandersolar kandersolar commented Sep 28, 2021
  • Code changes are covered by tests
  • Code changes have been evaluated for compatibility/integration with TrendAnalysis
  • New functions added to __init__.py
  • API.rst is up to date, along with other sphinx docs pages
  • Example notebooks are rerun and differences in results scrutinized
  • Updated changelog

@mdeceglie suggested adding a job to verify the consistency of requirements.txt and notebook_requirements.txt to make it easier to review PRs from dependabot. Note that consistency of requirements.txt is already checked by the pytest jobs, but currently no CI job uses notebook_requirements.txt. Also note that dependabot does suggest updates to notebook_requirements.txt, not just requirements.txt, e.g. #288. Maybe this job will become redundant if we ever get around to #270.

I tested some inconsistent environments on my fork to see what failures look like; here are the corresponding jobs:

Note that inconsistent 1 requested a version of numpy without wheels for py 3.7, so it tried to compile it from source and it was that compilation that failed, not a consistency error, so it's not really relevant. But inconsistent 2 shows an actual consistency failure.

jobs:
requirements:

runs-on: ubuntu-latest
Copy link
Member Author

Choose a reason for hiding this comment

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

Should we test other OSs? I guess it depends on whether we are checking that the environment can be installed easily, or checking whether the package versions are compatible (which is a weaker requirement than the package versions can be installed easily on all OSs).

Copy link
Collaborator

Choose a reason for hiding this comment

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

Although I'm a little worried we will open a can of worms, it does sound useful to check on windows and osx. Can we give it a try?

Copy link
Collaborator

Choose a reason for hiding this comment

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

Or maybe just add the other OSs to the pytest workflow?

@mdeceglie
Copy link
Collaborator

This looks good, but i'm imagining cutting 2.1.1, so we should probably update the changelog about the xgboost requirement

@kandersolar
Copy link
Member Author

Given this is just a maintenance PR, do we need to cut a release? I imagined the xgboost requirement change to be a short-term change that gets reverted before we're ready to cut another release. If that's the case then I don't see a point in a changelog entry.

@mdeceglie
Copy link
Collaborator

I think we should do a patch, an updated setup.py has limited utility sitting on github, we should get it out in pypi

@kandersolar
Copy link
Member Author

Oh right, if it's broken for us, it's broken for everyone. Forgot about that part. Changelog added!

Copy link
Collaborator
@mdeceglie mdeceglie left a comment

Choose a reason for hiding this comment

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

Looks good to me, thanks @kanderso-nrel !

760E
@mdeceglie mdeceglie merged commit 600991d into master Dec 1, 2021
@mdeceglie mdeceglie deleted the dependabot_protection branch December 1, 2021 01:11
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 this pull request may close these issues.

2 participants
0