summaryrefslogtreecommitdiff
path: root/lib
AgeCommit message (Collapse)Author
2024-02-22Ensure `qmk generate-compilation-database` copies to userspace as well. (#23129)Nick Brassel
2024-02-17[Refactor] `qmk find` (#21096)Pablo Martínez
2024-02-16[Enhancement] Prepare for `SyntaxWarning` (#22562)Pablo Martínez
2024-02-16[Refactor] Break `QGFImageFile`'s `_save` function into smaller pieces (#21124)Pablo Martínez
2024-02-12Fix git-submodule running in wrong location (#23059)Joel Challis
2024-02-08Flag invalid keyboard features during lint (#22832)Joel Challis
2024-02-01Ensure LTO is enabled as a `info.json` build config option (#22932)Joel Challis
* feature.lto -> build.lto * keymaps too
2024-01-22Merge remote-tracking branch 'origin/master' into developQMK Bot
2024-01-22Move layout macro OOB checks to lint (#22610)Joel Challis
2024-01-19Merge remote-tracking branch 'origin/master' into developQMK Bot
2024-01-20Copy `compile_commands.json` to userspace, if in use. (#22925)Nick Brassel
2024-01-16`qmk format-json`: Force Unix line endings and ensure LF at EOF (#22901)Ryan
2024-01-14CLI: Allow generation of both LED and RGB Matrix config (#22896)Ryan
2024-01-09Prevent `qmk migrate` processing unparsed info.json values (#22374)Joel Challis
2024-01-06Generate true/false for _DEFAULT_ON options (#22829)Joel Challis
2024-01-04Ensure LED config is extracted when feature is disabled (#22809)Joel Challis
* Ensure LED config is extracted when feature is disabled * Only attempt LED search if dd led config is missing
2023-12-15Merge remote-tracking branch 'origin/master' into developQMK Bot
2023-12-16Initial (#22671)Pablo Martínez
2023-12-13Merge remote-tracking branch 'origin/master' into developQMK Bot
2023-12-14[Bugfix] `qmk {compile, flash}` return code (#22639)Pablo Martínez
2023-12-06Merge remote-tracking branch 'origin/master' into developQMK Bot
2023-12-06Fix more `qmk generate-api` fallout from userspace support (#22619)Sergey Vlasov
2023-12-06Merge remote-tracking branch 'origin/master' into developQMK Bot
2023-12-06Fix JSON keymap URLs generated by the API (#22618)Ryan
2023-12-05Merge remote-tracking branch 'origin/master' into developQMK Bot
2023-12-05Avoid exceptions when layouts contain OOB matrix values (#22609)Joel Challis
2023-12-02Merge remote-tracking branch 'origin/master' into developQMK Bot
2023-12-02Fix `qmk doctor` not finding binaries on Windows (#22593)Joel Challis
2023-12-02Merge remote-tracking branch 'origin/master' into developQMK Bot
2023-12-03Dedup the list of tested userspace paths. (#22599)Nick Brassel
2023-12-02Merge remote-tracking branch 'origin/master' into developQMK Bot
2023-12-02Don't print error message when there are no row pins and no col pins (#20104)Purdea Andrei
* Don't print error message when there are no row pins and no col pins This error message could be triggered for example if MATRIX_IO_DELAY is configured in config.h, but the matrix is a custom one. The custom matrix can still call back to existing delay functions that make use of the MATRIX_IO_DELAY macro. In this case 'matrix_pins' in info_data will be true, but there will be no 'direct' 'cols' or 'rows' in info_data['matrix_pins'], and without this commit it would trigger an invalid error. * Update lib/python/qmk/info.py Co-authored-by: Nick Brassel <nick@tzarc.org> --------- Co-authored-by: Joel Challis <git@zvecr.com> Co-authored-by: Nick Brassel <nick@tzarc.org>
2023-11-30Merge remote-tracking branch 'origin/master' into developQMK Bot
2023-11-30Fixup `--no-temp` for `qmk mass-compile`. (#22582)Nick Brassel
2023-11-29lib: chibios-contrib: sync with chibios-21.11.x (#22560)Stefan Kerkmann
This contains commit from da78eb3759b8..9d7a7f904ed1: 9d7a7f90 Merge pull request #382 from KarlK90/fix/rp2040-i2c-speeds 70119934 Merge pull request #383 from KarlK90/fix/rp2040-usb-get-status-request 1a1bbe6c rp2040: usb: fix usb_lld_get_status functions 7d9212dd rp2040: i2c: fix speed calculation fb67e502 Merge pull request #377 from 1Conan/sn32_fix_registry e72939ef SN32: update registry 5b4836ca Merge pull request #376 from dexter93/sn32_usb_v2 5ded9de9 sn32: usb: do NOT clear interrupt status until handled Leftover Sonix reference code cleanup. Sometimes when there is traffic on more than 1 ep's packets would be dropped before they could be handled. Clearing the status flags after handling them takes care of it. e9a4a512 sn32: usb: only activate interrupts on lld start e4a35d1c sn32: fix host remote wakeup
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