Skip to content

docs(corekit): version directives and render fixes (#1103) - #1762

Merged
JarryShaw merged 1 commit into
mainfrom
docs/1103-corekit
Oct 15, 2026
Merged

JarryShaw merged 1 commit into
mainfrom
docs/1103-corekit

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

Description

Part of #1103, the whole-repository prose sweep, for the corekit slice. It follows the #719 rules: prose only, accuracy first, no churn and no timed context.

Version directives, all 1.5.0:

  • versionadded: corekit.enum, .sentinels, .decorators, .fields.byteorder,
    parse_ip_address, PortEnumField, MultiInfo, OrderedMultiInfo, TLSKeyLabel.
  • versionchanged: FieldBase.length/unpack, SeekableReader, info_final,
    Info.to_dict, EnumField.post_process, OptionField.unpack, the ipaddress
    fields, OrderedMultiDict.deepcopy, and the generated Flags,
    ExtensionHeader and Method (template and output alike).
  • versionremoved: SeekableReader.writeable, field.NoValue and
    utilities.decorators; the beta-only _READ_CHUNK and zero-pad directives go.

Rendering: cross-reference targets split across lines are joined, the
NO_DEFAULT and AppType targets point at their documented homes, enum.rst and
infoclass.rst stop rendering five members twice, and the SMF_DPD bold title
no longer nests a literal.

Prose: timed context is rewritten in sentinels, numbers, collections, io, the
ExtensionHeader crawler and the decorators page.

Checks:

  • An AST guard holds on every changed .py: code is identical once docstrings are blanked.

The pcapkit/vendor/** diffs change template strings, not docstrings. Each change is prose that the template emits into a generated pcapkit/const/** docstring, and the generated files carry the identical change.

  • tests/project and every test that reads the edited paths pass.
  • A merged Sphinx build of all nine slices adds no new warnings.
  • A Sonnet cross-review returned GOOD TO GO.

Not covered here; a round-2 PR follows: most of corekit (fields/misc, fields/strings, module, protochain, version and others), the vendor and const docstrings, and the timed wording left in vendor comments.

Refs #1103

Version directives, all 1.5.0:
- versionadded: corekit.enum, .sentinels, .decorators, .fields.byteorder,
  parse_ip_address, PortEnumField, MultiInfo, OrderedMultiInfo, TLSKeyLabel.
- versionchanged: FieldBase.length/unpack, SeekableReader, info_final,
  Info.to_dict, EnumField.post_process, OptionField.unpack, the ipaddress
  fields, OrderedMultiDict.deepcopy, and the generated Flags,
  ExtensionHeader and Method (template and output alike).
- versionremoved: SeekableReader.writeable, field.NoValue and
  utilities.decorators; the beta-only _READ_CHUNK and zero-pad directives go.

Rendering: cross-reference targets split across lines are joined, the
NO_DEFAULT and AppType targets point at their documented homes, enum.rst and
infoclass.rst stop rendering five members twice, and the SMF_DPD bold title
no longer nests a literal.

Prose: timed context is rewritten in sentinels, numbers, collections, io, the
ExtensionHeader crawler and the decorators page.

Refs #1103
@JarryShaw JarryShaw added the docs Pull requests that change documentation only (docs: subject prefix) label Oct 15, 2026
@JarryShaw

Copy link
Copy Markdown
Owner Author

Verdict: GOOD TO GO at 5b52fc0d2. A Sonnet cross-review checked it (author: Opus).

  • No blocking findings. The vendor diffs change template strings, and each change is prose the template emits into a generated const docstring. The generated files carry the identical change.
  • Directives: the feat(utilities): one config module for the tunable limits (PCAPKIT_* environment variables), and one home per duplicated protocol constant #1726 versionremoved blocks on names that existed only in the betas are removed, per the 1.5.0 ruling.
  • Non-blocking, all for round 2:
    • the AppType.get(54321, ...) example at fields/numbers.py:853-858 is stale: get no longer mints a member;
    • the Info.__new__ "Content block expected" error is pre-existing, and the same move that fixed Schema.__new__ should fix it;
    • one bold-wrapped literal is still generated by vendor/default.py:82;
    • :issue: 922 is a PR; the issue is 911;
    • fields/misc.py, strings.py, module.py, protochain.py, version.py and context.py have not been read yet.

@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 JarryShaw moved this to In review in PyPCAPKit Oct 15, 2026
@JarryShaw
JarryShaw merged commit 33fa256 into main Oct 15, 2026
54 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 docs/1103-corekit branch October 15, 2026 17:15
@JarryShaw JarryShaw removed the review: good-to-go Cross-review at the current head says ready; CI state is separate label Oct 15, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

docs Pull requests that change documentation only (docs: subject prefix)

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

1 participant