setup.py 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970
  1. #!/usr/bin/env python
  2. # -*- coding: utf-8 -*-
  3. import os
  4. import sys
  5. import tablib
  6. try:
  7. from setuptools import setup, find_packages
  8. except ImportError:
  9. from distutils.core import setup, find_packages
  10. packages = find_packages(exclude=('docs',))
  11. if sys.version_info[:2] < (3,0):
  12. packages = [p for p in packages if '3' not in p]
  13. else:
  14. packages = [p for p in packages if '2' not in p]
  15. if sys.argv[-1] == 'publish':
  16. os.system("python setup.py sdist upload")
  17. sys.exit()
  18. if sys.argv[-1] == 'speedups':
  19. try:
  20. __import__('pip')
  21. except ImportError:
  22. print('Pip required.')
  23. sys.exit(1)
  24. os.system('pip install ujson pyyaml')
  25. sys.exit()
  26. if sys.argv[-1] == 'test':
  27. try:
  28. __import__('py')
  29. except ImportError:
  30. print('py.test required.')
  31. sys.exit(1)
  32. os.system('pytest test_tablib.py')
  33. sys.exit()
  34. setup(
  35. name='tablib',
  36. version=tablib.__version__,
  37. description='Format agnostic tabular data library (XLS, JSON, YAML, CSV)',
  38. long_description=(open('README.rst').read() + '\n\n' +
  39. open('HISTORY.rst').read()),
  40. author='Kenneth Reitz',
  41. author_email='me@kennethreitz.com',
  42. url='http://tablib.org',
  43. packages=packages,
  44. license='MIT',
  45. classifiers=(
  46. 'Development Status :: 5 - Production/Stable',
  47. 'Intended Audience :: Developers',
  48. 'Natural Language :: English',
  49. 'License :: OSI Approved :: MIT License',
  50. 'Programming Language :: Python',
  51. 'Programming Language :: Python :: 2.5',
  52. 'Programming Language :: Python :: 2.6',
  53. 'Programming Language :: Python :: 2.7',
  54. 'Programming Language :: Python :: 3.0',
  55. 'Programming Language :: Python :: 3.1',
  56. 'Programming Language :: Python :: 3.2',
  57. ),
  58. )