fix(keymap): prevent Niri and Hyprland CPU-budget failures (1.3.4) (#135)

* fix(keymap): reduce Niri parser CPU usage

* test(keymap): cover Niri parser scan budget

* fix(keymap): keep Hyprland refreshes within CPU budget

* chore(keymap): bump release to 1.3.4
This commit is contained in:
blacku
2026-07-28 21:11:34 -04:00
committed by GitHub
parent c04fe989e4
commit 9c60991b0d
9 changed files with 449 additions and 102 deletions
+24
View File
@@ -2,6 +2,30 @@
All notable changes to Keymap are documented in this file.
## [1.3.4] - 2026-07-29
### Fixed
- Prevented Niri startup CPU-budget failures on large, split configurations.
- Prevented Hyprland refreshes from exhausting the callback CPU budget and
leaving the shortcut snapshot stuck in its loading state.
- Restored editing for literal native-Lua binds after the optimized refresh.
### Changed
- Skipped the hidden-bind scan for files without Keymap hidden sentinels.
- Skipped character-level parsing for included files that cannot contain binds
or nested includes.
- Added fast paths for common Hyprland Lua literals and dispatcher expressions.
- Switched active Hyprland source validation to exact snippet comparison while
retaining legacy fingerprints for hidden blocks and older snapshots.
### Tests
- Added a 127-bind split-config regression with a large unrelated include.
- Added a split native-Lua regression covering invalid Hyprland JSON fallback,
callback instruction budgets, and editable source provenance.
## [1.3.1] - 2026-07-21
### Fixed