-
Notifications
You must be signed in to change notification settings - Fork 5
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
ENH: Allows pysatCDF to be preferentially used when present. #102
Conversation
This goes along with this pysat/pysatCDF#33 |
While trying out the pysatModels example over in pysat/pysatModels#102 turns out that metadata isn't being handled as it should for CINDI, and likely the other NASA instruments. |
Pushed a commit to pysatCDF and now the match example works fine. Metalabel loading working fine now as well. |
Eeek!
|
Good news is tests for this branch locally pass from a pip install of pysatCDF. |
@jklenzing I think this is the same error we had with OMMBV. pysatCDF has moved to setup.cfg but since it has actual code in setup.py for the NASA build process there is an import numpy as np at the top. Not sure we can do anything about that in this case. Wasn't there a |
TST: test both pysatCDF and cdflib
I need to think about how the extra tests will be merged in the new test structure. @rstoneback, is this still on the roadmap? |
@rstoneback, the pysatCDF install fails on three of the five CI environments. It doesn't work for windows or for the old versions of numpy (this may be due to the env definition, we install pysatCDF then update numpy to an older version). The current setup should be fine and at least test pysatCDF in the two environments. For the others, we basically run cdflib load tests twice (once while forced, once during nominal runs when pysatCDF fails). I've pulled pysatCDF out of the requirements lists since this is an optional install, but we should probably have some info on the readme for users who want to employ this option. This means that there will always be a working version for a quick install, and users looking for speed can grab the optional package. |
It doesn't work for windows
I think that is the whole fortran on windows general issue. At least I hope so. At one point I believe I iterated with Barbara Emery on getting pysatCDF on windows installed. It was awhile ago but nevertheless I’m hoping it still carries on.
old versions of numpy (this may be due to the env definition, we install pysatCDF then update numpy to an older version).
Hmmm….. Thanks for the heads up.
I've pulled pysatCDF out of the requirements lists since this is an optional install, but we should probably have some info on the readme for users who want to employ this option.
Fair to pull it out of requirements. Perhaps it should be in test_requirements.txt . I was principally trying to get it on GitHub Actions to test outside my own environment.
This means that there will always be a working version for a quick install, and users looking for speed can grab the optional package.
Perfect. That is the intention.
|
There's a separate install line in the main action, so it will get installed, just not always correctly. |
It sounds like we are as good as it is currently going to get then. |
Co-authored-by: Jeff Klenzing <19592220+jklenzing@users.noreply.github.com>
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.
Tidying up some imports. I think the extra ignore statement in setup.cfg was masking unused imports elsewhere.
.github/workflows/main.yml
Outdated
@@ -30,6 +30,7 @@ jobs: | |||
- name: Install standard dependencies | |||
run: | | |||
pip install -r requirements.txt | |||
pip install pysatCDF |
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 wonder if installing with the no-binary option would help with the bits where it fails?
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.
cleaning up imports based on style used in pysatCDAAC
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.
Looks good. Needs an update to the changelog. Wouldn't hurt to double-check the rest of the checklist.
Co-authored-by: Jeff Klenzing <19592220+jklenzing@users.noreply.github.com>
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.
Looks good! Noting that according to coveralls, pysatCDF still only loads in 2 out of 5 CI environments, but I say we merge and sort out those issues when we can.
Description
Addresses # (issue)
cdflib performance is not what I'd prefer. Loading C/NOFS takes about 60s with cdflib through pysat while loading via pysatCDF through pysat only takes about 1s. Performance difference matters for science. Working on a slightly tweaked pysatCDF that actually compiles on my modern system.
Type of change
Please delete options that are not relevant.
How Has This Been Tested?
I'm developing examples for pysatSeasons, or rather, fixing the existing example. Either way, I've been able to load a 67 day season of C/NOFS IVM data with this branch. Will run pysatNASA unit tests.
Test Configuration
Checklist:
develop
(notmain
) branchCHANGELOG.md
, summarizing the changes