2018-09-18 11:35:43 -07:00
|
|
|
import re
|
2017-05-17 14:41:46 -07:00
|
|
|
from setuptools import setup, find_packages
|
2017-05-25 14:40:26 -07:00
|
|
|
import sys
|
2017-05-17 14:41:46 -07:00
|
|
|
|
2017-05-25 14:40:26 -07:00
|
|
|
if sys.version_info.major != 3:
|
2018-02-14 21:42:22 -08:00
|
|
|
print('This Python is only compatible with Python 3, but you are running '
|
|
|
|
'Python {}. The installation will likely fail.'.format(sys.version_info.major))
|
2017-05-17 14:41:46 -07:00
|
|
|
|
2017-07-20 08:52:35 -07:00
|
|
|
|
2018-08-15 10:34:38 -07:00
|
|
|
extras = {
|
|
|
|
'test': [
|
2018-09-11 11:01:51 -07:00
|
|
|
'filelock',
|
2018-10-18 16:07:14 -07:00
|
|
|
'pytest',
|
2018-11-06 17:02:20 -08:00
|
|
|
'pytest-forked',
|
2018-10-18 16:07:14 -07:00
|
|
|
'atari-py'
|
2018-09-12 10:14:41 -07:00
|
|
|
],
|
|
|
|
'bullet': [
|
|
|
|
'pybullet',
|
2018-10-31 11:15:41 -07:00
|
|
|
],
|
|
|
|
'mpi': [
|
|
|
|
'mpi4py'
|
2018-08-15 10:34:38 -07:00
|
|
|
]
|
|
|
|
}
|
|
|
|
|
|
|
|
all_deps = []
|
|
|
|
for group_name in extras:
|
|
|
|
all_deps += extras[group_name]
|
|
|
|
|
|
|
|
extras['all'] = all_deps
|
|
|
|
|
2017-05-17 14:41:46 -07:00
|
|
|
setup(name='baselines',
|
|
|
|
packages=[package for package in find_packages()
|
|
|
|
if package.startswith('baselines')],
|
|
|
|
install_requires=[
|
2018-10-18 16:07:14 -07:00
|
|
|
'gym',
|
2017-05-17 14:41:46 -07:00
|
|
|
'scipy',
|
|
|
|
'tqdm',
|
|
|
|
'joblib',
|
|
|
|
'dill',
|
|
|
|
'progressbar2',
|
2018-01-31 10:43:17 +01:00
|
|
|
'cloudpickle',
|
2018-02-26 17:40:16 +01:00
|
|
|
'click',
|
2018-05-14 10:52:19 -07:00
|
|
|
'opencv-python'
|
2017-05-17 14:41:46 -07:00
|
|
|
],
|
2018-08-15 10:34:38 -07:00
|
|
|
extras_require=extras,
|
2018-02-14 21:42:22 -08:00
|
|
|
description='OpenAI baselines: high quality implementations of reinforcement learning algorithms',
|
|
|
|
author='OpenAI',
|
2017-05-17 14:41:46 -07:00
|
|
|
url='https://github.com/openai/baselines',
|
2018-02-14 21:42:22 -08:00
|
|
|
author_email='gym@openai.com',
|
2018-02-26 17:40:16 +01:00
|
|
|
version='0.1.5')
|
2018-08-21 16:51:37 -07:00
|
|
|
|
|
|
|
|
|
|
|
# ensure there is some tensorflow build with version above 1.4
|
2018-10-22 09:15:04 -07:00
|
|
|
import pkg_resources
|
|
|
|
tf_pkg = None
|
2018-12-21 15:47:48 -05:00
|
|
|
for tf_pkg_name in ['tensorflow', 'tensorflow-gpu', 'tf-nightly', 'tf-nightly-gpu']:
|
2018-10-22 09:15:04 -07:00
|
|
|
try:
|
|
|
|
tf_pkg = pkg_resources.get_distribution(tf_pkg_name)
|
|
|
|
except pkg_resources.DistributionNotFound:
|
|
|
|
pass
|
|
|
|
assert tf_pkg is not None, 'TensorFlow needed, of version above 1.4'
|
2018-12-21 15:47:48 -05:00
|
|
|
from distutils.version import LooseVersion
|
|
|
|
assert LooseVersion(re.sub(r'-?rc\d+$', '', tf_pkg.version)) >= LooseVersion('1.4.0')
|