mirror of
				https://github.com/zulip/zulip.git
				synced 2025-10-31 20:13:46 +00:00 
			
		
		
		
	Optionally use setuptools if it is installed.
Thanks to to github.com/roryk for the suggestion. (imported from commit 9e4365dc56f1bc2f1a1a49be4a7b662d94bf42a9)
This commit is contained in:
		
							
								
								
									
										73
									
								
								api/setup.py
									
									
									
									
									
								
							
							
						
						
									
										73
									
								
								api/setup.py
									
									
									
									
									
								
							| @@ -4,7 +4,6 @@ | ||||
| import zulip | ||||
|  | ||||
| import os | ||||
| from distutils.core import setup | ||||
| import sys | ||||
|  | ||||
| import itertools | ||||
| @@ -23,24 +22,54 @@ def recur_expand(target_root, dir): | ||||
|     if len(paths): | ||||
|       yield os.path.join(target_root, root), paths | ||||
|  | ||||
| setup(name='zulip', | ||||
|       version=version(), | ||||
|       description='Bindings for the Zulip message API', | ||||
|       author='Zulip, Inc.', | ||||
|       author_email='zulip@zulip.com', | ||||
|       classifiers=[ | ||||
|           'Development Status :: 3 - Alpha', | ||||
|           'Environment :: Web Environment', | ||||
|           'Intended Audience :: Developers', | ||||
|           'License :: OSI Approved :: MIT License', | ||||
|           'Topic :: Communications :: Chat', | ||||
|       ], | ||||
|       url='https://www.zulip.com/dist/api/', | ||||
|       packages=['zulip'], | ||||
|       data_files=[('share/zulip/examples', ["examples/zuliprc", "examples/send-message", "examples/subscribe", | ||||
|                                              "examples/get-public-streams", "examples/unsubscribe", | ||||
|                                              "examples/list-members", "examples/list-subscriptions", | ||||
|                                              "examples/print-messages"])] + \ | ||||
|           list(recur_expand('share/zulip', 'integrations/')), | ||||
|       scripts=["bin/zulip-send"], | ||||
|      ) | ||||
| # We should be installable with either setuptools or distutils. | ||||
| package_info = dict( | ||||
|     name='zulip', | ||||
|     version=version(), | ||||
|     description='Bindings for the Zulip message API', | ||||
|     author='Zulip, Inc.', | ||||
|     author_email='humbug@humbughq.com', | ||||
|     classifiers=[ | ||||
|         'Development Status :: 3 - Alpha', | ||||
|         'Environment :: Web Environment', | ||||
|         'Intended Audience :: Developers', | ||||
|         'License :: OSI Approved :: MIT License', | ||||
|         'Topic :: Communications :: Chat', | ||||
|     ], | ||||
|     url='https://www.zulip.com/dist/api/', | ||||
|     packages=['zulip'], | ||||
|     data_files=[('share/zulip/examples', ["examples/zuliprc", "examples/send-message", "examples/subscribe", | ||||
|                                            "examples/get-public-streams", "examples/unsubscribe", | ||||
|                                            "examples/list-members", "examples/list-subscriptions", | ||||
|                                            "examples/print-messages"])] + \ | ||||
|         list(recur_expand('share/zulip', 'integrations/')), | ||||
|     scripts=["bin/zulip-send"], | ||||
| ) | ||||
|  | ||||
| setuptools_info = dict( | ||||
|     install_requires=['requests>=0.12.1', | ||||
|                       'simplejson', | ||||
|     ], | ||||
| ) | ||||
|  | ||||
| try: | ||||
|   from setuptools import setup | ||||
|   package_info.update(setuptools_info) | ||||
| except ImportError: | ||||
|   from distutils.core import setup | ||||
|   from distutils.version import LooseVersion | ||||
|   # Manual dependency check | ||||
|   try: | ||||
|     import simplejson | ||||
|   except ImportError: | ||||
|     print >>sys.stderr, "simplejson is not installed" | ||||
|     sys.exit(1) | ||||
|   try: | ||||
|     import requests | ||||
|     assert(LooseVersion(requests.__version__) >= LooseVersion('0.12.1')) | ||||
|   except (ImportError, AssertionError): | ||||
|     print >>sys.stderr, "requests >=0.12.1 is not installed" | ||||
|     sys.exit(1) | ||||
|  | ||||
|  | ||||
| setup(**package_info) | ||||
|   | ||||
		Reference in New Issue
	
	Block a user