You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

64 rivejä
1.7 KiB

  1. from __future__ import unicode_literals
  2. # imports - standard imports
  3. import os, shutil
  4. from distutils.command.clean import clean as Clean
  5. from setuptools import setup, find_packages
  6. import re, ast
  7. # get version from __version__ variable in frappe/__init__.py
  8. _version_re = re.compile(r'__version__\s+=\s+(.*)')
  9. with open('requirements.txt') as f:
  10. install_requires = f.read().strip().split('\n')
  11. with open('frappe/__init__.py', 'rb') as f:
  12. version = str(ast.literal_eval(_version_re.search(
  13. f.read().decode('utf-8')).group(1)))
  14. class CleanCommand(Clean):
  15. def run(self):
  16. Clean.run(self)
  17. basedir = os.path.abspath(os.path.dirname(__file__))
  18. for relpath in ['build', '.cache', '.coverage', 'dist', 'frappe.egg-info']:
  19. abspath = os.path.join(basedir, relpath)
  20. if os.path.exists(abspath):
  21. if os.path.isfile(abspath):
  22. os.remove(abspath)
  23. else:
  24. shutil.rmtree(abspath)
  25. for dirpath, dirnames, filenames in os.walk(basedir):
  26. for filename in filenames:
  27. _, extension = os.path.splitext(filename)
  28. if extension in ['.pyc']:
  29. abspath = os.path.join(dirpath, filename)
  30. os.remove(abspath)
  31. for dirname in dirnames:
  32. if dirname in ['__pycache__']:
  33. abspath = os.path.join(dirpath, dirname)
  34. shutil.rmtree(abspath)
  35. setup(
  36. name='frappe',
  37. version=version,
  38. description='Metadata driven, full-stack web framework',
  39. author='Frappe Technologies',
  40. author_email='info@frappe.io',
  41. packages=find_packages(),
  42. zip_safe=False,
  43. include_package_data=True,
  44. install_requires=install_requires,
  45. dependency_links=[
  46. 'https://github.com/frappe/python-pdfkit.git#egg=pdfkit'
  47. ],
  48. cmdclass = \
  49. {
  50. 'clean': CleanCommand
  51. },
  52. python_requires='>=3.6'
  53. )