Re: [FFmpeg-devel] ABI break between 3.0 and 3.3 without symvers/SONAME changes

2017-06-03 Thread Jan Engelhardt
On Saturday 2017-06-03 14:27, Timo Rothenpieler wrote: > > It is made sure that the public ABI does not break between major releases, > this > the major version is not bumped. > The problem in practice is that _a lot_ of downstream library users misuse the > API, using non-public fields and what

Re: [FFmpeg-devel] ABI break between 3.0 and 3.3 without symvers/SONAME changes

2017-06-03 Thread wm4
On Sat, 3 Jun 2017 14:31:31 +0200 (CEST) Jan Engelhardt wrote: > On Saturday 2017-06-03 14:27, Timo Rothenpieler wrote: > > > >> could ffmpeg then ensure that the major is in fact bumped on major > >> releases? In distro context, a bump is easier to swallow than a > >> non-bump.. > > > > It i

Re: [FFmpeg-devel] ABI break between 3.0 and 3.3 without symvers/SONAME changes

2017-06-03 Thread Jan Engelhardt
On Saturday 2017-06-03 14:27, Timo Rothenpieler wrote: > >> could ffmpeg then ensure that the major is in fact bumped on major >> releases? In distro context, a bump is easier to swallow than a >> non-bump.. > > It is made sure that the public ABI does not break between major > releases, this the

Re: [FFmpeg-devel] ABI break between 3.0 and 3.3 without symvers/SONAME changes

2017-06-03 Thread wm4
On Sat, 3 Jun 2017 14:19:25 +0200 (CEST) Jan Engelhardt wrote: > >Anyway, in general, I recommend not pretending that FFmpeg has ABI > >compatibility. Especially not across major releases > > That would be fine with me - could ffmpeg then ensure that the > major is in fact bumped on major rele

Re: [FFmpeg-devel] ABI break between 3.0 and 3.3 without symvers/SONAME changes

2017-06-03 Thread Timo Rothenpieler
Am 03.06.2017 um 14:19 schrieb Jan Engelhardt: On Saturday 2017-06-03 14:11, wm4 wrote: The layout of struct AVCodec changed. Four function pointers were inserted in the middle, shifting void (*flush) to a new address. The size of AVCodec also changed, which would have required a full MAJOR bu

Re: [FFmpeg-devel] ABI break between 3.0 and 3.3 without symvers/SONAME changes

2017-06-03 Thread Jan Engelhardt
On Saturday 2017-06-03 14:11, wm4 wrote: >> >> The layout of struct AVCodec changed. Four function pointers were >> inserted in the middle, shifting void (*flush) to a new address. The >> size of AVCodec also changed, which would have required a full MAJOR >> bump. > >Those aren't even public

Re: [FFmpeg-devel] ABI break between 3.0 and 3.3 without symvers/SONAME changes

2017-06-03 Thread Hendrik Leppkes
On Sat, Jun 3, 2017 at 2:07 PM, Jan Engelhardt wrote: > > On Saturday 2017-06-03 14:02, Hendrik Leppkes wrote: > >>On Sat, Jun 3, 2017 at 1:58 PM, Jan Engelhardt wrote: >>> >>> On Saturday 2017-06-03 13:34, Hendrik Leppkes wrote: > > Fixing the .v file with a patch now won't help remedy t

Re: [FFmpeg-devel] ABI break between 3.0 and 3.3 without symvers/SONAME changes

2017-06-03 Thread Timo Rothenpieler
Size changes are breakers in both directions. The size of the structs are not part of the public API/ABI. Only the location of public fields in them is. You claim your ABI is stable in one direction, which means that a program built with 3.0 headers should work with a 3.3 library on a separate

Re: [FFmpeg-devel] ABI break between 3.0 and 3.3 without symvers/SONAME changes

2017-06-03 Thread Hendrik Leppkes
On Sat, Jun 3, 2017 at 2:07 PM, Jan Engelhardt wrote: > > On Saturday 2017-06-03 13:34, Hendrik Leppkes wrote: >>On Sat, Jun 3, 2017 at 1:18 PM, Jan Engelhardt wrote: >>> >>>The layout of struct AVCodec changed. Four function pointers were >>>inserted in the middle, shifting void (*flush) to a ne

Re: [FFmpeg-devel] ABI break between 3.0 and 3.3 without symvers/SONAME changes

2017-06-03 Thread wm4
On Sat, 3 Jun 2017 14:07:30 +0200 (CEST) Jan Engelhardt wrote: > On Saturday 2017-06-03 13:34, Hendrik Leppkes wrote: > >On Sat, Jun 3, 2017 at 1:18 PM, Jan Engelhardt wrote: > >> > >>The layout of struct AVCodec changed. Four function pointers were > >>inserted in the middle, shifting void (*

Re: [FFmpeg-devel] ABI break between 3.0 and 3.3 without symvers/SONAME changes

2017-06-03 Thread wm4
On Sat, 3 Jun 2017 13:18:30 +0200 (CEST) Jan Engelhardt wrote: > > The layout of struct AVCodec changed. Four function pointers were > inserted in the middle, shifting void (*flush) to a new address. The > size of AVCodec also changed, which would have required a full MAJOR > bump. Those are

Re: [FFmpeg-devel] ABI break between 3.0 and 3.3 without symvers/SONAME changes

2017-06-03 Thread Jan Engelhardt
On Saturday 2017-06-03 13:34, Hendrik Leppkes wrote: >On Sat, Jun 3, 2017 at 1:18 PM, Jan Engelhardt wrote: >> >>The layout of struct AVCodec changed. Four function pointers were >>inserted in the middle, shifting void (*flush) to a new address. >>The size of AVCodec also changed, which would hav

Re: [FFmpeg-devel] ABI break between 3.0 and 3.3 without symvers/SONAME changes

2017-06-03 Thread Jan Engelhardt
On Saturday 2017-06-03 14:02, Hendrik Leppkes wrote: >On Sat, Jun 3, 2017 at 1:58 PM, Jan Engelhardt wrote: >> >> On Saturday 2017-06-03 13:34, Hendrik Leppkes wrote: Fixing the .v file with a patch now won't help remedy the situation on existing systems; however, on future patch

Re: [FFmpeg-devel] ABI break between 3.0 and 3.3 without symvers/SONAME changes

2017-06-03 Thread Hendrik Leppkes
On Sat, Jun 3, 2017 at 1:58 PM, Jan Engelhardt wrote: > > On Saturday 2017-06-03 13:34, Hendrik Leppkes wrote: >>> >>> Fixing the .v file with a patch now won't help remedy the situation on >>> existing systems; however, on future patch submissions, this action of >>> editing the .v file needs to

Re: [FFmpeg-devel] ABI break between 3.0 and 3.3 without symvers/SONAME changes

2017-06-03 Thread Jan Engelhardt
On Saturday 2017-06-03 13:34, Hendrik Leppkes wrote: >> >> Fixing the .v file with a patch now won't help remedy the situation on >> existing systems; however, on future patch submissions, this action of >> editing the .v file needs to be remembered when functions are >> added or removed. > >We ha

Re: [FFmpeg-devel] ABI break between 3.0 and 3.3 without symvers/SONAME changes

2017-06-03 Thread Hendrik Leppkes
On Sat, Jun 3, 2017 at 1:18 PM, Jan Engelhardt wrote: > > I received a user report about ABI breakage between ffmpeg 3.0 and 3.3 > through the distribution commenting system > https://build.opensuse.org/package/show/multimedia:libs/ffmpeg : > > """I'm having a library compiled against ffmp

[FFmpeg-devel] ABI break between 3.0 and 3.3 without symvers/SONAME changes

2017-06-03 Thread Jan Engelhardt
I received a user report about ABI breakage between ffmpeg 3.0 and 3.3 through the distribution commenting system https://build.opensuse.org/package/show/multimedia:libs/ffmpeg : """I'm having a library compiled against ffmpeg 3.3 on OBS. It uses the avcodec_{send|receive}packe