setup.py 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139
  1. """
  2. LAKEsuperior setup script.
  3. Proudly ripped from https://github.com/pypa/sampleproject/blob/master/setup.py
  4. """
  5. import sys
  6. # Always prefer setuptools over distutils
  7. from setuptools import setup, find_packages
  8. # To use a consistent encoding
  9. from codecs import open
  10. from glob import glob
  11. from os import path
  12. import lakesuperior
  13. # ``pytest_runner`` is referenced in ``setup_requires``.
  14. # See https://github.com/pytest-dev/pytest-runner#conditional-requirement
  15. needs_pytest = {'pytest', 'test', 'ptr'}.intersection(sys.argv)
  16. pytest_runner = ['pytest-runner'] if needs_pytest else []
  17. # Get the long description from the README file
  18. readme_fpath = path.join(path.dirname(lakesuperior.basedir), 'README.rst')
  19. with open(readme_fpath, encoding='utf-8') as f:
  20. long_description = f.read()
  21. setup(
  22. name='lakesuperior',
  23. version=lakesuperior.release,
  24. description='A Linked Data Platform repository sever.',
  25. long_description=long_description,
  26. long_description_content_type='text/x-rst; charset=UTF-8',
  27. url='https://lakesuperior.readthedocs.io',
  28. author='Stefano Cossu <@scossu>',
  29. #author_email='', # Optional
  30. license='Apache License Version 2.0',
  31. # https://pypi.python.org/pypi?%3Aaction=list_classifiers
  32. classifiers=[
  33. 'Development Status :: 3 - Alpha',
  34. 'Environment :: Console',
  35. 'Environment :: Web Environment',
  36. 'Framework :: Flask',
  37. 'Intended Audience :: Developers',
  38. 'Intended Audience :: Information Technology',
  39. 'Intended Audience :: Science/Research',
  40. 'License :: OSI Approved :: Apache Software License',
  41. 'Natural Language :: English',
  42. 'Operating System :: MacOS',
  43. 'Operating System :: Microsoft :: Windows',
  44. 'Operating System :: POSIX :: Linux',
  45. 'Programming Language :: Python :: 3',
  46. 'Programming Language :: Python :: 3.5',
  47. 'Programming Language :: Python :: 3.6',
  48. 'Topic :: Database :: Database Engines/Servers',
  49. ],
  50. keywords='repository linked-data',
  51. python_requires='~=3.5',
  52. packages=find_packages(exclude=['contrib', 'docs', 'tests']),
  53. # Great reference read about dependency management:
  54. # https://caremad.io/posts/2013/07/setup-vs-requirement/
  55. install_requires=[
  56. 'CoilMQ',
  57. 'Flask',
  58. 'HiYaPyCo',
  59. 'PyYAML',
  60. 'arrow',
  61. 'cchardet',
  62. 'click',
  63. 'click-log',
  64. 'gevent',
  65. 'gunicorn',
  66. 'lmdb',
  67. 'rdflib',
  68. 'rdflib-jsonld',
  69. 'requests',
  70. 'requests-toolbelt',
  71. 'sphinx-rtd-theme',
  72. 'stomp.py',
  73. ],
  74. setup_requires=[] + pytest_runner,
  75. tests_require=[
  76. 'Pillow',
  77. 'numpy',
  78. 'pytest',
  79. 'pytest-flask',
  80. ],
  81. include_package_data=True,
  82. #extras_require={},
  83. #package_data={
  84. #},
  85. #data_files=[],
  86. entry_points={
  87. 'console_scripts': [
  88. 'fcrepo=lakesuperior.wsgi:run',
  89. 'lsup-admin=lakesuperior.lsup_admin:admin',
  90. 'lsup-benchmark=lakesuperior.util.benchmark:run',
  91. 'profiler=lakesuperior.profiler:run',
  92. ],
  93. },
  94. # List additional URLs that are relevant to your project as a dict.
  95. #
  96. # This field corresponds to the "Project-URL" metadata fields:
  97. # https://packaging.python.org/specifications/core-metadata/#project-url-multiple-use
  98. #
  99. # Examples listed include a pattern for specifying where the package tracks
  100. # issues, where the source is hosted, where to say thanks to the package
  101. # maintainers, and where to support the project financially. The key is
  102. # what's used to render the link text on PyPI.
  103. project_urls={ # Optional
  104. 'Source Code': 'https://github.com/scossu/lakesuperior/',
  105. 'Documentation': 'https://lakesuperior.readthedocs.io',
  106. 'Discussion': 'https://groups.google.com/forum/#!forum/lakesuperior',
  107. 'Bug Reports': 'https://github.com/scossu/lakesuperior/issues',
  108. }
  109. )