issue labeling scheme - nest/nest-simulator GitHub Wiki
Issue Labels
Each pull-request (PR) and issue is labeled along five "dimensions", each with its own color family:
To get an overview of how often each label is used go to the labels page.
Label Rules
- the category letters ensure same order in issue list
- only single label per category is allowed
C: Component
A component label specifies in which part of NEST the issue is located.
Kernel
- changes in the NEST kernel
Documentation
- Documentation updates, fixes, ...
Infrastructure
- changes in the build system or CI scripts
Installation
- issues regarding the installation of NEST, e.g. on different platforms
Interpreter
- changes in the SLI iterpreter
Model
- new or modified neuron or synapse models
PyNEST
- changes in the high level python interface of NEST
I: Interface
The interface label specifies if and where there are changes for users and/or developers.
User Interface
- changes to the user interface
Behaviour changes
- changes to the semantics of parameters or return values, while keeping the same API
- changes in the effect of a method
External API
- external API is what is defined in nest.h
- change that requires users of NEST to change their code accordingly
Internal API
- internal API is everything that is not external: Typically the kernel interfaces, managers, etc.
- change that modifies the calls to functions not usually handled by users
- NEST developers need to be aware about the new structure/parameters/methods...
No breaking change
- no change to any API that would break existing code
- anything that compiled before should still compile afterwards
P: Progress
The progress label gives information about the status of the issue/PR. The normal work-flow would be pending -> in progress -> PR created (-> closed).
Blocked
- work on this issue is not possible due to another issue
- blocked by another PR that has to be merged first
PR Created
- the issue advanced a lot, a solution exists and a corresponding pull request has been created
In progress
- someone started and is actively working on this issue
Pending
- new issue where no-one has worked on yet
Reminder
- nothing to be worked on, just to keep in mind. Typically goes together with T:Discussion.
S: Severity
Critical
- critical, bugs that need to be fixed asap.
- needs to be fixed before the next release
High
- default priority for bugs, important enhancements
Low
- default priority for everything but bugs, bugs that appear in very corner cases
T: Type
The type label specifies what this issue actually describes.
Bug
- bugs
External bug
- bugs that result from software outside, that we can not fix ourselves / that are beyond our control
Enhancement
- new/added features
- anything that NEST couldn't do before
Maintenance
- refactoring
- cleaning of unused NEST::Names
Discussion
- ideas, wishlist, everything that needs comments from the community or has to be condensed to a more concrete plan
References
This scheme was inspired by