~ruther/qmk_firmware

974a1eaf2a1076de0cc06deeefe12e15b7e209bc — Joel Challis 2 years ago 403c7ee
Ignore defaults.hjson values if already set (#19511)

* Ignore defaults.hjson values if already set

* Add warning when nothing is merged
M keyboards/handwired/onekey/blackpill_f401_tinyuf2/info.json => keyboards/handwired/onekey/blackpill_f401_tinyuf2/info.json +1 -2
@@ 1,8 1,7 @@
{
    "keyboard_name": "Onekey Blackpill STM32F401 TinyUF2",
    "processor": "STM32F401",
    "development_board": "blackpill_f401",
    "bootloader": "tinyuf2",
    "board": "BLACKPILL_STM32_F401",
    "matrix_pins": {
        "cols": ["B0"],
        "rows": ["A7"]

M keyboards/handwired/onekey/blackpill_f411_tinyuf2/info.json => keyboards/handwired/onekey/blackpill_f411_tinyuf2/info.json +1 -2
@@ 1,8 1,7 @@
{
    "keyboard_name": "Onekey Blackpill STM32F411 TinyUF2",
    "processor": "STM32F411",
    "development_board": "blackpill_f411",
    "bootloader": "tinyuf2",
    "board": "BLACKPILL_STM32_F411",
    "matrix_pins": {
        "cols": ["B0"],
        "rows": ["A7"]

M lib/python/qmk/info.py => lib/python/qmk/info.py +10 -2
@@ 561,8 561,16 @@ def _process_defaults(info_data):
    for default_type in defaults_map.keys():
        thing_map = defaults_map[default_type]
        if default_type in info_data:
            for key, value in thing_map.get(info_data[default_type], {}).items():
                info_data[key] = value
            merged_count = 0
            thing_items = thing_map.get(info_data[default_type], {}).items()
            for key, value in thing_items:
                if key not in info_data:
                    info_data[key] = value
                    merged_count += 1

            if merged_count == 0 and len(thing_items) > 0:
                _log_warning(info_data, 'All defaults for \'%s\' were skipped, potential redundant config or misconfiguration detected' % (default_type))

    return info_data