issue_tracker.txt 6.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211
  1. FFmpeg's bug/patch/feature request tracker manual
  2. =================================================
  3. NOTE: This is a draft.
  4. Overview:
  5. ---------
  6. FFmpeg uses Trac for tracking issues, new issues and changes to
  7. existing issues can be done through a web interface.
  8. It is possible to subscribe to individual issues by adding yourself to the
  9. nosy list or to subscribe to the ffmpeg-issues mailing list which receives
  10. a mail for every change to every issue. Replies to such mails will also
  11. be properly added to the respective issue.
  12. (the above does all work already after light testing)
  13. The subscription URL for the ffmpeg-trac list is:
  14. http(s)://ffmpeg.org/mailman/listinfo/ffmpeg-trac
  15. The URL of the webinterface of the tracker is:
  16. http(s)://ffmpeg.org/trac/ffmpeg
  17. NOTE: issue = (bug report || patch || feature request)
  18. Type:
  19. -----
  20. bug
  21. An error, flaw, mistake, failure, or fault in FFmpeg or libav* that
  22. prevents it from behaving as intended.
  23. feature request
  24. Request of support for encoding or decoding of a new codec, container
  25. or variant.
  26. Request of support for more, less or plain different output or behavior
  27. where the current implementation cannot be considered wrong.
  28. patch
  29. A patch as generated by diff which conforms to the patch submission and
  30. development policy.
  31. Priority:
  32. ---------
  33. critical
  34. Bugs and patches which deal with data loss and security issues.
  35. No feature request can be critical.
  36. important
  37. Bugs which make FFmpeg unusable for a significant number of users, and
  38. patches fixing them.
  39. Examples here might be completely broken MPEG-4 decoding or a build issue
  40. on Linux.
  41. While broken 4xm decoding or a broken OS/2 build would not be important,
  42. the separation to normal is somewhat fuzzy.
  43. For feature requests this priority would be used for things many people
  44. want.
  45. normal
  46. minor
  47. Bugs and patches about things like spelling errors, "mp2" instead of
  48. "mp3" being shown and such.
  49. Feature requests about things few people want or which do not make a big
  50. difference.
  51. wish
  52. Something that is desirable to have but that there is no urgency at
  53. all to implement, e.g. something completely cosmetic like a website
  54. restyle or a personalized doxy template or the FFmpeg logo.
  55. This priority is not valid for bugs.
  56. Status:
  57. -------
  58. new
  59. initial state
  60. open
  61. intermediate states
  62. closed
  63. final state
  64. Type/Status/Substatus:
  65. ----------
  66. */new/new
  67. Initial state of new bugs, patches and feature requests submitted by
  68. users.
  69. */open/open
  70. Issues which have been briefly looked at and which did not look outright
  71. invalid.
  72. This implicates that no real more detailed state applies yet. Conversely,
  73. the more detailed states below implicate that the issue has been briefly
  74. looked at.
  75. */closed/duplicate
  76. Bugs, patches or feature requests which are duplicates.
  77. Note that patches dealing with the same thing in a different way are not
  78. duplicates.
  79. Note, if you mark something as duplicate, do not forget setting the
  80. superseder so bug reports are properly linked.
  81. */closed/invalid
  82. Bugs caused by user errors, random ineligible or otherwise nonsense stuff.
  83. */closed/needs_more_info
  84. Issues for which some information has been requested by the developers,
  85. but which has not been provided by anyone within reasonable time.
  86. bug/open/reproduced
  87. Bugs which have been reproduced.
  88. bug/open/analyzed
  89. Bugs which have been analyzed and where it is understood what causes them
  90. and which exact chain of events triggers them. This analysis should be
  91. available as a message in the bug report.
  92. Note, do not change the status to analyzed without also providing a clear
  93. and understandable analysis.
  94. This state implicates that the bug either has been reproduced or that
  95. reproduction is not needed as the bug is already understood.
  96. bug/open/needs_more_info
  97. Bug reports which are incomplete and or where more information is needed
  98. from the submitter or another person who can provide it.
  99. This state implicates that the bug has not been analyzed or reproduced.
  100. Note, the idea behind needs_more_info is to offload work from the
  101. developers to the users whenever possible.
  102. bug/closed/fixed
  103. Bugs which have to the best of our knowledge been fixed.
  104. bug/closed/wont_fix
  105. Bugs which we will not fix. Possible reasons include legality, high
  106. complexity for the sake of supporting obscure corner cases, speed loss
  107. for similarly esoteric purposes, et cetera.
  108. This also means that we would reject a patch.
  109. If we are just too lazy to fix a bug then the correct state is open
  110. and unassigned. Closed means that the case is closed which is not
  111. the case if we are just waiting for a patch.
  112. bug/closed/works_for_me
  113. Bugs for which sufficient information was provided to reproduce but
  114. reproduction failed - that is the code seems to work correctly to the
  115. best of our knowledge.
  116. patch/open/approved
  117. Patches which have been reviewed and approved by a developer.
  118. Such patches can be applied anytime by any other developer after some
  119. reasonable testing (compile + regression tests + does the patch do
  120. what the author claimed).
  121. patch/open/needs_changes
  122. Patches which have been reviewed and need changes to be accepted.
  123. patch/closed/applied
  124. Patches which have been applied.
  125. patch/closed/rejected
  126. Patches which have been rejected.
  127. feature_request/open/needs_more_info
  128. Feature requests where it is not clear what exactly is wanted
  129. (these also could be closed as invalid ...).
  130. feature_request/closed/implemented
  131. Feature requests which have been implemented.
  132. feature_request/closed/wont_implement
  133. Feature requests which will not be implemented. The reasons here could
  134. be legal, philosophical or others.
  135. Note, please do not use type-status-substatus combinations other than the
  136. above without asking on ffmpeg-dev first!
  137. Note2, if you provide the requested info do not forget to remove the
  138. needs_more_info substate.
  139. Topic:
  140. ------
  141. A topic is a tag you should add to your issue in order to make grouping them
  142. easier.
  143. avcodec
  144. issues in libavcodec/*
  145. avformat
  146. issues in libavformat/*
  147. avutil
  148. issues in libavutil/*
  149. regression test
  150. issues in tests/*
  151. ffmpeg
  152. issues in or related to ffmpeg.c
  153. ffplay
  154. issues in or related to ffplay.c
  155. ffserver
  156. issues in or related to ffserver.c
  157. build system
  158. issues in or related to configure/Makefile
  159. regression
  160. bugs which were working in a past revision
  161. roundup
  162. issues related to our issue tracker