mach artifact toolchain no longer works and causes builds to fail
Categories
(Firefox Build System :: Mach Core, defect)
Tracking
(firefox-esr91 unaffected, firefox98 unaffected, firefox99 unaffected, firefox100 fixed)
Tracking | Status | |
---|---|---|
firefox-esr91 | --- | unaffected |
firefox98 | --- | unaffected |
firefox99 | --- | unaffected |
firefox100 | --- | fixed |
People
(Reporter: emilio, Assigned: mhentges)
References
(Blocks 1 open bug, Regression)
Details
(Keywords: regression)
Attachments
(1 file, 1 obsolete file)
(deleted),
text/x-phabricator-request
|
Details |
I've only noticed this now because Mike landed a toolchain update, but bug 1758584 broke bootstrap / mach artifact toolchain.
Minimal STR:
$ mach artifact toolchain --from-build linux64-clang-tidy
error: No such remote 'origin'
0:03.10 Setting up artifact clang-tidy.tar.zst
0:03.10 Using artifact from local cache: /home/emilio/.mozbuild/toolchains/521aa916b288a73e-clang-tidy.tar.zst
Error running mach:
['artifact', 'toolchain', '--from-build', 'linux64-clang-tidy']
The error occurred in code that was called by the mach command. This is either
a bug in the called code itself or in the way that mach is calling it.
You can invoke |./mach busted| to check if this issue is already on file. If it
isn't, please use |./mach busted file artifact| to report it. If |./mach busted| is
misbehaving, you can also inspect the dependencies of bug 1543241.
If filing a bug, please include the full output of mach, including this error
message.
The details of the failure are as follows:
ModuleNotFoundError: No module named 'zstandard'
File "/home/emilio/src/moz/gecko-2/python/mozbuild/mozbuild/artifact_commands.py", line 576, in artifact_toolchain
unpack_file(local)
File "/home/emilio/src/moz/gecko-2/python/mozbuild/mozbuild/action/tooltool.py", line 993, in unpack_file
import zstandard
Sentry event ID: 92ea5b8ab8594c43b8e2d1827e47fec2
Sentry is attempting to send 0 pending error messages
Waiting up to 2 seconds
Press Ctrl-C to quit
Reporter | ||
Comment 1•3 years ago
|
||
Reversing just https://hg.mozilla.org/mozilla-central/rev/1337faa66745 allows me to build / bootstrap again.
Reporter | ||
Comment 2•3 years ago
|
||
Path when bad:
'/home/emilio/src/moz/gecko-2/python/mozbuild/mozbuild/../../../taskcluster', '', '/usr/lib64/python310.zip', '/usr/lib64/python3.10', '/usr/lib64/python3.10/lib-dynload', '/home/emilio/src/moz/gecko-2/build', '/home/emilio/src/moz/gecko-2/config', '/home/emilio/src/moz/gecko-2/config/mozunit', '/home/emilio/src/moz/gecko-2/dom/bindings', '/home/emilio/src/moz/gecko-2/dom/bindings/parser', '/home/emilio/src/moz/gecko-2/layout/tools/reftest', '/home/emilio/src/moz/gecko-2/python/l10n', '/home/emilio/src/moz/gecko-2/python/mach', '/home/emilio/src/moz/gecko-2/python/mozboot', '/home/emilio/src/moz/gecko-2/python/mozbuild', '/home/emilio/src/moz/gecko-2/python/mozlint', '/home/emilio/src/moz/gecko-2/python/mozperftest', '/home/emilio/src/moz/gecko-2/python/mozrelease', '/home/emilio/src/moz/gecko-2/python/mozterm', '/home/emilio/src/moz/gecko-2/python/mozversioncontrol', '/home/emilio/src/moz/gecko-2/security/manager/tools', '/home/emilio/src/moz/gecko-2/taskcluster', '/home/emilio/src/moz/gecko-2/testing', '/home/emilio/src/moz/gecko-2/testing/awsy', '/home/emilio/src/moz/gecko-2/testing/condprofile', '/home/emilio/src/moz/gecko-2/testing/firefox-ui/harness', '/home/emilio/src/moz/gecko-2/testing/marionette/client', '/home/emilio/src/moz/gecko-2/testing/marionette/harness', '/home/emilio/src/moz/gecko-2/testing/mozbase/manifestparser', '/home/emilio/src/moz/gecko-2/testing/mozbase/mozcrash', '/home/emilio/src/moz/gecko-2/testing/mozbase/mozdebug', '/home/emilio/src/moz/gecko-2/testing/mozbase/mozdevice', '/home/emilio/src/moz/gecko-2/testing/mozbase/mozfile', '/home/emilio/src/moz/gecko-2/testing/mozbase/mozgeckoprofiler', '/home/emilio/src/moz/gecko-2/testing/mozbase/mozhttpd', '/home/emilio/src/moz/gecko-2/testing/mozbase/mozinfo', '/home/emilio/src/moz/gecko-2/testing/mozbase/mozinstall', '/home/emilio/src/moz/gecko-2/testing/mozbase/mozleak', '/home/emilio/src/moz/gecko-2/testing/mozbase/mozlog', '/home/emilio/src/moz/gecko-2/testing/mozbase/moznetwork', '/home/emilio/src/moz/gecko-2/testing/mozbase/mozpower', '/home/emilio/src/moz/gecko-2/testing/mozbase/mozprocess', '/home/emilio/src/moz/gecko-2/testing/mozbase/mozprofile', '/home/emilio/src/moz/gecko-2/testing/mozbase/mozproxy', '/home/emilio/src/moz/gecko-2/testing/mozbase/mozrunner', '/home/emilio/src/moz/gecko-2/testing/mozbase/mozscreenshot', '/home/emilio/src/moz/gecko-2/testing/mozbase/mozsystemmonitor', '/home/emilio/src/moz/gecko-2/testing/mozbase/moztest', '/home/emilio/src/moz/gecko-2/testing/mozbase/mozversion', '/home/emilio/src/moz/gecko-2/testing/raptor', '/home/emilio/src/moz/gecko-2/testing/talos', '/home/emilio/src/moz/gecko-2/testing/web-platform', '/home/emilio/src/moz/gecko-2/testing/web-platform/tests/tools/third_party/funcsigs', '/home/emilio/src/moz/gecko-2/testing/web-platform/tests/tools/third_party/h2', '/home/emilio/src/moz/gecko-2/testing/web-platform/tests/tools/third_party/hpack', '/home/emilio/src/moz/gecko-2/testing/web-platform/tests/tools/third_party/html5lib', '/home/emilio/src/moz/gecko-2/testing/web-platform/tests/tools/third_party/hyperframe', '/home/emilio/src/moz/gecko-2/testing/web-platform/tests/tools/third_party/pywebsocket3', '/home/emilio/src/moz/gecko-2/testing/web-platform/tests/tools/third_party/webencodings', '/home/emilio/src/moz/gecko-2/testing/web-platform/tests/tools/wptrunner', '/home/emilio/src/moz/gecko-2/testing/web-platform/tests/tools/wptserve', '/home/emilio/src/moz/gecko-2/testing/xpcshell', '/home/emilio/src/moz/gecko-2/third_party/python/Jinja2', '/home/emilio/src/moz/gecko-2/third_party/python/MarkupSafe/src', '/home/emilio/src/moz/gecko-2/third_party/python/PyYAML/lib3', '/home/emilio/src/moz/gecko-2/third_party/python/aiohttp', '/home/emilio/src/moz/gecko-2/third_party/python/appdirs', '/home/emilio/src/moz/gecko-2/third_party/python/async_timeout', '/home/emilio/src/moz/gecko-2/third_party/python/attrs', '/home/emilio/src/moz/gecko-2/third_party/python/blessings', '/home/emilio/src/moz/gecko-2/third_party/python/cbor2', '/home/emilio/src/moz/gecko-2/third_party/python/certifi', '/home/emilio/src/moz/gecko-2/third_party/python/chardet', '/home/emilio/src/moz/gecko-2/third_party/python/click', '/home/emilio/src/moz/gecko-2/third_party/python/colorama', '/home/emilio/src/moz/gecko-2/third_party/python/compare_locales', '/home/emilio/src/moz/gecko-2/third_party/python/cookies', '/home/emilio/src/moz/gecko-2/third_party/python/cram', '/home/emilio/src/moz/gecko-2/third_party/python/diskcache', '/home/emilio/src/moz/gecko-2/third_party/python/distro', '/home/emilio/src/moz/gecko-2/third_party/python/dlmanager', '/home/emilio/src/moz/gecko-2/third_party/python/ecdsa', '/home/emilio/src/moz/gecko-2/third_party/python/esprima', '/home/emilio/src/moz/gecko-2/third_party/python/fluent.migrate', '/home/emilio/src/moz/gecko-2/third_party/python/fluent.syntax', '/home/emilio/src/moz/gecko-2/third_party/python/gyp/pylib', '/home/emilio/src/moz/gecko-2/third_party/python/idna', '/home/emilio/src/moz/gecko-2/third_party/python/idna-ssl', '/home/emilio/src/moz/gecko-2/third_party/python/importlib_metadata', '/home/emilio/src/moz/gecko-2/third_party/python/iso8601', '/home/emilio/src/moz/gecko-2/third_party/python/jsmin', '/home/emilio/src/moz/gecko-2/third_party/python/json-e', '/home/emilio/src/moz/gecko-2/third_party/python/jsonschema', '/home/emilio/src/moz/gecko-2/third_party/python/mohawk', '/home/emilio/src/moz/gecko-2/third_party/python/mozilla_version', '/home/emilio/src/moz/gecko-2/third_party/python/multidict', '/home/emilio/src/moz/gecko-2/third_party/python/packaging', '/home/emilio/src/moz/gecko-2/third_party/python/pathspec', '/home/emilio/src/moz/gecko-2/third_party/python/pip', '/home/emilio/src/moz/gecko-2/third_party/python/pip_tools', '/home/emilio/src/moz/gecko-2/third_party/python/ply', '/home/emilio/src/moz/gecko-2/third_party/python/pyasn1', '/home/emilio/src/moz/gecko-2/third_party/python/pyasn1_modules', '/home/emilio/src/moz/gecko-2/third_party/python/pylru', '/home/emilio/src/moz/gecko-2/third_party/python/pyparsing', '/home/emilio/src/moz/gecko-2/third_party/python/pyrsistent', '/home/emilio/src/moz/gecko-2/third_party/python/python-hglib', '/home/emilio/src/moz/gecko-2/third_party/python/pytoml', '/home/emilio/src/moz/gecko-2/third_party/python/redo', '/home/emilio/src/moz/gecko-2/third_party/python/requests', '/home/emilio/src/moz/gecko-2/third_party/python/requests_unixsocket', '/home/emilio/src/moz/gecko-2/third_party/python/responses', '/home/emilio/src/moz/gecko-2/third_party/python/rsa', '/home/emilio/src/moz/gecko-2/third_party/python/sentry_sdk', '/home/emilio/src/moz/gecko-2/third_party/python/setuptools', '/home/emilio/src/moz/gecko-2/third_party/python/six', '/home/emilio/src/moz/gecko-2/third_party/python/slugid', '/home/emilio/src/moz/gecko-2/third_party/python/taskcluster', '/home/emilio/src/moz/gecko-2/third_party/python/taskcluster_taskgraph', '/home/emilio/src/moz/gecko-2/third_party/python/taskcluster_urls', '/home/emilio/src/moz/gecko-2/third_party/python/tqdm', '/home/emilio/src/moz/gecko-2/third_party/python/typing_extensions', '/home/emilio/src/moz/gecko-2/third_party/python/urllib3', '/home/emilio/src/moz/gecko-2/third_party/python/voluptuous', '/home/emilio/src/moz/gecko-2/third_party/python/wheel', '/home/emilio/src/moz/gecko-2/third_party/python/yamllint', '/home/emilio/src/moz/gecko-2/third_party/python/yarl', '/home/emilio/src/moz/gecko-2/third_party/python/zipp', '/home/emilio/src/moz/gecko-2/toolkit/components/telemetry/tests/marionette/harness', '/home/emilio/src/moz/gecko-2/tools', '/home/emilio/src/moz/gecko-2/tools/moztreedocs', '/home/emilio/src/moz/gecko-2/xpcom/ds/tools', '/home/emilio/src/moz/gecko-2/xpcom/geckoprocesstypes_generator', '/home/emilio/src/moz/gecko-2/xpcom/idl-parser', '/home/emilio/.mozbuild/srcdirs/gecko-2-fab9452aa406/_virtualenvs/mach', '/home/emilio/.mozbuild/srcdirs/gecko-2-fab9452aa406/_virtualenvs/mach/lib/python3.10/site-packages'
Path when good (patch backed out):
'/home/emilio/src/moz/gecko-2/python/mozbuild/mozbuild/../../../taskcluster', '/home/emilio/.mozbuild/srcdirs/gecko-2-fab9452aa406/_virtualenvs/mach/lib64/python3.10/site-packages', '/home/emilio/src/moz/gecko-2/build', '/home/emilio/src/moz/gecko-2/config', '/home/emilio/src/moz/gecko-2/config/mozunit', '/home/emilio/src/moz/gecko-2/dom/bindings', '/home/emilio/src/moz/gecko-2/dom/bindings/parser', '/home/emilio/src/moz/gecko-2/layout/tools/reftest', '/home/emilio/src/moz/gecko-2/python/l10n', '/home/emilio/src/moz/gecko-2/python/mach', '/home/emilio/src/moz/gecko-2/python/mozboot', '/home/emilio/src/moz/gecko-2/python/mozbuild', '/home/emilio/src/moz/gecko-2/python/mozlint', '/home/emilio/src/moz/gecko-2/python/mozperftest', '/home/emilio/src/moz/gecko-2/python/mozrelease', '/home/emilio/src/moz/gecko-2/python/mozterm', '/home/emilio/src/moz/gecko-2/python/mozversioncontrol', '/home/emilio/src/moz/gecko-2/security/manager/tools', '/home/emilio/src/moz/gecko-2/taskcluster', '/home/emilio/src/moz/gecko-2/testing', '/home/emilio/src/moz/gecko-2/testing/awsy', '/home/emilio/src/moz/gecko-2/testing/condprofile', '/home/emilio/src/moz/gecko-2/testing/firefox-ui/harness', '/home/emilio/src/moz/gecko-2/testing/marionette/client', '/home/emilio/src/moz/gecko-2/testing/marionette/harness', '/home/emilio/src/moz/gecko-2/testing/mozbase/manifestparser', '/home/emilio/src/moz/gecko-2/testing/mozbase/mozcrash', '/home/emilio/src/moz/gecko-2/testing/mozbase/mozdebug', '/home/emilio/src/moz/gecko-2/testing/mozbase/mozdevice', '/home/emilio/src/moz/gecko-2/testing/mozbase/mozfile', '/home/emilio/src/moz/gecko-2/testing/mozbase/mozgeckoprofiler', '/home/emilio/src/moz/gecko-2/testing/mozbase/mozhttpd', '/home/emilio/src/moz/gecko-2/testing/mozbase/mozinfo', '/home/emilio/src/moz/gecko-2/testing/mozbase/mozinstall', '/home/emilio/src/moz/gecko-2/testing/mozbase/mozleak', '/home/emilio/src/moz/gecko-2/testing/mozbase/mozlog', '/home/emilio/src/moz/gecko-2/testing/mozbase/moznetwork', '/home/emilio/src/moz/gecko-2/testing/mozbase/mozpower', '/home/emilio/src/moz/gecko-2/testing/mozbase/mozprocess', '/home/emilio/src/moz/gecko-2/testing/mozbase/mozprofile', '/home/emilio/src/moz/gecko-2/testing/mozbase/mozproxy', '/home/emilio/src/moz/gecko-2/testing/mozbase/mozrunner', '/home/emilio/src/moz/gecko-2/testing/mozbase/mozscreenshot', '/home/emilio/src/moz/gecko-2/testing/mozbase/mozsystemmonitor', '/home/emilio/src/moz/gecko-2/testing/mozbase/moztest', '/home/emilio/src/moz/gecko-2/testing/mozbase/mozversion', '/home/emilio/src/moz/gecko-2/testing/raptor', '/home/emilio/src/moz/gecko-2/testing/talos', '/home/emilio/src/moz/gecko-2/testing/web-platform', '/home/emilio/src/moz/gecko-2/testing/web-platform/tests/tools/third_party/funcsigs', '/home/emilio/src/moz/gecko-2/testing/web-platform/tests/tools/third_party/h2', '/home/emilio/src/moz/gecko-2/testing/web-platform/tests/tools/third_party/hpack', '/home/emilio/src/moz/gecko-2/testing/web-platform/tests/tools/third_party/html5lib', '/home/emilio/src/moz/gecko-2/testing/web-platform/tests/tools/third_party/hyperframe', '/home/emilio/src/moz/gecko-2/testing/web-platform/tests/tools/third_party/pywebsocket3', '/home/emilio/src/moz/gecko-2/testing/web-platform/tests/tools/third_party/webencodings', '/home/emilio/src/moz/gecko-2/testing/web-platform/tests/tools/wptrunner', '/home/emilio/src/moz/gecko-2/testing/web-platform/tests/tools/wptserve', '/home/emilio/src/moz/gecko-2/testing/xpcshell', '/home/emilio/src/moz/gecko-2/third_party/python/Jinja2', '/home/emilio/src/moz/gecko-2/third_party/python/MarkupSafe/src', '/home/emilio/src/moz/gecko-2/third_party/python/PyYAML/lib3', '/home/emilio/src/moz/gecko-2/third_party/python/aiohttp', '/home/emilio/src/moz/gecko-2/third_party/python/appdirs', '/home/emilio/src/moz/gecko-2/third_party/python/async_timeout', '/home/emilio/src/moz/gecko-2/third_party/python/attrs', '/home/emilio/src/moz/gecko-2/third_party/python/blessings', '/home/emilio/src/moz/gecko-2/third_party/python/cbor2', '/home/emilio/src/moz/gecko-2/third_party/python/certifi', '/home/emilio/src/moz/gecko-2/third_party/python/chardet', '/home/emilio/src/moz/gecko-2/third_party/python/click', '/home/emilio/src/moz/gecko-2/third_party/python/colorama', '/home/emilio/src/moz/gecko-2/third_party/python/compare_locales', '/home/emilio/src/moz/gecko-2/third_party/python/cookies', '/home/emilio/src/moz/gecko-2/third_party/python/cram', '/home/emilio/src/moz/gecko-2/third_party/python/diskcache', '/home/emilio/src/moz/gecko-2/third_party/python/distro', '/home/emilio/src/moz/gecko-2/third_party/python/dlmanager', '/home/emilio/src/moz/gecko-2/third_party/python/ecdsa', '/home/emilio/src/moz/gecko-2/third_party/python/esprima', '/home/emilio/src/moz/gecko-2/third_party/python/fluent.migrate', '/home/emilio/src/moz/gecko-2/third_party/python/fluent.syntax', '/home/emilio/src/moz/gecko-2/third_party/python/gyp/pylib', '/home/emilio/src/moz/gecko-2/third_party/python/idna', '/home/emilio/src/moz/gecko-2/third_party/python/idna-ssl', '/home/emilio/src/moz/gecko-2/third_party/python/importlib_metadata', '/home/emilio/src/moz/gecko-2/third_party/python/iso8601', '/home/emilio/src/moz/gecko-2/third_party/python/jsmin', '/home/emilio/src/moz/gecko-2/third_party/python/json-e', '/home/emilio/src/moz/gecko-2/third_party/python/jsonschema', '/home/emilio/src/moz/gecko-2/third_party/python/mohawk', '/home/emilio/src/moz/gecko-2/third_party/python/mozilla_version', '/home/emilio/src/moz/gecko-2/third_party/python/multidict', '/home/emilio/src/moz/gecko-2/third_party/python/packaging', '/home/emilio/src/moz/gecko-2/third_party/python/pathspec', '/home/emilio/src/moz/gecko-2/third_party/python/pip', '/home/emilio/src/moz/gecko-2/third_party/python/pip_tools', '/home/emilio/src/moz/gecko-2/third_party/python/ply', '/home/emilio/src/moz/gecko-2/third_party/python/pyasn1', '/home/emilio/src/moz/gecko-2/third_party/python/pyasn1_modules', '/home/emilio/src/moz/gecko-2/third_party/python/pylru', '/home/emilio/src/moz/gecko-2/third_party/python/pyparsing', '/home/emilio/src/moz/gecko-2/third_party/python/pyrsistent', '/home/emilio/src/moz/gecko-2/third_party/python/python-hglib', '/home/emilio/src/moz/gecko-2/third_party/python/pytoml', '/home/emilio/src/moz/gecko-2/third_party/python/redo', '/home/emilio/src/moz/gecko-2/third_party/python/requests', '/home/emilio/src/moz/gecko-2/third_party/python/requests_unixsocket', '/home/emilio/src/moz/gecko-2/third_party/python/responses', '/home/emilio/src/moz/gecko-2/third_party/python/rsa', '/home/emilio/src/moz/gecko-2/third_party/python/sentry_sdk', '/home/emilio/src/moz/gecko-2/third_party/python/setuptools', '/home/emilio/src/moz/gecko-2/third_party/python/six', '/home/emilio/src/moz/gecko-2/third_party/python/slugid', '/home/emilio/src/moz/gecko-2/third_party/python/taskcluster', '/home/emilio/src/moz/gecko-2/third_party/python/taskcluster_taskgraph', '/home/emilio/src/moz/gecko-2/third_party/python/taskcluster_urls', '/home/emilio/src/moz/gecko-2/third_party/python/tqdm', '/home/emilio/src/moz/gecko-2/third_party/python/typing_extensions', '/home/emilio/src/moz/gecko-2/third_party/python/urllib3', '/home/emilio/src/moz/gecko-2/third_party/python/voluptuous', '/home/emilio/src/moz/gecko-2/third_party/python/wheel', '/home/emilio/src/moz/gecko-2/third_party/python/yamllint', '/home/emilio/src/moz/gecko-2/third_party/python/yarl', '/home/emilio/src/moz/gecko-2/third_party/python/zipp', '/home/emilio/src/moz/gecko-2/toolkit/components/telemetry/tests/marionette/harness', '/home/emilio/src/moz/gecko-2/tools', '/home/emilio/src/moz/gecko-2/tools/moztreedocs', '/home/emilio/src/moz/gecko-2/xpcom/ds/tools', '/home/emilio/src/moz/gecko-2/xpcom/geckoprocesstypes_generator', '/home/emilio/src/moz/gecko-2/xpcom/idl-parser', '/home/emilio/.mozbuild/srcdirs/gecko-2-fab9452aa406/_virtualenvs/mach', '/home/emilio/.mozbuild/srcdirs/gecko-2-fab9452aa406/_virtualenvs/mach/lib/python3.10/site-packages', '', '/usr/lib64/python310.zip', '/usr/lib64/python3.10', '/usr/lib64/python3.10/lib-dynload'
Reporter | ||
Comment 3•3 years ago
|
||
/home/emilio/.mozbuild/srcdirs/gecko-2-fab9452aa406/_virtualenvs/mach/lib64/python3.10/site-packages
does contain zstandard, but that path is no longer in sys.path.
Reporter | ||
Comment 4•3 years ago
|
||
ah, so virtualenv.site_packages_dir()
is /home/emilio/.mozbuild/srcdirs/gecko-2-fab9452aa406/_virtualenvs/mach/lib/python3.10/site-packages
but zstandard is in /home/emilio/.mozbuild/srcdirs/gecko-2-fab9452aa406/_virtualenvs/mach/lib64/python3.10/site-packages
(lib/
vs. lib64/
).
Updated•3 years ago
|
Comment 5•3 years ago
|
||
Set release status flags based on info from the regressing bug 1758584
Assignee | ||
Comment 7•3 years ago
|
||
Hmm, thanks for the report, I'll dig into this later today 👍
Assignee | ||
Updated•3 years ago
|
Assignee | ||
Comment 8•3 years ago
|
||
On Emilio's system, the purelib
and platlib
are different directories (lib
and lib64
), and the libraries installed are intelligently put in the right ones (glean-sdk
in lib
, zstandard
and cffi
in lib64
).
We didn't encounter this error before because virtualenv
was handling which paths to add the sys.path
, but we we're still being burnt because our Mach-specific code would only use the purelib
path in pthfile
references. That could've caused issues elsewhere.
TL;DR: the issue is to have site_packages_dir
return multiple paths.
Assignee | ||
Comment 9•3 years ago
|
||
On newer systems, Python is intelligently populating pure-python and
platform-specific packages into //two different directories//.
Traditionally, these directories would be symlinked - or only one would
exist. However, to support these newer systems (and be better integrated
with Python conventions), we should handle both of these directories
properly.
The solution here is, when calculating the site_packages_dir()
,
calculate all of them, and handle the multitude at all call sites.
The one use case where we want only one path (the resolving the location
for the mach.pth
pthfile), I've opted for the platlib
, since both
pure python dependencies //and// platform-specific dependencies are
referenced by the pthfile.
Assignee | ||
Comment 10•3 years ago
|
||
Now that we're using sysconfig
instead of distutils
, our purelib
and platlib
paths should correctly point to python environment paths
without a spurious local/
component at their roots.
Depends on D140870
Updated•3 years ago
|
Updated•3 years ago
|
Comment 11•3 years ago
|
||
Comment on attachment 9267439 [details]
Bug 1759125: Remove workaround for handling local/
in venv paths
Revision D140871 was moved to bug 1759193. Setting attachment 9267439 [details] to obsolete.
Updated•3 years ago
|
Comment 15•3 years ago
|
||
Comment 16•3 years ago
|
||
bugherder |
Description
•