setup.py 3.9 KB

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