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:
parent
0923b7d3ef
commit
b0f73806de
35
setup.py
35
setup.py
|
@ -4,7 +4,6 @@
|
|||
import zulip
|
||||
|
||||
import os
|
||||
from distutils.core import setup
|
||||
import sys
|
||||
|
||||
import itertools
|
||||
|
@ -23,11 +22,13 @@ def recur_expand(target_root, dir):
|
|||
if len(paths):
|
||||
yield os.path.join(target_root, root), paths
|
||||
|
||||
setup(name='zulip',
|
||||
# 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='zulip@zulip.com',
|
||||
author_email='humbug@humbughq.com',
|
||||
classifiers=[
|
||||
'Development Status :: 3 - Alpha',
|
||||
'Environment :: Web Environment',
|
||||
|
@ -44,3 +45,31 @@ setup(name='zulip',
|
|||
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)
|
||||
|
|
Loading…
Reference in a new issue