mirror of
https://github.com/openmm/openmmforcefields.git
synced 2026-06-06 18:39:48 +09:00
* Ensure 0.11.0 RC version of toolkit is installed * Possible fix to finish #191 * Try to ensure bash args thing is passed through * Naive unit refactor * Work through tests * Update CI matrix * Use mamba for development * Debug, add boilerplate .gitignore * Fix syntax * make sure the package didn't get installed before we install it * Do not install Espaloma * Fix some unit registries in tests * install espaloma, but remove openmmforcefields * add back in espaloma * switch to micromamba * Explicitly move ffxml sources into entry point * Remove symlinking * Add boilerplate `.gitignore` * Update package installation in CI * Fix finding Amber files in test * Soft import whatever units module is used by the toolkit * Switch to micromamba for setting up conda environment Add boilerplate `.gitignore` file Do not pull from non-standard labels Install instead of update Try to figure out why if: {{ false }} still triggers Syntax? Tinker Bring in (full) mamba Bash thing everywhere Bring down old toolkit Do not present un-loadable ff14SB port as available More pins * Fix YAML syntax * Use pip * More fixes * No particles * Fix unit serialization * Fix Atom.element calls * Update some tests * Clean up un-used imports * Fix more tests * Fix more tests * Exclude Python 3.10 on macOS * Skip ff14SB being treated as a small molecule * Fix test * Track duration of longest 20 tests * Update action versions * Try to fix exclusions in CI matrix * Fix pathing in Amber conversion * Run `pyupgrade --py38-plus` * Try directly uploading coverage report * Fix syntax * Add back some tests * Debug * Drop `pytest-xdist` arg * Fiddle with path * Just try to get stuff passing * Try uploading again * Switch back to codecov * Simply coverage reporting * Allow 0 coverage * Simplify coverage arguments * Add `__init__.py` in `/tests/` submodule https://stackoverflow.com/a/60579142 * Add `__init__.py` in `/tests/` submodule https://stackoverflow.com/a/60579142 * Simplify coverage arguments * Add back durations argument * Apply suggestions from code review * only upload report if it is not scheduled Co-authored-by: Matthew W. Thompson <mattwthompson@protonmail.com>
68 lines
2.2 KiB
Python
68 lines
2.2 KiB
Python
"""
|
|
openmmforcefields
|
|
Additional force fields for OpenMM.
|
|
"""
|
|
import sys, os
|
|
from setuptools import setup, find_packages
|
|
import versioneer
|
|
|
|
short_description = __doc__.split("\n")
|
|
|
|
# from https://github.com/pytest-dev/pytest-runner#conditional-requirement
|
|
needs_pytest = {'pytest', 'test', 'ptr'}.intersection(sys.argv)
|
|
pytest_runner = ['pytest-runner'] if needs_pytest else []
|
|
|
|
try:
|
|
with open("README.md", "r") as handle:
|
|
long_description = handle.read()
|
|
except:
|
|
long_description = "\n".join(short_description[2:])
|
|
|
|
setup(
|
|
# Self-descriptive entries which should always be present
|
|
name='openmmforcefields',
|
|
author='Chodera lab // MSKCC',
|
|
author_email='john.chodera@choderalab.org',
|
|
description=short_description[0],
|
|
long_description=long_description,
|
|
long_description_content_type="text/markdown",
|
|
keywords = "molecular mechanics, forcefield, OpenMM, AMBER, CHARMM, GAFF",
|
|
url = "http://github.com/choderalab/openmm-forcefields",
|
|
version=versioneer.get_version(),
|
|
cmdclass=versioneer.get_cmdclass(),
|
|
license='MIT',
|
|
|
|
classifiers=[
|
|
"Development Status :: 3 - Alpha",
|
|
"Topic :: Utilities",
|
|
"License :: OSI Approved :: MIT",
|
|
],
|
|
|
|
# Don't install as an egg, since OpenMM can't find ffxml files if we do
|
|
zip_safe=False,
|
|
|
|
# Which Python importable modules should be included when your package is installed
|
|
# Handled automatically by setuptools. Use 'exclude' to prevent some specific
|
|
# subpackage(s) from being added, if needed
|
|
packages=find_packages(),
|
|
|
|
# Optional include package data to ship with your package
|
|
# Customize MANIFEST.in if the general case does not suit your needs
|
|
# Comment out this line to prevent the files from being packaged with your software
|
|
include_package_data=True,
|
|
|
|
# Allows `setup.py test` to work correctly with pytest
|
|
setup_requires=[] + pytest_runner,
|
|
|
|
entry_points={
|
|
'console_scripts': [],
|
|
'openmm.forcefielddir' : [
|
|
'ffxml = openmmforcefields.utils:get_ffxml_path',
|
|
],
|
|
},
|
|
|
|
package_data={
|
|
'openmmforcefields': ['ffxml/amber/*.xml', 'ffxml/amber/gaff/*.{xml,dat}', 'ffxml/charmm/*.xml']
|
|
},
|
|
)
|