Skip to content

fix(copyright): recover bounded POD author credits - #1410

Merged
mstykow merged 1 commit into
fix/embedded-yaml-creditsfrom
fix/bounded-author-sections
Sep 3, 2026
Merged

fix(copyright): recover bounded POD author credits#1410
mstykow merged 1 commit into
fix/embedded-yaml-creditsfrom
fix/bounded-author-sections

Conversation

@mstykow

@mstykow mstykow commented Sep 3, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • Recover contact-backed author identities from bounded POD AUTHOR and AUTHORS sections.
  • Treat POD headings, block directives, blank lines, and a 4 KiB paragraph cap as structural boundaries.
  • Normalize common role-prefixed and email-first roster forms while excluding operational and copyright contacts.

Issues

Scope and exclusions

  • Included: contact-backed POD author paragraphs, multi-author paragraphs, wrapped contacts, role-prefixed rosters, late-phase value deduplication.
  • Explicit exclusions: contactless POD credits and unstructured header comments; those require separate evidence rules.

How to verify

  • Scan Perl 5.38.4 with --copyright and compare author values against the parent branch. This branch adds 430 author values across 265 files, removes none, and leaves copyright and holder values unchanged.
  • Scan Info-ZIP 3.0 with --copyright; author, copyright, and holder output should be exactly unchanged from the parent branch.

Intentional differences from Python

  • ScanCode has author output in only 48 of the affected Perl files and exactly matches 12 recovered values. Provenant uses the explicit POD section contract to recover more source-faithful identities while retaining hard section and size bounds.

Follow-up work

  • Created or intentionally deferred: recover contactless names and collectives from the same bounded POD sections in a separately benchmarked stack layer.

Expected-output fixture changes

  • Files changed: none.
  • Why the new expected output is correct: focused end-to-end tests cover the new extraction and boundary behavior without altering existing golden fixtures.

@mstykow
mstykow force-pushed the fix/bounded-author-sections branch from af69c81 to 75842f9 Compare September 3, 2026 02:25
@mstykow
mstykow force-pushed the fix/bounded-author-sections branch from 75842f9 to 5a19ad9 Compare September 3, 2026 02:28
Signed-off-by: Maxim Stykow <maxim.stykow@gmail.com>
@mstykow
mstykow force-pushed the fix/bounded-author-sections branch from 5a19ad9 to 51b0e17 Compare September 3, 2026 10:24
@mstykow

mstykow commented Sep 3, 2026

Copy link
Copy Markdown
Collaborator Author

@greptileai review

@mstykow
mstykow merged commit 32d6c6b into main Sep 3, 2026
12 checks passed
@mstykow
mstykow deleted the fix/bounded-author-sections branch September 3, 2026 11:04
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant