Improving GitHub Issue Labels

2020-02-11

I don't like default GitHub issue labels and use an alternative scheme to stratify issues into distinct categories:

bug something is not working as expected
change requests to change existing functionality
internal changes not directly visible to the user: speed improvements, unit tests
new feature requests to add new functionality
documentation issues related to documentation and manuals
meta tasks that don’t affect the project itself: questions, advertising

And a set of tags can be used for any additional information. A few examples:

tag: duplicate similar issue already exist
tag: in progress the task is currently in progress
tag: good first issue issues suitable for new contributors
tag: help wanted maintainer is looking for some help with the issue
tag: completed issue was completed successfully
tag: canceled the proposal was abandoned and will not be implemented

Every issue in the repository has to have exactly one category label and any number of applicable tags.

Category labels are designed to stratify issues according to how disruptive they are, and colors are chosen to reflect that. Labels for tags should be modified to suit the project. On GitHub labels are arranged alphabetically, so in order to keep the label placement consistent each tag should be prefixed by tag: and category names should start with a letter before t.