gomoku / DI-engine /setup.py
zjowowen's picture
init space
079c32c
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS-IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
"""Module setuptools script."""
from __future__ import absolute_import
from __future__ import division
from __future__ import print_function
import os
from setuptools import setup, find_packages
from importlib import import_module
here = os.path.abspath(os.path.dirname(__file__))
meta_module = import_module('ding')
meta = meta_module.__dict__
with open('README.md', mode='r', encoding='utf-8') as f:
readme = f.read()
setup(
name=meta['__TITLE__'],
version=meta['__VERSION__'],
description=meta['__DESCRIPTION__'],
long_description=readme,
long_description_content_type='text/markdown',
author=meta['__AUTHOR__'],
author_email=meta['__AUTHOR_EMAIL__'],
url='https://github.com/opendilab/DI-engine',
license='Apache License, Version 2.0',
keywords='Decision AI Engine',
packages=[
# framework
*find_packages(include=('ding', "ding.*")),
# application
*find_packages(include=('dizoo'
'dizoo.*')),
],
package_data={
package_name: ['*.yaml', '*.xml', '*cfg', '*SC2Map']
for package_name in find_packages(include=('ding.*'))
},
python_requires=">=3.7",
install_requires=[
'setuptools<=66.1.1',
'yapf==0.29.0',
'gym==0.25.1', # pypy incompatible; some environments only support gym==0.22.0
'gymnasium',
'torch>=1.1.0',
'numpy>=1.18.0',
'DI-treetensor>=0.4.0',
'DI-toolkit>=0.1.0',
'trueskill',
'tensorboardX>=2.2',
'wandb',
'matplotlib',
'easydict==1.9',
'pyyaml',
'enum_tools',
'cloudpickle',
'hickle',
'tabulate',
'click>=7.0.0',
'requests>=2.25.1', # interaction
'flask~=1.1.2', # interaction
'responses~=0.12.1', # interaction
'URLObject>=2.4.0', # interaction
'MarkupSafe==2.0.1', # interaction, compatibility
'pynng', # parallel
'sniffio', # parallel
'redis', # parallel
'mpire>=2.3.5', # parallel
],
extras_require={
'test': [
'coverage>=5,<=7.0.1',
'mock>=4.0.3',
'pytest~=7.0.1', # required by gym>=0.25.0
'pytest-cov~=3.0.0',
'pytest-mock~=3.6.1',
'pytest-xdist>=1.34.0',
'pytest-rerunfailures~=10.2',
'pytest-timeout~=2.0.2',
'readerwriterlock',
'pandas',
'lz4',
'h5py',
'scipy',
'scikit-learn',
'gym[box2d]==0.25.1',
'pettingzoo<=1.22.3',
'opencv-python', # pypy incompatible
],
'style': [
'yapf==0.29.0',
'flake8<=3.9.2',
'importlib-metadata<5.0.0', # compatibility
],
'fast': [
'numpy-stl',
'numba>=0.53.0',
],
'video': [
'moviepy',
'imageio[ffmpeg]',
],
'dist': [
'redis-py-cluster==2.1.0',
],
'common_env': [
'ale-py', # >=0.7.5', # atari
'autorom',
'gym[all]==0.25.1',
'cmake>=3.18.4',
'opencv-python', # pypy incompatible
],
'gfootball_env': [
'gfootball',
'kaggle-environments',
],
'procgen_env': [
'procgen',
],
'bsuite_env': [
'bsuite',
],
'minigrid_env': [
'minigrid>=2.0.0',
],
# 'd4rl_env': [
# 'd4rl @ git+https://github.com/rail-berkeley/d4rl@master#egg=d4rl',
# ],
# 'pybulletgym_env': [
# 'pybulletgym @ git+https://github.com/benelot/pybullet-gym@master#egg=pybulletgym',
# ],
# 'gym_hybrid_env': [
# 'gym-hybrid @ git+https://github.com/thomashirtz/gym-hybrid@master#egg=gym-hybrid',
# ],
# 'gobigger_env': [
# 'gobigger @ git+https://github.com/opendilab/GoBigger@main#egg=gobigger',
# ],
# 'gym_soccer_env': [
# 'gym-soccer @ git+https://github.com/LikeJulia/gym-soccer@dev-install-packages#egg=gym-soccer',
# ],
'slimevolleygym_env': [
'slimevolleygym',
],
'smac_env': [
'pysc2',
],
'k8s': [
'kubernetes',
],
'envpool': [
'envpool',
],
# 'dmc2gym': [
# 'dmc2gym @ git+https://github.com/denisyarats/dmc2gym@master#egg=dmc2gym',
# ],
# 'rocket_recycling': [
# 'rocket_recycling @ git+https://github.com/nighood/rocket-recycling@master#egg=rocket_recycling',
# ],
'sokoban': [
'gym-sokoban',
],
'mario': [
'gym-super-mario-bros>=7.3.0',
],
},
entry_points={'console_scripts': ['ding=ding.entry.cli:cli', 'ditask=ding.entry.cli_ditask:cli_ditask']},
classifiers=[
'Development Status :: 5 - Production/Stable',
"Intended Audience :: Science/Research",
'License :: OSI Approved :: Apache Software License',
'Operating System :: POSIX :: Linux',
'Operating System :: Microsoft :: Windows',
'Operating System :: MacOS :: MacOS X',
'Programming Language :: Python :: 3.7',
'Programming Language :: Python :: 3.8',
'Programming Language :: Python :: 3.9',
'Topic :: Scientific/Engineering :: Artificial Intelligence',
],
)