Skip to main content
FORGEJO ERA / ISSUE #628

Options history ignores key binding default changes across the glfw and hid code spaces

closedOpened by MelanX on

Original description​

By MelanX · October 24, 2026

Crate: ephervex-options (generated data) and tools/minecraft-options

Commit: 4614552d

Behavior

default_change() in tools/minecraft-options/analyze_options.py returns None for every key binding whenever the previous and current releases have different keybinding_code_space values. The glfw and hid code spaces both serialize bindings as the same key.keyboard.* and key.mouse.* names, so a real default-key change between 26.2 (glfw) and 26.3 (hid) is comparable by its serialized name, but the generated change history never reports it. Only the glfw -> hid code space change is listed.

Expected behavior

Code spaces that share a file representation (dataset.NAMED_KEY_CODE_SPACES) are comparable for default_change, comparing serialized names rather than numeric codes. A lwjgl2 to named boundary stays non-comparable by numeric code.

Impact

Default key changes across the 26.2 to 26.3 boundary are missing from the generated history. The shipped codecs and defaults are unaffected.

THE CONVERSATION

Discussion history​

1 comment

MelanX

Closing as no longer valid. The generated change history and reports this refers to, including the default-change comparison between releases, were removed because nothing consumed them, so there is no longer an output in which a key binding default change across the glfw and hid code spaces could be missed.