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

Improve hotfix documentation #322

Open
wants to merge 5 commits into
base: master
Choose a base branch
from
Open
Changes from 4 commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
56 changes: 52 additions & 4 deletions src/en/wizden-staff/maintainer/hotfix-procedure.md
Original file line number Diff line number Diff line change
Expand Up @@ -12,10 +12,58 @@ Not following this procedure/policy will result in disiplinary action being take

- Balancing changes are usually not bug fixes. A balancing change adjusts tuning values on a gameplay system/mechanic to change gameplay to be more in line with the intended experience. If the experience before the change is still playable then the balancing change is not a bug fix, however if the gameplay is *causing major issues for players/admins* then a balancing change can be considered as a bugfix in this case.
## Creating and applying a hotfix
A hotfix needs to be based on the branch the bug appears in.
A hotfix needs to be created based on the branch the bug appears in.
During the release phase bugs on staging need to be fixed using hotfixes based on staging and vice versa.
The hotfix branch needs to be merged into the affected branch (staging/live) and then into master.
A PR needs to be made for the newly created hotfix branch for the branch the bug appeared on (staging/stable) and for master.

If a bug needs to be fixed on live during the release cycle the hotfix branch needs to be based on live and then merged into staging and master.
If a bug needs to be fixed on stable during the release phase the hotfix branch needs to be based on stable and then a PR needs to be made for staging and master.

This will eventually be done by a github action or a bot automatically.
When a bug needs to be hotfixed on stable outside of the release phase the hotfix needs to be based on stable and then a PR needs to be made for stable and master
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you please add some commas to all these sentences where appropriate, to make them easier to parse

Copy link

@benev0 benev0 Oct 16, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A single comma could be added after the qualifying phrase like so:

When a bug needs to be hotfixed on stable outside of the release phase, the hotfix needs to be based on stable and then a PR needs to be made for stable and master

However, I believe that the underling issue that is the sentence is too verbose. From this point on @juliangiebel, please take all this with a grain of salt as it is purely my opinion.

  1. Future tense is necessary here "needs to be" and should be replaced with "is."

When a bug is hotfixed on stable outside of the release phase, the hotfix is based on stable and then a PR is made for stable and master

  1. Provide instruction not observation. Just tell the reader what to do.

To hotfix a bug on stable outside of the release phase, base the hotfix branch on stable, and make a PR to both stable and master.

  1. Do not include the definition as appositives (things that have already been implied). If you are hotfixing it is implied that a bug is being resolved and that this is outside of release phase.

To hotfix stable, base the hotfix branch on stable, and make a PR to both stable and master.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Line 19 and potentially 17 are also rather runaway


This will eventually be done by a github action or a bot automatically.

### Bug appears on staging during release cycle
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Branch off of

- Branch of off the staging branch
```shell
git checkout staging
git branch -b "<hotfix branch name>"
```
- Implement the hotfix
- Push the hotfix branch
```shell
git push <remote name> HEAD
```
- Create and merge a PR for the staging branch
- Create and merge a PR for the master branch
- Delete the hotfix branch

### Bug appears on stable during release cycle
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Branch off of

- Branch of off the stable branch
```shell
git checkout stable
git branch -b "<hotfix branch name>"
```
- Implement the hotfix
- Push the hotfix branch
```shell
git push <remote name> HEAD
```
- Create and merge a PR for the stable branch
- Create and merge a PR for the staging branch
- Create and merge a PR for the master branch
- Delete the hotfix branch

### Bug appears on stable outside release cycle
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Branch off of

- Branch of off the stable branch
```shell
git checkout stable
juliangiebel marked this conversation as resolved.
Show resolved Hide resolved
git branch -b "<hotfix branch name>"
```
- Implement the hotfix
- Push the hotfix branch
```shell
git push <remote name> HEAD
```
- Create and merge a PR for the stable branch
Errant-4 marked this conversation as resolved.
Show resolved Hide resolved
- Create and merge a PR for the master branch
- Delete the hotfix branch
Loading