Assert pip packages are available with MACH_USE_SYSTEM_PYTHON
Categories
(Firefox Build System :: Mach Core, enhancement)
Tracking
(firefox95 fixed)
| Tracking | Status | |
|---|---|---|
| firefox95 | --- | fixed |
People
(Reporter: mhentges, Assigned: mhentges)
References
Details
Attachments
(8 files, 1 obsolete file)
|
48 bytes,
text/x-phabricator-request
|
Details | Review | |
|
48 bytes,
text/x-phabricator-request
|
Details | Review | |
|
48 bytes,
text/x-phabricator-request
|
Details | Review | |
|
48 bytes,
text/x-phabricator-request
|
Details | Review | |
|
48 bytes,
text/x-phabricator-request
|
Details | Review | |
|
48 bytes,
text/x-phabricator-request
|
Details | Review | |
|
48 bytes,
text/x-phabricator-request
|
Details | Review | |
|
48 bytes,
text/x-phabricator-request
|
Details | Review |
With requirements being defined up-front, we can fail fast if insufficient packages are installed.
| Assignee | ||
Updated•4 years ago
|
| Assignee | ||
Comment 1•4 years ago
|
||
This will allow us to parse and compare pip package versions the same
way that pip does.
Depends on D122887
| Assignee | ||
Comment 2•4 years ago
|
||
There's some trade-offs in play here: the major issue is that we can't
pin psutil's because it's pre-installed on some CI workers with a
different version (5.4.2).
Additionally, we can't "just" bump that version, because CI workers jump
between different revisions to do work, so a specific pinned version
won't work when we try to update such a package.
One option is that we could avoid validating package versions in CI, but
then that will cause surprises (heck, I didn't know we were still using
psutil==5.4.2 instead of 5.8.0 until now). By doing validation, we
make it more explicit and avoid accidentally depending on behaviour of
too new of such a package.
However, in most cases, we manage the installation environment and can
pin dependencies. So, I've made the top-level Mach virtualenv the only
one that is able to use requirement specifiers other than "==".
Depends on D122888
| Assignee | ||
Comment 3•4 years ago
|
||
When using MOZ_AUTOMATION or MACH_USE_SYSTEM_PYTHON, validate
that required dependencies are installed.
Depends on D122889
Updated•4 years ago
|
Updated•4 years ago
|
Comment 4•4 years ago
|
||
There are some r+ patches which didn't land and no activity in this bug for 2 weeks.
:mhentges, could you have a look please?
For more information, please visit auto_nag documentation.
Updated•4 years ago
|
| Assignee | ||
Updated•4 years ago
|
Updated•4 years ago
|
| Assignee | ||
Comment 5•4 years ago
|
||
glean-parser==3.6.0 requires Jinja2>=2.10.1.
Depends on D122890
| Assignee | ||
Comment 6•4 years ago
|
||
Windows and Mac workers have zstandard==0.11.1 installed.
Depends on D126283
| Assignee | ||
Comment 7•4 years ago
|
||
pytest has platform-specific dependencies (colorama on Windows), but
our vendoring logic currently doesn't support having platform-specific
packages.
Since python-test jobs don't have to be isolated from the network,
migrate pytest to be a pypi: dependency.
Depends on D126284
| Assignee | ||
Comment 8•4 years ago
|
||
Results from ./mach vendor python.
Depends on D126285
| Assignee | ||
Comment 9•4 years ago
|
||
The pytest==3.6.2 dependency was moved from common into a
python-test-specific virtualenv. Since perftest-test uses pytest, it
needs to use a virtualenv that has it installed.
Depends on D126286
Updated•4 years ago
|
Comment 10•4 years ago
|
||
Comment 11•4 years ago
|
||
Backed out 10 changesets (Bug 1712151, Bug 1724279, Bug 1730712, Bug 1717051, Bug 1723031, Bug 1731145) for causing failures on test_yaml.py
Log: https://treeherder.mozilla.org/logviewer?job_id=352859436&repo=autoland&lineNumber=925
Bustage: https://treeherder.mozilla.org/logviewer?job_id=352865415&repo=autoland&lineNumber=1148
Backout: https://hg.mozilla.org/integration/autoland/rev/b59ab731aecfcc3b9cb4e1388950b70039bf95ac
| Assignee | ||
Updated•4 years ago
|
Comment 12•4 years ago
|
||
Comment 13•4 years ago
|
||
Comment 14•4 years ago
|
||
| bugherder | ||
https://hg.mozilla.org/mozilla-central/rev/3aafa68a8527
https://hg.mozilla.org/mozilla-central/rev/bebfc139b5a9
https://hg.mozilla.org/mozilla-central/rev/39514bc52fe2
https://hg.mozilla.org/mozilla-central/rev/77c9a55337fa
https://hg.mozilla.org/mozilla-central/rev/a8e890ec4273
https://hg.mozilla.org/mozilla-central/rev/11ebaddfc95a
| Assignee | ||
Comment 15•4 years ago
|
||
Almost there, but have one more patch to land.
Comment 16•4 years ago
|
||
Updated•4 years ago
|
Comment 17•4 years ago
|
||
| bugherder | ||
Comment 18•4 years ago
|
||
Backed out for causing pip setup issues (bug 1733142)
Backout link: https://hg.mozilla.org/integration/autoland/rev/60dcd1171dd2b522effa87f53abb36bdde3892fe
| Assignee | ||
Updated•4 years ago
|
Comment 19•4 years ago
|
||
The change got reverted because it also broke the release bouncer check task.
| Assignee | ||
Comment 20•4 years ago
|
||
Due to having apt install "recommended packages", we're having the
python3-gi package installed.
However, though the apt package of python3-gi doesn't depend on
anything, the underlying Python PyGObject package does depend on
pycairo.
By installing python3-cairo, we resolve the missing Python package
dependency, allowing pip check to complete successfully.
Comment 21•4 years ago
|
||
| uplift | ||
Backout merge to beta: https://hg.mozilla.org/releases/mozilla-beta/rev/417146e6ebfd8856bd8020c7fd512edd088f1840
Comment 22•4 years ago
|
||
Backout merged to central: https://hg.mozilla.org/mozilla-central/rev/60dcd1171dd2
Comment 23•4 years ago
|
||
Comment 24•4 years ago
|
||
| bugherder | ||
Updated•4 years ago
|
Comment 25•4 years ago
|
||
Comment 26•4 years ago
|
||
| bugherder | ||
Description
•