summaryrefslogtreecommitdiff
path: root/lib/python
AgeCommit message (Collapse)Author
2021-01-122020 November 28 Breaking Changes Update (#11053)James Young
* Branch point for 2020 November 28 Breaking Change * Remove matrix_col_t to allow MATRIX_ROWS > 32 (#10183) * Add support for soft serial to ATmega32U2 (#10204) * Change MIDI velocity implementation to allow direct control of velocity value (#9940) * Add ability to build a subset of all keyboards based on platform. * Actually use eeprom_driver_init(). * Make bootloader_jump weak for ChibiOS. (#10417) * Joystick 16-bit support (#10439) * Per-encoder resolutions (#10259) * Share button state from mousekey to pointing_device (#10179) * Add hotfix for chibios keyboards not wake (#10088) * Add advanced/efficient RGB Matrix Indicators (#8564) * Naming change. * Support for STM32 GPIOF,G,H,I,J,K (#10206) * Add milc as a dependency and remove the installed milc (#10563) * ChibiOS upgrade: early init conversions (#10214) * ChibiOS upgrade: configuration file migrator (#9952) * Haptic and solenoid cleanup (#9700) * XD75 cleanup (#10524) * OLED display update interval support (#10388) * Add definition based on currently-selected serial driver. (#10716) * New feature: Retro Tapping per key (#10622) * Allow for modification of output RGB values when using rgblight/rgb_matrix. (#10638) * Add housekeeping task callbacks so that keyboards/keymaps are capable of executing code for each main loop iteration. (#10530) * Rescale both ChibiOS and AVR backlighting. * Reduce Helix keyboard build variation (#8669) * Minor change to behavior allowing display updates to continue between task ticks (#10750) * Some GPIO manipulations in matrix.c change to atomic. (#10491) * qmk cformat (#10767) * [Keyboard] Update the Speedo firmware for v3.0 (#10657) * Maartenwut/Maarten namechange to evyd13/Evy (#10274) * [quantum] combine repeated lines of code (#10837) * Add step sequencer feature (#9703) * aeboards/ext65 refactor (#10820) * Refactor xelus/dawn60 for Rev2 later (#10584) * add DEBUG_MATRIX_SCAN_RATE_ENABLE to common_features.mk (#10824) * [Core] Added `add_oneshot_mods` & `del_oneshot_mods` (#10549) * update chibios os usb for the otg driver (#8893) * Remove HD44780 References, Part 4 (#10735) * [Keyboard] Add Valor FRL TKL (+refactor) (#10512) * Fix cursor position bug in oled_write_raw functions (#10800) * Fixup version.h writing when using SKIP_VERSION=yes (#10972) * Allow for certain code in the codebase assuming length of string. (#10974) * Add AT90USB support for serial.c (#10706) * Auto shift: support repeats and early registration (#9826) * Rename ledmatrix.h to match .c file (#7949) * Split RGB_MATRIX_ENABLE into _ENABLE and _DRIVER (#10231) * Split LED_MATRIX_ENABLE into _ENABLE and _DRIVER (#10840) * Merge point for 2020 Nov 28 Breaking Change
2021-01-12Brute force update CLI toolsDrashna Jael're
2021-01-12CLI: Udev related fixes and improvements (#10736)Erovia
2021-01-12New command: qmk lint (#10761)Zach White
* Basic qmk lint command * check for keymap readme * change the workflow from qmk info to qmk lint * add a strict mode * parsing -> parse * document qmk lint * small info logging cleanup * Apply suggestions from code review Co-authored-by: Ryan <fauxpark@gmail.com> * honor --strict in more places * change the job name to lint Co-authored-by: Ryan <fauxpark@gmail.com>
2021-01-12CLI: Add `qmk clean` (#10785)Ryan
2021-01-12`qmk info`: Add `--ascii` flag (#10793)Ryan
* `qmk info`: Add `--ascii` flag * Fix typo * Force ASCII for Windows/MSYS2 * Make it gooder * Remove redundant windows check * ...And this too * Make pytest work on Windows
2021-01-12c2json: Fix TypeError on MSYS2 (#10709)Ryan
2021-01-12Fix CLI warning for Massdrop udev rule (#10691)Ryan
2021-01-12[CLI] Remove check for Input Club boards (#10636)Ryan
2021-01-12CLI: Fix stripping of `ANY` from Configurator exports (#10585)Erovia
058737f broke it ¯\_(ツ)_/¯
2021-01-12CLI: Fix MCU lists for `qmk info` (#10574)Ryan
2021-01-12[CLI] Add c2json (#8817)Erovia
* Basic keymap parsing finally works * Add 'keymap.json' creation to the qmk.keymap module * Add tests and fix formatting * Fix/exclude flake8 errors * Convert keymap.c to valid keymap.json * Fix some errors * Add tests * Finalize keymap.json creation, add json template * Add docs * Move pygments to the standard requirements * Add support for nameless layers, fix tests * Fix things after rebase * Add missing 'keymap' value. * Fix missing layer numbers from advanced keycodes Buckwich noticed that if the advanced keycode / layer toggling key contains a number, it goes missing. Now we properly handle them. Thx for noticing! * Apply suggestions from code review * fixup tests Co-authored-by: Zach White <skullydazed@drpepper.org> Co-authored-by: skullY <skullydazed@gmail.com>
2021-01-12CLI: update subcommands to use return instead of exit() (#10323)Ryan
2021-01-12Improve LAYOUT macro searching (#9530)Ryan
* Improve LAYOUT macro searching * Apply suggestions from code review Co-authored-by: Zach White <skullydazed@users.noreply.github.com> * Adjust signature * Try to copy the makefile's handling of DEFAULT_FOLDER * Move it further up, into `info_json()` * Move it even further up so that keyboard_folder is correct * Update lib/python/qmk/info.py Co-authored-by: Zach White <skullydazed@drpepper.org> * Update lib/python/qmk/info.py Co-authored-by: Zach White <skullydazed@drpepper.org> Co-authored-by: Zach White <skullydazed@users.noreply.github.com> Co-authored-by: Zach White <skullydazed@drpepper.org>
2021-01-12Add STM32F401/F411 to ARM_PROCESSORS (#10362)Ryan
2021-01-12Consolidate udev wules into a single fileRyan
2020-09-07Update QMK CLI to be inline with upstreamDrashna Jael're
2020-08-08Parse version better in `qmk doctor` GCC version checks (#9324)Ryan
2020-08-08CLI: Add ATmega328 and ATtiny85 to supported CPUs (#9371)Erovia
* CLI: Add ATmega328 to supported CPUs Support for ATmega328 was added in #9043. * Update lib/python/qmk/constants.py
2020-08-08Fix running qmk info without any arguments (#9218)Zach White
2020-08-08Fix the path for generated keymaps (#9213)Zach White
2020-08-08Fix compiling json files (#9210)Zach White
2020-08-08[CLI] Add a subcommand for getting information about a keyboard (#8666)Zach White
You can now use `qmk info` to get information about keyboards and keymaps. Co-authored-by: Erovia <Erovia@users.noreply.github.com>
2020-08-08CLI: fix `json2c` subcommand and add/fix tests (#9206)Erovia
Co-authored-by: Zach White <skullydazed@users.noreply.github.com>
2020-06-12CLI: Rework submodule checking (#9162)Erovia
2020-06-12Fix submodule check (#9155)Erovia
2020-06-12Adding unit tests for list-keymaps command (#7711)codecoffeecode
Co-Authored-By: James Young <18669334+noroadsleft@users.noreply.github.com> Co-Authored-By: Erovia <Erovia@users.noreply.github.com>
2020-06-12CLI: Tune doctor's udev rule checking to match #8750Erovia
2020-06-12[kle2info] Trim the code in `kle2xy` (#8955)Keenan Brock
* [kle2jinfo] use min/max instead of if This is a slight change. Before, the key_skel would keep the invalid value for future keys. I think this is what was actually intended. * [kle2info] calculate x x is the current_x * key_size + (key_size/2) y is the current_y * key_size + (key_size/2) no reason to track both
2020-06-12kle2info: trim down x and y outputKeenan Brock
fixes quirks with float implementation. before: {"label":"Esc", "x":0.66, "y":1.45}, {"label":"!", "x":1.6600000000000001, "y":1.45} after: {"label":"Esc", "x":0.66, "y":1.45}, {"label":"!", "x":1.66, "y":1.45}
2020-06-12kle2json: fix invocation errorKeenan Brock
resolves an issue while finding the file path TypeError: unsupported operand type(s) for +: 'PosixPath' and 'str'
2020-06-12Move everything to Python 3.6 (#8835)skullydazed
2020-06-12MILC: Fix setting config values for store_true and store_false (#8813)skullydazed
2020-06-12CLI: Fix doctor error when can't run `bin/qmk --version`. (#8796)Pete Johanson
2020-06-12CLI: Use `shutil.which` to detect gmake, instead of OS check.Pete Johanson
2020-06-12CLI: Invoke gmake on FreeBSD when using `qmk compile`.Pete Johanson
* Current makefiles aren't portable, so invoke gmake on FreeBSD.
2020-06-12Don't hide for devs...Erovia
2020-06-12Rebase on master, hide some other subcommandsErovia
The list of hidden subcommands were approved by @skullydazed ;) Currently hidden if 'user.developer' is not True: - cformat - docs - kle2json - pyformat - pytest
2020-06-12CLI: Add development mode supportErovia
Hide development specific options and don't require dev modules unless `user.developer` is set to `True`.
2020-06-12Correctly handle json keymaps with ANY()skullY
2020-06-12Doctor: Add avrdude/dfu-util/dfu-programmer version printing (#8678)Ryan
* Doctor: Add avrdude/dfu-util/dfu-programmer version printing * Extra newline * Iterate through version checking functions
2020-06-12minor tweaksskullY
2020-06-12Fix saving output from avrdude and dfu-programmerRoss Baquir
2020-06-12Use version_arg in ESSENTIAL_BINARIES dictRoss Baquir
2020-06-12Fixes #8541 by getting version from -dumpversion then --version as fallbackRoss Baquir
2020-06-12CLI: More MSYS2 fixes (#8577)Erovia
* CLI: More MSYS2 fixes Now I can fully setup and work with qmk_firmware on an MSYS2 installation without any errors or exceptions. * Apply suggestions from code review Co-Authored-By: skullydazed <skullydazed@users.noreply.github.com> * Some improvements * Remove unnecessary import * Remove slow, unused code Getting the version from GIT was slow on both Windows and Docker. Until we find a better, faster way, this is removed. * remove unused imports * Implement @vomindoraan's suggestions * refine how we pick the shell to use * Apply @fauxpark's suggestions fauxpark investigated the topic of shells in MSYS2 a bit and we come to the conclusion that the safest bet was to just use the user's shell. Anything more just opens up more edge-cases than it solves. Co-Authored-By: Ryan <fauxpark@gmail.com> * Use `platform_id` in doctor This will bring it in line with the new code. Co-authored-by: skullydazed <skullydazed@users.noreply.github.com> Co-authored-by: skullY <skullydazed@gmail.com> Co-authored-by: Ryan <fauxpark@gmail.com>
2020-06-12CLI: Hide json-keymap subcommand, as it's been deprecated.Erovia
2020-06-12Add decorators for determining keyboard and keymap based on current ↵skullydazed
directory (#8191) * Use pathlib everywhere we can * Improvements based on @erovia's feedback * rework qmk compile and qmk flash to use pathlib * style * Remove the subcommand_name argument from find_keyboard_keymap() * add experimental decorators * Create decorators for finding keyboard and keymap based on current directory. Decorators were inspired by @Erovia's brilliant work on the proof of concept.
2020-06-12use qmk.path.normpath to locate the output file.skullY
2020-06-12Rename qmk json-keymap to qmk json2c (#8372)skullydazed