-
Notifications
You must be signed in to change notification settings - Fork 26
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
Add MD-SAPT to MDAKits #47
base: main
Are you sure you want to change the base?
Changes from 4 commits
e402a16
ac07c21
4f2f9ed
1a67667
7dd677c
f6f007f
d30ea9d
2001829
a01a628
840e2a5
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,62 @@ | ||
# Required entries | ||
## str: name of the project (the respository name) | ||
project_name: MD-SAPT | ||
## List(str): a list of authors (or a link to the authors file) | ||
authors: | ||
- Alia Lescoulie | ||
- Astrid Yu | ||
- Ashley Ringer McDonald | ||
## List(str): a list of maintainers | ||
maintainers: | ||
- Alia Lescoulie | ||
- Ashley Ringer McDonald | ||
## str: a free form description of the mdakit | ||
description: | ||
SAPT calculations on MD data using Psi4 | ||
## List(str): a list of keywords which describe the mdakit | ||
keywords: | ||
- SAPT | ||
- protein | ||
- quantum | ||
## str: the license the mdakit falls under | ||
license: GPL-3.0-or-later | ||
## str: the link to the project's code | ||
project_home: https://github.com/calpolyccg/MDSAPT | ||
## str: the link to the project's documentation | ||
documentation_home: https://mdsapt.readthedocs.io | ||
## str: the type of documentation available [UserGuide, API, README] | ||
documentation_type: UserGuide + API | ||
|
||
# Optional entries | ||
## List(str): a list of commands to use when installing the latest | ||
## release of the code. Note: only one installation method can currently | ||
## be defined. We suggest using conda/mamba where possible. | ||
install: | ||
- mamba install -c psi4/label/dev -c conda-forge mdsapt | ||
## List(str): a list of commands to use when installing the mdakit from its | ||
## source code. | ||
src_install: | ||
# required dependencies from environment.yaml | ||
- mamba install -c psi4 -c conda-forge -c defaults "psi4>=1.6.1,<1.7" click numpy openmm pandas pdbfixer pytest pydantic pytest-cov pyyaml rdkit | ||
- pip install git+https://github.com/calpolyccg/MDSAPT@master | ||
orbeckst marked this conversation as resolved.
Show resolved
Hide resolved
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Note that the „develop“ CI installs your source (ie your master branch) and tests against the MDAnalysis develop branch! That’s the configuration to check for the segfault. |
||
## str: the package name used to import the mdakit | ||
import_name: mdsapt | ||
## str: a specification for the range of Python versions supported by this MDAKit | ||
python_requires: ">=3.8" | ||
## str: a specification for the range of MDAnalysis versions supported by this MDAKit | ||
mdanalysis_requires: ">=2.0.0" | ||
## List(str): a list of commands to use when attempting to run the MDAKit's tests | ||
run_tests: | ||
- git clone latest | ||
- pytest -v ./mdsapt/tests | ||
## List(str): a list of commands to use to install the necessary dependencies required | ||
## to run the MDAKit's tests | ||
test_dependencies: | ||
project_org: calpolyccg | ||
## str: the development status of the MDAKit | ||
development_status: Mature | ||
## List(str) a list of publications to cite when using the MDAKit | ||
publications: | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. paper published? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. not yet, were working on it |
||
community_home: | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Maybe enable GitHub discussions on https://github.com/calpolyccg/MDSAPT ?? There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. I enabled discussions There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Can you add an link to discussions? |
||
## str: a link to the MDAKit's changelog | ||
changelog: https://github.com/calpolyccg/MDSAPT/releases |
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.
Question for @IAlibay : Is it correct to do the installation of dependencies before the source pip install if I don't want dependencies to be pip-installed? I'd love to be able to say
mamba install -f environment.yml
but to my knowledge that doesn't work (only works withmamba create
). Because I have to list dependencies explicitly, I also have to explicitly add pinning (like forpsi4
). That looks a bit awkward and prone to breakage. Is there a better way?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.
🤔 yes that is indeed a bit of a problem.
What would the desired workflow be here? Fetch the yaml file from the remote directory and create the environment using that? Or should we try to read the yaml file and install from there?
This is definitely something to be considered as part of the refactor.
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.
At the end of the day the package developers should be responsible for keeping the meta data in sync with the package installation. I’d rather keep our side simple and suggest that ultimately packages follow standard procedures. In the meantime explicit pinning should be fine as a temporary measure — if this gets the kit installed correctly.