You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

206 lines
6.1KB

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