-
Notifications
You must be signed in to change notification settings - Fork 8.6k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* Updated testing requirements based off extra["testing"] * Updated setup to check the version is valid, added testing and all dependency groups and collects the requirements from requirements.txt to keep everything standardized. * Updated requirements.txt based on the current minimum gym requirements.txt to work * Updated requirements.txt based on the current minimum gym requirements.txt to work * Updated test_requirements.txt based on the current gym full testing requirements * Pre-commit updates * Add integer check for the `n` parameter * The type of self.spaces is an Iterable which is absorbed by the tuple. * Simplifies the environment checker to two files, env_checker.py and passive_env_checker.py with a new wrapper env_checker.py * Adds the passive environment checker on `gym.make` * Ignore the `check_env` warn parameter * Ignore the `check_env` warn parameter * Use the `data_equivalence` function * Remove env_checker PR changes * Move pip install pytest and mock to py 3.6 * Update setup.py and requirements.txt
- Loading branch information
1 parent
134de4a
commit 734bd4b
Showing
4 changed files
with
61 additions
and
55 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,9 +1,14 @@ | ||
ale-py~=0.7.5 | ||
opencv-python>=3.0 | ||
box2d-py==2.3.5 | ||
scipy>=1.4.1 | ||
numpy>=1.18.0 | ||
pyglet>=1.4.0 | ||
cloudpickle>=1.2.0 | ||
importlib_metadata>=4.8.0; python_version < '3.10' | ||
gym_notices>=0.0.4 | ||
dataclasses==0.8; python_version == '3.6' | ||
opencv-python>=3.0 | ||
lz4>=3.1.0 | ||
matplotlib>=3.0 | ||
box2d-py==2.3.5 | ||
pygame==2.1.0 | ||
ale-py~=0.7.5 | ||
mujoco==2.2.0 | ||
mujoco_py<2.2,>=2.1 | ||
imageio>=2.14.1 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,13 +1,15 @@ | ||
"""Setups the project.""" | ||
import itertools | ||
import os.path | ||
import sys | ||
import re | ||
|
||
from setuptools import find_packages, setup | ||
|
||
# Don't import gym module here, since deps may not be installed | ||
sys.path.insert(0, os.path.join(os.path.dirname(__file__), "gym")) | ||
from version import VERSION # noqa:E402 | ||
with open("gym/version.py") as file: | ||
full_version = file.read() | ||
assert ( | ||
re.match(r'VERSION = "\d\.\d+\.\d+"\n', full_version).group(0) == full_version | ||
), f"Unexpected version: {full_version}" | ||
VERSION = re.search(r"\d\.\d+\.\d+", full_version).group(0) | ||
|
||
# Environment-specific dependencies. | ||
extras = { | ||
|
@@ -17,29 +19,20 @@ | |
"classic_control": ["pygame==2.1.0"], | ||
"mujoco_py": ["mujoco_py<2.2,>=2.1"], | ||
"mujoco": ["mujoco==2.2.0", "imageio>=2.14.1"], | ||
"toy_text": ["pygame==2.1.0", "scipy>=1.4.1"], | ||
"toy_text": ["pygame==2.1.0"], | ||
"other": ["lz4>=3.1.0", "opencv-python>=3.0", "matplotlib>=3.0"], | ||
} | ||
|
||
# Meta dependency groups. | ||
nomujoco_blacklist = {"mujoco_py", "mujoco", "accept-rom-license", "atari"} | ||
nomujoco_groups = set(extras.keys()) - nomujoco_blacklist | ||
|
||
extras["nomujoco"] = list( | ||
itertools.chain.from_iterable(map(lambda group: extras[group], nomujoco_groups)) | ||
) | ||
|
||
noatari_blacklist = {"accept-rom-license", "atari"} | ||
noatari_groups = set(extras.keys()) - noatari_blacklist | ||
extras["noatari"] = list( | ||
itertools.chain.from_iterable(map(lambda group: extras[group], noatari_groups)) | ||
) | ||
|
||
all_blacklist = {"accept-rom-license"} | ||
all_groups = set(extras.keys()) - all_blacklist | ||
# Testing dependency groups. | ||
testing_group = set(extras.keys()) - {"accept-rom-license", "atari"} | ||
extras["testing"] = list( | ||
set(itertools.chain.from_iterable(map(lambda group: extras[group], testing_group))) | ||
) + ["pytest", "mock"] | ||
|
||
# All dependency groups - accept rom license as requires user to run | ||
all_groups = set(extras.keys()) - {"accept-rom-license"} | ||
extras["all"] = list( | ||
itertools.chain.from_iterable(map(lambda group: extras[group], all_groups)) | ||
set(itertools.chain.from_iterable(map(lambda group: extras[group], all_groups))) | ||
) | ||
|
||
# Uses the readme as the description on PyPI | ||
|
@@ -55,25 +48,31 @@ | |
break | ||
|
||
setup( | ||
name="gym", | ||
version=VERSION, | ||
description="Gym: A universal API for reinforcement learning environments", | ||
url="https://www.gymlibrary.ml/", | ||
author="Gym Community", | ||
author_email="[email protected]", | ||
classifiers=[ | ||
# Python 3.6 is minimally supported (only with basic gym environments and API) | ||
"Programming Language :: Python :: 3", | ||
"Programming Language :: Python :: 3.6", | ||
"Programming Language :: Python :: 3.7", | ||
"Programming Language :: Python :: 3.8", | ||
"Programming Language :: Python :: 3.9", | ||
"Programming Language :: Python :: 3.10", | ||
], | ||
description="Gym: A universal API for reinforcement learning environments", | ||
extras_require=extras, | ||
install_requires=[ | ||
"numpy >= 1.18.0", | ||
"cloudpickle >= 1.2.0", | ||
"importlib_metadata >= 4.8.0; python_version < '3.10'", | ||
"gym_notices >= 0.0.4", | ||
"dataclasses == 0.8; python_version == '3.6'", | ||
], | ||
license="MIT", | ||
packages=[package for package in find_packages() if package.startswith("gym")], | ||
zip_safe=False, | ||
long_description=long_description, | ||
long_description_content_type="text/markdown", | ||
install_requires=[ | ||
"numpy>=1.18.0", | ||
"cloudpickle>=1.2.0", | ||
"importlib_metadata>=4.8.0; python_version < '3.10'", | ||
"gym_notices>=0.0.4", | ||
"dataclasses==0.8; python_version == '3.6'", | ||
], | ||
extras_require=extras, | ||
name="gym", | ||
packages=[package for package in find_packages() if package.startswith("gym")], | ||
package_data={ | ||
"gym": [ | ||
"envs/mujoco/assets/*.xml", | ||
|
@@ -83,14 +82,9 @@ | |
"py.typed", | ||
] | ||
}, | ||
tests_require=["pytest", "mock"], | ||
python_requires=">=3.6", | ||
classifiers=[ | ||
"Programming Language :: Python :: 3", | ||
"Programming Language :: Python :: 3.6", | ||
"Programming Language :: Python :: 3.7", | ||
"Programming Language :: Python :: 3.8", | ||
"Programming Language :: Python :: 3.9", | ||
"Programming Language :: Python :: 3.10", | ||
], | ||
tests_require=extras["testing"], | ||
url="https://www.gymlibrary.ml/", | ||
version=VERSION, | ||
zip_safe=False, | ||
) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,2 +1,10 @@ | ||
lz4~=3.1 | ||
pytest~=6.2 | ||
box2d-py==2.3.5 | ||
lz4>=3.1.0 | ||
opencv-python>=3.0 | ||
mujoco==2.2.0 | ||
matplotlib>=3.0 | ||
imageio>=2.14.1 | ||
pygame==2.1.0 | ||
mujoco_py<2.2,>=2.1 | ||
pytest | ||
mock |