Skip to content

Latest commit

 

History

History
194 lines (161 loc) · 6.87 KB

ChangeLog.md

File metadata and controls

194 lines (161 loc) · 6.87 KB

Changelog

All notable changes to this project will be documented in this file.

The format is based upon Keep a Changelog.

0.3.2 - 2024-06-09

Added

  • Updated bug report utility to add details about build host details and compiler information.

Fixed

  • Updated syntax check for calloc calls. See #52
  • Fixed a tooling bug where running make check on a system without cmocka library installed would fail during daemon testing.
  • Cleaned up daemon protocol documentation

Changed

  • Moved socket code around to make it easier to reuse the communication logic out in both client(s) and server.

0.3.1 - 2024-06-08

Important: Tag 0.3.1 has a bad Version file and should not be used. This has been superseded by 0.3.2 with corrected metadata. The changes from the previous release are the same.

0.3.0 - 2022-12-25

Added

  • Bug report utility to make it easier to gather system and build information when reporting issues.
  • Communication infrastructure to communicate with the daemon. This includes the x52ctl utility which can be used either interactively or non-interactively from a separate program.
  • Links to prebuilt packages in Ubuntu PPA and Arch Linux AUR
  • Ability to change mouse scroll direction. See #45

Changed

  • Renamed project from x52pro-linux to libx52

Fixed

  • Removed dependency on rsync during make install
  • Reduced default logging level of daemon to error only. See #38
  • Fixed daemon crash when disconnecting/reconnecting the joystick. See #43

0.2.3 - 2021-09-20

Added

  • CI for macOS 11 (Big Sur)
  • Virtual mouse driver (on Linux only)

Fixed

  • Device erratic behavior when running daemon. See #33.
  • make install on OpenSUSE Tumbleweed. See #35.

0.2.2 - 2021-09-03

Added

  • IO library to read and parse events from a supported joystick.
  • Event test utility which displays the events similar to evtest.
  • Daemon to control and update the X52 joystick.
  • Import pinelog library for daemon logging.
  • Import inih library sources for daemon configuration parsing.

Changed

  • Linux kernel driver to correctly handle the X52/X52 Pro. This is not required for users running kernels with at least the following versions:
    • 5.9+
    • 5.8.10+
    • 5.4.66+
    • 4.19.146+
  • Make udev rules customizable at build time, so that the right input group can be used in the actual rules file. This allows systems such as openSUSE which use input as the group for input devices to behave the same as Ubuntu and other similar systems.
  • Code layout changed to improve parallel builds.
  • x52cli tests modified to use cmocka tests.

0.2.1 - 2020-06-28

Added

  • Connect/Disconnect methods in libx52. These allow for dynamically connecting or disconnecting from a supported joystick without having to reinitialize the library.
  • Internationalization for the following:
    • libx52
    • x52test
  • Doxygen generation of HTML documentation for libx52 methods.
  • Tests for libx52 that run on all supported platforms.

Changed

  • libx52_init no longer fails when a supported joystick is not connected.
  • Tests now use TAP.
  • Python build scripts now use Python 3.

Fixed

  • Error reporting in x52cli and x52test commands.
  • Handling of very large time_t values in libx52_set_clock
  • Secondary and tertiary clock setting when primary clock is set to local time and local timezone is observing daylight savings time (summer time). See #20.

0.2.0 - 2020-04-14

Changed

  • libx52_init now returns a libx52_error_code, and returns the libx52_device pointer in an output parameter.
  • All libx52 APIs now return a libx52_error_code indicating the error.
  • libx52 now checks the version of libusb and calls the appropriate method to set logging level.
  • x52test has an option to not sleep between consecutive calls to the libx52 APIs.

Fixed

  • libx52_write_time handling of large timezone offsets.

0.1.2 - 2017-08-17

Added

  • Autotools based unit tests - tests run on Linux only
  • libusb mock library for use by test programs
  • License file and usage clarification
  • Automatic builds on Ubuntu Trusty (14.04) with both GCC and clang on Travis
  • Enhanced documentation for libx52
  • Support for X52 (non-Pro) version
  • New raw time and date APIs for libx52
  • Support raw time and date commands in x52cli
  • Unicode translation points for halfwidth CJK and Katakana symbols

Changed

  • Update Python character map generator to comply with PEP-8 guidelines

Fixed

  • Compilation on OSX

0.1.1 - 2016-05-06

Added

  • Manpage for x52cli
  • Manpages for libx52 in RONN format
  • Unicode translation points for Latin, Greek and mathematical symbols
  • Travis-CI based automatic compilation

Changed

  • libx52 clock API will return -EAGAIN if no update is needed.
  • x52test accepts a list of tests to run, defaulting to ALL
  • UTF-8 parser rewritten in Python

0.1.0 - 2015-12-09

Added

  • Support for semantic LED names instead of numbers in libx52
  • Simpler API to control clocks
  • Add documentation for X52 design and USB interface
  • Add CLI application to interface with libx52
  • Add test application to test all aspects of libx52
  • Add API to convert UTF-8 string to X52 character map

Changed

  • Migrate project to autotools

Deprecated

  • Mark kernel driver as proof-of-concept and unsuitable for production

0.0.2 - 2014-10-18

Added

  • Proposed design documentation for MFD pages and input mapping

Fixed

  • Kernel module compilation on Linux v3.5 and later

0.0.1 - 2012-10-25

Added

  • Kernel module for Saitek X52 Pro Joystick
  • First release of userspace application