On Sun, 17 Mar 2024 10:06:31 +0900 Takashi Yano wrote: > On Sat, 16 Mar 2024 17:49:30 +0000 > Jon Turney wrote: > > On 16/03/2024 00:48, Takashi Yano via Cygwin-apps wrote: > > > On Sat, 16 Mar 2024 09:39:33 +0900 > > > Takashi Yano wrote: > > [...] > > >> > > >> This expected: > > >> 1.8.0-1 -> 1.8.0-2 -> 2.0.0-1 > > >> libsvtav1(1.8.0-1) -> libsvtav1enc1(1.8.0-2) + libsvtav1dec0(1.8.0-2) > > >> -> libsvt1enc1(1.8.0-2) + libsvtav1dec0(2.0.0-2) > > >> > > >> However, this does not seem to work as I expected. > > > > What unexpected thing happens? > > > > I guess you only get one of libsvtav1enc1 or libsvtav1dec0 (since if > > these both are marked "obsoletes: libsvtav1", to the dependency solver > > that mean that either of can replace libsvtav1, and provides everything > > that it provides. > > > > So maybe the best solution is: > > > > libsvtav1dec0_OBSOLETES=libsvtav1 > > libsvtav1dec0_REQUIRES=libsvtav1enc1 > > > > So libsvtav1 is replaced by both libsvtav1dec0 and libsvtav1enc1 > > Looks great! > > > >> My expectation was that both libsvtav1enc1(1.8.0-2) and > > >> libsvtav1dec0(1.8.0-2) > > >> are installed for upgrading libsvtav1(1.8.0-1). > > >> > > >> Instead, I found > > >> > > >> 1.8.0-2: > > >> libsvtav1_CATEGORY="_obsolete" > > >> libsvtav1_REQUIRES="libsvtav1enc1 libsvtav1dec0" > > >> libsvtav1enc1_CONTENTS="usr/bin/cygSvtAv1Enc-1.dll" > > >> libsvtav1dec0_CONTENTS="usr/bin/cygSvtAv1Dec-0.dll" > > > > Yeah, this should work, but is not longer preferred because you end up > > with an empty libsvtav1 hanging around forever... > > > > >> works as expected. > > >> Is it possible to change it like this now? > > > > I've tweaked the existing dependencies based on my reasoning above. > > Please let me know if this still isn't working right. > > Thanks you very much! > > Could you please also remove: > libsvtav1enc1_OBSOLETES=libsvtav1 > because it seems that this conflicts with > libsvtav1dec0_OBSOLETES=libsvtav1 > ?
I noticed that the following happen even with obove if the package which requires libsvtav1 is installed. At the first upgrade, Uninstall libsvt1v1 1.8.0-1 Install libsvtav1dec0 1.8.0-2 Install libsvtav1enc1 1.8.0-2 that is as expected except for libsvtav1dec0 is not latest. However, at the next upgrade (just run setup again), Uninstall libsvtav1dec0 1.8.0-2 Install libsvtav1 1.8.0-1 Install libsvtav1dec0 2.0.0-1 happens. This causes conflict: $ cygcheck -f /usr/bin/cygSvtAv1Dec-0.dll libsvtav1-1.8.0-1 libsvtav1dec0-2.0.0-1 Im not sure why this happens. Contrary to your idea, libsvtav1enc1_OBSOLETES="libsvtav1" libsvtav1enc1_REQUIRES="libsvtav1dec0" the followings happen as expected. Uninstall libsvtav1 1.8.0-1 Install libsvtav1dec0 2.0.0-1 Install libsvtav1enc1 1.8.0-2 Of cource, libsvtav1dec0_OBSOLETES=libsvtav1 should be removed in this case. What do you think? -- Takashi Yano <takashi.y...@nifty.ne.jp>