Sign off on patches
A note about signing off on patches
Signing off on a patch means that the tester has confirmed the following:
- They have stepped through any available test plan
- They confirmed the functionality is working
- They noted any anomalies and determined whether or not these block the patch from going into the next stage of QA.
A person signing off on a patch is responsible for making sure that the functionality is working as described in the patch (but we know that people miss stuff - that's OK! Just be willing to re-do your sign-off for any revisions and no one will complain at you).
On the other side, if you discover any problems with the patch, don't feel afraid to set the bug status to 'Failed QA' and leave a note about your findings.
Method 1: Using sandboxes
The community provides Sandboxes to test easily patches without any technical requirements.
You will not need to install anything on your computer.
Method 2: Using git bz
If you have a working Koha installation (using koha-testing-docker for instance), you will be able to sign off patches easily using git bz.
git bz helps a lot in testing patches. There is a dedicated page explaining how it works.
Method 3: "Manually"
There is no good reason to do it this way, but in case git-bz is not working for you, you could do the following.
Download the patch
You can download the patch from Bugzilla using wget or fetch:
$ wget -O <name_of_patch_file> http://bugs.koha-community.org/bugzilla3/attachment.cgi?id=<attachment_number>
Or you can save it from your e-mail.
Apply patch
Apply someone's patch to your local Koha repository. You should create a new branch for this purpose.
For example:
$ git checkout -b qa_bug_xxxx $ git am -3 -i -u <name_of_patch_file>
Test it
You test it.
Amend commit
You might want to add a comment about testing or fix something in the commit message. You can do so using:
git commit --amend
The subject line of the commit email will be taken from the first line of the commit.
Sign-off
If the patch is okay, you prepare a new one with your sign-off. -s = signoff
For example:
$ git format-patch -s origin/main
Update Bugzilla
On Bugzilla, you should now update the status of the relevant bug from "Needs Signoff" to "Signed Off". You should also upload your signed-off patch as attachment and mark the initial one as obsolete.
See also
- Sign off on a pushed branch
- Bugzilla report of bugs that currently need a sign off
- Fixing whitespace when applying patches with git
- Getting involved | Development workflow | Bug Reporting Guidelines | RFCs | Plugins | Plugin hooks
- Version Control Using Git | git bz | Commit messages | Sign off on patches | QA Test Tools | How to QA | Debugging in VIM
- Coding Guidelines | Koha Objects | Rest Api HowTo | Coding Guidelines - API | Unit Tests | Continuous Integration | Interface patterns | Database updates | Adding a syspref | Bootstrap and LESS
- Debian Packages | Building Debian Packages | Easy Package Building | Commands
- External: Dashboard | Bugzilla | Schema | perldoc | REST API | Jenkins