You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
ignore unknown nonzero button values, matching the existing defensive behavior for transient axis and step-selector values
preserve and dispatch any valid button carried by the same packet
add focused STOP/RESET coverage for both button-slot orderings
add the unreleased changelog entry
The change is intentionally limited to enum values the controller does not recognize. Known buttons and normal release handling are unchanged.
Validation
Validated against develop@2ea66c10e96d88013a04441134d3d4f8e8c88510 with Python 3.11:
regression test on the base: 4 failed, all at Button(0xFF)
regression test with this change: 4 passed
ruff check passed for the source and test
git diff --check passed
Targeted command:
poetry run python -m pytest -q tests/unit/test_whb04_input.py
Changelog
- Fixed: Ignore unknown WHB04 button values without reconnecting or dropping valid paired inputs
Real branch verification
The repository's locked Poetry environment was installed from poetry.lock. The targeted suite passed on real fork commit 51de21689dcf, whose sole parent is pinned upstream develop@2ea66c10e96d88013a04441134d3d4f8e8c88510.
poetry run python -m pytest -q tests/unit/test_whb04_input.py
This will fail CI driven tests until we install the appropriate libusb library into the runner. On the Linux runner it needs libhidapi-hidraw0. This would be met by running scripts/install_linux_prereqs.sh
Can you please revise the CI workflow for the quality gate to do this?
Revised in commit dba9568: the Quality Gate now runs poetry run ./scripts/install_linux_prereqs.sh after bootstrapping Poetry, while retaining the explicit Xvfb/OpenGL packages needed by the test job.
Once approved, I will verify that collection proceeds past the prior native hidapi import failure.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes #668
Summary
The change is intentionally limited to enum values the controller does not recognize. Known buttons and normal release handling are unchanged.
Validation
Validated against
develop@2ea66c10e96d88013a04441134d3d4f8e8c88510with Python 3.11:Button(0xFF)ruff checkpassed for the source and testgit diff --checkpassedTargeted command:
Changelog
- Fixed: Ignore unknown WHB04 button values without reconnecting or dropping valid paired inputsReal branch verification
The repository's locked Poetry environment was installed from
poetry.lock. The targeted suite passed on real fork commit51de21689dcf, whose sole parent is pinned upstreamdevelop@2ea66c10e96d88013a04441134d3d4f8e8c88510.Result: 4 passed.
Quality gates on the real branch:
check: passedformat --check: passedgit diff --check 2ea66c10e96d88013a04441134d3d4f8e8c88510..51de21689dcf7bf98c0f2db0a9136a2ada91114e: passed