[PATCH] Document internal API updating policy.

Stefano Sabatini stefano.sabatini-lala
Sun May 16 19:53:22 CEST 2010

 doc/developer.texi |   12 ++++++++++++
 1 files changed, 12 insertions(+), 0 deletions(-)

diff --git a/doc/developer.texi b/doc/developer.texi
index edce7ea..7ce799f 100644
--- a/doc/developer.texi
+++ b/doc/developer.texi
@@ -221,6 +221,18 @@ should also be avoided if they don't make the code easier to understand.
     existing data structure).
     Incrementing the third component means a noteworthy binary compatible
     change (e.g. encoder bug fix that matters for the decoder).
+    When a new public symbol is added the minor version must be
+    bumped. If a symbol of the internal API is added the minor version
+    must be bumped.
+    Public API symbols or internal API symbols used by other FFmpeg
+    libraries cannot be changed unless major bumps, so in case of renames
+    or if a function signature referenced by such a symbol is changed, the
+    old symbol must continue to exist in the library.
+    When a dependency between two libraries is added (e.g. libavformat
+    starts to use a symbol of the internal or public API defined in
+    libavcodec) the micro number of the library must be bumped.
+    The last rule should help to track and document the internal
+    dependancies between the FFmpeg libraries.
     Compiler warnings indicate potential bugs or code with bad style. If a type of
     warning always points to correct and clean code, that warning should


More information about the ffmpeg-devel mailing list