summaryrefslogtreecommitdiff
path: root/lib
AgeCommit message (Collapse)Author
2023-11-29Fixup compilation with `qmk compile -kb zzz -km all`. (#22568)Nick Brassel
2023-11-28Attempt to fix configurator. (#22555)Nick Brassel
2023-11-28QMK Userspace (#22222)Nick Brassel
Co-authored-by: Duncan Sutherland <dunk2k_2000@hotmail.com>
2023-11-22[CLI] Remove duplicates from search results (#22528)Nick Brassel
2023-11-22CLI parallel search updates (#22525)Nick Brassel
2023-11-21Fix `qmk find` failure due to circular imports (#22523)Sergey Vlasov
There was an import cycle in the Python modules: - `qmk.build_targets` imported `qmk.cli.generate.compilation_database`; - importing `qmk.cli.generate.compilation_database` requires initializing `qmk.cli` first; - the initialization of `qmk.cli` imported the modules for all CLI commands; - `qmk.cli.compile` imported `qmk.build_targets`. This cycle did not matter in most cases, because `qmk.cli` was imported first, and in that case importing `qmk.cli.generate.compilation_database` did not trigger the initialization of `qmk.cli` again. However, there was one corner case when `qmk.bulld_targets` was getting imported first: - The `qmk find` command uses the `multiprocessing` module. - The `multiprocessing` module uses the `spawn` start method on macOS and Windows. - When the `spawn` method is used, the child processes initialize without any Python modules loaded, and the required modules are loaded on demand by the `pickle` module when receiving the serialized objects from the main process. The result was that the `qmk find` command did not work properly on macOS (and probably Windows too); it reported exceptions like this: ImportError: cannot import name 'KeyboardKeymapBuildTarget' from partially initialized module 'qmk.build_targets' (most likely due to a circular import) Moving the offending `qmk.cli.generate.compilation_database` import into the method which actually uses it fixes the problem.
2023-11-20Enable linking of encoders to switch within layout macros (#22264)Joel Challis
2023-11-19`qmk find`: Fix failure with multiple filters (#22497)Sergey Vlasov
When multiple `-f FILTER` options were specified, `qmk find` did not return anything at all instead of printing the list of entries that matched all of the specified filters. The problem was that the statement in `_filter_keymap_targets()` that filled `targets` had a wrong indent and therefore was executed for every filter instead of only once after applying all filters, and `valid_keymaps` was actually an iterator and therefore could be used only once. Moving the statement outside of the loop fixes the problem.
2023-11-15CLI refactoring for common build target APIs (#22221)Nick Brassel
2023-11-11Merge remote-tracking branch 'origin/master' into developQMK Bot
2023-11-11Add `qmk license-check` developer-level CLI command. (#22075)Nick Brassel
2023-11-01Improve argument handling of c2json (#22170)Joel Challis
* Improve argument handling of c2json * Add automagic
2023-11-01Generate switch statement helpers for keycode ranges (#20059)Joel Challis
2023-11-01Implement data driven lighting defaults (#21825)Joel Challis
2023-11-01Add dd mapping for hardware based split handedness (#22369)Joel Challis
2023-10-30Remove use of broken split.main (#22363)Joel Challis
2023-10-29Fix 'to_c' for config.h mappings (#22364)Joel Challis
2023-10-29Implement data driven dip switches (#22017)Joel Challis
* Add data driven dip switches * Autogen weak matrix_mask
2023-10-21Support additional split sync items for info.json (#22193)Joel Challis
2023-10-16Merge remote-tracking branch 'origin/master' into developQMK Bot
2023-10-17Allow for disabling of parallel processing of qmk find and `qmk ↵Nick Brassel
mass-compile`. (#22160) Co-authored-by: Duncan Sutherland <dunk2k_2000@hotmail.com>
2023-10-08Merge remote-tracking branch 'origin/master' into developQMK Bot
2023-10-08Flag vial keymaps in 'qmk lint' (#22227)Joel Challis
2023-10-05Merge remote-tracking branch 'origin/master' into developQMK Bot
2023-10-06Add `qmk ci-validate-aliases` (#22205)Nick Brassel
2023-09-28Merge remote-tracking branch 'origin/master' into developQMK Bot
2023-09-29Allow for `qmk mass-compile all:<keymap>` (#22116)Nick Brassel
Co-authored-by: Joel Challis <git@zvecr.com>
2023-09-28Merge remote-tracking branch 'origin/master' into developQMK Bot
2023-09-28Allow inline generation of compile_commands.json while doing a `qmk ↵Nick Brassel
compile`, using `--compiledb` (#21549)
2023-09-27Fix parsing/validation for 21939 (#22148)Joel Challis
2023-09-23Merge remote-tracking branch 'origin/master' into developQMK Bot
2023-09-23Fix up `qmk mass-compile` makefile indenting. (#22115)Nick Brassel
2023-09-22Merge remote-tracking branch 'origin/master' into developQMK Bot
2023-09-22Allow for `qmk compile -kb all`. (#22022)Nick Brassel
2023-09-14Merge remote-tracking branch 'origin/master' into developQMK Bot
2023-09-14`qmk format-json`: Add an in-place mode to format json command (#21610)Andrew Kannan
2023-09-13Generate keymap.json config options more forcefully (#21960)Joel Challis
2023-08-27Add *_MATRIX_LED_COUNT generation (#21110)Joel Challis
2023-08-01Remove layout aliases from keyboard_aliases.hjson (#21658)Joel Challis
2023-07-31keycode aliases: work around ChibiOS ch.h include guard (#21497)Ryan
2023-07-31CLI: Improve error messages when layout key matrix row/col is OOB (#21640)Ryan
2023-07-17[Core] Update ChibiOS-Contrib (#21553)Stefan Kerkmann
2023-07-08feat, docs: WB32 flashing (#21217)Less/Rikki
2023-07-07Merge remote-tracking branch 'origin/master' into developQMK Bot
2023-07-08Adjust width requirement for big enter (#21470)Ryan
2023-07-07Merge remote-tracking branch 'origin/master' into developQMK Bot
2023-07-07[Refactor] Python-ify QP's converter code (#20102)Pablo Martínez
2023-06-28STM32H723 support (#21352)Nick Brassel
2023-06-26[Bug] Fix non-functional S3 wakeup / resume from suspense (#19780)Stefan Kerkmann
* Update ChibiOS-Contrib for USB suspend fixes * Remove S3 wakup workaround ChibiOS OTGv1 driver has a remote wakeup bug that prevents the device to resume it's operation. 02516cbc24647f522eee975e69cc0c8a925470eb introduced a hotfix that forcefully restarted the usb driver as a workaround. This workaround broke multiple boards which do not use this driver / peripheral. With the update of ChibiOS this hotfix is now obsolete. * Remove restart_usb_driver overrides they are no longer necessary as the workaround is not needed anymore for stm32f4 * Remove unused RP_USB_USE_SOF_INTR defines The SOF interrupt is enabled dynamically by the RP2040 usb driver
2023-06-21Consolidate `KEYBOARD_OUTPUT`+`KEYMAP_OUTPUT`=>`INTERMEDIATE_OUTPUT` (#21272)Nick Brassel