summary refs log tree commit diff
path: root/data
diff options
context:
space:
mode:
authorJoel Challis <git@zvecr.com>2022-06-09 21:02:16 +0100
committerGitHub <noreply@github.com>2022-06-09 21:02:16 +0100
commita599550adbd6b1291509d7cdc7ea61c92550a60c (patch)
treeb878a1da9541a4e4fd25c4861f0fd340b646b9c2 /data
parentde43b09d25e83d97cb8e26177f28d1f391ff9c4f (diff)
Add support for linting deprecated and removed functionality (#17063)
* Add support for more lint warnings/errors

* Develop currently needs extra deps installed

* Lint a few more scenarios

* fix tests
Diffstat (limited to 'data')
-rw-r--r--data/mappings/info_config.json10
-rw-r--r--data/mappings/info_rules.json9
2 files changed, 17 insertions, 2 deletions
diff --git a/data/mappings/info_config.json b/data/mappings/info_config.json
index d9f96b5892..5f0d903bd7 100644
--- a/data/mappings/info_config.json
+++ b/data/mappings/info_config.json
@@ -7,6 +7,8 @@
     # to_json: Default `true`. Set to `false` to exclude this mapping from info.json
     # to_c: Default `true`. Set to `false` to exclude this mapping from config.h
     # warn_duplicate: Default `true`. Set to `false` to turn off warning when a value exists in both places
+    # deprecated: Default `false`. Set to `true` to turn on warning when a value exists
+    # invalid: Default `false`. Set to `true` to generate errors when a value exists
     "AUDIO_VOICES": {"info_key": "audio.voices", "value_type": "bool"},
     "BACKLIGHT_BREATHING": {"info_key": "backlight.breathing", "value_type": "bool"},
     "BREATHING_PERIOD": {"info_key": "backlight.breathing_period", "value_type": "int"},
@@ -19,7 +21,6 @@
     "DEVICE_VER": {"info_key": "usb.device_ver", "value_type": "hex"},
     # TODO: Replace ^^^ with vvv
     #"DEVICE_VER": {"info_key": "usb.device_version", "value_type": "bcd_version"},
-    "DESCRIPTION": {"info_key": "keyboard_folder", "value_type": "str", "to_json": false},
     "DIODE_DIRECTION": {"info_key": "diode_direction"},
     "DOUBLE_TAP_SHIFT_TURNS_ON_CAPS_WORD": {"info_key": "caps_word.double_tap_shift_turns_on", "value_type": "bool"},
     "FORCE_NKRO": {"info_key": "usb.force_nkro", "value_type": "bool"},
@@ -102,4 +103,11 @@
     "USB_MAX_POWER_CONSUMPTION": {"info_key": "usb.max_power", "value_type": "int"},
     "USB_POLLING_INTERVAL_MS": {"info_key": "usb.polling_interval", "value_type": "int"},
     "USB_SUSPEND_WAKEUP_DELAY": {"info_key": "usb.suspend_wakeup_delay", "value_type": "int"},
+
+    # Items we want flagged in lint
+    "NO_ACTION_MACRO": {"info_key": "_invalid.no_action_macro", "invalid": true},
+    "NO_ACTION_FUNCTION": {"info_key": "_invalid.no_action_function", "invalid": true},
+    "DESCRIPTION": {"info_key": "_invalid.usb_description", "invalid": true},
+    "DEBOUNCING_DELAY": {"info_key": "_invalid.debouncing_delay", "invalid": true},
+    "PREVENT_STUCK_MODIFIERS": {"info_key": "_invalid.prevent_stuck_mods", "invalid": true},
 }
diff --git a/data/mappings/info_rules.json b/data/mappings/info_rules.json
index a8b39afbd1..d4eec37ba0 100644
--- a/data/mappings/info_rules.json
+++ b/data/mappings/info_rules.json
@@ -7,6 +7,8 @@
     # to_json: Default `true`. Set to `false` to exclude this mapping from info.json
     # to_c: Default `true`. Set to `false` to exclude this mapping from rules.mk
     # warn_duplicate: Default `true`. Set to `false` to turn off warning when a value exists in both places
+    # deprecated: Default `false`. Set to `true` to turn on warning when a value exists
+    # invalid: Default `false`. Set to `true` to generate errors when a value exists
     "BOARD": {"info_key": "board"},
     "BOOTLOADER": {"info_key": "bootloader", "warn_duplicate": false},
     "BLUETOOTH": {"info_key": "bluetooth.driver"},
@@ -24,5 +26,10 @@
     "SECURE_ENABLE": {"info_key": "secure.enabled", "value_type": "bool"},
     "SPLIT_KEYBOARD": {"info_key": "split.enabled", "value_type": "bool"},
     "SPLIT_TRANSPORT": {"info_key": "split.transport.protocol", "to_c": false},
-    "WAIT_FOR_USB": {"info_key": "usb.wait_for", "value_type": "bool"}
+    "WAIT_FOR_USB": {"info_key": "usb.wait_for", "value_type": "bool"},
+
+    # Items we want flagged in lint
+    "CTPC": {"info_key": "_deprecated.ctpc", "deprecated": true},
+    "CONVERT_TO_PROTON_C": {"info_key": "_deprecated.ctpc", "deprecated": true},
+    "VIAL_ENABLE": {"info_key": "_invalid.vial", "invalid": true},
 }