* Branch point for 2020 May 30 Breaking Change * Migrate `ACTION_LAYER_TOGGLE` to `TG()` (#8954) * Migrate `ACTION_MODS_ONESHOT` to `OSM()` (#8957) * Migrate `ACTION_DEFAULT_LAYER_SET` to `DF()` (#8958) * Migrate `ACTION_LAYER_MODS` to `LM()` (#8959) * Migrate `ACTION_MODS_TAP_KEY` to `MT()` (#8968) * Convert V-USB usbdrv to a submodule (#8321) * Unify Tap Hold functions and documentation (#8348) * Changing board names to prevent confusion (#8412) * Move the Keyboardio Model01 to a keyboardio/ subdir (#8499) * Move spaceman keyboards (#8830) * Migrate miscellaneous `fn_actions` entries (#8977) * Migrate `ACTION_MODS_KEY` to chained mod keycodes (#8979) * Organizing my keyboards (plaid, tartan, ergoinu) (#8537) * Refactor Lily58 to use split_common (#6260) * Refactor zinc to use split_common (#7114) * Add a message if bin/qmk doesn't work (#9000) * Fix conflicting types for 'tfp_printf' (#8269) * Fixed RGB_DISABLE_AFTER_TIMEOUT to be seconds based & small internals cleanup (#6480) * Refactor and updates to TKC1800 code (#8472) * Switch to qmk forks for everything (#9019) * audio refactor: replace deprecated PLAY_NOTE_ARRAY (#8484) * Audio enable corrections (2/3) (#8903) * Split HHKB to ANSI and JP layouts and Add VIA support for each (#8582) * Audio enable corrections (Part 4) (#8974) * Fix typo from PR7114 (#9171) * Augment future branch Changelogs (#8978) * Revert "Branch point for 2020 May 30 Breaking Change"
3.7 KiB
Breaking Changes
This document describes QMK's Breaking Change process. A Breaking Change is any change which modifies how QMK behaves in a way that in incompatible or potentially dangerous. We limit these changes so that users can have confidence that updating their QMK tree will not break their keymaps.
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.
What has been included in past Breaking Changes?
When is the next Breaking Change?
The next Breaking Change is scheduled for Aug 29, 2020.
Important Dates
- 2020 May 30 -
develop
is created. It will be rebased weekly. - 2020 Aug 1 -
develop
closed to new PR's. - 2020 Aug 1 - Call for testers.
- 2020 Aug 27 -
master
is locked, no PR's merged. - 2020 Aug 29 - Merge
develop
tomaster
. - 2020 Aug 29 -
master
is unlocked. PR's 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. 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.
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.
Criteria for acceptance:
- PR is complete and ready to merge
- PR has a ChangeLog
Checklists
This section documents various processes we use when running the Breaking Changes process.
Rebase develop
from master
This is run every Friday while develop
is open.
Process:
cd qmk_firmware
git checkout master
git pull --ff-only
git checkout develop
git rebase master
git push --force
Creating the develop
branch
This happens immediately after the previous develop
branch is merged.
qmk_firmware
git commandsgit checkout master
git pull --ff-only
git checkout -b develop
- Edit
readme.md
- Add a big notice at the top that this is a testing branch.
- Include a link to this document
git commit -m 'Branch point for <DATE> Breaking Change'
git tag breakpoint_<YYYY>_<MM>_<DD>
git tag <next_version>
# Prevent the breakpoint tag from confusing version incrementinggit push origin develop
git push --tags
4 Weeks Before Merge
develop
is now closed to new PR's, only fixes for current PR's may be merged- Post call for testers
- Discord
- GitHub PR
- https://reddit.com/r/olkb
1 Week Before Merge
- Announce that master will be closed from <2 Days Before> to
- Discord
- GitHub PR
- https://reddit.com/r/olkb
2 Days Before Merge
- Announce that master is closed for 2 days
- Discord
- GitHub PR
- https://reddit.com/r/olkb
Day Of Merge
qmk_firmware
git commandsgit checkout develop
git pull --ff-only
git rebase origin/master
- Edit
readme.md
- Remove the notes about
develop
- Remove the notes about
- Roll up the ChangeLog into one file.
git commit -m 'Merge point for <DATE> Breaking Change'
git push origin develop
- GitHub Actions
- Create a PR for
develop
- Make sure travis comes back clean
- Merge
develop
PR
- Create a PR for