GitLab
Issues Organization
The following page list the Labels the SPL Group use to track and organize issues on GitLab.
Labels description
Type
Every issue should have one and only one of the following labels:
| Type | Description |
|---|---|
| Feature | Request for new functionality |
| Enhancements | Iterations on existing features or infrastructure |
| Bug | The issue documents broken, incorrect, or confusing behavior |
| Maintenance | Neither a feature, an improvement or a bug, but requires small changes |
| Discussion | Requires further conversation to figure out the action steps |
| Question | The issue is more of a question than a request and doesn't bring new idea |
Source
This is how we designate where the issue lives.
| Source | Description |
|---|---|
| Platform | The issue relates with various platforms like operating systems, containers, filesystems, etc. |
| Application | The issue relates with softwares, programs, tools, etc. |
| Code | The issue relates to algorithmic code, libraries, machine learning, data sciences, etc. |
| Documentation | The issue relates to documentation |
Status
Status labels are used to define and track the state of issues.
| Status | Description |
|---|---|
| Confirmed | The issue is a bug and has been confirmed |
| Invalid | No action needed or possible. The issue is either fixed, addressed better by other issues, or just out of scope |
| Duplicate | The issue is a duplicate |
Severity
Severity labels are almost always only applied to issues labeled Bug.
| Severity | Description |
|---|---|
| Blocker | The issue is blocking an impending release |
| Critical | The issue causes data loss, crashes or hangs processes, makes the system unresponsive, etc. |
| High Severity | The issue reports incorrect functionality, bad functionality, a confusing user experience, etc. |
| Medium Severity | The issue reports cosmetic items, formatting, spelling, colors, etc. |
Note
We added a prefix in the labels name in GitLab to denotes to which category (T::Type, R::Source, U::Status, S::Severity) they belong and to ease the selection when creating a new issue. They are prefixed like they are Scoped but this feature isn't available in our GitLab.
Create labels for a project or group
It can be tedious to create a list of labels within the GitLab interface for a particular project or group. Therefore we created a script GitLab Scripts you can use to create automatically a bunch of labels from a JSON file.
Close issue(s) with commit
You can automatically close one or more issues by a special syntax within the commit message.
Awesome commit message
Fix #20, Fixes #21 and Closes group/otherproject#22.
This commit is also related to #17 and fixes #18, #19
and https://gitlab.example.com/group/otherproject/issues/23.
will close #18, #19, #20, and #21 in the project this commit is pushed to, as well as #22 and #23 in group/otherproject. #17 won’t be closed as it does not match the pattern. It works with multi-line commit messages as well as one-liners when used from the command line with git commit -m.
The keywords you can use to close an issue are the following:
- Close, Closes, Closed, Closing, close, closes, closed, closing
- Fix, Fixes, Fixed, Fixing, fix, fixes, fixed, fixing
- Resolve, Resolves, Resolved, Resolving, resolve, resolves, resolved, resolving
- Implement, Implements, Implemented, Implementing, implement, implements, implemented, implementing