[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Bug#896893: transition: ffmpeg



On 18/07/18 14:23, Lisandro Damián Nicanor Pérez Meyer wrote:
> El miércoles, 18 de julio de 2018 09:11:38 -03 Emilio Pozuelo Monfort 
> escribió:
>> Hi Lisandro,
>>
>> On 18/07/18 14:05, Lisandro Damián Nicanor Pérez Meyer wrote:
>>> Hi everyone!
>>>
>>> El miércoles, 18 de julio de 2018 07:15:29 -03 Emilio Pozuelo Monfort
>>> escribió:
>>> [snip]
>>>
>>>>> Fixed upstream, patches forwarded upstream or patches in the BTS:
>>> [snip]
>>>
>>>>> #888366 [src:qtwebengine-opensource-src] qtwebengine-opensource-src:
>>>>> FTBFS
>>>>> with FFmpeg 4.0 #888371
>>>
>>> As noted in https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=888366#43 in
>>> order to fix this we need a transition to have the bug fixed.
>>> Removing qtwebengine from testing to let ffmpeg transition before starting
>>> with the Qt transition is a non go, as it would break many user's setups,
>>> like oauth authentication for KMail, just to give one example.
>>>
>>> So I'm afraid I see no way around this except tangling the transitions.
>>
>> Any reason the new ffmpeg libs can't migrate to testing while keeping the
>> old libs there? That should allow ffmpeg to migrate now, and the Qt
>> transition can be done afterwards with a fix for qtwebengine.
> 
> Quoting https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=888366#17
> 
>   I assure you there there will not be more than one FFmpeg version in the
>   archive at once :)
> 
> Now if that can be relaxed then we definitely have a solution.

No, that is still true. For source packages.

However because of the way testing migration works, we allow a source package
providing new binary packages to keep the old ones in testing if they still have
rdeps (and they are co-installable). E.g. see how libicu57 is still in testing,
or libcurl3. Once all the rdeps have been updated and migrated to testing, the
britney removes the old libs.

That should be the case here as well. ffmpeg builds and migrates to testing
(together with all the rdeps that are rebuilt against the new version). The few
remaining packages that still link against the old SONAMEs will remain in
testing together with the old libs, and then eventually those packages will get
fixed or removed from testing, and the ffmpeg old libs will be removed too.

That means ffmpeg can start the transition now and migrate to testing, with qt
still linking against the old library. Then once ffmpeg has migrated, we can
start the Qt transition and get that rdep fixed, so that we eventually get rid
of the old "cruft" ffmpeg binary packages from testing.

You may not know of this "smooth transitions" concept because Qt can't use it.
In Qt land, all packages need to migrate at the same time because you are not
renaming your shared library packages, you just provide foo-abi-*, which are
provided by two different versions of the same package, and you can't have two
versions of the same package installed at the same time, whereas you can have
libavcodec57 and libavcodec58 installed simultaneously.

HTH,

Cheers,
Emilio


Reply to: