[ << Issues ] | [Top][Contents][Index][ ? ] | [ Regression tests >> ] | ||
[ < Bug Squad checklists ] | [ Up : Issues ] | [ Adding issues to the tracker > ] |
7.4 Issue classification
The Bug Squad should classify issues according to the guidelines given by developers. Every issue should have a Status, Type, and Priority; the other fields are optional.
Status (mandatory)
Open issues:
- New: the item was added by a non-member, despite numerous warnings not to do this. Should be reviewed by a member of the Bug Squad.
- Accepted: the Bug Squad added it, or reviewed the item.
- Started: a contributor is working on a fix. Owner should change to be this contributor.
Closed issues:
- Invalid: issue should not have been added in the current state.
- Duplicate: issue already exists in the tracker.
- Fixed: a contributor claims to have fixed the bug. The Bug Squad should check the fix with the next official binary release (not by compiling the source from git). Owner should be set to that contributor.
- Verified: Bug Squad has confirmed that the issue is closed. This means that nobody should ever need look at the report again – if there is any information in the issue that should be kept, open a new issue for that info.
Owner (optional)
Newly-added issues should have no owner. When a contributor indicates that he has Started or Fixed an item, he should become the owner.
Type (mandatory)
The issue’s Type should be the first relevant item in this list.
- Type-Collision: overlapping notation.
-
Type-Defect: a problem in the core program. (the
lilypond
binary, scm files, fonts, etc). - Type-Documentation: inaccurate, missing, confusing, or desired additional info. Must be fixable by editing a texinfo, ly, or scm file.
- Type-Build: problem or desired features in the build system. This includes the makefiles, stepmake, python scripts, and GUB.
- Type-Scripts: problem or desired feature in the non-build-system scripts. Mostly used for convert-ly, lilypond-book, etc.
- Type-Enhancement: a feature request for the core program. The distinction between enhancement and defect isn’t extremely clear; when in doubt, mark it as enhancement.
- Type-Other: anything else.
Priority (mandatory)
Currently, only Critical items will block a stable release.
- Priority-Critical: lilypond segfaults, or a regression occurred within the last two stable versions. (i.e. when developing 2.13, any regression against 2.12 or 2.10 counts)
- Priority-High: highly embarrassing items, and any regression against a version earlier than two stable versions (i.e. when developing 2.13, any regression against 2.8 or earlier). This level is also used for issues which produce no output and fail to give the user a clue about what’s wrong.
- Priority-Medium: normal priority.
- Priority-Low: less important than normal.
- Priority-Postponed: no fix planned. Generally used for things like Ancient notation, which nobody wants to touch.
The difference between Priority-Medium and Priority-Low is not well-defined, both in this policy and in practice. The only answer we can give at the moment is “look at existing items in of the same type, and try to guess whether the priority is closer to the Medium items or Low items”. We’re aware of the ambiguity, and won’t complain if somebody picks a ‘wrong’ value for Medium/Low.
Opsys (optional)
Issues that only affect specific operating systems.
Other items (optional)
Other labels:
- Regression: it used to deliberately work in an earlier stable release. If the earlier output was accidental (i.e. we didn’t try to stop a collision, but it just so happened that two grobs didn’t collide), then breaking it does not count as a regression.
- Patch: a patch to fix an issue is attached.
- Frog: the fix is believed to be suitable for a new contributor (does not require a great deal of knowledge about LilyPond). The issue should also have an estimated time in a comment.
- Maintainability: hinders developent of LilyPond. For example, improvements to the build system, or “helper” python scripts.
- Bounty: somebody is willing to pay for the fix. Only add this tag if somebody has offered an exact figure in US dollars or euros.
- Warning: graphical output is fine, but lilypond prints a false/misleading warning message. Alternately, a warning should be printed (such as a bar line error), but was not. Also applies to warnings when compiling the source code or generating documentation.
- Security: might potentially be used.
- Performance: might potentially be used.
If you particularly want to add an label not in the list, go ahead, but this is not recommended.
[ << Issues ] | [Top][Contents][Index][ ? ] | [ Regression tests >> ] | ||
[ < Bug Squad checklists ] | [ Up : Issues ] | [ Adding issues to the tracker > ] |