Commit Graph

285 Commits

Author SHA1 Message Date
Joel Challis
fa3dd373b4
Fix error message in generated code (#17484) 2022-06-27 08:58:31 +10:00
Joel Challis
d3dfa83b40
Fix clean arg handling (#17392) 2022-06-15 22:43:54 +01:00
Joel Challis
f37de9a212
Perform stricter lint checks (#17348) 2022-06-14 14:54:46 +01:00
Joel Challis
92665aef33
Promote 'layouts require matrix data' to api error (#17349) 2022-06-10 11:44:48 +01:00
Joel Challis
608fa5154c
Data driven g_led_config (#16728) 2022-05-16 07:39:29 +10:00
Nick Brassel
be9fa68785
Also format *.hpp files. (#16997) 2022-05-04 05:48:41 +10:00
Joel Challis
92a61aa0cd
Implement XAP 'secure' core requirements (#16843)
Co-authored-by: Drashna Jaelre <drashna@live.com>
Co-authored-by: Stefan Kerkmann <karlk90@pm.me>
2022-04-16 11:13:05 -07:00
Nick Brassel
1f2b1dedcc
Quantum Painter (#10174)
* Install dependencies before executing unit tests.

* Split out UTF-8 decoder.

* Fixup python formatting rules.

* Add documentation for QGF/QFF and the RLE format used.

* Add CLI commands for converting images and fonts.

* Add stub rules.mk for QP.

* Add stream type.

* Add base driver and comms interfaces.

* Add support for SPI, SPI+D/C comms drivers.

* Include <qp.h> when enabled.

* Add base support for SPI+D/C+RST panels, as well as concrete implementation of ST7789.

* Add support for GC9A01.

* Add support for ILI9341.

* Add support for ILI9163.

* Add support for SSD1351.

* Implement qp_setpixel, including pixdata buffer management.

* Implement qp_line.

* Implement qp_rect.

* Implement qp_circle.

* Implement qp_ellipse.

* Implement palette interpolation.

* Allow for streams to work with either flash or RAM.

* Image loading.

* Font loading.

* QGF palette loading.

* Progressive decoder of pixel data supporting Raw+RLE, 1-,2-,4-,8-bpp monochrome and palette-based images.

* Image drawing.

* Animations.

* Font rendering.

* Check against 256 colours, dump out the loaded palette if debugging enabled.

* Fix build.

* AVR is not the intended audience.

* `qmk format-c`

* Generation fix.

* First batch of docs.

* More docs and examples.

* Review comments.

* Public API documentation.
2022-04-13 18:00:18 +10:00
Joel Challis
2cfbc1445c
Allow new-keyboard to use development_board presets (#16785) 2022-04-08 20:12:32 +01:00
QMK Bot
d75ae52fe6 Merge remote-tracking branch 'origin/master' into develop 2022-03-30 20:55:16 +00:00
Ryan
64974a7f8f
yapf: disable arithmetic predecence indication (#16749) 2022-03-30 21:54:13 +01:00
QMK Bot
03f9b8db15 Merge remote-tracking branch 'origin/master' into develop 2022-03-27 20:29:09 +00:00
Erovia
8c0198334c
CLI: Lint non-data driven macros in info.json (#16739)
* CLI: Lint non-data driven macros in info.json

Macros in info.json should either have the "matrix" key with the matrix
data or should should be also present in <keyboard>.h

* Add verification of matrix data

* Use generic '<keyboard>.h' in output

* Add keyboard name to output

* Make C layout macro finding more robust

The old code missed C macros if they had whitespace between '#' and
'define' or had whitespace before '#'.
2022-03-27 21:28:36 +01:00
QMK Bot
2957f60dc1 Merge remote-tracking branch 'origin/master' into develop 2022-03-24 20:14:36 +00:00
Erovia
efc9c525b1
CLI: Add 'via2json' subcommand (#16468) 2022-03-24 21:13:40 +01:00
Joel Challis
4f8cc32cf5
Extend 'qmk info' to handle keymap level overrides (#16702) 2022-03-21 11:57:41 +01:00
QMK Bot
3a08deb7fe Merge remote-tracking branch 'origin/master' into develop 2022-03-18 16:02:57 +00:00
Joel Challis
ed773ab73c
Relocate CLI git interactions (#16682) 2022-03-18 16:02:24 +00:00
zvecr
bffb209eee Merge remote-tracking branch 'origin/master' into develop 2022-03-18 01:15:23 +00:00
Joel Challis
e5823b5650
[CLI] Add common util for dumping generated content (#16674) 2022-03-18 01:09:29 +00:00
QMK Bot
31eb82c911 Merge remote-tracking branch 'origin/master' into develop 2022-03-10 21:34:11 +00:00
Erovia
b75f6691a1
CLI: Fix 'cd' subcommand on Windows (#16610)
The 'cd' subcommand was failing as the current shell's Windows path was
mangled while milc processed it.
Using 'subprocess' directly avoids this issue and an extra layer of
subshell.
2022-03-10 21:33:41 +00:00
Nick Brassel
8d5eacb7dd
Add support for encoder mapping. (#13286) 2022-03-09 19:29:00 +11:00
Ryan
75544d9127
Move Doxygen docs to subdirectory (#16561) 2022-03-07 11:22:22 +00:00
Ryan
ace0603f4f
Change data driven "str" type to represent a quoted string literal (#16516)
* Change data driven "str" type to represent a quoted string literal

* Update docs
2022-03-04 13:25:24 +00:00
QMK Bot
36e47cb3aa Merge remote-tracking branch 'origin/master' into develop 2022-02-28 20:03:22 +00:00
Erovia
fbfd5312b9
CLI: Validate JSON keymap input (#16261)
* Fix schema validator

It should use the passed schema.

* Add required attributes to keymap schema

* Rework subcommands to validate the JSON keymaps

The 'compile', 'flash' and 'json2c' subcommands were reworked to add
JSON keymap validation so error is reported for non-JSON and
non-compliant-JSON inputs.

* Fix required fields in keymap schema

* Add tests

* Fix compiling keymaps directly from keymap directory

* Schema should not require version for now.
2022-02-28 20:02:39 +00:00
QMK Bot
3c7c9bdd86 Merge remote-tracking branch 'origin/master' into develop 2022-02-27 12:40:01 +00:00
Joel Challis
779c7debcf
Fix issues with data driven split keyboards (#16457) 2022-02-27 13:39:24 +01:00
Joel Challis
e4a6afa369
Rework generate-api CLI command to use .build directory (#16441) 2022-02-27 12:28:51 +01:00
Joel Challis
cf31355f08
Changelog 2022q1 (#16380)
* Initial changelog pass

* update generate-develop-pr-list content

* Fix bad word-ness

* Fix generate-develop-pr-list ignores

* Update docs/ChangeLog/20220226.md

Co-authored-by: Sergey Vlasov <sigprof@gmail.com>

Co-authored-by: Sergey Vlasov <sigprof@gmail.com>
2022-02-23 17:33:08 +00:00
QMK Bot
bd01e1cee8 Merge remote-tracking branch 'origin/master' into develop 2022-02-22 18:32:43 +00:00
QMK Bot
8aec20c0da
Format code according to conventions (#16435) 2022-02-22 18:29:47 +00:00
fauxpark
a44abeb99a Merge remote-tracking branch 'upstream/master' into develop 2022-02-22 03:04:41 +11:00
Ryan
f30f963a0b
Internal docs generation updates (#16411) 2022-02-21 15:47:44 +00:00
Joel Challis
b0621223bc
Various fixes for new-keyboard (#16358) 2022-02-15 01:42:58 +00:00
Erovia
23c238a180
CLI: Minor additions #12795 (#16276) 2022-02-14 12:02:35 +01:00
Joel Challis
f7e7671f69
Migrate more makefile utilities to builddefs sub-directory (#16002) 2022-02-10 09:45:51 -08:00
Joel Challis
2e279f1b88
Initial pass at data driven new-keyboard subcommand (#12795)
* Initial pass at a data driven keyboard subcommand

* format

* lint

* Handle bootloader now its mandatory
2022-02-09 06:03:30 +11:00
Nick Brassel
8fd8b2dc92
Skip categorisation of PR if it's only for code formatting. (#16215) 2022-02-05 07:36:57 +11:00
Nick Brassel
db43e45077
Ensure version.h is recreated each build. (#16188) 2022-02-04 07:36:02 +11:00
QMK Bot
7d38aec3ac Merge remote-tracking branch 'origin/master' into develop 2022-02-02 04:31:44 +00:00
Ryan
c9f88d7c67
qmk doctor: display qmk_firmware version tag (#16155) 2022-02-01 20:31:42 -08:00
Nick Brassel
6e2b03cf69
Fixup multibuild filegen (#16166)
* Add env variable support to multibuild.

* Generate version.h in build-specific location.
2022-02-02 15:30:22 +11:00
Ryan
c72ed7c024
CLI: Parse USB device version BCD (#14580)
* CLI: Parse USB device version BCD

* Apply suggestions
2022-01-17 08:44:34 +11:00
QMK Bot
c089541938 Merge remote-tracking branch 'origin/master' into develop 2022-01-03 22:42:47 +00:00
Joel Challis
550c9a315f
Refix "No C files in filelist: None" (#15728) 2022-01-03 22:42:15 +00:00
QMK Bot
73e372d920 Merge remote-tracking branch 'origin/master' into develop 2022-01-03 21:55:23 +00:00
Joel Challis
aea7155423
Fix "No C files in filelist: None" (#15560)
* Fix "No C files in filelist: None"

* Align other commands

* force absolute paths
2022-01-03 21:54:46 +00:00
QMK Bot
dde5cd1c54 Merge remote-tracking branch 'origin/master' into develop 2021-12-29 21:36:08 +00:00