media-libs/dav1d-1.0.0 received a bump from 0.9.2 in ~amd64 and causes rebuilds - also for mail-client/thunderbird[system-av1], which fails compile against updated dav1d. Reproducible: Always downgrading to media-libs/dav1d-0.9.2 lets the thunderbird build succeed again.
Created attachment 767557 [details] build.log 8 3:58.46 In file included from Unified_cpp_dom_media_platforms0.cpp:65: 8 3:58.47 /var/tmp/portage-disk/portage/mail-client/thunderbird-91.7.0/work/thunderbird-91.7.0/dom/media/platforms/agnostic/DAV1DDecoder.cpp:39:12: error: no member named 'n _frame_threads' in 'Dav1dSettings' 8 3:58.47 settings.n_frame_threads = 8 3:58.47 ~~~~~~~~ ^ 8 3:58.47 /var/tmp/portage-disk/portage/mail-client/thunderbird-91.7.0/work/thunderbird-91.7.0/dom/media/platforms/agnostic/DAV1DDecoder.cpp:45:12: error: no member named 'n _tile_threads' in 'Dav1dSettings'
Created attachment 767558 [details] emerge --info
( simmilar fail with vlc in bug #835787 )
( also #835791 )
caused by breaking changes in dav1d with soname bump: https://code.videolan.org/videolan/dav1d/-/commit/753eef833bdd8ff1585c5c858cafeca8fefbb16e
Can confirm, with =media-libs/dav1d-0.9.2 thunderbird compiles just fine, not so with =media-libs/dav1d-1.0.0 ...
https://cgit.freebsd.org/ports/commit/?id=3468f1957cf25742c60e1066f1174866c42efe96 ( https://cgit.freebsd.org/ports/plain/mail/thunderbird/files/patch-bug1734058?id=3468f1957cf25742c60e1066f1174866c42efe96 ) can try this patch earliest tomorrow, but something for you tinkerers out there! Basically it's a backport from firefox:rapid which _only_ supports dav1d >=0.9.3.
(In reply to Joonas Niilola from comment #7) > https://cgit.freebsd.org/ports/commit/ > ?id=3468f1957cf25742c60e1066f1174866c42efe96 > ( > https://cgit.freebsd.org/ports/plain/mail/thunderbird/files/patch- > bug1734058?id=3468f1957cf25742c60e1066f1174866c42efe96 ) > > can try this patch earliest tomorrow, but something for you tinkerers out > there! > > Basically it's a backport from firefox:rapid which _only_ supports dav1d > >=0.9.3. That patch works for me, it builds and seems to run at least.
(In reply to Joonas Niilola from comment #7) > Basically it's a backport from firefox:rapid which _only_ supports dav1d > >=0.9.3. then maybe better to wrap the changes in #if DAV1D_API_VERSION_MAJOR >= 6 .. #else .. #endif for some generic patch to apply?
(In reply to Christian Bricart from comment #9) > (In reply to Joonas Niilola from comment #7) > > Basically it's a backport from firefox:rapid which _only_ supports dav1d > > >=0.9.3. > > then maybe better to wrap the changes in > > #if DAV1D_API_VERSION_MAJOR >= 6 > .. > #else > .. > #endif > > for some generic patch to apply? yes, should be fine
Created attachment 767602 [details, diff] Patch from comment #7 with adapted line numbers
The bug has been closed via the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=f40c5716d239c87edfb220cf7b5c8755a7e89b87 commit f40c5716d239c87edfb220cf7b5c8755a7e89b87 Author: Joonas Niilola <juippis@gentoo.org> AuthorDate: 2022-03-23 07:30:31 +0000 Commit: Joonas Niilola <juippis@gentoo.org> CommitDate: 2022-03-23 08:15:35 +0000 mail-client/thunderbird: update patch set to build with dav1d-1.0.0 - unfortunately with the patch thunderbird fails to build with dav1d <1.0.0 so there's an ugly condition for that now. Thanks-to: Jan Breig <jan.breig@disroot.org> Closes: https://bugs.gentoo.org/835788 Signed-off-by: Joonas Niilola <juippis@gentoo.org> mail-client/thunderbird/Manifest | 2 +- mail-client/thunderbird/thunderbird-91.7.0.ebuild | 12 ++++++++++-- 2 files changed, 11 insertions(+), 3 deletions(-) Additionally, it has been referenced in the following commit(s): https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=e5b6cf514635031f5c164ec90384d6174cf13742 commit e5b6cf514635031f5c164ec90384d6174cf13742 Author: Joonas Niilola <juippis@gentoo.org> AuthorDate: 2022-03-23 08:08:15 +0000 Commit: Joonas Niilola <juippis@gentoo.org> CommitDate: 2022-03-23 08:15:36 +0000 www-client/firefox: dav1d-1.0.0 compatibility patch for unstable ESR Bug: https://bugs.gentoo.org/835788 Signed-off-by: Joonas Niilola <juippis@gentoo.org> www-client/firefox/Manifest | 1 + www-client/firefox/firefox-91.7.1.ebuild | 12 ++++++++++-- 2 files changed, 11 insertions(+), 2 deletions(-)
(In reply to Larry the Git Cow from comment #12) > mail-client/thunderbird: update patch set to build with dav1d-1.0.0 > > - unfortunately with the patch thunderbird fails to build with dav1d > <1.0.0 so there's an ugly condition for that now. > > Thanks-to: Jan Breig <jan.breig@disroot.org> > Closes: https://bugs.gentoo.org/835788 > Signed-off-by: Joonas Niilola <juippis@gentoo.org> I had masked dav1d-1.0.0 earlier this week and now am being downgraded to firefox-91. Just wanted to check if this was the intended upgrade path, since I don't immediately see anything about firefox 98.0.2 requiring dav1d-1.0.0 but this bug is being referenced in the www-client/firefox git log.
(In reply to Kobboi from comment #13) > (In reply to Larry the Git Cow from comment #12) > > > mail-client/thunderbird: update patch set to build with dav1d-1.0.0 > > > > - unfortunately with the patch thunderbird fails to build with dav1d > > <1.0.0 so there's an ugly condition for that now. > > > > Thanks-to: Jan Breig <jan.breig@disroot.org> > > Closes: https://bugs.gentoo.org/835788 > > Signed-off-by: Joonas Niilola <juippis@gentoo.org> > > > I had masked dav1d-1.0.0 earlier this week and now am being downgraded to > firefox-91. Just wanted to check if this was the intended upgrade path, > since I don't immediately see anything about firefox 98.0.2 requiring > dav1d-1.0.0 but this bug is being referenced in the www-client/firefox git > log. Need to be more specific. What happens if you explicitly try to emerge 98.x? It should tell you why it's trying to skip it.
$ sudo emerge -1qav firefox:rapid !!! All ebuilds that could satisfy ">=media-libs/dav1d-0.9.3:=" have been masked. !!! One of the following masked packages is required to complete your request: - media-libs/dav1d-9999::gentoo (masked by: package.mask, missing keyword) /var/db/repos/kobboi-linux/profiles/kobboi/package.mask: # https://bugs.gentoo.org/835788 # https://bugs.gentoo.org/835791 - media-libs/dav1d-1.0.0::gentoo (masked by: package.mask) (dependency required by "www-client/firefox-98.0.2::gentoo[system-av1]" [ebuild]) (dependency required by "firefox:rapid" [argument]) For more information, see the MASKED PACKAGES section in the emerge man page or refer to the Gentoo Handbook.
There is only dav1d-0.9.2 in the tree.
Turn off system-av1 then? You've put it on yet masked the only version that it can be satisfied by, hence downgrade to older FF.
It was masked (by me locally) before these firefox/thunderbird patches, also because there seemed to be other packages that were having troubles with it. I had the impression that this was going to be fixed in a way that would support whatever version of dav1d. If not, then indeed I will have to find my own way around this. I just wanted to double check (or have someone double check) that all of this makes sense. A regular update (with dav1d-1.0.0 masked by me) now only wants to do the aforementioned downgrade after first removing the only firefox version I have installed. That is something that I typically do not see in firefox upgrade scenarios and might leave other people without an instance of firefox. I just thought it was worth asking a question about it.
And I did not "put it on", it is on by default. Just concerned about user experience man, that is all.
(In reply to Kobboi from comment #19) > And I did not "put it on", it is on by default. Just concerned about user > experience man, that is all. I'm on mobile and trying to help, I'm not trying to be insulting or something? You were wondering if it's the expected or correct path on upgrades and I'm exploring it: I'm trying to understand what the issue is. To me, it sounds like there's no other possible option if you're masking new dav1d yourself. There's no < dep in the ebuild, so it's purely because of the mask combined with system-av1. Now, what we could do is turn off the default (at least for now) until the other issues with dav1d are fixed (I didjt see it was default on and hard to check on mobile - surprised it is) to make it easier for people to avoid 1.0.0 if their other packages are breaking (But most/all packages for dav1d breakage have patches in bugs at least now so I don't know if it's worth it, not my call)
(In reply to Kobboi from comment #18) > It was masked (by me locally) before these firefox/thunderbird patches, also > because there seemed to be other packages that were having troubles with it. > I had the impression that this was going to be fixed in a way that would > support whatever version of dav1d. > I think that's what happened - juippis has made the patch application conditional so it should work either way
Either way = with dav1d-1.0.0 and with what other version of dav1d? system-av1? ( >=media-libs/dav1d-0.9.3:= >=media-libs/libaom-1.0.0:= ) 0.9.3 does not exist: not in the portage tree, nor upstream.
(In reply to Kobboi from comment #22) > Either way = with dav1d-1.0.0 and with what other version of dav1d? > > system-av1? ( > >=media-libs/dav1d-0.9.3:= > >=media-libs/libaom-1.0.0:= > ) > > 0.9.3 does not exist: not in the portage tree, nor upstream. Ohhhh - so the patch didn't change anything, but the dep was there already. We'd need to figure out what API changes led to them doing it in the first place. I thought you meant the patch just added was only working one way. Now I get it - I got confused by the has_version bit (implying it was set up to work already). I think this bug is a good example of why system-av1 default isn't a good idea.
Firefox:esr will support dav1d-0.9.2, but :rapid will not. :rapid needs 1.0.0 because it uses the dav1d's new API/ABI, Mozilla snapshotted 0.9.2_pSomething to their bundled av1 support 4-5 months ago which also made whissi package.use.mask firefox[system-av1] for :rapid back then. Firefox:esr and thunderbird were fixed to work with both versions of dav1d, 0.9.2 or 1.0.0, but there is no such scenario available for :rapid - at least that I'm aware of.
Thank you for clarifying. I unmasked dav1d-1.0.0 again, since all of the issues that I ran into with it have been resolved in the meantime.