vendored setuptools should be updated after bug #1717051 ?
Categories
(Firefox Build System :: Mach Core, defect)
Tracking
(firefox-esr91 unaffected, firefox98 wontfix, firefox99 wontfix, firefox100 wontfix)
Tracking | Status | |
---|---|---|
firefox-esr91 | --- | unaffected |
firefox98 | --- | wontfix |
firefox99 | --- | wontfix |
firefox100 | --- | wontfix |
People
(Reporter: gaston, Unassigned)
Details
(Keywords: regression)
something strange happened when running configure on 98.0:
===> Configuring for firefox-98.0
Using Python 3.9.10 from /usr/local/bin/python3.9
Traceback (most recent call last):
File "/usr/obj/ports/firefox-98.0/firefox-98.0/configure.py", line 349, in <module>
sys.exit(main(sys.argv))
File "/usr/obj/ports/firefox-98.0/firefox-98.0/configure.py", line 120, in main
_activate_build_virtualenv()
File "/usr/obj/ports/firefox-98.0/firefox-98.0/configure.py", line 336, in _activate_build_virtualenv
mach_site.activate()
File "/usr/obj/ports/firefox-98.0/firefox-98.0/python/mach/mach/site.py", line 368, in activate
exec(open(activate_path).read(), dict(__file__=activate_path))
File "/usr/local/lib/python3.9/contextlib.py", line 126, in __exit__
next(self.gen)
File "/usr/obj/ports/firefox-98.0/firefox-98.0/python/mach/mach/site.py", line 183, in update_current_site
pkg_resources._initialize_master_working_set()
AttributeError: module 'pkg_resources' has no attribute '_initialize_master_working_set'
that code was added in https://phabricator.services.mozilla.com/D120404
the system probably didnt have systemwide setuptools installed, and the vendored version added in bug #1732946 doesnt have this method.
Reporter | ||
Comment 1•3 years ago
|
||
wait, in a tarball of 99.0b1 the vendored setuptools does have the method.. so how come mach exploded..
Comment 2•3 years ago
|
||
Are you running Mach with MOZ_AUTOMATION=1
or MACH_USE_SYSTEM_PYTHON=1
?
If so, what is your setuptools version and location (pip3 list -v
)?
Reporter | ||
Comment 3•3 years ago
|
||
We're not setting any particular env variables, that's within our OpenBSD packaging infrastructure that just does the usual ./configure
.
I've been reported the original issue pasted above, but i can't reproduce locally with 98.0 and after removing systemwide py3-setuptools 57.4.0.
If installed, setuptools 57.4.0 is in the systemwide python path (eg /usr/local/lib/python3.9/site-packages/setuptools
)
Comment 4•3 years ago
|
||
If installed, setuptools 57.4.0 is in the systemwide python path (eg /usr/local/lib/python3.9/site-packages/setuptools)
Hmm, but the downstream user who encountered the issue may have a different version installed, such as to their [pip install] --user
directory.
Looking at pkg_resources
itself, it looks like _initialize_master_working_set()
hasn't been removed:
We're not setting any particular env variables, that's within our OpenBSD packaging infrastructure that just does the usual ./configure.
To confirm: your OpenBSD packaging infra doesn't set those variables either?
I think I need more information to be able to diagnose and resolve this, I can't yet imagine a case where pkg_resources
can be imported, but doesn't have the _initialize_master_working_set()
function.
Updated•3 years ago
|
Comment 5•3 years ago
|
||
Set release status flags based on info from the regressing bug 1717051
Reporter | ||
Comment 6•3 years ago
|
||
(In reply to Mitchell Hentges [:mhentges] 🦀 from comment #4)
We're not setting any particular env variables, that's within our OpenBSD packaging infrastructure that just does the usual ./configure.
To confirm: your OpenBSD packaging infra doesn't set those variables either?
in the env the only python-related var set by the infra are PYTHONUSERBASE=/usr/obj/ports/firefox-98.0 and PYTHON="/usr/local/bin/python3.9". the other env vars are here https://github.com/openbsd/ports/blob/master/www/mozilla/mozilla.port.mk#L146 and here https://github.com/openbsd/ports/blob/master/www/mozilla-firefox/Makefile#L47
I think I need more information to be able to diagnose and resolve this, I can't yet imagine a case where
pkg_resources
can be imported, but doesn't have the_initialize_master_working_set()
function.
Yeah, i dont understand either how that can happen.
Comment 7•3 years ago
|
||
Yeah, i dont understand either how that can happen.
Ok, I'm going to mark as WORKSFORME for now.
Feel free to send the downstream user to this ticket so that we can get more information about the failure and reopen this bug.
Updated•3 years ago
|
Updated•3 years ago
|
Description
•