Skip to content

fix(vendor): make the public-API sweep cover pcapkit.vendor (#1772) - #1779

Merged
JarryShaw merged 1 commit into
mainfrom
fix/1772-vendor-all-gaps
Oct 15, 2026
Merged

JarryShaw merged 1 commit into
mainfrom
fix/1772-vendor-all-gaps

Conversation

@JarryShaw

Copy link
Copy Markdown
Owner

Please follow the guide below

What is the purpose of your pull request?

Tick the commit type your subject line carries.

  • fix — corrects a defect
  • feat — adds a feature
  • perf — changes performance, not behaviour
  • refactor — changes neither behaviour nor performance
  • test — tests only
  • docs — documentation only
  • ci — workflows or build tooling
  • release — bumps the version or rolls up a distribution
  • chore — anything else

Summary

tests/project/test_public_api.py skipped pcapkit.vendor via EXCLUDED_ROOTS, for want of requests and bs4, but the test extra has carried both since #507. Dropping the exclusion failed the package converse check twice. This PR fixes both failures:

  • pcapkit.vendor.ipx leaked path, its sys.path temporary. It is now _path.
  • pcapkit.vendor's Vendor, ModuleNotFoundError, stacklevel, VendorWarning and warn go in DELIBERATE_NON_EXPORTS, not __all__. pcapkit.vendor.__main__ uses that __all__ as its default crawler list, which is now commented.
  • EXCLUDED_ROOTS is empty, and the walk pins pcapkit.vendor and pcapkit.vendor.ipx. Stale prose about the exclusion is dropped in both test files. Rebased onto main past docs(tests): correct stale claims in test docstrings and comments (#1103) #1764's edits to the same docstrings.
  • Bite: each of the three reverts fails the sweep. Runs: tests/project: 930 passed, 1 skipped.

Closes #1772

@JarryShaw JarryShaw added the fix Pull requests that fix a defect (fix: subject prefix) label Oct 15, 2026
@JarryShaw

Copy link
Copy Markdown
Owner Author

Verdict: GOOD TO GO at 7043ac50d. A Sonnet cross-review (author: Opus), after a prose fix round and a rebase onto main. Each of the three fixes fails the sweep when reverted. A rebase check found #1764's corrections kept and nothing dropped. tests/project passed 930.

@JarryShaw JarryShaw added the review: good-to-go Cross-review at the current head says ready; CI state is separate label Oct 15, 2026
@JarryShaw

Copy link
Copy Markdown
Owner Author

Conflicts with #1789 in tests/project/test_public_api.py and tests/vendor/test_crawler_reachability_unit.py; whichever merges second, I rebase.

tests/project/test_public_api.py skipped pcapkit.vendor through
EXCLUDED_ROOTS for want of requests and bs4, which the test extra has
carried since #507. Dropping it failed the package converse check twice:

- pcapkit.vendor.ipx leaked `path`, its sys.path temporary: now `_path`.
- pcapkit.vendor's Vendor, ModuleNotFoundError, stacklevel, VendorWarning
  and warn go in DELIBERATE_NON_EXPORTS, not __all__, which
  pcapkit.vendor.__main__ runs as its default crawler list (now commented).

EXCLUDED_ROOTS is empty and the walk pins pcapkit.vendor and its ipx
package. The docstring drops the stale exclusion and "one gap remains"
(#531) paragraphs; test_crawler_reachability_unit's no longer calls vendor
excluded. tests/project: 930 passed, 1 skipped.

Closes #1772
@JarryShaw

Copy link
Copy Markdown
Owner Author

resolve conflicts

@JarryShaw

Copy link
Copy Markdown
Owner Author

On it: the rebase onto main past #1789 is running now, with a Sonnet check on the resolution. I'll push it when the check passes.

@JarryShaw JarryShaw moved this to In review in PyPCAPKit Oct 15, 2026
@JarryShaw

Copy link
Copy Markdown
Owner Author

Verdict: GOOD TO GO at b5f5fb1d8. Conflicts resolved: rebased onto main past #1789, and merges cleanly into the current main (c25c28c8c). A Sonnet check replayed the conflicts itself: #1789's corrections are kept, nothing is dropped, and the pcapkit/vendor hunks are byte-identical to the reviewed commit.

@JarryShaw
JarryShaw force-pushed the fix/1772-vendor-all-gaps branch from 7043ac5 to b5f5fb1 Compare October 15, 2026 19:18
@JarryShaw
JarryShaw merged commit a1f573b into main Oct 15, 2026
24 checks passed
@github-project-automation github-project-automation Bot moved this from In review to Done in PyPCAPKit Oct 15, 2026
@JarryShaw
JarryShaw deleted the fix/1772-vendor-all-gaps branch October 15, 2026 22:12
@JarryShaw JarryShaw removed the review: good-to-go Cross-review at the current head says ready; CI state is separate label Oct 15, 2026
JarryShaw added a commit that referenced this pull request Oct 15, 2026
…1803)

Entries:
- add #1791 (breaking: pack() leaves its instance unchanged), #1778
  (Protocol in protocol.__all__), #1781 (PortEnumField miss with a
  nameless proto), #1779 (vendor.ipx _path), #1780 (examples READMEs to
  Markdown, build leftovers) and #1790 (36 ambiguous cross-references)
- fold #1776 into the RPL 0x23 entry and #1381 into the dump-schema one

Accuracy:
- the benchmark and legacy_smoke READMEs are README.md since #1780
- EngineBase stays out of __all__, as #1016 settled
- the #575 peek calls get() only once the value resolves
- the #647 and #764 entries point at #775/#860, under which nothing mints
- the #861 entry names #869 and #874 for the EnumRegistry move

Figures:
- preamble: 685 citations, #340 to #1791
- process.rst pin: 298 entries; CHANGELOG.md regenerated

Refs #1103
@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

fix Pull requests that fix a defect (fix: subject prefix)

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

fix(vendor): __all__ gaps keep pcapkit.vendor out of the public-API sweep

1 participant