Changelog for
libratbag-tools-0.17+git281.f5e2259-4.15.x86_64.rpm :
* Mon Jun 05 2023 obs-service-tar-scmAATTinvalid- Update to version 0.17+git281.f5e2259:
* asus: fix single profile devices
* steelseries: ignore the check for HID vendor device
* steelseries: check for settings reading errors
* openinput: return early instead of making an error-prone zero-sized VLA
* driver-hidpp20: zero initialize a struct
* liblur: check return value instead of comparing the out_ptr
* sinowealth-nubwo: idiomatically zero initialize a struct
* sinowealth-nubwo: remove trailing whitespace
* sinowealth-nubwo: correctly use an attribute
* sinowealth-nubwo: fix incorrect firmware version getting error check
* steelseries: add missing newlines to logging
* steeseries: make an array `static const`
* steelseries: make most of implicit conversions explicit
* steelseries: fix narrowing conversions
* steelseries: don\'t define variables on a single line
* steelseries: don\'t use reserved underscore identifiers
* steelseries: simplify loop breaking
* steelseries: add commit error logging
* steelseries: don\'t use `else` after `return`
* data: update logitech-g915-tkl.device to DeviceType=keyboard
* marsgaming: implement Mars Gaming MM4 protocol
* asus: check mouse in probe, fix asus status code
* data: fix asus chakram x
* sinowealth: show a more detailed message for unknown mice
* data: improve description of possible fields for sinowealth driver
* sinowealth: store firmware version in device files in the group name
* shared-macro: make startswith() return a const char
*
* sinowealth: change device files to match other drivers
* test: add test for sinowealth driver sections in device files
* build: remove redundant build targets for tests
* Revert \"g300: use the correct step size\"
* libratbag: don\'t allow disabling active profile
* test: check that active profile can\'t be disabled
* libratbag: don\'t allow setting disabled profile as active
* test: check that disabled profile can\'t made active
* tools: fix printing of macros with buttons in them
* ratbagd: change type of a variable to fix stack smashing
* fixup! sinowealth: read profile count from the device file
* data: add SinoWealth driver to the example device file
* sinowealth: check if ButtonCount field in device file is correct
* libratbag-data: set fallback value in the same place as the proper value
* sinowealth: don\'t try to live through errors while committing
* sinowealth: fix logging using wrong member
* data: enable second profile for T-Dagger Imperial T-TGM310
* sinowealth: allow up to three profiles
* sinowealth: conditionally enable writing profile-switching bindings
* sinowealth: use early return
* sinowealth: change \"profile-up\" button binding to cycle
* sinowealth: read profile count from the device file
* sinowealth: add \"cycle LED modes\" binding to unknown
* sinowealth: make an error message less generic
* sinowealth: rename `MAX` to the variable with maximum profile count
* sinowealth: add and use profile count in drv_data
* sinowealth: check for device compatibility as soon as possible
* sinowealth: update the comment about profile count
* sinowealth: add command IDs for the third profile
* ratbagctl: show if a profile is dirty
* ratbagd.py: sync with Piper
* libratbag: take constant pointers where possible
* libratbag: remove fall back for Logitech devices
* libratbag-data: use the dpi_list_free helper
* libratbag-util: make dpi_list_free() be able to take NULL
* Fix drivers making profiles dirty while probing
* libratbag: check if profile is dirty in sanity check
* libratbag: check if driver supports committing
* ratbagd.py: use the IsDirty property of the DBus API
* ratbagd: add `IsDirty` property to profiles
* libratbag: add API for checking if profile is dirty
* libratbag: fix profile not becoming dirty on active profile switch
* data: add Sinowealth Generic Mouse (258a:0051)
* data: add links to device issues with raw configuration data
* sinowealth: add support for PMW3212 sensor
* sinowealth: add more debug logging for easier device file creation
* sinowealth: fix incorrect placement of `sensor_type` in config data
* build: install ratbagd into sbindir
* libratbag: don\'t apply active profile change until committing
* tools: skip linter checks if linters are not installed
* tools: print errors to stderr
* ratbagd.py: add back .keys() calls on all GLib.Variant
* ratbagd.py: don\'t mark a profile as dirty on active profile switch
* build: add a missing dependency to a test
* test: use a simply `assert` instead of using a helper
* build: use project-local build and source directories
* lint: exit early if git ls-files doesn\'t find anything
* test: fix traceback.print_exception() usage on older Python versions
* lint: enable flake8-return
* lint: enable flake8-simplify
* Use \'a != b\' instead of \'not a == b\'
* Use \'key in dict\' instead of \'key in dict.keys()\'
* tools: make all exceptions types have Error as the sufix
* test: don\'t return anything from main()
* test: raise ValueError instead of AssertionError manually
* ratbagctl: remove unnecessary else
* ratbagctl: use standard exception types
* ratbagctl: fix an incorrect type hint
* lint: enable flake8-pie lints
* tools: remove unnecessary `pass` statements
* ratbagctl: use textwrap.indent instead of inventing the wheel ourselves
* doc: add angle snapping and debounce time
* sinowealth: implement debounce time reading/writing
* add angle snapping and debounce
* Remove flake8 configuration file
* ratbagctl: rename a member function to prevent incorrect overriding
* ratbagctl: don\'t reuse a variable for different types
* ratbagctl: make an argument non-optional
* ratbagctl: simplify an expression to make mypy understand it
* ratbagctl: add type hints where possible
* tools: fix \"line too long\" warnings where possible
* tools: ignore a false positive warning
* tools: don\'t use complex types as default function arguments
* tools: chain exceptions within exceptions
* tools: fix ambiguous variable names
* test: fix ambiguous variable names
* Automatically fix Ruff warnings
* build: add Ruff for Python code linting
* Format Python code
* build: add Python code formatting with black
* tools: prevent a syntax error for code editors and linters
* Rename Python files throughout the project to have `.py
*` in the suffix
* gskill: add back button type button actions
* ratbagctl: check if there is an active resolution
* ratbagctl: check if there is an active profile
* tools: don\'t try to return the first resolution on error
* tools: don\'t try to return the first profile on error
* sinowealth: use the first profile if active profile index is too high
* sinowealth: get rid of profile cache
* sinowealth: edit a note about active profile index to be more clear
* sinowealth: move active profile index and debounce time getting to init
* sinowealth: add missing new-line in a log message
* sinowealth: don\'t change active profile while probing
* libratbag: remove everything related to the deprecated ratbag_led_type
* test: remove usage of the deprecated LED type field
* sinowealth-nubwo: remove usage of the deprecated LED type field
* libratbag-data: don\'t parse LedTypes from device files
* G300: remove usage of the deprecated LED type field
* test: don\'t allow the deprecated LedTypes field
* data: remove usage of the deprecated LED type field
* roccat-kone-emp: remove usage of deprecated LED types
* hidpp20: remove usage of deprecated LED types
* steelseries: remove usage of deprecated LED type
* G600: remove usage of deprecated LED types
* sinowealth: remove usage of deprecated LED types
* asus: remove usage of deprecated LED types
* tools: remove helpers for deprecated LED types
* hidpp20: remove unused LED type mappings
* hidpp20: remove usage of the deprecated LED type in the driver
* libratbag: remove support for the deprecated button type field
* hidpp20: remove unused physical mapping button type
* hidpp20: don\'t set the deprecated button type field in the driver
* gskill: remove support for the deprecated button type field
* tools: remove helpers for the deprecated ratbag_button_type
* test: remove support for the deprecated button type field
* steelseries: remove support for the deprecated button type field
* roccat: remove support for the deprecated button type field
* roccat-kone-pure: remove support for the deprecated button type field
* roccat-kone-emp: remove support for the deprecated button type field
* G600: remove support for the deprecated button type field
* G300: remove support for the deprecated button type field
* hidpp10: remove support for the deprecated button type field
* gskill: remove support for the deprecated button type field
* etekcity: remove support for the deprecated button type field
* roccat: don\'t enable key-type button actions
* roccat-kone-pure: don\'t enable key-type button actions
* roccat-kone-emp: don\'t enable key-type button actions
* etekcity: don\'t enable key-type button actions
* G300: don\'t enable key-type button actions
* steelseries: don\'t enable key-type button actions
* G600: don\'t enable key-type button actions
* tools: write to file directly without using `print`
* tools: remove unused variables
* tools: use with-statements to open files
* test: add explanations to empty excepts
* tools: remove unused arguments
* tools: fix incorrect special method signature
* tools: check snprintf size argument to prevent potential overflow
* libratbag-util: check the return value of scanf
* driver-hidpp10: fix variable shadowing
* driver-hidpp20: fix variable shadowing
* test: fix variable shadowing
* hidpp10: fix variable shadowing
* sinowealth: remove an incorrect enum member
* ratbagd: don\'t extract sd_bus when it\'s given as an argument
* test: remove a duplicate import
* hidpp10: fix a faulty error check which prevent macro parsing
* G600: prevent unused variable usage warning
* G300: prevent unused variable usage warning
* tools: remove an unused function that always raises
* tools: remove an unnecessary variable definition
* tools: fix incorrect special method signature
* steelseries: add support for Rival 650 Wireless
* data: add device Logitech G Pro (X) keyboard
* ratbagctl: capitalize device type instead of having it in upper case
* change misnamed function name
* implement \'DeviceType\' property
* driver-hidpp10: fix integer overflow when profile count is unset
* hidpp10: return EINVAL instead of aborting
* data: add additional USB id for Logitech G102 (046d:c09d)
* steelseries: save the firmware version in ratbag device
* sinowealth: save the firmware version in ratbag device
* device: add firmware version API
* libratbag-util: make asprintf_safe() return a char
*
* Fix typos throughout the codebase
* doc: fix typo in readme
* doc: fix documentation for disabling resolutions
* ratbagctl: fix typo
* ratbagd: fix stack smashing
* sinowealth: implement disabled resolutions
* driver-hidpp20: implement disabled resolutions
* Implement disabled resolutions
* Make order of resolution properties consistent
* ratbagd: switch Profile.Enabled to Profile.Disabled
* ratbagd.py: fix changes to IsActive potentially not being notified about
* ratbagd.py: make the profile dirty after changing report rate
* ratbagc: add NONE as allowed action type
* Revert \"tools: convert our enum equivalents to python enums\"
* sinowealth: enable button disabling support
* ratbagctl: check if disabling buttons is supported
* libratbag: check if disabling buttons is supported
* ratbagd: fix error handling in ratbagd_button_set_none()
* hidpp20: enable disabling buttons on onboard profiles (0x8100)
* ratbagd: map disabling a button to the existing action type None
* libratbag: Fix the action type NONE handling
* tools: convert our enum equivalents to python enums
* sinowealth: enable profile cycling mapping with a preprocessor macro
* sinowealth: further deduplicate the code of reading config data
* sinowealth: explain additional profiles and their pit-falls
* sinowealth: add support for writing additional profiles
* sinowealth: add support for button actions in macros
* sinowealth: improve error handling
* sinowealth: refactor sinowealth_update_macro_from_action()
* sinowealth: fix a missing new line in logging
* sinowealth: add support for reading 2 profiles (if a macro is set)
* sinowealth: deduplicate the code of reading configuration data
* sinowealth: fix a typo
* sinowealth: assert instead of silently ignoring an error
* sinowealth: simply return a `bool` instead of 0 or 1
* sinowealth: make all casts explicit
* sinowealth: fix some variable types
* sinowealth: use non-GNU-specific empty array initializer
* sinowealth: print a warning if there are too much events in a macro
* test: add device data tests for the steelseries driver
* test: add device data tests for the asus driver
* test: make check_section_driver() a bit more diff-friendly
* test: increase max DPI in check_dpi_range_str() to 36000
* test: fix incorrect character escaping in data-parse-test
* test: data-parse-test: check all files even if there is an error
* test: fix formatting
* build: fix data tests not running
* test: work-around unsupported Driver section of the `sinowealth` driver
* test: add `wheel` to the list of permitted LED types
* data: fix missing `Driver` field
* test: add type hints to data-parse-test
* test: fix incorrect type of file paths in data-parse-test
* tools: put the list of possible button action types into a const
* ratbagd: fix formatting
* ratbagd: use NULL instead of 0 for pointers
* ratbagctl: add an error message if the key supplied to macro is wrong
* fix typo in macro bindings
* use key name instead of code for binding
* fix ratbag-command key bindings
* implement key bindings feature
* build: bump ratbagd DBus API version
* asus: use ARRAY_FOR_EACH
* asus: make pointer variables `const` wherever possible
* libratbag-data: fix formatting
* Adjust offered resolutions for SteelSeries Kinzu V3
* data: add Logitech MX Master 3S
* asus: pugio button mapping
* asus: allow empty cells in bindings table and fix pugio button bindings
* Logitech G303 Shroud Edition device file
* asus: fix button mapping type
* asus: handle undefined buttons
* asus: rename params
* Fix spatha x device file.
* asus: add spatha x
* asus: fix building errors
* asus: button mapping reworked
* asus: add strix impact 2
* sinowealth: remove now unused `button_set_key_action_from_macro`
* sinowealth: do an `assert` instead of graceful internal bug handling
* sinowealth: fix writing of `key` button action type
* Mon Jun 05 2023 Shawn Dunn
- Git pull for personal use. WILL NOT BE SUBMITTED
* Thu May 11 2023 Matthias Bach - 0.17- Document the need for users of ratbagd to be a member of the group games (bsc#1210669)
* In description of ratbagd package
* In the new README.SUSE file of the ratbagd package.- Switch package to using %autosetup
* Wed Nov 09 2022 marixAATTmarix.org - 0.17- Update to version 0.17:
* Completely new driver for ASUS devices.
* Sinowealth driver now supports changing report rate, button assignments and macros.
* New compatible devices: + ASUS ROG Chakram + ASUS ROG GX860 Buzzard Mouse + ASUS ROG Gladius II + ASUS ROG Gladius II Origin + ASUS ROG Gladius II Origin PNK LTD + ASUS ROG Keris Wireless + ASUS ROG Pugio + ASUS ROG Strix Carry + ASUS ROG Strix Impact + ASUS ROG Strix Impact II Wireless + DreamMachines DM5 Blink + G-Wolves Hati HT-M Wired + Genesys Xenon 770 + Glorious Model O (with older firmware) + Logitech G502 X + Logitech G502 X Wireless + Logitech G635 + Logitech G733 + Logitech MX Anywhere 3B + Machenike M620 + Marvo Scorpion G961 + More SteelSeries Rival variations + Roccat Kone EMP + SteelSeries Rival 100/105
* Report rate changing now works on older SteelSeries mice.
* Fix multiple configurable devices being shown for one connected SteelSeries mouse.
* Fix setting onboard profile mode in HID++2.0 driver.
* Fix active resolution slot reading and writing in Sinowealth driver.
* Fix report rates which are not multiples of 100 not applying.- Require Meson >= 0.50.0 for build
* Fri Oct 15 2021 Johannes Segitz - Added hardening to systemd service(s) (bsc#1181400). Added patch(es):
* harden_ratbagd.service.patch
* Thu Jun 24 2021 marixAATTmarix.org - 0.16- Update to version 0.16:
* Events are now scheduled as soon as possible
* Improvements to the sinowealth driver
* Added support for a few devices: + Logitech G915 TKL + Logitech G Pro X Wireless (only via USB connection) + Logitech M545 + Logitech M500s + SteelSeries Kinzu V2 Pro Edition + Roccat Kone Pure SEL + openinput devices
* Thu Dec 24 2020 Matthias Bach - 0.15- Make package conform to spec-cleaner
* Sat Sep 26 2020 marixAATTmarix.org- Update to version 0.15:
* Added or improved devices: + Logitech G5 + Logitech G203 + Logitech G300 + Logitech G9x + Logitech MX Vertical + Nubwo X7 Spectrum + Roccat Kone Pure + Sinowealth
* Sun May 24 2020 marixAATTmarix.org- Update to version 0.14:
* A few bugfixes and some improvements in the log messages.
* Added and improved devices: + Logitech G305 + Logitech G402 + Logitech G935 + Logitech M720 + Logitech MX Anywhere 2
* Sat Feb 15 2020 marixAATTmarix.org- Update to version 0.13:
* Fixed bug that was preventing users from changing the settings of devices from Logitech\'s productivity line.
* Give a more specific error message if user cannot reach ratbagd via D-BUS [boo#1150413]
* Added support for keyboards: + Logitech G513 + Logitech G815 + Logitech G910 + Logitech G915
* Other added and improved devices: + Logitech G Powerplay + Logitech M590- Updated shebang-env.diff to properly apply to the new version.