Repository navigation
refactor(registry): split foundation.registry.protocols by layer - #2635
Merged
Merged
Conversation
- protocols.py becomes a package: link, internet, transport, application and misc hold the wrappers of their pcapkit.protocols subpackage; protocol holds register_protocol, register_protocol_code and the shared helpers. - The package star-imports its submodules, so every registrar is the same object at its old paths; both __all__ lists are unchanged. - Code moved verbatim; three docstrings retarget their own xrefs. - docs: a module directive per submodule; xrefs in docs, const, corekit and protocols name the defining module; registry-protocol.rst records the layout. - tests: internals, patches and sources are read from the submodule that owns them; a layout test pins placement and exports. Registry tests, project guards and mypy match main. The three 1.5.0.rst xrefs to the old path are retargeted in #2483.
Owner
Author
|
GOOD TO GO at
Its one finding was that the commit message wrongly claimed the nitpicky docs build matches |
JarryShaw
added a commit
that referenced
this pull request
Nov 2, 2026
…types and the registry split into 1.6.0 (#2449) - Breaking: Quick-Start values their fields cannot carry raise, reversing 1.5.0's round-down of a TCP rate under 80 kbps (#2630). - Folded into unreleased entries: tls12_cid records and DTLSContext (#2631), LinkType 105 and 127 in Frame and PCAP-NG (#2632), and DTLS.analyze_handshake behind dtls_handshake and packet (#2634). - Changed: foundation.registry.protocols split into per-layer submodules (#2635); 1.6.0's register_* roles and 1.5.0's three register_protocol* roles point at their submodules, 1.5.0's text unchanged. - The conventions entry records the per-layer wrapper placement (#2635) and parse ownership (#2634). No entry for #2629, which changes no released behaviour. - CHANGELOG.md regenerated; util/changelog_md.py --check passes.
1 of 5 tasks
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
make pylint,make mypy,make isort)make testpasses, and a test case covers the changeWhat is the purpose of your pull request?
refactor— changes neither behaviour nor performanceDescription of your pull request and other information
pcapkit.foundation.registry.protocolsbecomes a package with one submodule per layer:protocol: the generic registrars and the lease machinery;link,internet,transportandapplication;misc: Frame, PCAP-NG andregister_linktype.The layout follows the owner's choices on #2578. The package star-imports the submodules, so
__all__and every publicregister_*stay the same objects throughpcapkit.foundation.registry, through the package, and through the defining submodule. No old-path alias is kept for private helpers. After import, the class-level maps and the by-name registry dump identically tomain, and every registration path works and restores.Visible side effects:
__module__names its submodule.The docstring cross-references under
pcapkit/follow the move. Three references in1.5.0.rstare retargeted in #2483, where changelog edits are centralised.A Sonnet cross-review checked identity and behaviour in separate processes against
main, and confirmed that nothing in the v1.5.1 ormain__all__disappears.Closes #2578