Skip to content

refactor(application): move SSLv3 into its own module - #2602

Merged
JarryShaw merged 1 commit into
mainfrom
refactor/2529-sslv3-module
Nov 2, 2026
Merged

JarryShaw merged 1 commit into
mainfrom
refactor/2529-sslv3-module

Conversation

@JarryShaw

Copy link
Copy Markdown
Owner

What is the purpose of your pull request?

  • refactor — changes neither behaviour nor performance

Description of your pull request and other information

SSLv3 moves out of pcapkit.protocols.application.tls into its own module, pcapkit.protocols.application.sslv3, following the one-protocol-class-per-module ruling on #2529. The toctrees, ext.rst and the package exports are retargeted, and the #2529 pending list drops SSLv3.

Not breaking: tls.SSLv3 was added after v1.5.1 and never shipped, so it gets no versionremoved, no ledger entry and no re-export. Once #2596 (InARP) merges, the pending list needs a one-line rebase here.

Part of #2529

@JarryShaw JarryShaw added refactor Restructuring for its own sake — neither a fix nor a new capability (refactor: prefix) review: good-to-go Cross-review at the current head says ready; CI state is separate labels Nov 1, 2026
@JarryShaw

Copy link
Copy Markdown
Owner Author

GOOD TO GO at cfff29983. A Sonnet review covered the move, and I checked the rebase myself. sslv3.SSLv3 is in its own module, and nothing still names tls.SSLv3. SSLv3 is not in v1.5.1, so there is no versionremoved. The rebase onto f4aa57742 has the same patch-id (0886433c) outside the pending-list hunk. The protocols/application leg (698 tests) passes.

@JarryShaw JarryShaw moved this to In review in PyPCAPKit Nov 1, 2026
@github-actions

github-actions Bot commented Nov 1, 2026

Copy link
Copy Markdown
Contributor

Coverage: 94.03% (unit tier, Python 3.15, cfff29983, Unit Tests run success)

Package Statements Missed Branches Partial Cover
pcapkit (top level) 104 4 20 2 95.16%
pcapkit/const 20093 144 2712 125 98.78%
pcapkit/corekit 2605 74 818 37 96.52%
pcapkit/dumpkit 281 3 100 3 98.43%
pcapkit/foundation 3360 27 1186 32 98.70%
pcapkit/interface 138 4 52 3 96.32%
pcapkit/protocols 20352 220 5370 204 98.34%
pcapkit/toolkit 961 28 342 10 96.32%
pcapkit/utilities 506 7 144 5 98.15%
pcapkit/vendor 5009 2222 1148 182 52.31%

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

@github-actions github-actions Bot added this to the PyPCAPKit v1.6 milestone Nov 2, 2026
@JarryShaw

Copy link
Copy Markdown
Owner Author

resolve conflicts

@JarryShaw

Copy link
Copy Markdown
Owner Author

On it. A rebase onto main is already running and keeps both sides: the #2529 pending list for #2602, and Chained Records against #2585's SSLv2 paragraph for #2603. I'll push it with a lease and post the rebase note here, with the old and new heads, the patch-id check and the review status.

- SSLv3 moves from pcapkit.protocols.application.tls to the new
  pcapkit.protocols.application.sslv3, so tls holds TLS alone; no
  re-export at the old path. pcapkit.SSLv3, pcapkit.protocols.SSLv3 and
  pcapkit.protocols.application.SSLv3 are the moved class.
- The application package imports SSLv3 from its new home.
- New docs page sslv3.rst in the application toctree; tls.rst drops its
  SSLv3 autoclass; ssl.py, ssl.rst, tls.py, ext.rst and the hierarchy
  graph's click target point at the new path.
- protocol-family-grouping.rst no longer lists tls.SSLv3 as pending.
- tests/protocols/application/test_sslv3_unit.py pins the new home, that
  tls holds one protocol class, and SSLv3's parse and rebuild.
@JarryShaw
JarryShaw force-pushed the refactor/2529-sslv3-module branch from cfff299 to d880a70 Compare November 2, 2026 02:49
@JarryShaw

Copy link
Copy Markdown
Owner Author

Rebased onto main (3ccdc3271), as asked: cfff29983 → d880a7014.

@JarryShaw
JarryShaw merged commit afeb4af into main Nov 2, 2026
20 checks passed
@JarryShaw
JarryShaw deleted the refactor/2529-sslv3-module branch November 2, 2026 02:52
@github-project-automation github-project-automation Bot moved this from In review to Done in PyPCAPKit Nov 2, 2026
@JarryShaw JarryShaw removed the review: good-to-go Cross-review at the current head says ready; CI state is separate label Nov 2, 2026
JarryShaw added a commit that referenced this pull request Nov 2, 2026
…s latest wave into 1.6.0 (#2449)

- Added: every whole HTTP/2 frame in a TCP segment is a further HTTPv2
  layer, the previous frame's payload, as with TLS (#2609).
- Folded into unreleased entries: SSLv3 lives in
  pcapkit.protocols.application.sslv3 (#2602), and a reassembled DTLS
  Datagram's packet holds the deferred handshake decode (#2605).
  tls.SSLv3 is in no release tag, so the entry records no move.
- Changed: the remaining xdist jobs at -n logical (#2606) join the CI
  entry, and the member-order entry cites the last reorder (#2613).
- No entry for the test-only #2611 and #2612, or for #2610's private
  registry sentinel, which changes no behaviour.
- CHANGELOG.md regenerated; util/changelog_md.py --check passes.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

refactor Restructuring for its own sake — neither a fix nor a new capability (refactor: prefix)

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

1 participant