Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merge upstream #21

Merged
merged 140 commits into from
Feb 9, 2023
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
140 commits
Select commit Hold shift + click to select a range
ab667a8
add x123 keymap for splitkb/aurora/corne (#19407)
x123 Dec 30, 2022
444760e
ploopyco/trackball_mini: always update encoder (#18561)
alaviss Dec 30, 2022
6bd76c9
A fancy keymap for the wt65_xt. (#19375)
yonatanzunger Dec 30, 2022
e08debb
Fix odinmini layout macro (#19429)
moyi4681 Dec 30, 2022
6b50b1b
[Keyboard] Added support for a new keyboard - Ishi 80 Mk0 (#19195)
jasonj2232 Dec 30, 2022
a781672
docs: add a note about reflashing both halves for encoder resolution …
roobre Dec 30, 2022
a7ff2b8
Typ65+ Add code to auto turn off LEDs when the PC goes to sleep (#19365)
ToastyStoemp Dec 30, 2022
ced8142
[Keyboard] Add Pica40 (#19220)
zzeneg Dec 30, 2022
5fa2aab
Added support keyboard Pila87 / XM87 PRO (#18919)
HorrorTroll Dec 30, 2022
590c889
[keyboard]Add Graystudio Space65 R3 (#18909)
edwardslau Dec 30, 2022
943aae8
Fixes unicode_map declaration example (#19450)
arcoshine Dec 31, 2022
20bafb9
Atreyu rev2 (#19443)
climent Jan 1, 2023
5310049
Add KB30 keyboard (#19395)
DOIO2022 Jan 1, 2023
c7c44de
[Keyboard] Add Quarkeys Z60, reorganized keyboard file directory (#19…
tommyamoszhao Jan 1, 2023
61696fd
CLI flashers should allow files outside qmk_firmware folder (#19454)
zvecr Jan 1, 2023
b8e12ee
WSL `qmk flash firmware.bin` workaround (#19434)
zvecr Jan 1, 2023
2ae2155
Add docs to cover recent LAYOUT_all lint checks (#19393)
zvecr Jan 1, 2023
b4d5c22
Keyboard/fix work louder micro (#18968)
drashna Jan 1, 2023
867e4fc
[Keyboard] Add community layout support to Piantor (#19455)
byronclark Jan 1, 2023
ff73cb6
[Keymap] Add Neo2-based keymap for Planck keyboard (#19173)
theamarin Jan 1, 2023
975d64c
adpenrose/akemipad fixes (#19477)
zvecr Jan 2, 2023
5962eba
Fix github URL for the atreyu maintainer. (#19476)
climent Jan 2, 2023
46ed46e
Bump anothrNick/github-tag-action from 1.55.0 to 1.56.0 (#19494)
dependabot[bot] Jan 3, 2023
6916683
Add `qmk mass-compile`, which intends to supercede `qmk multibuild` w…
tzarc Jan 4, 2023
8e869da
Allow for specifying the number of symbols to output. (#19497)
tzarc Jan 4, 2023
04dcf81
[Keyboard] Stop LED1 from flashing on layer change (#19427)
peej Jan 4, 2023
be024a1
feat(kprepublic/bm60hsrgb_poker): update carlosala keymap (#19426)
carlosala Jan 4, 2023
6a02eb2
Add SapuSeven MacroPad12 (#19466)
SapuSeven Jan 4, 2023
e2ef3c8
Bump anothrNick/github-tag-action from 1.56.0 to 1.57.0 (#19502)
dependabot[bot] Jan 4, 2023
84a6422
A comma was missing (#19507)
paulmassen Jan 5, 2023
64508ca
Bump anothrNick/github-tag-action from 1.57.0 to 1.58.0 (#19509)
dependabot[bot] Jan 5, 2023
4a7d65b
Fix MATRIX_COLS and MATRIX_ROWS generation for custom matrix (#19508)
sigprof Jan 5, 2023
b56ffc8
docs: Fix IS31FL3743A driver name (#19518)
JohnAZoidberg Jan 6, 2023
97910fa
Bump anothrNick/github-tag-action from 1.58.0 to 1.61.0 (#19519)
dependabot[bot] Jan 6, 2023
c5e3275
Fix `handwired/onekey/kb2040` WS2812 pin (#19517)
zvecr Jan 7, 2023
f6023a3
Remove invalid pin_compatible config from defaults (#19512)
zvecr Jan 7, 2023
1c024bf
Add some missing layout data (#19539)
zvecr Jan 8, 2023
2891d90
New ChibiOS SVN URL, added new release. (#19493)
tzarc Jan 9, 2023
01de984
[Keychron Q5] Build failures: recursive function call. (#19553)
tzarc Jan 9, 2023
0becd33
[keyboard] Enable community layout support (#19499)
manna-harbour Jan 9, 2023
caca029
[Keyboard] add YMDK40 AIR40 (#19276)
dkruyt Jan 10, 2023
90fd08b
[Bug] Use correct functions for RGB Matrix support in VIA (#19554)
drashna Jan 10, 2023
4d83583
[Keymap] Updated Freoduo keymap (#19351)
FilipParyz Jan 10, 2023
aba6782
[Keymap] Kbdfans Tiger 80 keymap & Planck keymap (#19428)
squarecut Jan 10, 2023
5e5b19c
Keychron S1 ANSI Layout Touch-Up (#19556)
noroadsleft Jan 10, 2023
a1676c3
[Keyboard] Work Louder updates for via v3 (#19555)
drashna Jan 11, 2023
377f87c
Keychron V1: correct layout data for ANSI versions (#19558)
noroadsleft Jan 11, 2023
74d8f16
Keychron V3: correct layout data (#19567)
noroadsleft Jan 11, 2023
62eba54
[Keyboard] Add Plywrks Ji-Eun (#18276)
ramonimbao Jan 12, 2023
2b5e5d9
[Keymap] Add brauner preonic layout (#19444)
brauner Jan 12, 2023
0cff636
weact docs patch re "security vulnerability" (#19572)
keyboard-magpie Jan 12, 2023
c1aef03
Rectified ins/del layout macro ordering of Keychron Q1 ANSI (#19560)
jonjondev Jan 13, 2023
9a4c7a4
Quarkeys Z60 Layout Addtions (#19568)
noroadsleft Jan 13, 2023
aba0441
Teleport Native Layout Implementation Rework (#19576)
noroadsleft Jan 13, 2023
c965243
Synth Labs 060 Layout Additions and Fixes (#19575)
noroadsleft Jan 13, 2023
b756c53
[Docs] Touch up documentation templates & porting keyboard docs (#19573)
waffle87 Jan 13, 2023
e1feab3
[Keyboard] Add additional layout to RM_Numpad (#19534)
RuckerMachine Jan 13, 2023
0de7cce
[Keyboard] Acacia keyboard (#19532)
jpsecher Jan 13, 2023
d196ab5
[bluebell/Swoop] Enable RGB underlight by default (#19501)
duckyb Jan 13, 2023
9c02b29
Updates to gitdrik Planck keymap (#19585)
gitdrik Jan 13, 2023
3f2cbc9
Pr/reorder docker podman check (#19561)
Renegade-Master Jan 14, 2023
4a53d9c
[Keymap] Add Bastian-Baloup sofle keymap (#18836)
Bastien-Baloup Jan 15, 2023
e7d1b21
[Keyboard] Update handwired/split89 to new standard. (#19540)
jurassic73 Jan 15, 2023
2c98e79
[Keyboard] Fixup gingko65 matrix pins (#19589)
waffle87 Jan 15, 2023
44bcde1
[Keymap] Update brauner preonic layout (#19595)
brauner Jan 15, 2023
fe27e46
[Keyboard] Add rb87 (#19546)
ryanbaekr Jan 16, 2023
4f83b67
[Keymap] Improve Zweihander layout for the Ergodox EZ (#18737)
adiabatic Jan 16, 2023
917d93e
[Docs] Fix `JOYSTICK_AXIS_COUNT` name in docs (#19605)
sigprof Jan 16, 2023
2bff00e
Small doc changes (#19601)
elpekenin Jan 16, 2023
465b6a1
Docs/space b cleanup (#19612)
keyboard-magpie Jan 16, 2023
4098ff5
[Keyboard] Add ERA65 (#19591)
eerraa Jan 17, 2023
49f3ffa
[Keyboard] Add Bubble 75 (#18863)
d-floe Jan 17, 2023
7b795b2
[Keyboard] add kamigakushi (#19514)
rezaadio Jan 17, 2023
c6cc104
[Keyboard] Waterfowl - Updated default keymap (#19438)
JW2586 Jan 17, 2023
9f84b9a
[Keyboard] Add kt3700 (#19432)
key10iq Jan 17, 2023
625e574
Format code according to conventions (#19615)
qmk-bot Jan 17, 2023
d907f10
[Keymap] Add saph1s keymap for KPrepublic BM80v2 (#19608)
Saph1s Jan 17, 2023
737e6bf
Highlight inclusion of extern macro (#19614)
filterpaper Jan 18, 2023
eb7a8d9
Reduce RGB maximum brightness (#19618)
filterpaper Jan 18, 2023
204ba02
Use consistent highlight format (#19619)
filterpaper Jan 18, 2023
f5a31fd
updating productId for via compat (#19611)
lukeski14 Jan 18, 2023
e6ec2bd
[Keyboard] Add tata80 (#19445)
spbgzh Jan 18, 2023
d73ad52
[Keyboard] Add Mino Plus Keyboard (#19535)
CheeseL0ver Jan 18, 2023
17c9388
Allow for wildcard filtering in `qmk mass-compile` (#19625)
tzarc Jan 18, 2023
327f7ee
Fixup ChibiOS header inclusion search ordering. (#19623)
tzarc Jan 19, 2023
22be519
Minor cleanup to breaking/checklist docs. (#19596)
tzarc Jan 19, 2023
e5b36e2
Docs: typo fixes in platformdev_blackpill_f4x1.md (#19635)
leviport Jan 19, 2023
891780b
Refactor some layouts which contain keyboard name (#19642)
zvecr Jan 20, 2023
5e502c3
Remove stray UNUSED_PINS (#19639)
zvecr Jan 20, 2023
f2ad3ba
Refactor some layouts which contain keyboard name (#19643)
zvecr Jan 20, 2023
255e138
djam add rgb matrix (#19621)
myst729 Jan 20, 2023
18d107b
Og60 fix indicator (#19631)
moyi4681 Jan 20, 2023
53cc617
Refactor some layouts which contain keyboard name (#19645)
zvecr Jan 20, 2023
64c399b
[Keyboard] Add Kyria rev3 (#19423)
leah-splitkb Jan 20, 2023
300a0de
Change era65 keymap&debounce_type (#19627)
eerraa Jan 20, 2023
9c7490d
[Keyboard] Add Scotto40 Keyboard (#18453)
joe-scotto Jan 23, 2023
4e658d4
[Keymap] Add youturn/yt keymap for think65 (#19300)
youturn45 Jan 23, 2023
4c6415d
[Keyboard] Fix boardsource/lulu/avr encoder pins (#19672)
daysgobye Jan 24, 2023
4d180c9
fixup splitkb/kyria VIA keymap (#19676)
waffle87 Jan 24, 2023
695c4c6
[Keyboard] Add missing `dip_switch_update_kb` for Keychron V2 (#19674)
adophoxia Jan 24, 2023
1c69682
[Keyboard] Add the Black Hellebore (#19655)
Jan 24, 2023
b24fa2f
escaped stray backslash in bux.py (#19667)
Natan-P Jan 24, 2023
419a794
Update understanding_qmk.md (#19664)
arrowj Jan 24, 2023
8af8720
[Keymap] Update brauner preonic layout (#19665)
brauner Jan 24, 2023
fa132ba
Decrease LED animation frequency to improve performance (#19677)
kdarkhan Jan 25, 2023
3823046
new keyboard: edinburgh41 (#19569)
schwarzer-geiger Jan 26, 2023
19ecd69
Rename `LAYOUT` macros identifier that contained the keyboard name (#…
0xcharly Jan 26, 2023
6e42b58
VIA keymap for the dactyl manuform 4x6 (#19668)
AnotherStranger Jan 26, 2023
b3dca4b
Add RP2040 SCRAMBLE v2 (#19489)
jaygreco Jan 27, 2023
9aaf1c2
Swap LED_PIN_ON_STATE to 0. (#19692)
doon Jan 27, 2023
acea06b
[Keyboard] Update effects for Keychron Q2 (#19685)
adophoxia Jan 27, 2023
ce7bb63
VIA keymap for Reviung 34. (#19694)
azhizhinov Jan 27, 2023
981f3c3
Additional handedness by EEPROM examples (#19686)
filterpaper Jan 28, 2023
d322b4c
[Keyboard] Baion 808 (#19690)
yiancar Jan 29, 2023
328279a
Add base firmware for the Frog Numpad (#19698)
ToastyStoemp Jan 29, 2023
2c878b1
Clean up `qmk generate-autocorrect-data` (#19710)
fauxpark Jan 30, 2023
e296d67
Accumulate version.h generator flags. (#19716)
tzarc Jan 30, 2023
252b041
add Mecx Labs mp1 macropad (#19064)
patrykf03 Feb 1, 2023
ca8b4b8
[Keyboard] Add modded Razer Orbweaver with RP2040 (#19711)
a-marmot Feb 1, 2023
8dc6686
zweihander-macos: Update keys, add capslock (#19730)
adiabatic Feb 1, 2023
f7e6963
adding pi60 (#19431)
ziptyze Feb 2, 2023
eeadbd2
Politely ask people not to submit issues to add support for unknown k…
tzarc Feb 2, 2023
3115cdf
[Keyboard] Add Crin (#18065)
Feb 2, 2023
d3b00d9
[Keyboard] Add Quarkeys Z67 with solder and hotswap versions (#19465)
tommyamoszhao Feb 2, 2023
a76e70c
[Keyboard] Add rev_0131 for Keychron Q0 (#19547)
KeychronMacro Feb 2, 2023
10c3b97
[Keyboard] Add Keychron V10 (#19504)
KeychronMacro Feb 2, 2023
de6a6f9
[Keyboard] Add Keychron V6 (#19498)
KeychronMacro Feb 2, 2023
8e9d109
Added MacOS Support for BigKnob (#19693)
SpaceyKasey Feb 3, 2023
87c4152
Update handedness by define examples (#19687)
filterpaper Feb 3, 2023
c3406eb
[Keyboard] Add mkh studio bully (#19696)
zhol0777 Feb 3, 2023
4d09bfa
[Keyboard] Add keebformom ortho 4x10 (#18104)
nendezkombet Feb 3, 2023
17409da
Format code according to conventions (#19739)
qmk-bot Feb 3, 2023
3dae56b
[Keyboard] Add Brick (#19728)
JunoNgx Feb 5, 2023
4d5abe1
[Keyboard] Add aeroboard (#19087)
EasonQian1 Feb 7, 2023
5dfaf0a
[CI] Format code according to conventions (#19765)
qmk-bot Feb 7, 2023
a7febfb
changed the undefined ON and OFF parameters to thedefined constant (#…
soggywhale Feb 8, 2023
aa3b64d
[Keyboard] LW75 Support (#19506)
Laneware Feb 8, 2023
e871dda
[Keyboard] Fix the underglow RGB LED (#19622)
mechlovin Feb 8, 2023
cf45a05
[Keyboard] Add Bear65 v2 (#19578)
beelzebubi Feb 8, 2023
417b006
Merge remote-tracking branch 'upstream/master' into merge-upstream
BlueTufa Feb 9, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
5 changes: 4 additions & 1 deletion .github/ISSUE_TEMPLATE/feature_request.yml
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,9 @@ body:
attributes:
value: |
Provide a general summary of the changes you want in the title above.

Please refrain from asking maintainers to add support for specific keyboards -- it is unlikely they will have hardware available, and will not be able to help.
Your best bet is to take the initiative, add support, then submit a PR yourself.
- type: checkboxes
attributes:
label: Feature Request Type
Expand All @@ -18,4 +21,4 @@ body:
- type: textarea
attributes:
label: Description
description: A few sentences describing what it is that you'd like to see in QMK. Additional information (such as links to spec sheets, licensing info, other related issues or PRs, etc) would be helpful.
description: A few sentences describing what it is that you'd like to see in QMK. Additional information (such as links to spec sheets, licensing info, other related issues or PRs, etc) would be helpful.
5 changes: 4 additions & 1 deletion .github/ISSUE_TEMPLATE/other_issues.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,10 @@ body:
attributes:
value: |
Please check [https://docs.qmk.fm/#/support](https://docs.qmk.fm/#/support) for additional resources first. If that doesn't answer your question, choose the bug report template instead, as that may be more appropriate.

Please refrain from asking maintainers to add support for specific keyboards -- it is unlikely they will have hardware available, and will not be able to help.
Your best bet is to take the initiative, add support, then submit a PR yourself.
- type: textarea
attributes:
label: Issue Description
description: Describe your issue in as much detail as possible.
description: Describe your issue in as much detail as possible.
2 changes: 1 addition & 1 deletion .github/workflows/auto_tag.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@ jobs:
fetch-depth: 0

- name: Bump version and push tag
uses: anothrNick/github-tag-action@1.55.0
uses: anothrNick/github-tag-action@1.61.0
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
DEFAULT_BUMP: 'patch'
14 changes: 10 additions & 4 deletions builddefs/build_keyboard.mk
Original file line number Diff line number Diff line change
Expand Up @@ -46,11 +46,12 @@ ifdef SKIP_VERSION
endif

# Generate the version.h file
VERSION_H_FLAGS :=
ifdef SKIP_VERSION
VERSION_H_FLAGS := --skip-all
VERSION_H_FLAGS += --skip-all
endif
ifdef SKIP_GIT
VERSION_H_FLAGS := --skip-git
VERSION_H_FLAGS += --skip-git
endif

# Generate the board's version.h file.
Expand Down Expand Up @@ -491,16 +492,21 @@ check-size: build
check-md5: build
objs-size: build

ifneq ($(strip $(TOP_SYMBOLS)),)
ifeq ($(strip $(TOP_SYMBOLS)),yes)
NUM_TOP_SYMBOLS := 10
else
NUM_TOP_SYMBOLS := $(strip $(TOP_SYMBOLS))
endif
all: top-symbols
check-size: top-symbols
top-symbols: build
echo "###########################################"
echo "# Highest flash usage:"
$(NM) -Crtd --size-sort $(BUILD_DIR)/$(TARGET).elf | grep -i ' [t] ' | head -n10 | sed -e 's#^0000000# #g' -e 's#^000000# #g' -e 's#^00000# #g' -e 's#^0000# #g' -e 's#^000# #g' -e 's#^00# #g' -e 's#^0# #g'
$(NM) -Crtd --size-sort $(BUILD_DIR)/$(TARGET).elf | grep -i ' [t] ' | head -n$(NUM_TOP_SYMBOLS) | sed -e 's#^0000000# #g' -e 's#^000000# #g' -e 's#^00000# #g' -e 's#^0000# #g' -e 's#^000# #g' -e 's#^00# #g' -e 's#^0# #g'
echo "###########################################"
echo "# Highest RAM usage:"
$(NM) -Crtd --size-sort $(BUILD_DIR)/$(TARGET).elf | grep -i ' [dbv] ' | head -n10 | sed -e 's#^0000000# #g' -e 's#^000000# #g' -e 's#^00000# #g' -e 's#^0000# #g' -e 's#^000# #g' -e 's#^00# #g' -e 's#^0# #g'
$(NM) -Crtd --size-sort $(BUILD_DIR)/$(TARGET).elf | grep -i ' [dbv] ' | head -n$(NUM_TOP_SYMBOLS) | sed -e 's#^0000000# #g' -e 's#^000000# #g' -e 's#^00000# #g' -e 's#^0000# #g' -e 's#^000# #g' -e 's#^00# #g' -e 's#^0# #g'
echo "###########################################"
endif

Expand Down
24 changes: 8 additions & 16 deletions data/mappings/defaults.hjson
Original file line number Diff line number Diff line change
Expand Up @@ -13,38 +13,32 @@
"elite_pi": {
"processor": "RP2040",
"bootloader": "rp2040",
"board": "QMK_PM2040",
"pin_compatible": "promicro"
"board": "QMK_PM2040"
},
"proton_c": {
"processor": "STM32F303",
"bootloader": "stm32-dfu",
"board": "QMK_PROTON_C",
"pin_compatible": "promicro"
"board": "QMK_PROTON_C"
},
"kb2040": {
"processor": "RP2040",
"bootloader": "rp2040",
"board": "QMK_PM2040",
"pin_compatible": "promicro"
"board": "QMK_PM2040"
},
"promicro_rp2040": {
"processor": "RP2040",
"bootloader": "rp2040",
"board": "QMK_PM2040",
"pin_compatible": "promicro"
"board": "QMK_PM2040"
},
"blok": {
"processor": "RP2040",
"bootloader": "rp2040",
"board": "QMK_PM2040",
"pin_compatible": "promicro"
"board": "QMK_PM2040"
},
"bit_c_pro": {
"processor": "RP2040",
"bootloader": "rp2040",
"board": "QMK_PM2040",
"pin_compatible": "promicro"
"board": "QMK_PM2040"
},
"bluepill": {
"processor": "STM32F103",
Expand All @@ -64,14 +58,12 @@
"stemcell": {
"processor": "STM32F411",
"bootloader": "tinyuf2",
"board": "STEMCELL",
"pin_compatible": "promicro"
"board": "STEMCELL"
},
"bonsai_c4": {
"processor": "STM32F411",
"bootloader": "stm32-dfu",
"board": "BONSAI_C4",
"pin_compatible": "promicro"
"board": "BONSAI_C4"
}
}
}
8 changes: 4 additions & 4 deletions docs/ChangeLog/20190830.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ This document marks the inaugural Breaking Change merge. A list of changes follo
## Core code formatting with clang-format

* All core files (`drivers/`, `quantum/`, `tests/`, and `tmk_core/`) have been formatted with clang-format
* A travis process to reformat PR's on merge has been instituted
* A travis process to reformat PRs on merge has been instituted
* You can use the new CLI command `qmk cformat` to format before submitting your PR if you wish.

## LUFA USB descriptor cleanup
Expand All @@ -30,15 +30,15 @@ This document marks the inaugural Breaking Change merge. A list of changes follo
## Backport changes to keymap language files from ZSA fork

* Fixes an issue in the `keymap_br_abnt2.h` file that includes the wrong source (`keymap_common.h` instead of `keymap.h`)
* Updates the `keymap_swedish.h` file to be specific to swedish, and not just "nordic" in general.
* Any keymaps using this will need to remove `NO_*` and replace it with `SE_*`.
* Updates the `keymap_swedish.h` file to be specific to swedish, and not just "nordic" in general.
* Any keymaps using this will need to remove `NO_*` and replace it with `SE_*`.

## Update repo to use LUFA as a git submodule

* `/lib/LUFA` removed from the repo
* LUFA set as a submodule, pointing to qmk/lufa
* This should allow more flexibility with LUFA, and allow us to keep the sub-module up to date, a lot more easily. It was ~2 years out of date with no easy path to fix that. This prevents that from being an issue in the future

## Migrating `ACTION_BACKLIGHT_*()` entries in `fn_actions` to `BL_` keycodes

* `fn_actions` is deprecated, and its functionality has been superseded by direct keycodes and `process_record_user()`
Expand Down
29 changes: 20 additions & 9 deletions docs/breaking_changes.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,9 @@ This document describes QMK's Breaking Change process. A Breaking Change is any

This also includes any keyboard moves within the repository.

The breaking change period is when we will merge PR's that change QMK in dangerous or unexpected ways. There is a built-in period of testing so we are confident that any problems caused are rare or unable to be predicted.
The breaking change period is when we will merge PRs that change QMK in dangerous or unexpected ways. There is a built-in period of testing so we are confident that any problems caused are rare or unable to be predicted.

Practically, this means QMK merges the `develop` branch into the `master` branch on a 3-month cadence.

## What has been included in past Breaking Changes?

Expand All @@ -29,25 +31,34 @@ The next Breaking Change is scheduled for February 26, 2023.
### Important Dates

* 2022 Nov 26 - `develop` is tagged with a new release version. Each push to `master` is subsequently merged to `develop` by GitHub actions.
* 2023 Jan 29 - `develop` closed to new PR's.
* 2023 Jan 29 - `develop` closed to new PRs.
* 2023 Jan 29 - Call for testers.
* 2023 Feb 12 - Last day for merges -- after this point `develop` is locked for testing and accepts only bugfixes
* 2023 Feb 19 - `develop` is locked, only critical bugfix PR's merged.
* 2023 Feb 24 - `master` is locked, no PR's merged.
* 2023 Feb 19 - `develop` is locked, only critical bugfix PRs merged.
* 2023 Feb 24 - `master` is locked, no PRs merged.
* 2023 Feb 26 - Merge `develop` to `master`.
* 2023 Feb 26 - `master` is unlocked. PR's can be merged again.
* 2023 Feb 26 - `master` is unlocked. PRs can be merged again.

## What changes will be included?

To see a list of breaking change candidates you can look at the [`breaking_change` label](https://github.com/qmk/qmk_firmware/pulls?q=is%3Aopen+label%3Abreaking_change+is%3Apr). New changes might be added between now and when `develop` is closed, and a PR with that label applied is not guaranteed to be merged.
To see a list of breaking changes merge candidates you can look at the [`core` label](https://github.com/qmk/qmk_firmware/pulls?q=is%3Aopen+label%3Acore+is%3Apr). This label is applied whenever a PR is raised or changed, but only if the PR includes changes to core areas of QMK Firmware. A PR with that label applied is not guaranteed to be merged in the current cycle. New changes might be added between now and when `develop` is closed, and it is generally the responsibility of the submitter to handle conflicts. There is also another label used by QMK Collaborators -- `breaking_change_YYYYqN` -- which signifies to maintainers that it is a strong candidate for inclusion, and should be prioritised for review.

If you want your breaking change to be included in this round you need to create a PR and have it accepted by QMK Collaborators before `develop` closes. After `develop` closes, new submissions will be deferred to the next breaking changes cycle.

If you want your breaking change to be included in this round you need to create a PR with the `breaking_change` label and have it accepted before `develop` closes. After `develop` closes no new breaking changes will be accepted.
The simpler your PR is, the easier it is for maintainers to review, thus a higher likelihood of a faster merge. Large PRs tend to require a lot of attention, refactoring, and back-and-forth with subsequent reviews -- with other PRs getting merged in the meantime larger unmerged PRs are far more likely to be susceptible to conflicts.

Criteria for acceptance:

* The PR is complete and ready to merge
* GitHub checks for the PR are green whenever possible
* A "red" check may be disregarded by maintainers if the items flagged are unrelated to the change proposed in the PR
* Modifications to existing files should not need to add license headers to pass lint, for instance.
* If it's not directly related to your PR's functionality, prefer avoiding making a change.

Strongly suggested:

* The PR has a ChangeLog file describing the changes under `<qmk_firmware>/docs/Changelog/20221126`.
* This should be in Markdown format, with a name in the format `PR12345.md`, substituting the digits for your PR's ID.
* This should be in Markdown format, with a name in the format `PR12345.md`, substituting the digits for your PRs ID.
* One strong recommendation that the ChangeLog document matches the PR description on GitHub, so as to ensure traceability.

## Checklists
Expand All @@ -56,7 +67,7 @@ This section documents various processes we use when running the Breaking Change

### 4 Weeks Before Merge

* `develop` is now closed to new PR's, only fixes for current PR's may be merged
* `develop` is now closed to new PRs, only fixes for current PRs may be merged
* Post call for testers: message `@Breaking Changes Updates` on `#qmk_firmware` in Discord:
* `@Breaking Changes Updates -- Hey folks, last day for functional PRs to be raised against qmk_firmware for this breaking changes cycle is today.`

Expand Down
2 changes: 1 addition & 1 deletion docs/chibios_upgrade_instructions.md
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@ ChibiOS and ChibiOS-Contrib need to be updated in tandem -- the latter has a bra
* `./util/chibios_conf_updater.sh`
* Build everything
* `cd $QMK_FIRMWARE`
* `qmk multibuild -j4`
* `qmk mass-compile -j 4`
* Make sure there are no errors
* Push to the repo
* `git commit -am 'Update ChibiOS to 99.9.9'`
Expand Down
6 changes: 3 additions & 3 deletions docs/contributing.md
Original file line number Diff line number Diff line change
Expand Up @@ -118,8 +118,8 @@ and navigating to `http://localhost:8936/`.
Most first-time QMK contributors start with their personal keymaps. We try to keep keymap standards pretty casual (keymaps, after all, reflect the personality of their creators) but we do ask that you follow these guidelines to make it easier for others to discover and learn from your keymap.

* Write a `readme.md` using [the template](documentation_templates.md).
* All Keymap PR's are squashed, so if you care about how your commits are squashed you should do it yourself
* Do not lump features in with keymap PR's. Submit the feature first and then a second PR for the keymap.
* All Keymap PRs are squashed, so if you care about how your commits are squashed you should do it yourself
* Do not lump features in with keymap PRs. Submit the feature first and then a second PR for the keymap.
* Do not include `Makefile`s in your keymap folder (they're no longer used)
* Update copyrights in file headers (look for `%YOUR_NAME%`)

Expand All @@ -143,7 +143,7 @@ Before you put a lot of work into building your new feature you should make sure
* [Chat on Discord](https://discord.gg/Uq7gcHh)
* [Open an Issue](https://github.com/qmk/qmk_firmware/issues/new)

Feature and Bug Fix PR's affect all keyboards. We are also in the process of restructuring QMK. For this reason it is especially important for significant changes to be discussed before implementation has happened. If you open a PR without talking to us first please be prepared to do some significant rework if your choices do not mesh well with our planned direction.
Feature and Bug Fix PRs affect all keyboards. We are also in the process of restructuring QMK. For this reason it is especially important for significant changes to be discussed before implementation has happened. If you open a PR without talking to us first please be prepared to do some significant rework if your choices do not mesh well with our planned direction.

Here are some things to keep in mind when working on your feature or bug fix.

Expand Down
12 changes: 12 additions & 0 deletions docs/documentation_templates.md
Original file line number Diff line number Diff line change
Expand Up @@ -36,5 +36,17 @@ Make example for this keyboard (after setting up your build environment):

make planck/rev4:default

Flashing example for this keyboard:

make planck/rev4:default:flash

See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).

## Bootloader

Enter the bootloader in 3 ways:

* **Bootmagic reset**: Hold down the key at (0,0) in the matrix (usually the top left key or Escape) and plug in the keyboard
* **Physical reset button**: Briefly press the button on the back of the PCB - some may have pads you must short instead
* **Keycode in layout**: Press the key mapped to `QK_BOOT` if it is available
```
6 changes: 3 additions & 3 deletions docs/feature_autocorrect.md
Original file line number Diff line number Diff line change
Expand Up @@ -86,7 +86,7 @@ The `qmk generate-autocorrect-data` commands can make an effort to check for ent

## Overriding Autocorrect

Occasionally you might actually want to type a typo (for instance, while editing autocorrection_dict.txt) without being autocorrected. There are a couple of ways to do this:
Occasionally you might actually want to type a typo (for instance, while editing autocorrect_dict.txt) without being autocorrected. There are a couple of ways to do this:

1. Begin typing the typo.
2. Before typing the last letter, press and release the Ctrl or Alt key.
Expand Down Expand Up @@ -238,13 +238,13 @@ bool apply_autocorrect(uint8_t backspaces, const char *str) {

## Appendix: Trie binary data format :id=appendix

This section details how the trie is serialized to byte data in autocorrection_data. You don’t need to care about this to use this autocorrection implementation. But it is documented for the record in case anyone is interested in modifying the implementation, or just curious how it works.
This section details how the trie is serialized to byte data in autocorrect_data. You don’t need to care about this to use this autocorrection implementation. But it is documented for the record in case anyone is interested in modifying the implementation, or just curious how it works.

What I did here is fairly arbitrary, but it is simple to decode and gets the job done.

### Encoding :id=encoding

All autocorrection data is stored in a single flat array autocorrection_data. Each trie node is associated with a byte offset into this array, where data for that node is encoded, beginning with root at offset 0. There are three kinds of nodes. The highest two bits of the first byte of the node indicate what kind:
All autocorrection data is stored in a single flat array autocorrect_data. Each trie node is associated with a byte offset into this array, where data for that node is encoded, beginning with root at offset 0. There are three kinds of nodes. The highest two bits of the first byte of the node indicate what kind:

* 00 ⇒ chain node: a trie node with a single child.
* 01 ⇒ branching node: a trie node with multiple children.
Expand Down
2 changes: 1 addition & 1 deletion docs/feature_combo.md
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,7 @@ const uint16_t PROGMEM sd_combo[] = {KC_S, KC_D, COMBO_END};
combo_t key_combos[COMBO_COUNT] = {
[AB_ESC] = COMBO(ab_combo, KC_ESC),
[JK_TAB] = COMBO(jk_combo, KC_TAB),
[QW_SFT] = COMBO(qw_combo, KC_LSFT)
[QW_SFT] = COMBO(qw_combo, KC_LSFT),
[SD_LAYER] = COMBO(sd_combo, MO(_LAYER)),
};
```
Expand Down
2 changes: 2 additions & 0 deletions docs/feature_encoders.md
Original file line number Diff line number Diff line change
Expand Up @@ -67,6 +67,8 @@ Additionally, if one side does not have an encoder, you can specify `{}` for the
#define ENCODER_RESOLUTIONS_RIGHT { 4 }
```

!> Keep in mind that whenver you change the encoder resolution, you will need to reflash the half that has the encoder affected by the change.

## Encoder map :id=encoder-map

Encoder mapping may be added to your `keymap.c`, which replicates the normal keyswitch layer handling functionality, but with encoders. Add this to your keymap's `rules.mk`:
Expand Down
4 changes: 2 additions & 2 deletions docs/feature_joystick.md
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,7 @@ When defining axes for your joystick, you must provide a definition array typica
For instance, the below example configures two axes. The X axis is read from the `A4` pin. With the default axis resolution of 8 bits, the range of values between 900 and 575 are scaled to -127 through 0, and values 575 to 285 are scaled to 0 through 127. The Y axis is configured as a virtual axis, and its value is not read from any pin. Instead, the user must update the axis value programmatically.

```c
joystick_config_t joystick_axes[JOYSTICK_AXES_COUNT] = {
joystick_config_t joystick_axes[JOYSTICK_AXIS_COUNT] = {
JOYSTICK_AXIS_IN(A4, 900, 575, 285),
JOYSTICK_AXIS_VIRTUAL
};
Expand All @@ -64,7 +64,7 @@ The `low` and `high` values can be swapped to effectively invert the axis.
The following example adjusts two virtual axes (X and Y) based on keypad presses, with `KC_P0` as a precision modifier:

```c
joystick_config_t joystick_axes[JOYSTICK_AXES_COUNT] = {
joystick_config_t joystick_axes[JOYSTICK_AXIS_COUNT] = {
JOYSTICK_AXIS_VIRTUAL, // x
JOYSTICK_AXIS_VIRTUAL // y
};
Expand Down
Loading