Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 832975 - www-client/firefox-97.0 missing or outdated dependencies (pip check fails)
Summary: www-client/firefox-97.0 missing or outdated dependencies (pip check fails)
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Mozilla Gentoo Team
URL:
Whiteboard:
Keywords:
: 832993 (view as bug list)
Depends on:
Blocks:
 
Reported: 2022-02-09 07:30 UTC by Hans de Graaff
Modified: 2022-02-10 17:09 UTC (History)
3 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
build.log (build.log,35.12 KB, text/plain)
2022-02-09 07:30 UTC, Hans de Graaff
Details
failing environment (environment,228.57 KB, text/plain)
2022-02-09 18:46 UTC, Michael Cook
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Hans de Graaff gentoo-dev Security 2022-02-09 07:30:14 UTC
Created attachment 764669 [details]
build.log

I can't compile firefox 97.0 on a system with outdated dependencies. Relevant output from build.log:

httpbin 0.7.0 requires raven, which is not installed.
twisted 21.7.0 has requirement attrs>=19.2.0, but you have attrs 19.1.0.
pytest 6.2.5 has requirement attrs>=19.2.0, but you have attrs 19.1.0.
hypothesis 6.33.0 has requirement attrs>=19.2.0, but you have attrs 19.1.0.
flask 2.0.2 has requirement Jinja2>=3.0, but you have jinja2 2.11.3.
automat 20.2.0 has requirement attrs>=19.2.0, but you have attrs 19.1.0.
Comment 1 Hans de Graaff gentoo-dev Security 2022-02-09 07:31:56 UTC
Hmm, looking at this further I already have installed:

dev-python/attrs-21.4.0
dev-python/jinja-3.0.3

So perhaps my quoted part of the build.log is not the relevant part.
Comment 2 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2022-02-09 07:34:37 UTC
Looks like the pip check stuff back from the dead again.
Comment 3 Joonas Niilola gentoo-dev 2022-02-09 07:42:31 UTC
I tested with _broken_ pip check as instructed in here:
https://bugs.gentoo.org/828999#c11 and it passed. On a hunch this seems more related to https://bugs.gentoo.org/831903

I've got a couple of ideas but reallifework occupies me for the next few hours.
Comment 4 Joonas Niilola gentoo-dev 2022-02-09 12:40:31 UTC
My pip check is totally busted, 
```
# pip check
snakeoil 0.9.10 requires frobnicate, which is not installed.
pytest 7.0.0 has requirement attrs>=19.2.0, but you have attrs 19.1.0.
twisted 22.1.0 has requirement attrs>=19.2.0, but you have attrs 19.1.0.
pkgcheck 0.10.9 has requirement tree-sitter~=0.19.0, but you have tree-sitter 0.20.0.
automat 20.2.0 has requirement attrs>=19.2.0, but you have attrs 19.1.0.
```

but the build still passes. Can you try without ccache, even though it's not supposed to work with firefox anyway? Also can you post your /var/tmp/portage/www-client/firefox-97.0/temp/environment file?

Currently I can't reproduce this.
Comment 5 Joonas Niilola gentoo-dev 2022-02-09 17:00:44 UTC
*** Bug 832993 has been marked as a duplicate of this bug. ***
Comment 6 Michael Cook 2022-02-09 17:04:22 UTC
Installing =dev-python/twisted-22.1.0-r1 will encounter this issue. Firefox has a bunch of bundled python stuff in third_party/python which ends up getting used. That version of twisted requires attrs>=19.2.0 but Firefox ends up using the bundled 19.1.0. On my system I have =dev-python/attrs-21.4.0 installed. Running pip check on my system (not the Firefox build env) returns no errors.
Comment 7 Joonas Niilola gentoo-dev 2022-02-09 17:08:32 UTC
I have =dev-python/twisted-22.1.0-r1 installed, pip check busted, but my configure passes fine. Do you use ccache? Can you post your build.log and the /var/tmp/portage/www-client/firefox-97.0/temp/environment file?
Comment 8 Michael Cook 2022-02-09 17:44:17 UTC
(In reply to Joonas Niilola from comment #7)
> I have =dev-python/twisted-22.1.0-r1 installed, pip check busted, but my
> configure passes fine. Do you use ccache? Can you post your build.log and
> the /var/tmp/portage/www-client/firefox-97.0/temp/environment file?

I do not use ccache. I don't think that file is entirely relevant, I more meant the virtualenv mach sets up for pip etc. In /var/tmp/portage/www-client/firefox-97.0/work/firefox-97.0/third_party/python is all the bundled stuff that is causing issues with system stuff
Comment 9 Joonas Niilola gentoo-dev 2022-02-09 17:54:11 UTC
(In reply to Michael Cook from comment #8)
> 
> I do not use ccache. I don't think that file is entirely relevant, I more
> meant the virtualenv mach sets up for pip etc. In
> /var/tmp/portage/www-client/firefox-97.0/work/firefox-97.0/third_party/
> python is all the bundled stuff that is causing issues with system stuff

I do think it's relevant, since the build system basically exports everything into env. I'm wishing to find some irregularities there. 

I believe we'll end up patching the fatal pip check(s) out again in the end, but I can't test that the patches work until I can get it to break first :\

And this may be relevant, 
https://hg.mozilla.org/mozilla-central/rev/1d9613af1896
but it's hard for me to say.
Comment 10 Joonas Niilola gentoo-dev 2022-02-09 18:00:35 UTC
https://hg.mozilla.org/integration/autoland/rev/4529fe739a24 oh I had digged this too, 
which has "--disable-pip-version-check". Just that, pip didn't break for me so I didn't need to test where this option could possibly be utilized.
Comment 11 Michael Cook 2022-02-09 18:42:05 UTC
(In reply to Joonas Niilola from comment #9)
> (In reply to Michael Cook from comment #8)
> > 
> > I do not use ccache. I don't think that file is entirely relevant, I more
> > meant the virtualenv mach sets up for pip etc. In
> > /var/tmp/portage/www-client/firefox-97.0/work/firefox-97.0/third_party/
> > python is all the bundled stuff that is causing issues with system stuff
> 
> I do think it's relevant, since the build system basically exports
> everything into env. I'm wishing to find some irregularities there. 
> 
> I believe we'll end up patching the fatal pip check(s) out again in the end,
> but I can't test that the patches work until I can get it to break first :\
> 
> And this may be relevant, 
> https://hg.mozilla.org/mozilla-central/rev/1d9613af1896
> but it's hard for me to say.

If I manually run MACH_USE_SYSTEM_PYTHON=1 MACH_SYSTEM_ASSERTED_COMPATIBLE_WITH_MACH_SITE=1 PIP_NO_CACHE_DIR=off MOZBUILD_STATE_PATH=/var/tmp/portage/www-client/firefox-97.0/work/firefox_build ./mach configure in /var/tmp/portage/www-client/firefox-97.0/work/firefox-97.0 it compiles without error. If i drop the MACH_SYSTEM_ASSERTED_COMPATIBLE_WITH_MACH_SITE=1 it errors out like I'm seeing. So I guess https://github.com/gentoo/gentoo/blob/ea7d1e7d713094bf85dd7c98841654c5443d86cd/www-client/firefox/firefox-97.0.ebuild#L967 isn't being respected for some reason?
Comment 12 Michael Cook 2022-02-09 18:46:19 UTC
Created attachment 764716 [details]
failing environment
Comment 13 Michael Cook 2022-02-09 19:17:15 UTC
(In reply to Michael Cook from comment #11)
> (In reply to Joonas Niilola from comment #9)
> > (In reply to Michael Cook from comment #8)
> > > 
> > > I do not use ccache. I don't think that file is entirely relevant, I more
> > > meant the virtualenv mach sets up for pip etc. In
> > > /var/tmp/portage/www-client/firefox-97.0/work/firefox-97.0/third_party/
> > > python is all the bundled stuff that is causing issues with system stuff
> > 
> > I do think it's relevant, since the build system basically exports
> > everything into env. I'm wishing to find some irregularities there. 
> > 
> > I believe we'll end up patching the fatal pip check(s) out again in the end,
> > but I can't test that the patches work until I can get it to break first :\
> > 
> > And this may be relevant, 
> > https://hg.mozilla.org/mozilla-central/rev/1d9613af1896
> > but it's hard for me to say.
> 
> If I manually run MACH_USE_SYSTEM_PYTHON=1
> MACH_SYSTEM_ASSERTED_COMPATIBLE_WITH_MACH_SITE=1 PIP_NO_CACHE_DIR=off
> MOZBUILD_STATE_PATH=/var/tmp/portage/www-client/firefox-97.0/work/
> firefox_build ./mach configure in
> /var/tmp/portage/www-client/firefox-97.0/work/firefox-97.0 it compiles
> without error. If i drop the
> MACH_SYSTEM_ASSERTED_COMPATIBLE_WITH_MACH_SITE=1 it errors out like I'm
> seeing. So I guess
> https://github.com/gentoo/gentoo/blob/
> ea7d1e7d713094bf85dd7c98841654c5443d86cd/www-client/firefox/firefox-97.0.
> ebuild#L967 isn't being respected for some reason?

well, it's failing when it needs ith MACH_SYSTEM_ASSERTED_COMPATIBLE_WITH_BUILD_SITE I think?
Comment 14 Martin Wegner 2022-02-09 23:59:48 UTC
For me, pip check fails with these errors according to build.log:

> eyed3 0.9.6 requires coverage, which is not installed.                                                              > twisted 22.1.0 has requirement attrs>=19.2.0, but you have attrs 19.1.0.                                            
> docker-compose 1.29.2 has requirement distro>=1.5.0, but you have distro 1.4.0.                                     
> automat 20.2.0 has requirement attrs>=19.2.0, but you have attrs 19.1.0. 

If I add
> export MACH_SYSTEM_ASSERTED_COMPATIBLE_WITH_BUILD_SITE=1
right after
> export MACH_SYSTEM_ASSERTED_COMPATIBLE_WITH_MACH_SITE=1

in the firefox-97.0 ebuild, build works fine without error.
Comment 15 Sam James archtester Gentoo Infrastructure gentoo-dev Security 2022-02-10 05:09:26 UTC
Fixed by https://bugs.gentoo.org/828999#c19 I suppose.
Comment 16 Larry the Git Cow gentoo-dev 2022-02-10 17:09:59 UTC
The bug has been referenced in the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=87e4d048cf7c2c53963be2a7224791c8a28218a3

commit 87e4d048cf7c2c53963be2a7224791c8a28218a3
Author:     Joonas Niilola <juippis@gentoo.org>
AuthorDate: 2022-02-10 17:01:12 +0000
Commit:     Joonas Niilola <juippis@gentoo.org>
CommitDate: 2022-02-10 17:09:08 +0000

    www-client/firefox: 97.0 fixes
    
     - also export the 2nd MACH_SYSTEM_ASSERTED_COMPATIBLE variable,
     - disable sandbox feature with ppc64, as it's currently only
       supported for amd64, arm, arm64 and x86,
     - include the skip-pip-check.patch in the full patch set.
    
    Bug: https://bugs.gentoo.org/832975
    Bug: https://bugs.gentoo.org/828999
    Closes: https://bugs.gentoo.org/833001
    Signed-off-by: Joonas Niilola <juippis@gentoo.org>

 www-client/firefox/Manifest                           |  2 +-
 www-client/firefox/files/firefox-skip-pip-check.patch | 14 --------------
 www-client/firefox/firefox-97.0.ebuild                | 16 +++++++++++-----
 3 files changed, 12 insertions(+), 20 deletions(-)