From c66df1664497546f32662409778731143e45a552 Mon Sep 17 00:00:00 2001 From: James Young <18669334+noroadsleft@users.noreply.github.com> Date: Sat, 28 Nov 2020 12:02:18 -0800 Subject: 2020 November 28 Breaking Changes Update (#11053) * 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 --- docs/ChangeLog/20201128.md | 150 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 150 insertions(+) create mode 100644 docs/ChangeLog/20201128.md (limited to 'docs/ChangeLog') diff --git a/docs/ChangeLog/20201128.md b/docs/ChangeLog/20201128.md new file mode 100644 index 0000000000..86abd384df --- /dev/null +++ b/docs/ChangeLog/20201128.md @@ -0,0 +1,150 @@ +# QMK Breaking Change - 2020 Nov 28 Changelog + +Four times a year QMK runs a process for merging Breaking Changes. A Breaking Change is any change which modifies how QMK behaves in a way that is incompatible or potentially dangerous. We limit these changes to 4 times per year so that users can have confidence that updating their QMK tree will not break their keymaps. + + +## Changes Requiring User Action :id=changes-requiring-user-action + +### Relocated Keyboards :id-relocated-keyboards + +#### Reduce Helix keyboard build variation ([#8669](https://github.com/qmk/qmk_firmware/pull/8669)) + +The build commands for the Helix keyboard are: + +``` +make : +``` + +For ``, specify the one in the rightmost column of the table below, such as `helix`,` helix/pico`. + +| before Oct 17 2019 | Oct 17 2019 | Mar 10 2020 | Nov 28 2020 | +| ---------------------|-------------------------|-------------------------| ------------------------| +| helix/rev1 | helix/rev1 | helix/rev1 | helix/rev1 | +| helix/pico | helix/pico | helix/pico | helix/pico | +| | helix/pico/back | helix/pico/back | helix/pico/back | +| | helix/pico/under | helix/pico/under | helix/pico/under | +| | | helix/pico/sc | -- | +| | | helix/pico/sc/back | helix/pico/sc | +| | | helix/pico/sc/under | -- | +| helix/rev2 (=helix) | helix/rev2 (=helix) | helix/rev2 (=helix) | -- | +| | helix/rev2/back | helix/rev2/back | -- | +| | helix/rev2/back/oled | helix/rev2/back/oled | ( --> helix/rev2/back) | +| | helix/rev2/oled | helix/rev2/oled | helix/rev2 (=helix) | +| | helix/rev2/oled/back | helix/rev2/oled/back | helix/rev2/back | +| | helix/rev2/oled/under | helix/rev2/oled/under | helix/rev2/under | +| | | helix/rev2/sc | -- | +| | | helix/rev2/sc/back | -- | +| | | helix/rev2/sc/oled | -- | +| | | helix/rev2/sc/oledback | helix/rev2/sc | +| | | helix/rev2/sc/oledunder | -- | +| | | helix/rev2/sc/under | -- | +| | helix/rev2/under | helix/rev2/under | -- | +| | helix/rev2/under/oled | helix/rev2/under/oled | ( --> helix/rev2/under) | + +#### Update the Speedo firmware for v3.0 ([#10657](https://github.com/qmk/qmk_firmware/pull/10657)) + +The Speedo keyboard has moved to `cozykeys/speedo/v2` as the designer prepares to release the Speedo v3.0. + +| Previous Name | New Name | +| :------------ | :------------------------- | +| speedo | cozykeys/speedo/v2 | +| -- | cozykeys/speedo/v3 **new** | + +#### Maartenwut/Maarten name change to evyd13/Evy ([#10274](https://github.com/qmk/qmk_firmware/pull/10274)) + +Maartenwut has rebranded as @evyd13, and all released Maartenwut boards have moved. + +| Previous Name | New Name | +| :--------------------- | :----------------- | +| maartenwut/atom47/rev2 | evyd13/atom47/rev2 | +| maartenwut/atom47/rev3 | evyd13/atom47/rev3 | +| maartenwut/eon40 | evyd13/eon40 | +| maartenwut/eon65 | evyd13/eon65 | +| maartenwut/eon75 | evyd13/eon75 | +| maartenwut/eon87 | evyd13/eon87 | +| maartenwut/eon95 | evyd13/eon95 | +| maartenwut/gh80_1800 | evyd13/gh80_1800 | +| maartenwut/gh80_3700 | evyd13/gh80_3700 | +| maartenwut/minitomic | evyd13/minitomic | +| maartenwut/mx5160 | evyd13/mx5160 | +| maartenwut/nt660 | evyd13/nt660 | +| maartenwut/omrontkl | evyd13/omrontkl | +| maartenwut/plain60 | evyd13/plain60 | +| maartenwut/pockettype | evyd13/pockettype | +| maartenwut/quackfire | evyd13/quackfire | +| maartenwut/solheim68 | evyd13/solheim68 | +| maartenwut/ta65 | evyd13/ta65 | +| maartenwut/wasdat | evyd13/wasdat | +| maartenwut/wasdat_code | evyd13/wasdat_code | +| maartenwut/wonderland | evyd13/wonderland | + +#### Xelus Valor and Dawn60 Refactors ([#10512](https://github.com/qmk/qmk_firmware/pull/10512), [#10584](https://github.com/qmk/qmk_firmware/pull/10584)) + +The Valor and Dawn60 keyboards by Xelus22 both now require their revisions to be specified when compiling. + +| Previous Name | New Name | +| :------------ | :---------------- | +| xelus/dawn60 | xelus/dawn60/rev1 | +| xelus/valor | xelus/valor/rev1 | + + +### Updated Keyboard Codebases :id=keyboard-updates + +#### AEboards EXT65 Refactor ([#10820](https://github.com/qmk/qmk_firmware/pull/10820)) + +The EXT65 codebase has been reworked so keymaps can be used with either revision. + + +## Core Changes :id=core-changes + +### Fixes :id=core-fixes + +* Reconnect the USB if users wake up a computer from the keyboard to restore the USB state ([#10088](https://github.com/qmk/qmk_firmware/pull/10088)) +* Fix cursor position bug in oled_write_raw functions ([#10800](https://github.com/qmk/qmk_firmware/pull/10800)) + +### Additions and Enhancements :id=core-additions + +* Allow MATRIX_ROWS to be greater than 32 ([#10183](https://github.com/qmk/qmk_firmware/pull/10183)) +* Add support for soft serial to ATmega32U2 ([#10204](https://github.com/qmk/qmk_firmware/pull/10204)) +* Allow direct control of MIDI velocity value ([#9940](https://github.com/qmk/qmk_firmware/pull/9940)) +* Joystick 16-bit support ([#10439](https://github.com/qmk/qmk_firmware/pull/10439)) +* Allow encoder resolutions to be set per encoder ([#10259](https://github.com/qmk/qmk_firmware/pull/10259)) +* Share button state from mousekey to pointing_device ([#10179](https://github.com/qmk/qmk_firmware/pull/10179)) +* Add advanced/efficient RGB Matrix Indicators ([#8564](https://github.com/qmk/qmk_firmware/pull/8564)) +* OLED display update interval support ([#10388](https://github.com/qmk/qmk_firmware/pull/10388)) +* Per-Key Retro Tapping ([#10622](https://github.com/qmk/qmk_firmware/pull/10622)) +* Allow backlight duty cycle limit ([#10260](https://github.com/qmk/qmk_firmware/pull/10260)) +* Add step sequencer feature ([#9703](https://github.com/qmk/qmk_firmware/pull/9703)) +* Added `add_oneshot_mods` & `del_oneshot_mods` ([#10549](https://github.com/qmk/qmk_firmware/pull/10549)) +* Add AT90USB support for serial.c ([#10706](https://github.com/qmk/qmk_firmware/pull/10706)) +* Auto shift: support repeats and early registration (#9826) + +### Clean-ups and Optimizations :id=core-optimizations + +* Haptic and solenoid cleanup ([#9700](https://github.com/qmk/qmk_firmware/pull/9700)) +* XD75 cleanup ([#10524](https://github.com/qmk/qmk_firmware/pull/10524)) +* Minor change to behavior allowing display updates to continue between task ticks ([#10750](https://github.com/qmk/qmk_firmware/pull/10750)) +* Change some GPIO manipulations in matrix.c to be atomic ([#10491](https://github.com/qmk/qmk_firmware/pull/10491)) +* combine repeated lines of code for ATmega32U2, ATmega16U2, ATmega328 and ATmega328P ([#10837](https://github.com/qmk/qmk_firmware/pull/10837)) +* Remove references to HD44780 ([#10735](https://github.com/qmk/qmk_firmware/pull/10735)) + + +## QMK Infrastructure and Internals :id=qmk-internals + +* Add ability to build a subset of all keyboards based on platform. ([#10420](https://github.com/qmk/qmk_firmware/pull/10420)) +* Initialise EEPROM drivers at startup, instead of upon first execution ([#10438](https://github.com/qmk/qmk_firmware/pull/10438)) +* Make bootloader_jump weak for ChibiOS ([#10417](https://github.com/qmk/qmk_firmware/pull/10417)) +* Support for STM32 GPIOF,G,H,I,J,K ([#10206](https://github.com/qmk/qmk_firmware/pull/10206)) +* Add milc as a dependency and remove the installed milc ([#10563](https://github.com/qmk/qmk_firmware/pull/10563)) +* ChibiOS upgrade: early init conversions ([#10214](https://github.com/qmk/qmk_firmware/pull/10214)) +* ChibiOS upgrade: configuration file migrator ([#9952](https://github.com/qmk/qmk_firmware/pull/9952)) +* Add definition based on currently-selected serial driver. ([#10716](https://github.com/qmk/qmk_firmware/pull/10716)) +* Allow for modification of output RGB values when using rgblight/rgb_matrix. ([#10638](https://github.com/qmk/qmk_firmware/pull/10638)) +* Allow keyboards/keymaps to execute code at each main loop iteration ([#10530](https://github.com/qmk/qmk_firmware/pull/10530)) +* qmk cformat ([#10767](https://github.com/qmk/qmk_firmware/pull/10767)) +* Add a Make variable to easily enable DEBUG_MATRIX_SCAN_RATE on the command line ([#10824](https://github.com/qmk/qmk_firmware/pull/10824)) +* update Chibios OS USB for the OTG driver ([#8893](https://github.com/qmk/qmk_firmware/pull/8893)) +* Fixup version.h writing when using `SKIP_VERSION=yes` ([#10972](https://github.com/qmk/qmk_firmware/pull/10972), [#10974](https://github.com/qmk/qmk_firmware/pull/10974)) +* Rename ledmatrix.h to match .c file ([#7949](https://github.com/qmk/qmk_firmware/pull/7949)) +* Split RGB_MATRIX_ENABLE into _ENABLE and _DRIVER ([#10231](https://github.com/qmk/qmk_firmware/pull/10231)) +* Split LED_MATRIX_ENABLE into _ENABLE and _DRIVER ([#10840](https://github.com/qmk/qmk_firmware/pull/10840)) -- cgit v1.2.3