-
Notifications
You must be signed in to change notification settings - Fork 696
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
Implementation of fetch_pdb() #4943
base: develop
Are you sure you want to change the base?
Conversation
I'm not sure where to put this code in the codebase, so I create a new folder for it right now. I'm open to it being moved somewhere Some stuff which I like to still add (besides tests and docs):
|
I think others will have to confirm, but likely we'll want to have Additional it's not finalised yet but if the mmcif reader in #2367 gets finalised then the default download shouldn't be |
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## develop #4943 +/- ##
===========================================
- Coverage 93.42% 93.40% -0.02%
===========================================
Files 177 193 +16
Lines 21859 23014 +1155
Branches 3078 3091 +13
===========================================
+ Hits 20422 21497 +1075
- Misses 986 1062 +76
- Partials 451 455 +4 ☔ View full report in Codecov by Sentry. 🚀 New features to boost your workflow:
|
I'm ok with that. I can make the code raise an exception if |
…since text files are just binary files with special encoding
Instead of Temporary File (which are slower), buffers are used instead!
Assuming that |
You've added it to one of the optional dependency categories which is all that should be required. For the actual files where it is used you'll need to have something setup like the usage of biopython: mdanalysis/package/MDAnalysis/analysis/align.py Lines 200 to 207 in dcaa087
I'm not an expert on the pipelines so someone else would have to pitch in more on that. |
Thanks for the comment! |
I happen to have another question! Is it normal for some of the tests to not be consistent across each commit? From what I understand, each github CLI has to get and build each MDAnalysis from source, and this instance can potentially timeout from what I observe across each commit. The macOS (of the latest commit) failed at 97% of test because it reached the max wall time of two hours. Even then the latest Azure tests failed because of other tests in the source code which I didn't write (namely due to other tests)
|
In principle, tests should pass everywhere. The Azure tests time out in the test
which looks like something that you added. I haven't looked at your code but it might simply be the case that some stuff needs to be written differently for windows. |
Fixes #4907
Changes made in this Pull Request:
This is a still work in progress, but here's a implementation of @BradyAJohnston 's code wrapped into classes. I still need to write tests and docs for the entire thing.
DownloaderBase
and 'PDBDownloader' in order to implement downloading structure file from online sources such as the PDB databank.requests
as a dependencymda.fetch_pdb()
is implemented as a wrapper to commonly used option in 'PDBDownloader'PR Checklist
package/CHANGELOG
file updated?Developers Certificate of Origin
I certify that I can submit this code contribution as described in the Developer Certificate of Origin, under the MDAnalysis LICENSE.
📚 Documentation preview 📚: https://mdanalysis--4943.org.readthedocs.build/en/4943/