* initial commit
* Fix CI
* Fixed CI
* third time the charm
* Fix mujoco environment render modes order
* Remove unnecessary changes
* pre-commit
* Fix tests
* Comment out test render modes
* Fix code review and readd mujoco
* pre-commit
* Fix testing envs
* Fix all GenericTestEnvs
* Do not run mujoco-py render environments
* removed return_info, made info dict mandatory in reset
* tenatively removed deprecated seed api for environments
* added more info type checks to wrapper tests
* formatting/style compliance
* addressed some comments
* polish to address review
* fixed tests after merge, and added a test of the return_info deprecation assertion if found in reset signature
* some organization of env_checker tests, reverted a probably merge error
* added deprecation check for seed function in env
* updated docstring
* removed debug prints, tweaked test_check_seed_deprecation
* changed return_info deprecation check from assertion to warning
* fixes to vector envs, now should be correctly structured
* added some explanation and typehints for mockup depcreated return info reset function
* re-removed seed function from vector envs
* added explanation to _reset_return_info_type and changed the return statement
* Try to fix car racing unpickling
* Fix EzPickle for BipedalWalker and LunarLander
* Shamelessly steal the pickle-unpickle test from Mark, with slight modifications
* CarRacing EzPickle fix
* Mujoco ezpickle fix
* add pygame GUI for frozen_lake.py env
* add new line at EOF
* pre-commit reformat
* improve graphics
* new images and dynamic window size
* darker tile borders and fix ICC profile
* pre-commit hook
* adjust elf and stool size
* Update frozen_lake.py
* reformat
* fix#2600
* #2600
* add rgb_array support
* reformat
* test render api change on FrozenLake
* add render support for reset on frozenlake
* add clock on pygame render
* new render api for blackjack
* new render api for cliffwalking
* new render api for Env class
* update reset method, lunar and Env
* fix wrapper
* fix reset lunar
* new render api for box2d envs
* new render api for mujoco envs
* fix bug
* new render api for classic control envs
* fix tests
* add render_mode None for CartPole
* new render api for test fake envs
* pre-commit hook
* fix FrozenLake
* fix FrozenLake
* more render_mode to super - frozenlake
* remove kwargs from frozen_lake new
* pre-commit hook
* add deprecated render method
* add backwards compatibility
* fix test
* add _render
* move pygame.init() (avoid pygame dependency on init)
* fix pygame dependencies
* remove collect_render() maintain multi-behaviours .render()
* add type hints
* fix renderer
* don't call .render() with None
* improve docstring
* add single_rgb_array to all envs
* remove None from metadata["render_modes"]
* add type hints to test_env_checkers
* fix lint
* add comments to renderer
* add comments to single_depth_array and single_state_pixels
* reformat
* add deprecation warnings and env.render_mode declaration
* fix lint
* reformat
* fix tests
* add docs
* fix car racing determinism
* remove warning test envs, customizable modes on renderer
* remove commments and add todo for env_checker
* fix car racing
* replace render mode check with assert
* update new mujoco
* reformat
* reformat
* change metaclass definition
* fix tests
* implement mark suggestions (test, docs, sets)
* check_render
Co-authored-by: J K Terry <jkterry0@gmail.com>
* 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
* Revert rewrite setup.py changes
* Remove smart formatting for 3.6 support
* Fixed `check_action_space` and `check_observation_space`
* Added disable_env_checker to vector.make such that env_checker would only run on the first environment created.
* Removing check that different seeds would produce different initialising states
* Use the unwrapped environment np_random
* Fixed vector environment creator
* Remove additional ignores from flake8
* Remove all unused imports
* Remove all unused imports
* Update flake8 and pyupgrade
* F841, removed unused variables
* E731, removed lambda assignment to variables
* Remove E731, F403, F405, F524
* Remove E722, bare exceptions
* Remove E712, compare variable == True or == False to is True or is False
* Remove E402, module level import not at top of file
* Added --pre-file-ignores
* Add --per-file-ignores removing E741, E302 and E704
* Add E741, do not use variables named ‘l’, ‘O’, or ‘I’ to ignore issues in classic control
* Fixed issues for pytest==6.2
* Remove unnecessary # noqa
* Edit comment with the removal of E302
* Added warnings and declared module, attr for pyright type hinting
* Remove unused import
* Removed flake8 E302
* Updated flake8 from 3.9.2 to 4.0.1
* Remove unused variable
* Updated cartpole-v0 to v1 to prevent warning and added pytest.mark.filterwarnings for tests where warnings are unavoidable
* Change np.bool to bool as numpy raises a warning and bool is the suggested solution
* Seeding randint is deprecated in the future, integers is new solution
* Fixed errors thrown when the video recorder is deleted but not closed
* spaces.Box expects a floating array, updated all cases where this was not true and modified float32 to float64 as float array default to float64. Otherwise space.Box raises warning that dtype precision (float32) is lower than array precision (float64).
* Added pytest.mark.filterwarnings to preventing the raising of an intended warning
* Added comment to explain why a warning is raised that can't be prevented without version update to the environment
* Added comment to explain why warning is raised
* Changed values to float as expected by the box which default to float64
* Removed --forked from pytest as the pytest-forked project is no being maintained and was not raising warnings as expected
* When AsyncVectorEnv has shared_memory=True then a ValueError is raised before _state is initialised. Therefore, on the destruction on the env an error is thrown in .close_extra as _state does not exist
* Possible fix that was causing an error in test_call_async_vector_env by ensuring that pygame resources are released
* Pygame throws an error with ALSA when closed, using a fix from PettingZoo (https://github.com/Farama-Foundation/PettingZoo/blob/master/pettingzoo/__init__.py). We use the dsp audiodriver to prevent this issue
* Modification due to running pre-commit locally
* Updated cartpole-v0 to v1 to prevent warning and added pytest.mark.filterwarnings for tests where warnings are unavoidable
* Change np.bool to bool as numpy raises a warning and bool is the suggested solution
* Seeding randint is deprecated in the future, integers is new solution
* Fixed errors thrown when the video recorder is deleted but not closed
* spaces.Box expects a floating array, updated all cases where this was not true and modified float32 to float64 as float array default to float64. Otherwise space.Box raises warning that dtype precision (float32) is lower than array precision (float64).
* Added pytest.mark.filterwarnings to preventing the raising of an intended warning
* Added comment to explain why a warning is raised that can't be prevented without version update to the environment
* Added comment to explain why warning is raised
* Changed values to float as expected by the box which default to float64
* Removed --forked from pytest as the pytest-forked project is no being maintained and was not raising warnings as expected
* When AsyncVectorEnv has shared_memory=True then a ValueError is raised before _state is initialised. Therefore, on the destruction on the env an error is thrown in .close_extra as _state does not exist
* Possible fix that was causing an error in test_call_async_vector_env by ensuring that pygame resources are released
* Pygame throws an error with ALSA when closed, using a fix from PettingZoo (https://github.com/Farama-Foundation/PettingZoo/blob/master/pettingzoo/__init__.py). We use the dsp audiodriver to prevent this issue
* Modification due to running pre-commit locally
* Update pendulum.py
* version warnings
* black
* try except
* update notices version
* Exception
* nosec
* black
* no loop, stderr
* black
* convert ## to ###
* correct subheader
* black
* despace
* spacing
* frozen lake fixes
* rename render modes/fps
* fix API test
* fix API test
* fix more API tests
* black
* add render fps
* initial draft of optional info dict in reset function, implemented for cartpole, tests seem to be passing
* merged core.py
* updated return type annotation for reset function in core.py
* optional metadata with return_info from reset added for all first party environments, with corresponding tests. Incomplete implementation for wrappers and vector wrappers
* removed Optional type for return_info arguments
* added tests for return_info to normalize wrapper and sync_vector_env
* autoformatted using black
* added optional reset metadata tests to several wrappers
* added return_info capability to async_vector_env.py and test to verify functionality
* added optional return_info test for record_video.py
* removed tests for mujoco environments
* autoformatted
* improved test coverage for optional reset return_info
* re-removed unit test envs accidentally reintroduced in merge
* removed unnecessary import
* changes based on code-review
* small fix to core wrapper typing and autoformatted record_epsisode_stats
* small change to pass flake8 style
* Move tests to root with automatic PyCharm import refactoring. This will likely fail some tests
* Changed entry point for a registration test env.
* Move a stray lunar_lander test to tests/envs/...
* black
* Change the version from which importlib_metadata is replaced with importlib.metadata. Also requiring installing importlib_metadata for python 3.8 now.
???????????
* Undo last commit