Add changelog

This commit is contained in:
zvecr
2026-08-31 04:28:22 +01:00
parent 1c729db989
commit e35948097f
4 changed files with 201 additions and 11 deletions
+189
View File
@@ -0,0 +1,189 @@
# QMK Breaking Changes - 2026 August 30 Changelog
## Notable Changes {#notable-changes}
### Community Modules `1.1.3` ([#26201](https://github.com/qmk/qmk_firmware/pull/26201)) {#community-modules}
Version 1.1.3 adds support for persistent data in community modules. Modules can now store and restore their own state across restarts, enabling more stateful behavior without relying on keyboard-level EEPROM handling. A reference example can be located at [modules/qmk/nvm_test](https://github.com/qmk/qmk_firmware/tree/develop/modules/qmk/nvm_test).
See the [Community Modules documentation](../features/community_modules) for more information, including the full list of available hooks.
### Steno Feature Updates ([#26273](https://github.com/qmk/qmk_firmware/pull/26273), [#26018](https://github.com/qmk/qmk_firmware/pull/26018)) {#steno}
The steno feature has been reworked around a clearer integration, including a more consistent keycode naming scheme.
Users should migrate old `STN_*` and legacy mode names to the new `QK_STENO_*`/`ST_*` naming scheme.
::: warning
Keycode aliases have been put in place in most cases to cater for "old names" being mapped to "new names" -- the documentation already reflects all the new naming of keys.
:::
<details>
<summary>Full list of updated keycodes</summary>
| Old Keycode | New Keycode | Aliases |
|----------------------|------------------------|--------------------|
| `STN_FN` | `QK_STENO_FUNCTION` | `ST_FN` |
| `STN_N1`/`STN_NUM` | `QK_STENO_N1` | `ST_N1`/`ST_NUM` |
| `STN_N2` | `QK_STENO_N2` | `ST_N2` |
| `STN_N3` | `QK_STENO_N3` | `ST_N3` |
| `STN_N4` | `QK_STENO_N4` | `ST_N4` |
| `STN_N5` | `QK_STENO_N5` | `ST_N5` |
| `STN_N6` | `QK_STENO_N6` | `ST_N6` |
| `STN_S1`/`STN_SL` | `QK_STENO_S1` | `ST_S1`/`ST_SL` |
| `STN_S2` | `QK_STENO_S2` | `ST_S2` |
| `STN_TL` | `QK_STENO_TL` | `ST_TL` |
| `STN_KL` | `QK_STENO_KL` | `ST_KL` |
| `STN_PL` | `QK_STENO_PL` | `ST_PL` |
| `STN_WL` | `QK_STENO_WL` | `ST_WL` |
| `STN_HL` | `QK_STENO_HL` | `ST_HL` |
| `STN_RL` | `QK_STENO_RL` | `ST_RL` |
| `STN_A` | `QK_STENO_A` | `ST_A` |
| `STN_O` | `QK_STENO_O` | `ST_O` |
| `STN_ST1`/`STN_STR` | `QK_STENO_ST1` | `ST_ST1`/`ST_STR` |
| `STN_ST2` | `QK_STENO_ST2` | `ST_ST2` |
| `STN_RE1`/`STN_RES1` | `QK_STENO_RESET1` | `ST_RES1`/`ST_RE1` |
| `STN_RE2`/`STN_RES2` | `QK_STENO_RESET2` | `ST_RES2`/`ST_RE2` |
| `STN_PWR` | `QK_STENO_POWER` | `ST_PWR` |
| `STN_ST3` | `QK_STENO_ST3` | `ST_ST3` |
| `STN_ST4` | `QK_STENO_ST4` | `ST_ST4` |
| `STN_E` | `QK_STENO_E` | `ST_E` |
| `STN_U` | `QK_STENO_U` | `ST_U` |
| `STN_FR` | `QK_STENO_FR` | `ST_FR` |
| `STN_RR` | `QK_STENO_RR` | `ST_RR` |
| `STN_PR` | `QK_STENO_PR` | `ST_PR` |
| `STN_BR` | `QK_STENO_BR` | `ST_BR` |
| `STN_LR` | `QK_STENO_LR` | `ST_LR` |
| `STN_GR` | `QK_STENO_GR` | `ST_GR` |
| `STN_TR` | `QK_STENO_TR` | `ST_TR` |
| `STN_SR` | `QK_STENO_SR` | `ST_SR` |
| `STN_DR` | `QK_STENO_DR` | `ST_DR` |
| `STN_N7` | `QK_STENO_N7` | `ST_N7` |
| `STN_N8` | `QK_STENO_N8` | `ST_N8` |
| `STN_N9` | `QK_STENO_N9` | `ST_N9` |
| `STN_NA` | `QK_STENO_NA` | `ST_NA` |
| `STN_NB` | `QK_STENO_NB` | `ST_NB` |
| `STN_NC` | `QK_STENO_NC` | `ST_NC` |
| `STN_ZR` | `QK_STENO_ZR` | `ST_ZR` |
| `STN_SL` | `QK_STENO_S1` | `ST_S1` |
| `STN_STR` | `QK_STENO_ST1` | `ST_ST1` |
| `STN_S3` | `QK_STENO_S3` | `ST_S3` |
| `STN_TKL` | `QK_STENO_TKL` | `ST_TKL` |
| `STN_PWL` | `QK_STENO_PWL` | `ST_PWL` |
| `STN_HRL` | `QK_STENO_HRL` | `ST_HRL` |
| `STN_FRR` | `QK_STENO_FRR` | `ST_FRR` |
| `STN_PBR` | `QK_STENO_PBR` | `ST_PBR` |
| `STN_LGR` | `QK_STENO_LGR` | `ST_LGR` |
| `STN_TSR` | `QK_STENO_TSR` | `ST_TSR` |
| `STN_DZR` | `QK_STENO_DZR` | `ST_DZR` |
| `STN_AO` | `QK_STENO_AO` | `ST_AO` |
| `STN_EU` | `QK_STENO_EU` | `ST_EU` |
| `QK_STENO_BOLT` | `QK_STENO_MODE_BOLT` | `ST_BOLT` |
| `QK_STENO_GEMINI` | `QK_STENO_MODE_GEMINI` | `ST_GEMI` |
</details>
Support for the [Plover custom HID protocol](https://github.com/opensteno/plover/releases/tag/v5.1.0) has also been integrated. This provides an alternative to the COM port based Gemini and Bolt protocols, and extends steno support to VUSB based devices.
::: info Note
A tighter integration of the Plover HID protocol into the steno feature is planned for a future release.
:::
See the [Stenography Feature](../features/stenography) documentation for more information.
### Remove pin ordering restriction in RP2040 ps2 driver ([#26256](https://github.com/qmk/qmk_firmware/pull/26256)) {#rp2040-ps2}
The RP2040 PS/2 driver no longer requires a strict clock/data pin ordering. This removes an unnecessary wiring restriction for RP2040-based keyboards and allows more valid PS/2 layouts to work without needing to match a specific pin sequence.
### Restrict the EXTRAKEY_ENABLE System Control HID usage range. ([#26295](https://github.com/qmk/qmk_firmware/pull/26295)) {#extrakey-gamepad}
QMK now limits the default System Control HID range exposed by `EXTRAKEY_ENABLE` to the safe subset it actually uses. This prevents issues where some hosts to misidentify the device as a gamepad.
To widen the range to the old behavior, the following can be added to a `config.h`:
```c
#define SYSTEM_CONTROL_USAGE_MINIMUM 0x0001
#define SYSTEM_CONTROL_USAGE_MAXIMUM 0x00B7
```
::: warning
Only widen it if you need the extra usages and know your host handles them.
:::
### Updated Keyboard Codebases {#updated-keyboard-codebases}
| Old Keyboard Name | New Keyboard Name |
|---------------------|--------------------------|
| ducky/one2sf/1967st | ducky/one2sf/1967st/ansi |
## Deprecation Notices
In line with the [notice period](../support_deprecation_policy#how-much-advance-notice-will-be-given), deprecation notices for larger items are listed here.
### VIA Feature Migration ([#26315](https://github.com/qmk/qmk_firmware/pull/26315)) {#via-module}
As part of long-term goal to progressively reduce the maintenance burden on the project, upkeep of the VIA integration will transition to the VIA team.
This allows the VIA team to support many more custom keyboard configurations, as well as reduces the turnaround time for any changes to the VIA protocol they wish to make.
Backwards compatibility will remain for a transition period and in a future release, the old VIA feature-based implementation is expected to be removed.
## Full changelist
Core:
* Custom plover HID report type ([#26018](https://github.com/qmk/qmk_firmware/pull/26018))
* Enable modules to persist data ([#26201](https://github.com/qmk/qmk_firmware/pull/26201))
* Preserve Azoteq mouse buttons ([#26248](https://github.com/qmk/qmk_firmware/pull/26248))
* Remove pin ordering restriction in RP2040 ps2 driver ([#26256](https://github.com/qmk/qmk_firmware/pull/26256))
* Plover HID cleanup. ([#26262](https://github.com/qmk/qmk_firmware/pull/26262))
* repeat_key.c: add implementation for get_last_record ([#26263](https://github.com/qmk/qmk_firmware/pull/26263))
* Implement Plover HID for VUSB ([#26267](https://github.com/qmk/qmk_firmware/pull/26267))
* process_key_lock: clear entire key state in cancel_key_lock() ([#26269](https://github.com/qmk/qmk_firmware/pull/26269))
* Initial rework of steno feature ([#26273](https://github.com/qmk/qmk_firmware/pull/26273))
* qp_lvgl: always signal flush ready even with no display ([#26275](https://github.com/qmk/qmk_firmware/pull/26275))
* Consistently handle datablock init ([#26282](https://github.com/qmk/qmk_firmware/pull/26282))
* Make framebuffer effects honour `rgb_matrix_map_row_column_to_led` ([#26294](https://github.com/qmk/qmk_firmware/pull/26294))
* Restrict the EXTRAKEY_ENABLE System Control HID usage range. ([#26295](https://github.com/qmk/qmk_firmware/pull/26295))
* Port typing_heatmap animation to LED Matrix ([#26300](https://github.com/qmk/qmk_firmware/pull/26300))
* Add `_noeeprom` variants of backlight enable/disable. ([#26328](https://github.com/qmk/qmk_firmware/pull/26328))
* Add STM32_USB_USE_OTG2 to USB_ENDPOINTS_ARE_REORDERABLE ([#26369](https://github.com/qmk/qmk_firmware/pull/26369))
* Change preprocessor directive for random solenoid firing ([#26377](https://github.com/qmk/qmk_firmware/pull/26377))
* Rework Plover HID to use Steno keycodes ([#26421](https://github.com/qmk/qmk_firmware/pull/26421))
CLI:
* Require `--keyboard` for some CLI subcommands ([#26308](https://github.com/qmk/qmk_firmware/pull/26308))
* Be lazier in loading keyboard schema for new-keyboard ([#26340](https://github.com/qmk/qmk_firmware/pull/26340))
Keyboards:
* Addition of the Ymdk Oni Tsangan/HHKB-like pcb ([#25230](https://github.com/qmk/qmk_firmware/pull/25230))
* Add converter/thinkpad_t6x/pico_t61 keyboard ([#26266](https://github.com/qmk/qmk_firmware/pull/26266))
* Add additional layouts for `mkh_studio/bully` ([#26271](https://github.com/qmk/qmk_firmware/pull/26271))
* Split `ducky/one2sf/1967st` into `ansi`/`iso` variants ([#26277](https://github.com/qmk/qmk_firmware/pull/26277))
* Automatically handle duplicate matrix LED mappings ([#26278](https://github.com/qmk/qmk_firmware/pull/26278))
* Tidy sawnsprojects/satxri6key ([#26317](https://github.com/qmk/qmk_firmware/pull/26317))
* Update satisfaction75 to only use keyboard datablock ([#26320](https://github.com/qmk/qmk_firmware/pull/26320))
* Migrate remaining `VIA_EEPROM_CUSTOM_CONFIG_SIZE` to `EECONFIG_KB_DATA_SIZE` ([#26321](https://github.com/qmk/qmk_firmware/pull/26321))
* Use core `spi_init` implementation for gmmk/gmmk2/p96 ([#26344](https://github.com/qmk/qmk_firmware/pull/26344))
* Convert `novelkeys/nk87` to use RGB Matrix ([#26349](https://github.com/qmk/qmk_firmware/pull/26349))
* Update magic_force/mf17 to WS2812 PWM driver ([#26384](https://github.com/qmk/qmk_firmware/pull/26384))
* Keycult TKL Updates ([#26385](https://github.com/qmk/qmk_firmware/pull/26385))
* Update keyboards to implement `led_update_kb` instead of `led_set` ([#26388](https://github.com/qmk/qmk_firmware/pull/26388))
Keyboard fixes:
* Fix nifty_numpad issues ([#26283](https://github.com/qmk/qmk_firmware/pull/26283))
* Fix use of `via.h` ([#26316](https://github.com/qmk/qmk_firmware/pull/26316))
Others:
* Update RGB Matrix documentation to include JSON config ([#26187](https://github.com/qmk/qmk_firmware/pull/26187))
* Update encoder documents for json config ([#26188](https://github.com/qmk/qmk_firmware/pull/26188))
* Update LED Matrix documentation to include JSON config ([#26425](https://github.com/qmk/qmk_firmware/pull/26425))
Bugs:
* First pass of ruff check fixes ([#26257](https://github.com/qmk/qmk_firmware/pull/26257))
* Use `memmove` for overlapping copies in RGB/LED matrix last-hit tracker ([#26306](https://github.com/qmk/qmk_firmware/pull/26306))
* Fix to make Repeat Key QK_REP work with Key Overrides. ([#26312](https://github.com/qmk/qmk_firmware/pull/26312))
* Fix SEQUENCER_ENABLE so the sequencer feature builds again ([#26322](https://github.com/qmk/qmk_firmware/pull/26322))
* Fix ChibiOS virtual serial short packet receive ([#26356](https://github.com/qmk/qmk_firmware/pull/26356))
* Resolve recursive keyboard aliases when locating userspace keymaps ([#26402](https://github.com/qmk/qmk_firmware/pull/26402))
* Fix `EECONFIG_MODULE_DATA_SIZE` for modules with zero provisioned eeconfig ([#26414](https://github.com/qmk/qmk_firmware/pull/26414))
* Align USB endpoint buffers to fix RP2040 Plover HID issues ([#26417](https://github.com/qmk/qmk_firmware/pull/26417))
* Fix 'qmk generate-develop-pr-list' for ghapi v2 ([#26428](https://github.com/qmk/qmk_firmware/pull/26428))
+1 -1
View File
@@ -214,7 +214,7 @@
{ "text": "My Pull Request Was Flagged", "link": "/breaking_changes_instructions" }, { "text": "My Pull Request Was Flagged", "link": "/breaking_changes_instructions" },
{ {
"text": "Most Recent ChangeLog", "text": "Most Recent ChangeLog",
"link": "/ChangeLog/20260531" "link": "/ChangeLog/20260830"
}, },
{ "text": "Past Breaking Changes", "link": "/breaking_changes_history" }, { "text": "Past Breaking Changes", "link": "/breaking_changes_history" },
{ "text": "Deprecation Policy", "link": "/support_deprecation_policy" } { "text": "Deprecation Policy", "link": "/support_deprecation_policy" }
+10 -10
View File
@@ -10,25 +10,25 @@ Practically, this means QMK merges the `develop` branch into the `master` branch
## What has been included in past Breaking Changes? ## What has been included in past Breaking Changes?
* [2026 Aug 30](ChangeLog/20260830)
* [2026 May 31](ChangeLog/20260531) * [2026 May 31](ChangeLog/20260531)
* [2026 Feb 22](ChangeLog/20260222) * [2026 Feb 22](ChangeLog/20260222)
* [2025 Nov 30](ChangeLog/20251130)
* [Older Breaking Changes](breaking_changes_history) * [Older Breaking Changes](breaking_changes_history)
## When is the next Breaking Change? ## When is the next Breaking Change?
The next Breaking Change is scheduled for Aug 30, 2026. The next Breaking Change is scheduled for November 29, 2026.
### Important Dates ### Important Dates
* 2025 May 31 - `develop` is tagged with a new release version. Each push to `master` is subsequently merged to `develop` by GitHub actions. * 2025 Aug 30 - `develop` is tagged with a new release version. Each push to `master` is subsequently merged to `develop` by GitHub actions.
* 2026 Aug 2 - `develop` closed to new PRs. * 2026 Nov 1 - `develop` closed to new PRs.
* 2026 Aug 2 - Call for testers. * 2026 Nov 1 - Call for testers.
* 2026 Aug 16 - Last day for merges -- after this point `develop` is locked for testing and accepts only bugfixes * 2026 Nov 15 - Last day for merges -- after this point `develop` is locked for testing and accepts only bugfixes
* 2026 Aug 23 - `develop` is locked, only critical bugfix PRs merged. * 2026 Nov 22 - `develop` is locked, only critical bugfix PRs merged.
* 2026 Aug 28 - `master` is locked, no PRs merged. * 2026 Nov 27 - `master` is locked, no PRs merged.
* 2026 Aug 30 - Merge `develop` to `master`. * 2026 Nov 29 - Merge `develop` to `master`.
* 2026 Aug 30 - `master` is unlocked. PRs can be merged again. * 2026 Nov 29 - `master` is unlocked. PRs can be merged again.
## What changes will be included? ## What changes will be included?
+1
View File
@@ -2,6 +2,7 @@
This page links to all previous changelogs from the QMK Breaking Changes process. This page links to all previous changelogs from the QMK Breaking Changes process.
* [2026 Aug 30](ChangeLog/20260830) - version 0.34.0
* [2026 May 31](ChangeLog/20260531) - version 0.33.0 * [2026 May 31](ChangeLog/20260531) - version 0.33.0
* [2026 Feb 22](ChangeLog/20260222) - version 0.32.0 * [2026 Feb 22](ChangeLog/20260222) - version 0.32.0
* [2025 Nov 30](ChangeLog/20251130) - version 0.31.0 * [2025 Nov 30](ChangeLog/20251130) - version 0.31.0