Skip to content

Releases: pwr-Solaar/Solaar

1.1.13

11 May 15:36
1.1.13
Compare
Choose a tag to compare
  • Update Polish and Russian translations.
  • Fix bug in suspend and resume callback
  • Add choices universe for backlight setting
  • Add simplify diversion.py and add unit tests
  • Get and use current host number for K375sFnSwap because of bug in firmware of MX Keys S
  • Fix bug with logo in about window
  • Don't ping device just to get logging information
  • Optimize write for per-key lighting
  • Add and initialize per-key lighting to a special no-change value
  • Remove some Python 2 compatibility code
  • Update French translation
  • Refactor rule loading for testability

1.1.13.rc1

08 May 18:40
1.1.13rc1
Compare
Choose a tag to compare
1.1.13.rc1 Pre-release
Pre-release
  • Fix bug in suspend and resume callback
  • Add choices universe for backlight setting
  • Add simplify diversion.py and add unit tests
  • Get and use current host number for K375sFnSwap because of bug in firmware of MX Keys S
  • Fix bug with logo in about window
  • Don't ping device just to get logging information
  • Optimize write for per-key lighting
  • Add and initialize per-key lighting to a special no-change value
  • Remove some Python 2 compatibility code
  • Update French translation
  • Refactor rule loading for testability

1.1.12

27 Apr 21:52
1.1.12
Compare
Choose a tag to compare
  • Check for existence of keys file before opening
  • Perform translation for all translatable strings.
  • Add included hid_parser to packages installed
  • Improve label and description for LED zone settings
  • Add message about Onboard Profiles to LED Zone settings
  • Initialize device registers to empty list
  • Use bluez dbus signals to disconnect and connect bluetooth devices
  • Handle a different signal for onboard profiles directory in ROM
  • Introduce small delay in getting pairing information to let receiver settle after pairing
  • Improve testing for settings_templates, settings, hidpp20, and device and fix small bugs found
  • Add extended adjustable DPI setting
  • Improve and extend infrastructure for testing setting_templates
  • Update Greek, Polish, Russian, and Traditional Chinese translations
  • Implement and test per-key lighting
  • Refactor and test pair_window in GUI
  • Handle situation when read of a setting fails in GUI
  • Permit continuing when a read during pushing fails
  • Fix bug in LEDZoneSetting when effect is not implemented
  • Add tests for LEDEffect structures in hidpp20
  • Handle BRIGHTNESS_CONTROL notifications
  • Add settings for BRIGHTNESS_CONTROL and RGB_EFFECTS features
  • Fix small bugs found from testing in settings
  • Use f-strings for more exceptions and log message
  • Tests for setting_templates
  • Simple change in settings to improve testability
  • Use feature_request from the device everywhere in hidpp20
  • Fix bug in backlight 2 durations
  • Replace deprecated code constructs
  • Set up test data and classes to help test HID++ interactions
  • Use pytest to test code for logitech_receiver modules
  • Align init methods for all receiver classes
  • Start refactoring of code base
  • Allow sub-second delays in Later
  • Fix bug in setting configuration cookie due to bad documentation
  • Use ruff for code styling and linting
  • Upgrade string formating to f-string
  • Document battery-icons=solaar option
  • Tell devices to delay device sending first messages until configuration is done
  • Optimize some functions in FeaturesArray
  • Fix bug in creating features array
  • Fix bug in building battery line in show
  • Refactor diversion_rules
  • Fix bug in determining tray icon
  • Fix bug in getting friendly name
  • Move status information to Device and Receiver objects
  • Add tests for get_kind_from_index and base product information
  • Update EX100 documentation
  • Use object attributes instead of dictionary in status objects
  • Create subclasses of receiver for different variants
  • Add requirement for CONFIG_HIDRAW to documentation
  • Add some low-level tests for some hidpp20 functions, profiles, and lighting and some hidpp10 tests
  • Fix app name casing in UI
  • Add missing receiver type for Lightspeed receivers
  • Add new device types
  • Refactor device and receiver instantiation
  • Simplify naming of distribution files
  • Clean up some logging code
  • Remove duplicated code to read register
  • Introduce Hidpp20 and Hidpp10 class
  • Remove unnecessary calls of del
  • Fix bug when reading BACKLIGHT setting from device
  • Replace invalid hidpp10 and hidpp20 usages
  • Use only timer thread to save config.yaml
  • Improve README
  • Copy newer version of hid_parser
  • Reorder code in settings
  • Update installation documentation
  • Add missing license blocks
  • Clean up listener and notifications code
  • Add locks to prevent multiple persisters for device
  • Clean up configuration, device, and receiver code
  • Move battery constants common to HID++ 1.0 and 2.0 to common
  • Move mapping of device kind into hidpp20
  • Move pairing information gathering to receiver
  • update contributors
  • Expand allowable profile numbers
  • Clean up init in logitech_receiver
  • Modify pre-commit args to make ruff change files
  • Fix bug in hidpp20 get host names
  • Use ruff for formatting and linting
  • Fix bug in rule Set action
  • Add notify module to logitech_receiver
  • Implement setting_changed callback and pass in to new devices and receivers
  • Add callback to call when changing a setting
  • Move exceptions, hidpp20 and hidpp10 constants into new modules
  • Streamline status code
  • Upgrade debugging in udev
  • Fix deprecated GitHub actions
  • Extend makefile and tests
  • Improve features array
  • Move ui_async to common.py
  • Improve module imports
  • Add tests of common module

1.1.12rc2

22 Apr 16:16
1.1.12rc2
Compare
Choose a tag to compare
1.1.12rc2 Pre-release
Pre-release
  • Check for existence of keys file before opening
  • Perform translation for all translatable strings.
  • Add included hid_parser to packages installed
  • Improve label and description for LED zone settings
  • Add message about Onboard Profiles to LED Zone settings
  • Initialize device registers to empty list
  • Use bluez dbus signals to disconnect and connect bluetooth devices
  • Handle a different signal for onboard profiles directory in ROM
  • Introduce small delay in getting pairing information to let receiver settle after pairing
  • Improve testing for settings_templates, settings, hidpp20, and device and fix small bugs found
  • Add extended adjustable DPI setting
  • Improve and extend infrastructure for testing setting_templates
  • Update Greek, Polish, and Russian translations
  • Implement and test per-key lighting
  • Refactor and test pair_window in GUI
  • Handle situation when read of a setting fails in GUI
  • Permit continuing when a read during pushing fails
  • Fix bug in LEDZoneSetting when effect is not implemented
  • Add tests for LEDEffect structures in hidpp20
  • Handle BRIGHTNESS_CONTROL notifications
  • Add settings for BRIGHTNESS_CONTROL and RGB_EFFECTS features
  • Fix small bugs found from testing in settings
  • Use f-strings for more exceptions and log message
  • Tests for setting_templates
  • Simple change in settings to improve testability
  • Use feature_request from the device everywhere in hidpp20
  • Fix bug in backlight 2 durations
  • Replace deprecated code constructs
  • Set up test data and classes to help test HID++ interactions
  • Use pytest to test code for logitech_receiver modules
  • Align init methods for all receiver classes
  • Start refactoring of code base
  • Allow sub-second delays in Later
  • Fix bug in setting configuration cookie due to bad documentation
  • Use ruff for code styling and linting
  • Upgrade string formating to f-string
  • Document battery-icons=solaar option
  • Tell devices to delay device sending first messages until configuration is done
  • Optimize some functions in FeaturesArray
  • Fix bug in creating features array
  • Fix bug in building battery line in show
  • Refactor diversion_rules
  • Fix bug in determining tray icon
  • Fix bug in getting friendly name
  • Move status information to Device and Receiver objects
  • Add tests for get_kind_from_index and base product information
  • Update EX100 documentation
  • Use object attributes instead of dictionary in status objects
  • Create subclasses of receiver for different variants
  • Add requirement for CONFIG_HIDRAW to documentation
  • Add some low-level tests for some hidpp20 functions, profiles, and lighting and some hidpp10 tests
  • Fix app name casing in UI
  • Add missing receiver type for Lightspeed receivers
  • Add new device types
  • Refactor device and receiver instantiation
  • Simplify naming of distribution files
  • Clean up some logging code
  • Remove duplicated code to read register
  • Introduce Hidpp20 and Hidpp10 class
  • Remove unnecessary calls of del
  • Fix bug when reading BACKLIGHT setting from device
  • Replace invalid hidpp10 and hidpp20 usages
  • Use only timer thread to save config.yaml
  • Improve README
  • Copy newer version of hid_parser
  • Reorder code in settings
  • Update installation documentation
  • Add missing license blocks
  • Clean up listener and notifications code
  • Add locks to prevent multiple persisters for device
  • Clean up configuration, device, and receiver code
  • Move battery constants common to HID++ 1.0 and 2.0 to common
  • Move mapping of device kind into hidpp20
  • Move pairing information gathering to receiver
  • update contributors
  • Expand allowable profile numbers
  • Clean up init in logitech_receiver
  • Modify pre-commit args to make ruff change files
  • Fix bug in hidpp20 get host names
  • Use ruff for formatting and linting
  • Fix bug in rule Set action
  • Add notify module to logitech_receiver
  • Implement setting_changed callback and pass in to new devices and receivers
  • Add callback to call when changing a setting
  • Move exceptions, hidpp20 and hidpp10 constants into new modules
  • Streamline status code
  • Upgrade debugging in udev
  • Fix deprecated GitHub actions
  • Extend makefile and tests
  • Improve features array
  • Move ui_async to common.py
  • Improve module imports
  • Add tests of common module

1.1.11

18 Feb 11:03
1.1.11
Compare
Choose a tag to compare
  • Rename light icons and install them in correct place
  • Setup macOS tests using GitHub action (#2284)
  • Better checking for setting in record_setting
  • Fix invalid func name set logo name
  • Simplify installation of udev rules
  • Add document on implementation
  • Tidy up scrolling appearance in configuration panel
  • Correctly handle profile button with no action
  • Don't unlock setting when changed by external means
  • Refactor code to record change to setting
  • Add GitHub action for tests
  • Introduce tests with pytest
  • Simplify logger instantiation
  • Update label and tooltip for divert-gkeys setting
  • Don't lock setting when an error occurs
  • Catch assertion errors when reading setting values from devices
  • Support LED Zone control feature
  • Dump and load device profiles
  • Select among profiles.
  • Support backlight levels and duration
  • Use "Report Rate" instead of "Polling" for movement report rate
  • Support extended report rate setting
  • Add stable branch to release.sh (#2236)
  • Fix changelog parsing in release.sh
  • Update installation.md with new udev rules location
  • Downgrade assertion on missing notification flag to warning
  • Write empty file if there are no rules to save
  • Be defensive in device error messages
  • Add descriptions of M650, PRO X 2, G915, MX Anywhere 2S, G305, and MX Keys S
  • Report hidraw node in debugging messages
  • Add names for new Logitech features
  • Update Spanish, French, and Polish translations
  • Defend against lightspeed receivers that contact devices for basic information
  • Remove incorrect feature for M325 mice
  • Add K845 keyboard
  • Add partial support for macOS and minimal support for Windows
  • Correctly enumerate devices on receiver
  • Add wording in documentation about Logitech reusing model numbers
  • Better handling and installation of icons
  • Catch errors when pinging to try to put device online
  • Be more cautious when creating log messages to avoid exceptions
  • Correctly handle NoSuchDevice exception when pinging device
  • Fix test in rules for device equality
  • Add installation instructions for pipx and add not about other GTK system packages
  • Fix bug in NamedInt
  • Add support for MK550
  • Install udev rule files to correct placces
  • Expand expected ping responses
  • Update codename when device status changes

1.1.11rc4

15 Feb 14:01
1.1.11rc4
Compare
Choose a tag to compare
1.1.11rc4 Pre-release
Pre-release
  • Rename light icons and install them in correct place
  • Setup macOS tests using GitHub action (#2284)
  • Better checking for setting in record_setting
  • Fix invalid func name set logo name
  • Simplify installation of udev rules
  • Add document on implementation
  • Tidy up scrolling appearance in configuration panel
  • Correctly handle profile button with no action
  • Don't unlock setting when changed by external means
  • Refactor code to record change to setting
  • Add GitHub action for tests
  • Introduce tests with pytest
  • Simplify logger instantiation
  • Update label and tooltip for divert-gkeys setting
  • Don't lock setting when an error occurs
  • Catch assertion errors when reading setting values from devices
  • Support LED Zone control feature
  • Dump and load device profiles
  • Select among profiles.
  • Support backlight levels and duration
  • Use "Report Rate" instead of "Polling" for movement report rate
  • Support extended report rate setting
  • Add stable branch to release.sh (#2236)
  • Fix changelog parsing in release.sh
  • Update installation.md with new udev rules location
  • Downgrade assertion on missing notification flag to warning
  • Write empty file if there are no rules to save
  • Be defensive in device error messages
  • Add descriptions of M650, PRO X 2, G915, MX Anywhere 2S, G305, and MX Keys S
  • Report hidraw node in debugging messages
  • Add names for new Logitech features
  • Update Spanish, French, and Polish translations
  • Defend against lightspeed receivers that contact devices for basic information
  • Remove incorrect feature for M325 mice
  • Add K845 keyboard
  • Add partial support for macOS and minimal support for Windows
  • Correctly enumerate devices on receiver
  • Add wording in documentation about Logitech reusing model numbers
  • Better handling and installation of icons
  • Catch errors when pinging to try to put device online
  • Be more cautious when creating log messages to avoid exceptions
  • Correctly handle NoSuchDevice exception when pinging device
  • Fix test in rules for device equality
  • Add installation instructions for pipx and add not about other GTK system packages
  • Fix bug in NamedInt
  • Add support for MK550
  • Install udev rule files to correct placces
  • Expand expected ping responses
  • Update codename when device status changes

1.1.10

23 Sep 17:09
1.1.10
Compare
Choose a tag to compare
  • Add information about NixOS flake package
  • Permit bluetooth devices in hidconsole
  • Add descriptor for Logitech MX Revolution Mouse M-RCL 124
  • Improve determination for short and long messages
  • Add descriptor for G500s
  • Fix bug in scan-registers
  • Add single depress and release options for rule mouse click action
  • Add rule condition for hostname
  • Update keysym generation to current list of keysyms
  • Allow device 0 in hidconsole
  • Upgrade messages when no supported device found
  • Documentation update for the gnome extension for better Solaar rule support
  • Remove udev-acl tag from udev rules
  • Add support for process condition in Wayland
  • Update French, Chinese, and German translations
  • Add G733 Headset
  • Restore tools/clean.sh
  • Add Bluetooth Keyboard C714
  • Update several device descriptions
  • Update scan-registers.sh
  • Remove assertion on last byte of ping responses
  • Add symbolic version of solaar icon
  • Fix bug when finding name or codename
  • Update documentation
  • Put version in initial INFO logging message

1.1.9

05 Apr 15:22
1.1.9
Compare
Choose a tag to compare
  • Add descriptors for G535 wireless gaming headset and wireless keyboard EX110
  • Update Greek translation
  • Fix minor issues in documentation
  • Remove some deprecated GTK code
  • Use zero exit code for kill interrupts
  • Add rule Test condition for battery charging
  • Get wpid for 28Mz devices from udev when enumerating
  • Add Device condition to rules
  • Don't show wireless link or battery information when unknown or not present
  • Add desccriptor for G9x and LX7 mice
  • Fix bug in determining kind of devices for 27Mz receivers
  • Set initial lock status of smooth scrolling features to ignore
  • Fix glitch in configuration file update when changing versions
  • Add more debugging output for rules
  • Clean up pinging code
  • Put initial ping of direct-connected devices inside listener thread
  • Read and check before write of range settings
  • Improve pairing determination
  • Cut off determination of receiver devices when all have been found
  • Remove derived configuration fields when Solaar version changes
  • Allow device descriptors without name and codename
  • Filter and escape technical detail fields
  • Add setting for ADC power managemen
  • Correctly determine whether to ping with a long HID++ message
  • Add description for K470 keyboard from the MK470 combo (#1945)
  • Add setting value for mouse gestures
  • Update German and French translations
  • Remove old clean.sh and monitor.py tools
  • Retry opening device if permissions error encountered
  • Better handlling of IO errors at device creation
  • Add KeyIsDown rule condition to check whether a diverted key is down
  • Clean up device and receiver creation

1.1.8

17 Dec 18:07
1.1.8
Compare
Choose a tag to compare
  • Add parameter to thumb wheel rule conditions
  • Rename Serbian translation file
  • Update Polish translation
  • Improve handling of wheel notifications
  • Only record changes of scroll wheel ratchet
  • Don't mark setting as absent if there are device errors
  • More robust access to keyword exception fields
  • Add support for config change feature
  • Clean up GTK code
  • Update documentation on mouse gestures and known issues
  • Get commit information from git describe and dpkg-parsechangelog
  • Update pre-commit tools to current versions
  • Update installation instructions
  • Add 8-character commit hash to version information
  • Update solaar.desktop (#1857)
  • Get release in setup.py by reading lib/solaar/init.py
  • Remove version number from docs/_config.yml
  • Update solaar.desktop
  • Update es.po
  • Clarify status of C542 receiver
  • Update devices directory
  • Add description of several devices
  • Show name of disconnecting receiver or device in disconnect warning
  • Reduce standard size of rule editor window
  • Remove unnecessary dependency on typing_extensions

1.1.7

03 Nov 11:23
1.1.7
Compare
Choose a tag to compare
  • Add dependency on typing_extension to setup.py
  • Don't defer saves in CLI and don't require Gtk in CLI
  • Be more permissive in recognizing HID++ report descriptors
  • Update Polish and Croatian translations
  • Switch scroll ratcheting in response to scroll ratchet button notification
  • Add setting to turn scroll ratchet on and off
  • Eliminate visual glitch when updating range setting
  • Make hid-parser an optional dependency