Skip to content

Commit fde0c10

Browse files
committed
Merge remote-tracking branch 'qmk/master' into merge-2022-07-11
2 parents b37649a + 2714c70 commit fde0c10

File tree

7,289 files changed

+179398
-37128
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

7,289 files changed

+179398
-37128
lines changed

.github/dependabot.yml

+6
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,6 @@
1+
version: 2
2+
updates:
3+
- package-ecosystem: "github-actions"
4+
directory: "/"
5+
schedule:
6+
interval: "daily"

.github/stale.yml

-58
This file was deleted.

.github/workflows/auto_approve.yml

+18
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
name: Automatic Approve
2+
3+
on:
4+
schedule:
5+
- cron: "*/5 * * * *"
6+
7+
jobs:
8+
automatic_approve:
9+
runs-on: ubuntu-latest
10+
11+
if: github.repository == 'qmk/qmk_firmware'
12+
13+
steps:
14+
- uses: mheap/automatic-approve-action@v1
15+
with:
16+
token: ${{ secrets.QMK_BOT_TOKEN }}
17+
workflows: "format.yml,lint.yml,unit_test.yml"
18+
dangerous_files: "lib/python/,Makefile,paths.mk,builddefs/"
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
name: Update feature branches after develop merge
2+
3+
on:
4+
push:
5+
branches:
6+
- develop
7+
8+
jobs:
9+
feature_branch_update:
10+
runs-on: ubuntu-latest
11+
12+
if: github.repository == 'qmk/qmk_firmware'
13+
14+
strategy:
15+
matrix:
16+
branch:
17+
- xap
18+
19+
steps:
20+
- uses: actions/checkout@v3
21+
with:
22+
token: ${{ secrets.QMK_BOT_TOKEN }}
23+
fetch-depth: 0
24+
25+
- name: Checkout branch
26+
run: |
27+
git fetch origin develop ${{ matrix.branch }}
28+
git checkout ${{ matrix.branch }}
29+
30+
- name: Update branch from develop
31+
run: |
32+
git config --global user.name "QMK Bot"
33+
git config --global user.email "hello@qmk.fm"
34+
git merge origin/develop
35+
git push origin ${{ matrix.branch }}

.github/workflows/stale.yml

+64
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
name: 'Close stale issues and PRs'
2+
on:
3+
schedule:
4+
- cron: '30 1 * * *'
5+
workflow_dispatch:
6+
7+
permissions:
8+
issues: write
9+
pull-requests: write
10+
11+
jobs:
12+
stale:
13+
runs-on: ubuntu-latest
14+
steps:
15+
- uses: actions/stale@v5
16+
with:
17+
repo-token: ${{ secrets.GITHUB_TOKEN }}
18+
19+
remove-stale-when-updated: true
20+
exempt-draft-pr: true
21+
ascending: true
22+
operations-per-run: 150
23+
24+
stale-issue-label: stale
25+
days-before-issue-stale: 90
26+
days-before-issue-close: 30
27+
exempt-issue-labels: bug,in progress,on hold,discussion,to do
28+
29+
stale-issue-message: >
30+
This issue has been automatically marked as stale because it has not had activity in the
31+
last 90 days. It will be closed in the next 30 days unless it is tagged properly or other activity
32+
occurs.
33+
34+
For maintainers: Please label with `bug`, `in progress`, `on hold`, `discussion` or `to do` to prevent
35+
the issue from being re-flagged.
36+
37+
close-issue-message: >
38+
This issue has been automatically closed because it has not had activity in the last 30 days.
39+
If this issue is still valid, re-open the issue and let us know.
40+
41+
// [stale-action-closed]
42+
43+
stale-pr-label: stale
44+
days-before-pr-stale: 45
45+
days-before-pr-close: 30
46+
exempt-pr-labels: bug,awaiting review,breaking_change,in progress,on hold
47+
48+
stale-pr-message: >
49+
Thank you for your contribution!
50+
51+
This pull request has been automatically marked as stale because it has not had
52+
activity in the last 45 days. It will be closed in 30 days if no further activity occurs.
53+
Please feel free to give a status update now, or re-open when it's ready.
54+
55+
For maintainers: Please label with `bug`, `awaiting review`, `breaking_change`, `in progress`, or `on hold`
56+
to prevent the issue from being re-flagged.
57+
58+
close-pr-message: >
59+
Thank you for your contribution!
60+
61+
This pull request has been automatically closed because it has not had activity in the last 30 days.
62+
Please feel free to give a status update now, ping for review, or re-open when it's ready.
63+
64+
// [stale-action-closed]

.gitignore

+6-1
Original file line numberDiff line numberDiff line change
@@ -68,10 +68,12 @@ CMakeLists.txt
6868
.vscode/temp.sql
6969
tags
7070

71-
# Ignore image files
71+
# Ignore image/font files
7272
*.gif
7373
*.jpg
7474
*.png
75+
*.ttf
76+
*.otf
7577

7678
# Things Travis sees
7779
/.vs
@@ -92,3 +94,6 @@ user_song_list.h
9294
compile_commands.json
9395
.clangd/
9496
.cache/
97+
98+
# VIA(L) json files that don't belong in QMK repo
99+
via*.json

api_data/_config.yml

-1
This file was deleted.

builddefs/bootloader.mk

+10
Original file line numberDiff line numberDiff line change
@@ -97,12 +97,18 @@ ifeq ($(strip $(BOOTLOADER)), halfkay)
9797
OPT_DEFS += -DBOOTLOADER_HALFKAY
9898
BOOTLOADER_TYPE = halfkay
9999

100+
# Teensy 2.0
100101
ifeq ($(strip $(MCU)), atmega32u4)
101102
BOOTLOADER_SIZE = 512
102103
endif
104+
# Teensy 2.0++
103105
ifeq ($(strip $(MCU)), at90usb1286)
104106
BOOTLOADER_SIZE = 1024
105107
endif
108+
# Teensy LC, 3.x
109+
ifneq (,$(filter $(MCU_ORIG), MKL26Z64 MK20DX128 MK20DX256 MK66FX1M0))
110+
FIRMWARE_FORMAT = hex
111+
endif
106112
endif
107113
ifeq ($(strip $(BOOTLOADER)), caterina)
108114
OPT_DEFS += -DBOOTLOADER_CATERINA
@@ -213,6 +219,10 @@ ifeq ($(strip $(BOOTLOADER)), md-boot)
213219
OPT_DEFS += -DBOOTLOADER_MD_BOOT
214220
BOOTLOADER_TYPE = md_boot
215221
endif
222+
ifeq ($(strip $(BOOTLOADER)), wb32-dfu)
223+
OPT_DEFS += -DBOOTLOADER_WB32_DFU
224+
BOOTLOADER_TYPE = wb32_dfu
225+
endif
216226

217227
ifeq ($(strip $(BOOTLOADER_TYPE)),)
218228
$(call CATASTROPHIC_ERROR,Invalid BOOTLOADER,No bootloader specified. Please set an appropriate 'BOOTLOADER' in your keyboard's 'rules.mk' file.)

builddefs/build_keyboard.mk

+23-13
Original file line numberDiff line numberDiff line change
@@ -160,22 +160,20 @@ ifneq ("$(wildcard $(KEYMAP_JSON))", "")
160160

161161
# Add rules to generate the keymap files - indentation here is important
162162
$(KEYMAP_OUTPUT)/src/keymap.c: $(KEYMAP_JSON)
163-
$(QMK_BIN) json2c --quiet --output $(KEYMAP_C) $(KEYMAP_JSON)
163+
@$(SILENT) || printf "$(MSG_GENERATING) $@" | $(AWK_CMD)
164+
$(eval CMD=$(QMK_BIN) json2c --quiet --output $(KEYMAP_C) $(KEYMAP_JSON))
165+
@$(BUILD_CMD)
164166

165167
$(KEYMAP_OUTPUT)/src/config.h: $(KEYMAP_JSON)
166-
$(QMK_BIN) generate-config-h --quiet --keyboard $(KEYBOARD) --keymap $(KEYMAP) --output $(KEYMAP_H)
168+
@$(SILENT) || printf "$(MSG_GENERATING) $@" | $(AWK_CMD)
169+
$(eval CMD=$(QMK_BIN) generate-config-h --quiet --keyboard $(KEYBOARD) --keymap $(KEYMAP) --output $(KEYMAP_H))
170+
@$(BUILD_CMD)
167171

168172
generated-files: $(KEYMAP_OUTPUT)/src/config.h $(KEYMAP_OUTPUT)/src/keymap.c
169173

170174
endif
171175

172-
ifeq ($(strip $(CTPC)), yes)
173-
CONVERT_TO_PROTON_C=yes
174-
endif
175-
176-
ifeq ($(strip $(CONVERT_TO_PROTON_C)), yes)
177-
include platforms/chibios/boards/QMK_PROTON_C/convert_to_proton_c.mk
178-
endif
176+
include $(BUILDDEFS_PATH)/converters.mk
179177

180178
include $(BUILDDEFS_PATH)/mcu_selection.mk
181179

@@ -325,17 +323,29 @@ ifneq ("$(wildcard $(KEYBOARD_PATH_5)/info.json)","")
325323
endif
326324

327325
CONFIG_H += $(KEYBOARD_OUTPUT)/src/info_config.h $(KEYBOARD_OUTPUT)/src/layouts.h
326+
KEYBOARD_SRC += $(KEYBOARD_OUTPUT)/src/default_keyboard.c
328327

329328
$(KEYBOARD_OUTPUT)/src/info_config.h: $(INFO_JSON_FILES)
330-
$(QMK_BIN) generate-config-h --quiet --keyboard $(KEYBOARD) --output $(KEYBOARD_OUTPUT)/src/info_config.h
329+
@$(SILENT) || printf "$(MSG_GENERATING) $@" | $(AWK_CMD)
330+
$(eval CMD=$(QMK_BIN) generate-config-h --quiet --keyboard $(KEYBOARD) --output $(KEYBOARD_OUTPUT)/src/info_config.h)
331+
@$(BUILD_CMD)
332+
333+
$(KEYBOARD_OUTPUT)/src/default_keyboard.c: $(INFO_JSON_FILES)
334+
@$(SILENT) || printf "$(MSG_GENERATING) $@" | $(AWK_CMD)
335+
$(eval CMD=$(QMK_BIN) generate-keyboard-c --quiet --keyboard $(KEYBOARD) --output $(KEYBOARD_OUTPUT)/src/default_keyboard.c)
336+
@$(BUILD_CMD)
331337

332338
$(KEYBOARD_OUTPUT)/src/default_keyboard.h: $(INFO_JSON_FILES)
333-
$(QMK_BIN) generate-keyboard-h --quiet --keyboard $(KEYBOARD) --output $(KEYBOARD_OUTPUT)/src/default_keyboard.h
339+
@$(SILENT) || printf "$(MSG_GENERATING) $@" | $(AWK_CMD)
340+
$(eval CMD=$(QMK_BIN) generate-keyboard-h --quiet --keyboard $(KEYBOARD) --output $(KEYBOARD_OUTPUT)/src/default_keyboard.h)
341+
@$(BUILD_CMD)
334342

335343
$(KEYBOARD_OUTPUT)/src/layouts.h: $(INFO_JSON_FILES)
336-
$(QMK_BIN) generate-layouts --quiet --keyboard $(KEYBOARD) --output $(KEYBOARD_OUTPUT)/src/layouts.h
344+
@$(SILENT) || printf "$(MSG_GENERATING) $@" | $(AWK_CMD)
345+
$(eval CMD=$(QMK_BIN) generate-layouts --quiet --keyboard $(KEYBOARD) --output $(KEYBOARD_OUTPUT)/src/layouts.h)
346+
@$(BUILD_CMD)
337347

338-
generated-files: $(KEYBOARD_OUTPUT)/src/info_config.h $(KEYBOARD_OUTPUT)/src/default_keyboard.h $(KEYBOARD_OUTPUT)/src/layouts.h
348+
generated-files: $(KEYBOARD_OUTPUT)/src/info_config.h $(KEYBOARD_OUTPUT)/src/default_keyboard.c $(KEYBOARD_OUTPUT)/src/default_keyboard.h $(KEYBOARD_OUTPUT)/src/layouts.h
339349

340350
.INTERMEDIATE : generated-files
341351

builddefs/build_test.mk

+2
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,8 @@ endif
44

55
.DEFAULT_GOAL := all
66

7+
OPT = g
8+
79
include paths.mk
810
include $(BUILDDEFS_PATH)/message.mk
911

builddefs/common_features.mk

+9-2
Original file line numberDiff line numberDiff line change
@@ -149,6 +149,11 @@ ifeq ($(strip $(POINTING_DEVICE_ENABLE)), yes)
149149
endif
150150
endif
151151

152+
QUANTUM_PAINTER_ENABLE ?= no
153+
ifeq ($(strip $(QUANTUM_PAINTER_ENABLE)), yes)
154+
include $(QUANTUM_DIR)/painter/rules.mk
155+
endif
156+
152157
VALID_EEPROM_DRIVER_TYPES := vendor custom transient i2c spi
153158
EEPROM_DRIVER ?= vendor
154159
ifeq ($(filter $(EEPROM_DRIVER),$(VALID_EEPROM_DRIVER_TYPES)),)
@@ -693,8 +698,9 @@ ifeq ($(strip $(HAPTIC_ENABLE)),yes)
693698
endif
694699

695700
ifeq ($(strip $(HD44780_ENABLE)), yes)
696-
SRC += platforms/avr/drivers/hd44780.c
697701
OPT_DEFS += -DHD44780_ENABLE
702+
COMMON_VPATH += $(DRIVER_PATH)/lcd
703+
SRC += hd44780.c
698704
endif
699705

700706
VALID_OLED_DRIVER_TYPES := SSD1306 custom
@@ -742,7 +748,8 @@ endif
742748

743749
ifeq ($(strip $(UNICODE_COMMON)), yes)
744750
OPT_DEFS += -DUNICODE_COMMON_ENABLE
745-
SRC += $(QUANTUM_DIR)/process_keycode/process_unicode_common.c
751+
SRC += $(QUANTUM_DIR)/process_keycode/process_unicode_common.c \
752+
$(QUANTUM_DIR)/utf8.c
746753
endif
747754

748755
MAGIC_ENABLE ?= yes

builddefs/common_rules.mk

+3-3
Original file line numberDiff line numberDiff line change
@@ -82,8 +82,8 @@ endif
8282
# -Wall...: warning level
8383
# -Wa,...: tell GCC to pass this to the assembler.
8484
ifeq ($(strip $(LTO_ENABLE)), yes)
85-
ifeq ($(PLATFORM),CHIBIOS)
86-
$(info Enabling LTO on ChibiOS-targeting boards is known to have a high likelihood of failure.)
85+
ifeq ($(PLATFORM),ARM_ATSAM)
86+
$(info Enabling LTO on arm_atsam-targeting boards is known to have a high likelihood of failure.)
8787
$(info If unsure, set LTO_ENABLE = no.)
8888
endif
8989
CDEFS += -flto
@@ -316,7 +316,7 @@ gccversion :
316316
@$(BUILD_CMD)
317317

318318
%.uf2: %.hex
319-
$(eval CMD=$(UF2CONV) $(BUILD_DIR)/$(TARGET).hex -o $(BUILD_DIR)/$(TARGET).uf2 -c -f $(UF2_FAMILY) >/dev/null 2>&1)
319+
$(eval CMD=$(UF2CONV) $(BUILD_DIR)/$(TARGET).hex --output $(BUILD_DIR)/$(TARGET).uf2 --convert --family $(UF2_FAMILY) >/dev/null 2>&1)
320320
#@$(SILENT) || printf "$(MSG_EXECUTING) '$(CMD)':\n"
321321
@$(SILENT) || printf "$(MSG_UF2) $@" | $(AWK_CMD)
322322
@$(BUILD_CMD)

0 commit comments

Comments
 (0)