setup.py 2.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465
  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-surface",
  7. use_scm_version={
  8. "write_to": os.path.join("freesurfer_surface", "version.py"),
  9. # `version` triggers pylint C0103
  10. # newline after import to fix pylint C0321/multiple-statements
  11. "write_to_template": "import typing\n"
  12. + "__version__ = '{version}' # type: typing.Optional[str]\n",
  13. },
  14. description="Python Library to Read and Write Surface Files"
  15. " in Freesurfer's TriangularSurface Format",
  16. long_description=LONG_DESCRIPTION,
  17. author="Fabian Peter Hammerle",
  18. author_email="fabian@hammerle.me",
  19. url="https://github.com/fphammerle/freesurfer-surface",
  20. # TODO add license
  21. keywords=[
  22. "brain",
  23. "freesurfer",
  24. "mesh",
  25. "neuroimaging",
  26. "reader",
  27. "surface",
  28. "triangle",
  29. "vertex",
  30. ],
  31. classifiers=[
  32. "Development Status :: 3 - Alpha",
  33. "Intended Audience :: Healthcare Industry",
  34. "Intended Audience :: Science/Research",
  35. "Programming Language :: Python :: 3.5",
  36. "Programming Language :: Python :: 3.6",
  37. "Programming Language :: Python :: 3.7",
  38. "Programming Language :: Python :: 3.8",
  39. "Topic :: Scientific/Engineering :: Information Analysis",
  40. "Topic :: Scientific/Engineering :: Medical Science Apps.",
  41. "Topic :: Utilities",
  42. ],
  43. packages=setuptools.find_packages(),
  44. entry_points={
  45. "console_scripts": [
  46. "freesurfer-annotation-labels = freesurfer_surface.__main__:annotation_labels",
  47. "unite-freesurfer-surfaces = freesurfer_surface.__main__:unite_surfaces",
  48. ],
  49. },
  50. python_requires=">=3.5",
  51. install_requires=[
  52. "numpy<2",
  53. ],
  54. setup_requires=[
  55. "setuptools_scm",
  56. ],
  57. tests_require=[
  58. "pylint>=2.3.0,<3",
  59. "pytest<5",
  60. "pytest-cov<3,>=2",
  61. ],
  62. )