mirror of https://git.ffmpeg.org/ffmpeg.git
229 lines
7.3 KiB
Plaintext
229 lines
7.3 KiB
Plaintext
FFmpeg's bug/patch/feature request tracker manual
|
|
=================================================
|
|
|
|
NOTE: This is a draft.
|
|
|
|
Overview:
|
|
---------
|
|
FFmpeg uses Roundup for tracking issues, new issues and changes to
|
|
existing issues can be done through a web interface and through email.
|
|
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
|
|
be properly added to the respective issue.
|
|
(the above does all work already after light testing)
|
|
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.ffmpeg/roundup/ffmpeg/
|
|
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:
|
|
-----
|
|
bug
|
|
An error, flaw, mistake, failure, or fault in FFmpeg or libav* that
|
|
prevents it from behaving as intended.
|
|
|
|
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 implementation cannot be considered wrong.
|
|
|
|
patch
|
|
A patch as generated by diff which conforms to the patch submission and
|
|
development policy.
|
|
|
|
|
|
Priority:
|
|
---------
|
|
critical
|
|
Bugs and patches which deal with data loss and security issues.
|
|
No feature request can be critical.
|
|
|
|
important
|
|
Bugs which make FFmpeg unusable for a significant number of users, and
|
|
patches fixing them.
|
|
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.
|
|
|
|
normal
|
|
|
|
|
|
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 do not make a big
|
|
difference.
|
|
|
|
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 FFmpeg logo.
|
|
This priority is not valid for bugs.
|
|
|
|
|
|
Status:
|
|
-------
|
|
new
|
|
initial state
|
|
|
|
open
|
|
intermediate states
|
|
|
|
closed
|
|
final state
|
|
|
|
|
|
Type/Status/Substatus:
|
|
----------
|
|
*/new/new
|
|
Initial state of new bugs, patches and feature requests submitted by
|
|
users.
|
|
|
|
*/open/open
|
|
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
|
|
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
|
|
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
|
|
Bugs which have been reproduced.
|
|
|
|
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 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
|
|
reproduction is not needed as the bug is already understood.
|
|
|
|
bug/open/needs_more_info
|
|
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
|
|
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
|
|
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
|
|
what the author claimed).
|
|
|
|
patch/open/needs_changes
|
|
Patches which have been reviewed and need changes to be accepted.
|
|
|
|
patch/closed/applied
|
|
Patches which have been applied.
|
|
|
|
patch/closed/rejected
|
|
Patches which have been rejected.
|
|
|
|
feature_request/open/needs_more_info
|
|
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 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
|
|
above without asking on ffmpeg-dev 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
|