Skip to content

Releases: JesseTG/libretro.py

v0.5.0

30 Nov 23:25
Compare
Choose a tag to compare

Thanks to @JSensebe for his contributions!

Changed

  • BREAKING: Rename SensorInterface to SensorDriver.
  • BREAKING: Rename GeneratorSensorInterface to IterableSensorDriver
    and some accompanying type aliases.
  • BREAKING: Decouple SensorDriver and InputDriver so that
    the former is no longer part of the latter.
  • Use InputDriver.max_users to filter sensor input
    regardless of the underlying sensor driver.

Added

  • Add SensorDriver.poll.
  • Add SessionBuilder.with_sensor.
  • Add Session.set_controller_port_device.

Fixed

  • Improved documentation for IterableSensorDriver.
  • Fix a GET_VARIABLE dereference error.

v0.4.0

24 Oct 00:08
Compare
Choose a tag to compare

Changed

  • BREAKING: Rename RumbleInterface to RumbleDriver.
  • BREAKING: Rename DefaultRumbleDriver to DictRumbleDriver.
  • BREAKING: Rename GeneratorInputDriver to IterableInputDriver.

Fixed

  • Fix the rumble driver raising an exception when setting the rumble state.

v0.3.1

17 Oct 16:03
Compare
Choose a tag to compare

Changed

  • Updated moderngl to 5.12.

Fixed

  • Prevented unhandled OpenGL errors in cores from
    cascading into the frontend as exceptions
    raised from moderngl or PyOpenGL.

v0.3.0

25 Sep 18:27
Compare
Choose a tag to compare

Added

  • Add TempDirPathDriver.
  • Added various runnable scripts for test purposes.
  • Add a new guide for taking a capture with RenderDoc.
  • Add labels to OpenGL objects created by ModernGlVideoDriver.
  • Add debug groups to important methods within ModernGlVideoDriver.

Changed

  • BREAKING: Rename DefaultPathDriver to ExplicitPathDriver.
  • Make TempDirPathDriver the default path driver used by SessionBuilder.

Fixed

  • Improved documentation for parts of SessionBuilder and VideoDriver
  • Removed a glClear call in ModernGlVideoDriver that was left in by accident.
  • Clear the glGetError queue at various places in ModernGlVideoDriver
    to prevent PyOpenGL from misreporting errors that came from moderngl or the loaded core.

Removed

  • BREAKING: Remove VideoDriverInitArgs.

v0.2.0

12 Sep 16:21
Compare
Choose a tag to compare

Thanks to @JSensebe for his contributions!

Added

  • Add Language.GALICIAN and Language.NORWEGIAN
    to correspond with additions to libretro.h.
  • Add a live documentation website here.
    (#11)
  • Allow ArrayVideoDriver.screenshot() to rotate the returned frame
    (#3)
  • Add 16-bit pixel format support to ArrayVideoDriver.screenshot().
    (#5)

Changed

  • BREAKING: Rename KeyboardState.return_ to KeyboardState.return_key
  • BREAKING: Rename KeyboardState.break_ to KeyboardState.break_key

Fixed

  • Fix Core.unserialize being unable to accept bytes objects.
    (#4)
  • Fix an exception when a core sets its geometry before its initial AV info is fetched.
    (#6)
  • Fix a crash when a core uses retro_led_interface.
    (#7)
  • Fix an exception when passing a frame pitch inconsistent with the configured video format.
    (#8)

v0.1.11

10 Jun 18:57
Compare
Choose a tag to compare

Changed

  • Raise a warning when the core's requested maximum framebuffer size
    is larger than what the OpenGL implementation can provide.

v0.1.10

07 Jun 21:26
Compare
Choose a tag to compare

Fixed

  • Fix ModernGlVideoDriver.geometry having an incorrect return type.
  • Fix ModernGlVideoDriver failing to import in Python 3.11.

v0.1.9

07 Jun 20:36
Compare
Choose a tag to compare

Fixed

  • Remove some methods or other constructs that were added in Python 3.12,
    to ensure compatibility with Python 3.11.

v0.1.8

05 Jun 23:53
Compare
Choose a tag to compare

Fixed

  • Fixed an incorrect import shim in _typing.py,
    resulting in the library failing to import on Python 3.12.

v0.1.7

05 Jun 23:05
Compare
Choose a tag to compare

Changed

  • BREAKING: Raise the minimum required Python version to 3.11.

Fixed

  • Remove syntax that prevented compatibility with Python 3.10 and 3.11.
  • Added aliases to typing symbols as needed if using a Python version older than 3.12.
  • Added typing_extensions as a dependency if using a Python version older than 3.12.