* 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
* 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 docstrings using darglint, ignoring 402 and 202 plus shortened lines into multiple where they were overflowing
* Remove abstract method decorators, for a future PR
* Add __future__ import annotation for python 3.7+ notion
* Added missing bracket
* Fix minor docstring tables
* Added pydocstyle to pre-commit
* Added docstrings for tests and updated the tests for autoreset
* Add pydocstyle exclude folder to allow slowly adding new docstrings
* Add docstrings for setup.py and gym/__init__.py, core.py, error.py and logger.py
* Check that all unwrapped environment are of a particular wrapper type
* Reverted back to import gym.spaces.Space to gym.spaces
* Fixed the __init__.py docstring
* Fixed autoreset autoreset test
* Updated gym __init__.py top docstring
* Fix examples in docstrings
* Add docstrings and type hints where known to all functions and classes in gym/utils and gym/vector
* Remove unnecessary import
* Removed "unused error" and make APIerror deprecated at gym 1.0
* Add pydocstyle description to CONTRIBUTING.md
* Added docstrings section to CONTRIBUTING.md
* Added :meth: and :attr: keywords to docstrings
* Added :meth: and :attr: keywords to docstrings
* Imported annotations from __future__ to fix python 3.7
* Add __future__ import annotations for python 3.7
* isort
* Remove utils and vectors for this PR and spaces for previous PR
* Update gym/envs/classic_control/acrobot.py
Co-authored-by: Markus Krimmel <montcyril@gmail.com>
* Update gym/envs/classic_control/acrobot.py
Co-authored-by: Markus Krimmel <montcyril@gmail.com>
* Update gym/envs/classic_control/acrobot.py
Co-authored-by: Markus Krimmel <montcyril@gmail.com>
* Update gym/spaces/dict.py
Co-authored-by: Markus Krimmel <montcyril@gmail.com>
* Update gym/utils/env_checker.py
Co-authored-by: Markus Krimmel <montcyril@gmail.com>
* Update gym/utils/env_checker.py
Co-authored-by: Markus Krimmel <montcyril@gmail.com>
* Update gym/utils/env_checker.py
Co-authored-by: Markus Krimmel <montcyril@gmail.com>
* Update gym/utils/env_checker.py
Co-authored-by: Markus Krimmel <montcyril@gmail.com>
* Update gym/utils/env_checker.py
Co-authored-by: Markus Krimmel <montcyril@gmail.com>
* Update gym/utils/ezpickle.py
Co-authored-by: Markus Krimmel <montcyril@gmail.com>
* Update gym/utils/ezpickle.py
Co-authored-by: Markus Krimmel <montcyril@gmail.com>
* Update gym/utils/play.py
Co-authored-by: Markus Krimmel <montcyril@gmail.com>
* Pre-commit
* Updated docstrings with :meth:
* Updated docstrings with :meth:
* Update gym/utils/play.py
* Update gym/utils/play.py
* Update gym/utils/play.py
* Apply suggestions from code review
Co-authored-by: Markus Krimmel <montcyril@gmail.com>
* pre-commit
* Update gym/utils/play.py
Co-authored-by: Markus Krimmel <montcyril@gmail.com>
* Updated fps and zoom parameter docstring
* Update play docstring
* Apply suggestions from code review
Added suggested corrections from @markus28
Co-authored-by: Markus Krimmel <montcyril@gmail.com>
* Pre-commit magic
* Update the `gym.make` docstring with a warning for `env_checker`
* Updated and fixed vector docstrings
* Update test names for reflect the project filename style
Co-authored-by: Markus Krimmel <montcyril@gmail.com>
* Place try except around all imports for pygame and optional modules in box2d, classic_control and toy_text
* Updated all ImportErrors to DependencyNotInstalled
* Re-add comment on why pygame is imported
* 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
* Locked framerate in human-mode rendering for box2d and classic_control
* Fixed pyright errors
* Use the new metadata key for FPS, add toytext environments
* 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
* Typecheck classic control environments
* consistent imports + comments
* Don't use seed method
Although this code is exact duplication, we at least don't call deprecated method.
* Update core.py
* 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
* docs+credits
* docs: refactor box2d + comment version history
* fix mujoco line lengths
* fix more env line lengths
* black
* typos
* put docstrings in base environments rather than highest version
* fix richer reacher
* black
* correct black version
* continuous mountain car docstring to markdown
* remove unneeded images
* black
Co-authored-by: Andrea PIERRÉ <andrea_pierre@brown.edu>
* docs+credits
* docs: refactor box2d + comment version history
* fix mujoco line lengths
* fix more env line lengths
* black
* typos
Co-authored-by: Andrea PIERRÉ <andrea_pierre@brown.edu>
* First find/replace, now tests
* Fixes to the vector env
* Make seed keyword only in wrappers
* (try to) fix the bug with old environments using new wrappers (with the seed keyword)
* black
* Change **kwargs to options, try to make it work; black
* Add OrderEnforcing wrapper to wrapper exports
Add a test for compatibility with old (pybullet-like) envs
* Add OrderEnforcing wrapper to wrapper exports
Add a test for compatibility with old (pybullet-like) envs
black
* Update the env checker
* Update the env checker
* Update the env checker to use inspect (might fail tests, let's see)
* Allow the signature to include kwargs in env_checker
* Minor fix
* Ditch most of the seeding.py and replace np_random with the numpy default_rng. Let's see if tests pass
* Updated a bunch of RNG calls from the RandomState API to Generator API
* black; didn't expect that, did ya?
* Undo a typo
* blaaack
* More typo fixes
* Fixed setting/getting state in multidiscrete spaces
* Fix typo, fix a test to work with the new sampling
* Correctly (?) pass the randomly generated seed if np_random is called with None as seed
* Convert the Discrete sample to a python int (as opposed to np.int64)
* Remove some redundant imports
* First version of the compatibility layer for old-style RNG. Mainly to trigger tests.
* Removed redundant f-strings
* Style fixes, removing unused imports
* Try to make tests pass by removing atari from the dockerfile
* Try to make tests pass by removing atari from the setup
* Try to make tests pass by removing atari from the setup
* Try to make tests pass by removing atari from the setup
* First attempt at deprecating `env.seed` and supporting `env.reset(seed=seed)` instead. Tests should hopefully pass but throw up a million warnings.
* black; didn't expect that, didya?
* Rename the reset parameter in VecEnvs back to `seed`
* Updated tests to use the new seeding method
* Removed a bunch of old `seed` calls.
Fixed a bug in AsyncVectorEnv
* Stop Discrete envs from doing part of the setup (and using the randomness) in init (as opposed to reset)
* Add explicit seed to wrappers reset
* Remove an accidental return
* Re-add some legacy functions with a warning.
* Use deprecation instead of regular warnings for the newly deprecated methods/functions
* Changed the dtypes of classic control envs to float32
* Fixed formatting via black
* Added dtype tests
* Formatting, and test error message
* Only test dtypes for Box space
* Fix Bipedal Walker and Car Racing
* Undo the car racing dtype change
* Redo the car racing dtype change - set to np.float32, and updated observation_space to reflect it
* add type of argument
* fix typos
* split lines for formatting
* reformat string, add ellipsis, remove r string
* make docstring stylistically consistent
* make docstrings a little more elaboratet
* reduce by 1 space
* make line wrap 120
* remove unnecessary line
* add returns to docstring
* add docstring, make code more pep8 and delete some unused print functions
* more pep8
* file docstring instead of comments
* delete unused variables, add file docstring and add some pep8 spring cleaning
* add file docstring, fix typos and add some pep8 correections
Co-authored-by: Dan <daniel.timbrell@ing.com>
* Fixed rendering to properly display modifications to length etc
* 'self.length is half the pole's length'
* Explicitly base viewer size on Acrobot link size
* Made correct polygon rendering work for different link lengths
* add dtype to Box
* remove board_game, debugging, safety, parameter_tuning environments
* massive set of breaking changes
- remove python logging module
- _step, _reset, _seed, _close => non underscored method
- remove benchmark and scoring folder
* Improve render("human"), now resizable, closable window.
* get rid of default step and reset in wrappers, so it doesn’t silently fail for people with underscore methods
* CubeCrash unit test environment
* followup fixes
* MemorizeDigits unit test envrionment
* refactored spaces a bit
fixed indentation
disabled test_env_semantics
* fix unit tests
* fixes
* CubeCrash, MemorizeDigits tested
* gym backwards compatibility patch
* gym backwards compatibility, followup fixes
* changelist, add spaces to main namespaces
* undo_logger_setup for backwards compat
* remove configuration.py