Skip to content

Commit 19b4a3c

Browse files
committed
Update changelog format and include unreleased changes
1 parent 567284f commit 19b4a3c

File tree

1 file changed

+165
-83
lines changed

1 file changed

+165
-83
lines changed

CHANGELOG.md

+165-83
Original file line numberDiff line numberDiff line change
@@ -1,98 +1,180 @@
11
# Changelog
2+
All notable changes to this project will be documented in this file.
3+
4+
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
5+
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
6+
7+
## [Unreleased]
8+
### Added
9+
- Native support for OpenAI Gym
10+
- Native Python interface using pybind11 which results in a speedup for Python workloads as well as proper support for objects like `ALEState`
11+
- Python ROM management, e.g., `ale-import-roms`
12+
- PyPi Python wheels published as `ale-py` + we distribute SDL2 for out of the box visualization + audio support
13+
- `isSupportedROM(path)` to check if a ROM file is supported by the ALE
14+
- Added new games: Atlantis2, Backgammon, BasicMath, Blackjack, Casino, Crossbow, DarkChambers, Earthworld, Entombed, ET, FlagCapture, Hangman, HauntedHouse, HumanCannonball, Klax, MarioBros, MiniatureGolf, Othello, Pacman, Pitfall2, SpaceWar, Superman, Surround, TicTacToe3D, VideoCheckers, VideoChess, VideoCube, WordZapper (thanks @tkoppe)
15+
- Added (additional) mode/difficulty settings for: Lost Luggage, Turmoil, Tron Dead Discs, Pong, Mr. Do, King Kong, Frogger, Adventure (thanks @tkoppe)
16+
17+
### Changed
18+
- Rewrote SDL support using SDL2 primitives
19+
- SDL2 now renders every frame independent of frameskip
20+
- SDL2 renders at the proper ROM framerate (added benefit of audio sync support)
21+
- Rewrote entire CMake infrastructure which now supports vcpkg natively
22+
- C++ minimum version is now C++17
23+
- Changed all relative imports to absolute imports
24+
- Switched from Travis CI to Github Actions
25+
- Allow for paddle controller's min/max setting to be configurable
26+
- More robust version handling between C++ & Python distributions
27+
- Updated Markdown documentation to replace TeX manual
28+
29+
### Fixed
30+
- Fixed bankswitching type for UA cartridges
31+
- Fixed a SwapPort bug in Surround
32+
- Fixed multiple bugs in handling invalid ROM files (thanks @tkoeppe)
33+
- Fixed initialization of TIA static data to make it thread safe (thanks @tkoeppe)
34+
- Fixed RNG initialization, this was one of the last barriers to making the ALE fully deterministic, we are now fully deterministic
35+
36+
### Removed
37+
- Removed FIFO interface
38+
- Removed RL-GLUE support
39+
- Removed ALE CLI interface
40+
- Removed Java interface
41+
- Removed os-dependent filesystem code in favour of C++17 `std::fs`
42+
- Removed human control mode
43+
- Removed old makefile build system in favour of CMake
44+
- Removed bspf
45+
- Removed unused controller types: Driving, Booster, Keyboard
46+
- Removed AtariVox
47+
- Removed Stella types (e.g., Array) in favour of STL types
48+
- Remove Stella debugger
49+
- Remove Stella CheatManager
50+
- Lots of code cleanups conforming to best practices (thanks @tkoeppe)
51+
52+
53+
## [0.6.1] - 2019-11-20
54+
### Changed
55+
- Speedup of up to 30% by optimizing variable types (@qstanczyk)
56+
57+
### Fixed
58+
- Fixed switch fall-through with Gravitar lives detection (@lespeholt)
59+
60+
## [0.6.0] - 2015-06-23
61+
### Added
62+
- Support for modes and difficulties in Atari games (@mcmachado)
63+
- Frame maxpooling as a post-processing option (@skylian)
64+
- Added support for: Turmoil, Koolaid, Tron Deadly Discs, Mr. Do, Donkey Kong, Keystone Kapers, Frogger, Sir Lancelot, Laser Gates, Lost Luggage,
65+
- Added MD5 list of supported ROMs
66+
67+
### Changed
68+
- Disabled color averaging by default
69+
- Replaced TinyMT with C++11 random
70+
71+
### Fixed
72+
- Fixed old color averaging scheme (PR #181)
73+
- Fixed minimal action set in Pong
74+
- Fixed termination issues in Q*Bert
75+
76+
77+
## [0.5.2] - 2015-10-04
78+
### Added
79+
- Routines for ALEState serialization (@Jragonmiris).
80+
81+
### Changed
82+
- Enforce flags existence (@mcmachado).
83+
84+
### Fixed
85+
- Fix RNG issues introduced in 0.5.0.
86+
- Additional bug fixes.
87+
88+
89+
## [0.5.1] - 2015-07-07
90+
### Added
91+
- Added RNG serialization capability.
92+
93+
### Changed
94+
- Refactored Python getScreenRGB to return unpacked RGB values (@spragunr).
95+
- Sets the default value of the color_averaging flag to be true. It was true by default in previous versions but was changed in 0.5.0. Reverted for backward compatibility.
96+
97+
### Fixed
98+
- Bug fixes from ALE 0.5.0.
99+
100+
101+
## [0.5.0] - 2015-06-22
102+
### Added
103+
- Added action_repeat_stochasticity.
104+
- Added sound playback, visualization.
105+
- Added screen/sound recording ability.
106+
- CMake now available.
107+
- Incorporated Benjamin Goodrich's Python interface.
108+
- Added examples for shared library, Python, fifo, RL-Glue interfaces.
109+
- Incorporated Java agent into main repository.
110+
111+
### Changed
112+
- Better ALEInterface.
113+
- Many other changes.
114+
115+
### Fixed
116+
- Some game fixes.
117+
118+
### Removed
119+
- Removed internal controller, now superseded by shared library interface.
120+
- Removed the following command-line flags: 'output_file', 'system_reset_steps', 'use_environment_distribution', 'backward_compatible_save', internal agent flags
121+
- The flag 'use_starting_actions' was removed and internally its value is always 'true'.
122+
- The flag 'disable_color_averaging' was renamed to 'color_averaging' and FALSE is its default value.
123+
124+
125+
## [0.4.4] - 2014-04-28
126+
### Fixed
127+
- Fixed a memory issue in ALEScreen.
2128

3-
These changelogs are for the ALE prior to v0.5. For more recent versions check out the [releases page](https://github.com/mgbellemare/Arcade-Learning-Environment/releases).
4129

5-
## Inter-release notes:
6-
* color_averaging is now off by default so that environment observations correspond to emulator frames unless requested otherwise.
130+
## [0.4.3] - 2014-04-26
131+
### Fixed
132+
- Fixed issues with frame numbers not being correctly updated.
133+
- Fixed a bug where total reward was not properly reported under frame skipping.
134+
- Fixed a bug with ALEState's m_frame_number.
135+
7136

8-
## ALE 0.5dev_b.
9-
**Released October 4th, 2015.**
137+
## [0.4.2] - 2013-06-12
138+
### Changed
139+
- Modified StellaEnvironment save/load interface to provide additional flexibility.
10140

11-
* Enforce flags existence (@mcmachado).
12-
* Fix RNG issues introduced in 0.5.0.
13-
* Routines for ALEState serialization (@Jragonmiris).
14-
* Additional bug fixes.
141+
### Fixed
142+
- Series of bug fixes from Matthew Hausknecht and community.
15143

16-
## ALE 0.5dev
17-
**Released July 7th, 2015.**
18144

19-
* Refactored Python getScreenRGB to return unpacked RGB values (@spragunr).
20-
* Sets the default value of the color_averaging flag to be true. It was true by default in previous versions but was changed in 0.5.0. Reverted for backward compatibility.
21-
* Added RNG serialization capability.
22-
* Bug fixes from ALE 0.5.0.
145+
## [0.4.1] - 2013-05-24
146+
### Added
147+
- Added frame skipping support directly in StellaEnvironment.
23148

24-
## ALE 0.5.0.
25-
**Released June 22nd, 2015.**
149+
### Changed
150+
- Reverted default number of episodes to 10.
26151

27-
* Added action_repeat_stochasticity.
28-
* Added sound playback, visualization.
29-
* Added screen/sound recording ability.
30-
* CMake now available.
31-
* Incorporated Benjamin Goodrich's Python interface.
32-
* Some game fixes.
33-
* Added examples for shared library, Python, fifo, RL-Glue interfaces.
34-
* Incorporated Java agent into main repository.
35-
* Removed internal controller, now superseded by shared library interface.
36-
* Better ALEInterface.
37-
* Many other changes.
152+
### Fixed
153+
- Fixed RL-Glue syntax from OBSERVATION to OBSERVATIONS. Thanks to Angus MacIsaac for picking this bug up.
38154

39-
## ALE 0.5dev.
40-
**Released February 15th, 2015.**
41155

42-
* Removed the following command-line flags: 'output_file', 'system_reset_steps', 'use_environment_distribution', 'backward_compatible_save', internal agent flags
43-
* The flag 'use_starting_actions' was removed and internally its value is always 'true'.
44-
* The flag 'disable_color_averaging' was renamed to 'color_averaging' and FALSE is its default value.
156+
## [0.4.0] - 2013-04-22
157+
### Added
158+
- RL-Glue support
159+
- Shared library interface
160+
- Simpler direct environment interfacing
161+
- Improved environment handling
162+
- Improved environment customization
163+
- Better documentation
45164

46-
## ALE 0.4.4.
47-
**Released April 28th, 2014.**
48165

49-
* Fixed a memory issue in ALEScreen.
166+
## 0.3.0 - 2012-07-22
167+
- Initial ALE release.
50168

51-
## ALE 0.4.3 Bug fix (Mayank Daswani).
52-
**Released April 26th, 2014.**
53169

54-
* Fixed issues with frame numbers not being correctly updated.
55-
* Fixed a bug where total reward was not properly reported under frame skipping.
56-
57-
## ALE 0.4.3.
58-
**Released January 7th, 2013.**
59-
60-
* Fixed a bug with ALEState's m_frame_number.
61-
62-
## ALE 0.4.2.
63-
**Released June 12th, 2013.**
64-
65-
* Modified StellaEnvironment save/load interface to provide additional flexibility.
66-
* Series of bug fixes from Matthew Hausknecht and community.
67-
68-
## ALE 0.4.1 Bug fix
69-
**Released May 24th, 2013.**
70-
71-
* Fixed RL-Glue syntax from OBSERVATION to OBSERVATIONS. Thanks to Angus MacIsaac for picking this bug up.
72-
73-
## ALE 0.4.1.
74-
**Released May 22nd, 2013.**
75-
76-
* Added frame skipping support directly in StellaEnvironment.
77-
* Reverted default number of episodes to 10.
78-
79-
## ALE 0.4.0.
80-
**Released April 22nd, 2013.**
81-
82-
* RL-Glue support
83-
* Shared library interface
84-
* Simpler direct environment interfacing
85-
* Improved environment handling
86-
* Improved environment customization
87-
* Better documentation
88-
89-
## ALE 0.3.1.
90-
**Released August 7th, 2012.**
91-
92-
* Fixed frames per episode cap for FIFO agents, added functionality to
93-
limit the total number of frames per run for FIFO agents.
94-
95-
## ALE 0.3.
96-
**Released July 22nd, 2012.**
97-
98-
* Initial ALE release.
170+
[unreleased]: https://github.com/mgbellemare/Arcade-Learning-Environment/compare/v0.6.1...HEAD
171+
[0.6.1]: https://github.com/mgbellemare/Arcade-Learning-Environment/compare/v0.6.0...v0.6.1
172+
[0.6.0]: https://github.com/mgbellemare/Arcade-Learning-Environment/compare/v0.5.2...v0.6.0
173+
[0.5.2]: https://github.com/mgbellemare/Arcade-Learning-Environment/compare/v0.5.1...v0.5.2
174+
[0.5.1]: https://github.com/mgbellemare/Arcade-Learning-Environment/compare/v0.5.0...v0.5.1
175+
[0.5.0]: https://github.com/mgbellemare/Arcade-Learning-Environment/compare/aa433a4b401bc3e7113c494edfc90500bc4afc78...v0.5.0
176+
[0.4.4]: https://github.com/mgbellemare/Arcade-Learning-Environment/compare/d93189e0f00b5cb10120134ca965d8a5d3124581...aa433a4b401bc3e7113c494edfc90500bc4afc78
177+
[0.4.3]: https://github.com/mgbellemare/Arcade-Learning-Environment/compare/b905e07ead43d07f386b35128e7eff60595e1581...d93189e0f00b5cb10120134ca965d8a5d3124581
178+
[0.4.2]: https://github.com/mgbellemare/Arcade-Learning-Environment/compare/ba33f16376b545462666268194e8f72df82c1a3a...b905e07ead43d07f386b35128e7eff60595e1581
179+
[0.4.1]: https://github.com/mgbellemare/Arcade-Learning-Environment/compare/84f9678d713695314570e0f183072f36e177a364...ba33f16376b545462666268194e8f72df82c1a3a
180+
[0.4.0]: https://github.com/mgbellemare/Arcade-Learning-Environment/compare/5c45f643a78ef96ade23928fd6a3740172ec1e35...84f9678d713695314570e0f183072f36e177a364

0 commit comments

Comments
 (0)