[FFmpeg-devel] [RFC] The Big Bump checklist

Stefano Sabatini stefano.sabatini-lala
Tue Feb 22 17:08:42 CET 2011


On date Tuesday 2011-02-22 14:58:24 +0100, Diego Elio Petten? encoded:
> Il giorno mar, 22/02/2011 alle 14.41 +0100, Stefano Sabatini ha scritto:
> > Releasing and dropping the deprecated API just afterhand, and give
> > another year for application developers to catch up with the new API
> > seems a much better plan to me, especially considering how disruptive
> > the bump will be given the delay from the previous one. 
> 
> Wait, I'm talking about bumping ABI, not API. You can keep the old API
> as deprecated by using inline wrappers, but mapping to the new ABI.
> 
> This way you still have source compatibility between the old and new
> FFmpeg, but also a binary compatibility between 0.7 and git master. And

In general you can't rely on this, upstream can bump at any moment.
Also which is the advantage of this?

> you drop the huge overhead currently present in the FFmpeg libraries on
> shared linking.

A possible scenario:

1) big bump, old API/ABI is not dropped (which require to hack the
various ifdefs in the code). I suppose you are aware that currently
bumping major -> breaking API/ABI, as the deprecated API is
automatically ifdeffed out.

2) 0.7 is released, with old API backward compatility layer and bumped
version

3) the old API is dropped -> API/ABI break

Now binaries which link against 0.7 will link against git master (at
least for some time), and developers we'll keep the old API layer in
the 0.7 relase.

I'm quite uneasy with point 1), as it will require the manual hack of
the various ifdef VERSION and it will delay the actual API/ABI break
up to when the old API will be dropped at point 3).
-- 
FFmpeg = Fiendish and Fancy Mournful Puristic Eccentric Geisha



More information about the ffmpeg-devel mailing list