Skip to content

DOC: Clarify vendored third-party fork conventions#6432

Open
hjmjohnson wants to merge 1 commit into
InsightSoftwareConsortium:mainfrom
hjmjohnson:doc-thirdparty-fork-conventions
Open

DOC: Clarify vendored third-party fork conventions#6432
hjmjohnson wants to merge 1 commit into
InsightSoftwareConsortium:mainfrom
hjmjohnson:doc-thirdparty-fork-conventions

Conversation

@hjmjohnson

Copy link
Copy Markdown
Member

Documentation-only: clarifies ITK's vendored third-party fork conventions and de-duplicates the two overlapping update docs. Prompted by @blowekamp's review on #6431, which flagged that the fork procedure was unclear about branch/tag anchoring and SHA provenance.

What changed
  • Documentation/Maintenance/ThirdPartyForkConventions.md — adds a two fork types table: release-tracking forks (eigen, DCMTK) use the upstream release + upstream-tag SHA; divergent/pruned forks (vxl/VNL) track no upstream release, so <version> is master and <sha7> is the overlay-tip commit. Adds a branches, never tags rule: a same-named branch and tag make a ref ambiguous (warning: refname is ambiguous) and break update-third-party.bash.
  • Documentation/docs/contributing/updating_third_party.md — removes the stale for/itk single-branch naming (which conflicted with the for/itk-<project>-<version>-<sha7> convention) and defers all naming to ThirdPartyForkConventions.md. The two docs are now cross-linked: conventions = naming/structure, this doc = procedure.
  • AGENTS.md — routes agents to both docs when updating a vendored dependency.
  • Modules/ThirdParty/VNL/README.md — fixes a dead link that pointed at a nonexistent Documentation/Maintenance/UpdatingThirdParty.md; now links the real updating_third_party.md and the conventions doc.
Scope / testing

Documentation only — no code, no build/test impact. pre-commit run --all-files passes. Relative links in the VNL README verified to resolve.

@github-actions github-actions Bot added type:Documentation Documentation improvement or change area:ThirdParty Issues affecting the ThirdParty module area:Documentation Issues affecting the Documentation module labels Jun 11, 2026
@hjmjohnson hjmjohnson marked this pull request as ready for review June 11, 2026 11:45
@greptile-apps

This comment was marked as resolved.

Document the divergent/pruned fork type (vxl/VNL) where <sha7> is the
overlay-tip commit and <version> is master, and require branch-only overlay
anchors (a same-named branch and tag make the ref ambiguous and break
update-third-party.bash).

Make ThirdPartyForkConventions.md the single source of truth for fork naming
and updating_third_party.md the source for procedure; cross-link them and drop
the stale for/itk naming restatements. Route to both from AGENTS.md and fix the
VNL README link that pointed at a nonexistent Maintenance/UpdatingThirdParty.md.
@hjmjohnson hjmjohnson force-pushed the doc-thirdparty-fork-conventions branch from b836a3b to 1f722cf Compare June 11, 2026 12:06
@hjmjohnson

Copy link
Copy Markdown
Member Author

Addressed the greptile finding in 1f722cf: the "Updating a Project" example now uses the for/itk-doubleconversion-<version>-<sha7> branch names, and the git rebase --onto arguments were corrected (new base comes first; the old form rebased onto 1.1.6 instead of 3.0.0).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area:Documentation Issues affecting the Documentation module area:ThirdParty Issues affecting the ThirdParty module type:Documentation Documentation improvement or change

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant