ffmpegs bug/patch/feature request tracker manual
[ffmpeg.git] / doc / issue_tracker.txt
1 ffmpegs bug/patch/feature request tracker manual
2 ================================================
3
4 NOTE, this is a draft, its not yet recommanded to send real bugrepors to the
5 tracker but rather use the mailinglists
6 though if you are brave and dont mind that your bugreport might disapear or
7 that you might be mailbombed due to a missconiguration you can surely try
8 to enter a real bugreport
9
10 Overview:
11 ---------
12 FFmpeg uses roundup for tracking issues, new issues and changes to
13 existing issues can be done through a web interface and through email.
14 Its possible to subscribe to individual issues by adding yourself to the
15 nosy list or to subscribe to the ffmpeg_issues mailinglist which receives
16 a mail for every change to every issue. Replies to such mails will also
17 properly be added to the respective issue.
18 (the above does all work already after light testing)
19
20 note: issue = (bug report || patch || feature request)
21
22 Type:
23 -----
24 bug
25     An error, flaw, mistake, failure, or fault in ffmpeg or libav* that
26     prevents it from behaving as intended.
27
28 feature request
29     Request of support for encoding or decoding of a new codec, container
30     or variant.
31     Request of support for more, less or plain different output or behavior.
32     Where the current behavior cannot be considered wrong.
33
34 patch
35     A patch as generated by diff which conforms to the patch submission and
36     Development Policy.
37
38
39 Priority:
40 ---------
41 critical
42     Bugs and patches which deal with data loss and security issues
43     no feature request can be critical.
44
45 important
46     Bugs which makes ffmpeg unuseable for a significant number of users, and
47     patches fixing them.
48     examples here might be completly broken mpeg4 decoding or a build issue
49     on linux
50     while broken 4xm decoding or broken os2 build would not be important, the
51     seperation to normal is somewhat fuzzy ...
52     For feature requests this priority would be used for things many people
53     want.
54
55 normal
56
57
58 minor
59     Bugs and patches about things like spelling errors, "mp2" instead of
60     "mp3" being shown and such
61     Feature requests about things few people want or which dont make a big
62     difference.
63
64 wish
65     [FIXME can a bug be priority wish?]
66
67
68 Status:
69 -------
70 new
71     initial state
72
73 open
74     intermediate states
75
76 closed
77     Final state
78
79
80 Type/Status/Substatus:
81 ----------
82 */new/new
83     Initial state of new bugs, patches and feature requests submitted by
84     users
85
86 */open/open
87     Issues which have been briefly looked at and which didnt look outright
88     invalid
89     This implicates that no real more detailed state applies yet. And the
90     more detailed states below implicate that the issue has been briefly
91     looked at.
92
93 */closed/duplicate
94     Bugs, patches or feature requests which are duplicate of some other.
95     Note patches dealing with the same thing but differently are not duplicate.
96
97 */closed/invalid
98     Bugs caused by user errors, random ineligible or otherwise nonsense stuff
99
100 bug/open/reproduced
101     Bugs which have been reproduced
102
103 bug/open/analyzed
104     Bugs which have been analyzed and where it is understood what causes them
105     and which exact chain of events triggers them. This analyzis should be
106     available as a message in the bugreport
107     Note, do not change the status to analyzed without also providing a clear
108     and understandable analysis.
109     This state implicates that the bug either has been reproduced or that
110     reproduction is not needed as the bug is understood already anyway.
111
112 bug/open/needs_more_info
113     Bugreports which are incomplete and or where more information is needed
114     from the submitter or another person who can provide the info.
115     This state implicates that the bug has not been analyzed or reproduced
116
117 bug/closed/fixed
118     Bugs which have to the best of our knowledge been fixed.
119
120 bug/closed/wont_fix
121     Bugs which we will not fix, the reasons here could be legal, philosophical
122     or others
123
124 bug/closed/works_for_me
125     Bugs for which sufficient information was provided to reproduce but
126     reproduction failed that is the code seems to work correctly to the
127     best of our knowledgde.
128
129 patch/open/approved
130     Patches which have been reviewed and approved by a developer.
131     Such patches can be applied anytime by any other developer after some
132     reasonable testing (compile + regression tests + does the patch do
133     what the author claimed)
134
135 patch/open/needs_changes
136     Patches which have been reviewed and need changes to be accepted
137
138 patch/closed/applied
139     Patches which have been applied
140
141 patch/closed/rejected
142     Patches which have been rejected
143
144 feature_request/open/needs_more_info
145     Feature requests where its not clear what exactly is wanted
146     (these also could be closed as invalid ...)
147
148 feature_request/closed/implemented
149     Feature requests which have been implemented.
150
151 feature_request/closed/wont_implement
152     Feature reuests which will not be implemented. The reasons here could
153     be legal, philosophical or others.
154
155 Note, please do not use type-status-substatus combinations other than the
156 above without asking on ffmpeg-dev first!