* 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
46 lines
1.7 KiB
Markdown
46 lines
1.7 KiB
Markdown
# Changelog
|
|
|
|
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
|
|
|
|
- Prevented startup timeouts while parsing larger Niri, Hyprland, and MangoWC configurations.
|
|
- Prevented intermittent callback timeouts when rapidly switching keyboard modifier layers.
|
|
|
|
### Changed
|
|
|
|
- Accelerated stable fingerprints with Luau's native `bit32` operations while retaining a plain-Lua fallback.
|
|
- Avoided reading Niri's root configuration twice during a refresh.
|
|
- Made loading snapshots lightweight instead of serializing the previous bind tree again.
|
|
- Cached panel translations, settings, keyboard indexes, colors, and dynamic key callbacks between renders.
|
|
|
|
### Tests
|
|
|
|
- Added 93-bind scale regressions for Niri, Hyprland, and MangoWC.
|