Skip to content

ci: install through util/pip_install.py in experimental and Compat (#1967) - #2032

Merged
JarryShaw merged 1 commit into
mainfrom
ci/1967-step2-pip-install-rest
Oct 22, 2026
Merged

JarryShaw merged 1 commit into
mainfrom
ci/1967-step2-pip-install-rest

Conversation

@JarryShaw

Copy link
Copy Markdown
Owner

What is the purpose of your pull request?

  • ci — workflows or build tooling

Description of your pull request and other information

#1967 step 2, the rest of item 3. Stacked on #2031, so review only the top commit.

  • experimental.yml experimental: its inline install-and-annotate shell becomes python util/pip_install.py -e '.[test,DPKT,crypto,NGAP]'. The behaviour is the same.
  • python-compatibility.yml compatibility: the bare Install package step becomes python util/pip_install.py -e ., with a LEG env. A failed install now annotates (warning on KTLO legs, error on supported ones) and exits 1.
  • Tests: test_pip_install_1967 pins both sites. The 1633 KTLO tests now run Compat's step for real, on a clean install and on a failed one.

The pin fails on #2031's workflows (3 failed) and passes here (21 passed). Every test file that reads either workflow gives 523 passed. With a stand-in pip, the script ran correctly on 3.7.16, 3.8.20, 3.14.8 and 3.14.8t. GraalPy and 3.15 are not installed locally.

@JarryShaw JarryShaw added ci Pull requests that change CI or workflow configuration (ci: subject prefix) review: running A cross-review is in flight against the current head - no verdict yet labels Oct 22, 2026
@JarryShaw JarryShaw moved this to In review in PyPCAPKit Oct 22, 2026
@JarryShaw
JarryShaw force-pushed the ci/1967-step2-pip-install-rest branch from 7633a68 to 4bd0be4 Compare October 22, 2026 03:11
@JarryShaw

Copy link
Copy Markdown
Owner Author

GOOD TO GO at 4bd0be452 (Sonnet cross-review of 7633a6856). Both sites behave as before apart from Compat's new install annotation. LEG and ANNOTATION_LEVEL match unit-tests.yml's form, vermin puts the script's minimum at 3.7, and the pin fails on #2031's workflows (3 failed). The one change since review: util/pip_install.py's docstring now names these two callers, as the review suggested. The tests that read the script pass (219 passed). GraalPy is untested locally.

@JarryShaw JarryShaw added review: good-to-go Cross-review at the current head says ready; CI state is separate and removed review: running A cross-review is in flight against the current head - no verdict yet labels Oct 22, 2026
@JarryShaw
JarryShaw force-pushed the ci/1967-step2-pip-install-rest branch from 4bd0be4 to 9b5ce1e Compare October 22, 2026 03:46
@JarryShaw

Copy link
Copy Markdown
Owner Author

Rebased onto #2031's new head as 9b5ce1e6f. patch-id is identical to 4bd0be452, so the verdict holds. Still stacked on #2031.

@github-actions

github-actions Bot commented Oct 22, 2026 •

Copy link
Copy Markdown
Contributor

Coverage: 91.54% (unit tier, Python 3.15, 56579c609, Unit Tests run success)

Package Statements Missed Branches Partial Cover
pcapkit (top level) 104 4 20 2 95.16%
pcapkit/const 19597 881 2618 867 92.11%
pcapkit/corekit 2567 71 816 37 96.57%
pcapkit/dumpkit 282 3 102 3 98.44%
pcapkit/foundation 2930 23 1022 25 98.79%
pcapkit/interface 138 4 52 3 96.32%
pcapkit/protocols 17436 219 4582 185 98.15%
pcapkit/toolkit 872 36 298 10 95.21%
pcapkit/utilities 529 7 160 5 98.26%
pcapkit/vendor 4431 1995 1018 167 51.73%

Per-file detail: the coverage-html artifact of this run.

@JarryShaw

Copy link
Copy Markdown
Owner Author

Ordering check on 9b5ce1e6f, which contains #2031: python util/run_unittest_leg.py project on this tree gave Ran 1720 tests in 549s, OK (skipped=71), exit 0. KTLO failing test ids: 0 across every KTLO leg. Ready to merge after #2031.

@JarryShaw

Copy link
Copy Markdown
Owner Author

resolve conflicts

…1967)

- experimental.yml: the experimental job's install step runs the script
  in place of its inline shell; same extras, id, if, continue-on-error,
  timeout, shell and LEG, at the job's warning level.
- python-compatibility.yml: Compat's install step runs the script, with
  LEG on the step, so a failed install now writes the job's
  ANNOTATION_LEVEL annotation; id, if, continue-on-error unchanged.
- tests: test_pip_install_1967.py pins both steps whole, their jobs'
  levels, and every other pip install in those workflows; the 1633
  install tests run Compat's step too, under the default shell.
- workflows.rst: the script's callers include both jobs.
@JarryShaw
JarryShaw force-pushed the ci/1967-step2-pip-install-rest branch from 9b5ce1e to 56579c6 Compare October 22, 2026 14:49
@JarryShaw

Copy link
Copy Markdown
Owner Author

Rebased onto main cd4075e10 (#2031's squash) as 56579c609. The tree is byte-identical to 9b5ce1e6f and patch-id matches, so the verdict holds. No longer stacked.

@JarryShaw
JarryShaw merged commit 202a2ad into main Oct 22, 2026
59 checks passed
@github-project-automation github-project-automation Bot moved this from In review to Done in PyPCAPKit Oct 22, 2026
@JarryShaw
JarryShaw deleted the ci/1967-step2-pip-install-rest branch October 22, 2026 17:12
@JarryShaw JarryShaw removed the review: good-to-go Cross-review at the current head says ready; CI state is separate label Oct 22, 2026
@JarryShaw JarryShaw added this to the PyPCAPKit v1.5 milestone Oct 26, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ci Pull requests that change CI or workflow configuration (ci: subject prefix)

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

1 participant