]> git.sesse.net Git - ffmpeg/blobdiff - doc/issue_tracker.txt
doc: Drop DJGPP section, Libav now compiles out-of-the-box on FreeDOS.
[ffmpeg] / doc / issue_tracker.txt
index c542f0df96d64c780afff5c839b2f80fe849b549..e5733ec9d5ca717e827d76ac1cae587dce4291c9 100644 (file)
@@ -1,23 +1,40 @@
-ffmpegs bug/patch/feature request tracker manual
+Libav's bug/patch/feature request tracker manual
 ================================================
 
 ================================================
 
-NOTE, this is a draft, its not yet recommanded to send real bugrepors to the
-tracker but rather use the mailinglists
-though if you are brave and dont mind that your bugreport might disapear or
-that you might be mailbombed due to a missconiguration you can surely try
-to enter a real bugreport
+NOTE: This is a draft.
 
 Overview:
 ---------
 
 Overview:
 ---------
-FFmpeg uses roundup for tracking issues, new issues and changes to
+Libav uses Roundup for tracking issues, new issues and changes to
 existing issues can be done through a web interface and through email.
 existing issues can be done through a web interface and through email.
-Its possible to subscribe to individual issues by adding yourself to the
-nosy list or to subscribe to the ffmpeg_issues mailinglist which receives
+It is possible to subscribe to individual issues by adding yourself to the
+nosy list or to subscribe to the ffmpeg-issues mailing list which receives
 a mail for every change to every issue. Replies to such mails will also
 a mail for every change to every issue. Replies to such mails will also
-properly be added to the respective issue.
+be properly added to the respective issue.
 (the above does all work already after light testing)
 (the above does all work already after light testing)
-
-note: issue = (bug report || patch || feature request)
+The subscription URL for the ffmpeg-issues list is:
+http://live.polito/mailman/listinfo/ffmpeg-issues
+The URL of the webinterface of the tracker is:
+http(s)://roundup.libav.org/
+Note the URLs in this document are obfuscated, you must append the top level
+domain for non-profit organizations to the tracker, and of Italy to the
+mailing list.
+
+Email Interface:
+----------------
+There is a mailing list to which all new issues and changes to existing issues
+are sent. You can subscribe through
+http://live.polito/mailman/listinfo/ffmpeg-issues
+Replies to messages there will have their text added to the specific issues.
+Attachments will be added as if they had been uploaded via the web interface.
+You can change the status, substatus, topic, ... by changing the subject in
+your reply like:
+Re: [issue94] register_avcodec and allcodecs.h [type=patch;status=open;substatus=approved]
+Roundup will then change things as you requested and remove the [...] from
+the subject before forwarding the mail to the mailing list.
+
+
+NOTE: issue = (bug report || patch || feature request)
 
 Type:
 -----
 
 Type:
 -----
@@ -28,27 +45,27 @@ bug
 feature request
     Request of support for encoding or decoding of a new codec, container
     or variant.
 feature request
     Request of support for encoding or decoding of a new codec, container
     or variant.
-    Request of support for more, less or plain different output or behavior.
-    Where the current behavior cannot be considered wrong.
+    Request of support for more, less or plain different output or behavior
+    where the current implementation cannot be considered wrong.
 
 patch
     A patch as generated by diff which conforms to the patch submission and
 
 patch
     A patch as generated by diff which conforms to the patch submission and
-    Development Policy.
+    development policy.
 
 
 Priority:
 ---------
 critical
 
 
 Priority:
 ---------
 critical
-    Bugs and patches which deal with data loss and security issues
-    no feature request can be critical.
+    Bugs and patches which deal with data loss and security issues.
+    No feature request can be critical.
 
 important
 
 important
-    Bugs which makes ffmpeg unuseable for a significant number of users, and
+    Bugs which make Libav unusable for a significant number of users, and
     patches fixing them.
     patches fixing them.
-    examples here might be completly broken mpeg4 decoding or a build issue
-    on linux
-    while broken 4xm decoding or broken os2 build would not be important, the
-    seperation to normal is somewhat fuzzy ...
+    Examples here might be completely broken MPEG-4 decoding or a build issue
+    on Linux.
+    While broken 4xm decoding or a broken OS/2 build would not be important,
+    the separation to normal is somewhat fuzzy.
     For feature requests this priority would be used for things many people
     want.
 
     For feature requests this priority would be used for things many people
     want.
 
@@ -57,12 +74,15 @@ normal
 
 minor
     Bugs and patches about things like spelling errors, "mp2" instead of
 
 minor
     Bugs and patches about things like spelling errors, "mp2" instead of
-    "mp3" being shown and such
-    Feature requests about things few people want or which dont make a big
+    "mp3" being shown and such.
+    Feature requests about things few people want or which do not make a big
     difference.
 
 wish
     difference.
 
 wish
-    [FIXME can a bug be priority wish?]
+    Something that is desirable to have but that there is no urgency at
+    all to implement, e.g. something completely cosmetic like a website
+    restyle or a personalized doxy template or the Libav logo.
+    This priority is not valid for bugs.
 
 
 Status:
 
 
 Status:
@@ -74,83 +94,135 @@ open
     intermediate states
 
 closed
     intermediate states
 
 closed
-    Final state
+    final state
 
 
 Type/Status/Substatus:
 ----------
 */new/new
     Initial state of new bugs, patches and feature requests submitted by
 
 
 Type/Status/Substatus:
 ----------
 */new/new
     Initial state of new bugs, patches and feature requests submitted by
-    users
+    users.
 
 */open/open
 
 */open/open
-    Issues which have been briefly looked at and which didnt look outright
-    invalid
-    This implicates that no real more detailed state applies yet. And the
-    more detailed states below implicate that the issue has been briefly
+    Issues which have been briefly looked at and which did not look outright
+    invalid.
+    This implicates that no real more detailed state applies yet. Conversely,
+    the more detailed states below implicate that the issue has been briefly
     looked at.
 
 */closed/duplicate
     looked at.
 
 */closed/duplicate
-    Bugs, patches or feature requests which are duplicate of some other.
-    Note patches dealing with the same thing but differently are not duplicate.
+    Bugs, patches or feature requests which are duplicates.
+    Note that patches dealing with the same thing in a different way are not
+    duplicates.
+    Note, if you mark something as duplicate, do not forget setting the
+    superseder so bug reports are properly linked.
 
 */closed/invalid
 
 */closed/invalid
-    Bugs caused by user errors, random ineligible or otherwise nonsense stuff
+    Bugs caused by user errors, random ineligible or otherwise nonsense stuff.
+
+*/closed/needs_more_info
+    Issues for which some information has been requested by the developers,
+    but which has not been provided by anyone within reasonable time.
 
 bug/open/reproduced
 
 bug/open/reproduced
-    Bugs which have been reproduced
+    Bugs which have been reproduced.
 
 bug/open/analyzed
     Bugs which have been analyzed and where it is understood what causes them
 
 bug/open/analyzed
     Bugs which have been analyzed and where it is understood what causes them
-    and which exact chain of events triggers them. This analyzis should be
-    available as a message in the bugreport
+    and which exact chain of events triggers them. This analysis should be
+    available as a message in the bug report.
     Note, do not change the status to analyzed without also providing a clear
     and understandable analysis.
     This state implicates that the bug either has been reproduced or that
     Note, do not change the status to analyzed without also providing a clear
     and understandable analysis.
     This state implicates that the bug either has been reproduced or that
-    reproduction is not needed as the bug is understood already anyway.
+    reproduction is not needed as the bug is already understood.
 
 bug/open/needs_more_info
 
 bug/open/needs_more_info
-    Bugreports which are incomplete and or where more information is needed
-    from the submitter or another person who can provide the info.
-    This state implicates that the bug has not been analyzed or reproduced
+    Bug reports which are incomplete and or where more information is needed
+    from the submitter or another person who can provide it.
+    This state implicates that the bug has not been analyzed or reproduced.
+    Note, the idea behind needs_more_info is to offload work from the
+    developers to the users whenever possible.
 
 bug/closed/fixed
     Bugs which have to the best of our knowledge been fixed.
 
 bug/closed/wont_fix
 
 bug/closed/fixed
     Bugs which have to the best of our knowledge been fixed.
 
 bug/closed/wont_fix
-    Bugs which we will not fix, the reasons here could be legal, philosophical
-    or others
+    Bugs which we will not fix. Possible reasons include legality, high
+    complexity for the sake of supporting obscure corner cases, speed loss
+    for similarly esoteric purposes, et cetera.
+    This also means that we would reject a patch.
+    If we are just too lazy to fix a bug then the correct state is open
+    and unassigned. Closed means that the case is closed which is not
+    the case if we are just waiting for a patch.
 
 bug/closed/works_for_me
     Bugs for which sufficient information was provided to reproduce but
 
 bug/closed/works_for_me
     Bugs for which sufficient information was provided to reproduce but
-    reproduction failed that is the code seems to work correctly to the
-    best of our knowledgde.
+    reproduction failed that is the code seems to work correctly to the
+    best of our knowledge.
 
 patch/open/approved
     Patches which have been reviewed and approved by a developer.
     Such patches can be applied anytime by any other developer after some
     reasonable testing (compile + regression tests + does the patch do
 
 patch/open/approved
     Patches which have been reviewed and approved by a developer.
     Such patches can be applied anytime by any other developer after some
     reasonable testing (compile + regression tests + does the patch do
-    what the author claimed)
+    what the author claimed).
 
 patch/open/needs_changes
 
 patch/open/needs_changes
-    Patches which have been reviewed and need changes to be accepted
+    Patches which have been reviewed and need changes to be accepted.
 
 patch/closed/applied
 
 patch/closed/applied
-    Patches which have been applied
+    Patches which have been applied.
 
 patch/closed/rejected
 
 patch/closed/rejected
-    Patches which have been rejected
+    Patches which have been rejected.
 
 feature_request/open/needs_more_info
 
 feature_request/open/needs_more_info
-    Feature requests where its not clear what exactly is wanted
-    (these also could be closed as invalid ...)
+    Feature requests where it is not clear what exactly is wanted
+    (these also could be closed as invalid ...).
 
 feature_request/closed/implemented
     Feature requests which have been implemented.
 
 feature_request/closed/wont_implement
 
 feature_request/closed/implemented
     Feature requests which have been implemented.
 
 feature_request/closed/wont_implement
-    Feature reuests which will not be implemented. The reasons here could
+    Feature requests which will not be implemented. The reasons here could
     be legal, philosophical or others.
 
 Note, please do not use type-status-substatus combinations other than the
     be legal, philosophical or others.
 
 Note, please do not use type-status-substatus combinations other than the
-above without asking on ffmpeg-dev first!
+above without asking on libav-devel first!
+
+Note2, if you provide the requested info do not forget to remove the
+needs_more_info substate.
+
+Topic:
+------
+A topic is a tag you should add to your issue in order to make grouping them
+easier.
+
+avcodec
+    issues in libavcodec/*
+
+avformat
+    issues in libavformat/*
+
+avutil
+    issues in libavutil/*
+
+regression test
+    issues in tests/*
+
+ffmpeg
+    issues in or related to ffmpeg.c
+
+ffplay
+    issues in or related to ffplay.c
+
+ffserver
+    issues in or related to ffserver.c
+
+build system
+    issues in or related to configure/Makefile
+
+regression
+    bugs which were working in a past revision
+
+roundup
+    issues related to our issue tracker