setup.py 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859
  1. import os
  2. import setuptools
  3. with open("README.rst", "r") as readme:
  4. LONG_DESCRIPTION = readme.read()
  5. setuptools.setup(
  6. name="freesurfer-volume-reader",
  7. use_scm_version={
  8. "write_to": os.path.join("freesurfer_volume_reader", "version.py"),
  9. # `version` triggers pylint C0103
  10. # 2 newlines after import & 2 spaces before # for black
  11. "write_to_template": "# pylint: disable=missing-module-docstring\nimport typing\n\n"
  12. + '__version__: typing.Optional[str] = "{version}"\n',
  13. },
  14. description="Python script & library to read hippocampal subfield volumes"
  15. "computed by Freesurfer & ASHS",
  16. long_description=LONG_DESCRIPTION,
  17. author="Fabian Peter Hammerle",
  18. author_email="fabian@hammerle.me",
  19. url="https://github.com/fphammerle/freesurfer-volume-reader",
  20. # TODO add license
  21. keywords=[
  22. "brain",
  23. "freesurfer",
  24. "hippocampus",
  25. "neuroimaging",
  26. "reader",
  27. "subfields",
  28. ],
  29. classifiers=[
  30. "Development Status :: 3 - Alpha",
  31. "Intended Audience :: Healthcare Industry",
  32. "Intended Audience :: Science/Research",
  33. "Programming Language :: Python :: 3.7",
  34. "Programming Language :: Python :: 3.8",
  35. "Programming Language :: Python :: 3.9",
  36. "Programming Language :: Python :: 3.10",
  37. "Topic :: Scientific/Engineering :: Information Analysis",
  38. "Topic :: Scientific/Engineering :: Medical Science Apps.",
  39. "Topic :: Utilities",
  40. ],
  41. packages=setuptools.find_packages(),
  42. entry_points={
  43. "console_scripts": [
  44. "freesurfer-volume-reader = freesurfer_volume_reader.__main__:main"
  45. ]
  46. },
  47. python_requires=">=3.7", # python<3.7 untested
  48. install_requires=[
  49. # >=0.21.0 pandas.DataFrame.drop(columns=[...], ...)
  50. # <0.23 untested
  51. "pandas>=0.23.0,<2"
  52. ],
  53. setup_requires=["setuptools_scm"],
  54. tests_require=["pytest<5", "pytest-timeout<2"],
  55. )