Repository navigation
ci: install through util/pip_install.py (#1967) - #2031
Conversation
|
GOOD TO GO at |
- util/pip_install.py: upgrades pip, setuptools and wheel, then installs the given editable spec, teeing its merged output to $RUNNER_TEMP/pip-install.log; a failed install writes the same ANNOTATION_LEVEL annotation naming pip's last ERROR line and exits 1. Standard library only, 3.7-compatible. - unit-tests.yml: the install step of test, integration, pypcap-parity, unittest-ordering, project-tests and gate runs the script. The last four gain the annotation; the latest-only jobs set ANNOTATION_LEVEL: error and LEG on the step, pypcap-parity sets LEG. id, if, continue-on-error and shell are unchanged. - tests/_dependency_gates.py: EDITABLE_INSTALL, the shared extras pattern for both install forms, used by every reader of install lines. - tests: test_pip_install_1967.py covers the script, its parity with the former shell, and pins every site; the 1633 install tests stub pip instead of python; the tier-guard doctorings use the new form. - workflows.rst: the script joins the Workflow Scripts table.
7c5f371 to
0fac0e4
Compare
|
Coverage: 91.54% (unit tier, Python 3.15,
Per-file detail: the |
|
Ordering check on |
make pylint,make mypy,make isort)make testpasses, and a test case covers the changeWhat is the purpose of your pull request?
ci— workflows or build toolingDescription of your pull request and other information
#1967 step 2, item 3. #2027 and #2029 have landed, so this is one commit on
main.util/pip_install.pyupgrades pip, setuptools and wheel, then runs the editable install, logging to$RUNNER_TEMP/pip-install.log. On failure it writes the install-failure annotation. Sixunit-tests.ymlsteps call it:test,integration,pypcap-parity(all three with their KTLO twins),unittest-ordering,project-testsandgate.tests/_dependency_gates.pygainsEDITABLE_INSTALL, which matches both forms, and its readers use it.Install coverage, andengine-tests's per-cell venvs.experimental.ymlandpython-compatibility.ymlfollow in their own PR.The pin fails on #2029's
unit-tests.yml(11 failed) and passes here. A parity test checks the old shell against the script on a stand-in pip, for seven outcomes at both annotation levels. The 40 test files that readunit-tests.ymlor_dependency_gates.pygive716 passed, 4 skipped.