==============
Version 0.12.0
==============

* Core: avoid a double free when loading multiple discs.

* CoreViewInputDevice: don't throw errors when the view is NULL.

* Bugs fixed:
 787492 retro-gtk: SIGABRT in retro_game_info_free


===============
Version 0.11.92
===============

* Core:
 - Remove the barely used system-info property.
 - Use Gdk.EventKey for keyboard inputs.
 - Make the init singal an error-throwing method.
 - Implement disk handling directly.

* CoreView can be exposed as a joypad, a mouse or a pointer.

* retro-demo:
 - Add pointer support from CoreView.

* Make all error domains internal.

* Make internal and port to C:
 - GameInfo.
 - Module.
 - SystemAvInfo.
 - SystemInfo.
 - most of Core.
 - keyboard keys.

* Remove unused symbols:
 - DiskControl.
 - GamepadConfiguration.
 - GamepadButtonType.
 - Keyboard.
 - KeyboardState.
 - MemDesc.
 - MemoryDescriptor.
 - MemoryMap.
 - Mouse.
 - VirtualGamepad.
 - get_system_info ().
 - SNES specific memory types from MemoryType.

* Bugs fixed:
 777489 Refactor the whole API


================
Version 0.11.4.1
================

* Distribute retro-core.h and retro-rotation.h.


==============
Version 0.11.4
==============

* A demo application has been added, it allows to directly test the
  without the need of an external tool.

* Loading games:
 - Add the set_medias(), load_medias() and set_current_media() methods
   to Core and load the given medias (if any) in Core.init().
 - Remove load_game() and prepare() Core methods from the public API as
   they are now used indirectly.
 - This should simplify loading games for the users of the library.

* Logging:
 - Add the Core.log() signal which will emit a GLib compatible logging
   message with the Libretro core's name as the log domain.
 - Add retro_g_log() to simply handle Core.log() by outputing the logs
   in the expected unstructured GLib fashion.
 - Remove LogLevel, Log and FileStreamLog as they are now useless.

* Add CoreView as a prototype of a single widget to handle most inputs
  and outputs of a core and use it in the demo.

* Add CoreDescriptor.get_uri().

* Make CairoDisplay.set_core() and Make PaPlayer.set_core() accept null.

* Fix the transmission of keyboard events to the Libretro core.

* Rotation and many methods of Core are ported to C.

* Bugs fixed:
 777489 Refactor the whole API
 780919 Add a demo application
 782501 retro-gtk: Port to C
 782504 retro-gtk: Improve Libretro core logging
 782505 retro-gtk: (on_input_state): should not be reached
 782772 retro: Libretro cores should have an appropriate save directory

==============
Version 0.10.0
==============

* Save the expected ratio as DPI of the video frames

* Bugs fixed:
 769833 Add metadata to screenshots
 779924 gnome-games crash with SIGSEGV in retro_core_set_callbacks()
 779987 release tarballs don't have generated files


==============
Version 0.9.92
==============

* Allow recursive iteration through Libretro cores of a directory


==============
Version 0.9.91
==============

* Ongoing refactoring:
 - Deduplicate documentation
 - Add missing MouseId values
 - Remove deprecated input device types

* Libretro module query:
 - Allow to check the firmwares
 - Add an helper method to chek the supported MIME types
 - Add a module iterator, allowing sync and async browsing
 - Remove the now useless foreach function

* Core:
 - Add methods to handle standalone cores more easily

* Fix an integer division when computing the aspect ratio

* Add a script to update libretro.h

* Bugs fixed:
 777371 Support standalone Libretro games
 777987 Allow to have a sharp video output
 778744 Check required firmwares are present


==============
Version 0.9.90
==============

* Ongoing refactoring:
 - Merge the retro-gobject module into retro-gtk
 - Merge the RetroGtk namespace into Retro
 - Remove many unused types and functions
 - Refactor many types and functions
 - Make the API overall simpler

* Libretro module query:
 - Search modules from their Libretro Core Descriptor
 - Search Libretro modules in paths from the LIBRETRO_PLUGIN_PATH env variable
 - Drop the ancient module query mechanisms
 - Drop the ancient Libretro core path env variable

* Allow to set a smooth or sharp rendering to CairoDisplay

* Bugs fixed:
 777482: retro-gobject: Remove unused private code
 777987: Allow to have a sharp video output
 778446: Support the Libretro Core Descriptor format


=============
Version 0.8.1
=============

* Fix module lookup failing early when a directory doesn't exist

* Bugs fixed:
 771624 retro-gobject: Libretro module query fail when directory doesn't exist


===========
Version 0.8
===========

* Merge retro-gobject into the retro-gtk tree

* Remove deprecated symbols:
 - Retro.CoreFactory
 - Retro.get_plugins_dir()
 - Retro.search_module()
 - Retro.PROJECT_PLUGINS_DIR
 - RetroGtk.ClutterDisplay
 - RetroGtk.init()

* Add dependency on libpulse-simple

* Remove dependency on clutter-gtk

* Add unstable API guards

* Clean up multiple parts of the code and the build system

* Allow to look for modules by the content of their .info file

* Make the Retro.Rumble interface public

* Fix the speed at which games are run

* Fix sound stopping to play after some time

* Bugs fixed:
 769306 retro-gobject: Fix typo
 769317 retro-gobject: Make Rumble public
 769415 Wrong location for retro-gtk.h and retro-gobject.h
 769729 retro-gobject: Allow to search modules from their .info
 769880 retro-gobject: Refactor retro-environment* files
 770340 Sound stops after some minutes


===========
Version 0.6
===========

* Remove dependency to JSK


===========
Version 0.4
===========

* Deprecate ClutterDisplay and RetroGtk.init().

* Use kebab-case file naming convention.

* CairoDisplay
 - Draw on a publicly available Gdk.Pixbuf.
 - Render itself desaturated when insensitive.

* PaDevice
 - Stop playing when destroyed to prevents crashes.
