Skip to content

Document mixins referencing other mixins - #113

Merged
cottsay merged 1 commit into
colcon:mainfrom
PiousCrossten:document-mixins-referencing-mixins
Aug 27, 2026
Merged

Document mixins referencing other mixins#113
cottsay merged 1 commit into
colcon:mainfrom
PiousCrossten:document-mixins-referencing-mixins

Conversation

@PiousCrossten

@PiousCrossten PiousCrossten commented Aug 22, 2026

Copy link
Copy Markdown
Contributor

Documents the mixin key which allows a mixin to be composed out of other mixins, added to colcon-mixin in colcon/colcon-mixin#70 and colcon/colcon-mixin#71.

Only reference/mixin-arguments.rst is touched. The new section covers:

  • the reserved mixin key and an example mixin file using it
  • that referenced mixins are applied before the mixin referencing them, so the referencing mixin can replace or extend their values
  • that references are resolved recursively, depth first, and that a mixin reached through several paths is applied once per path to keep the "last one wins" semantic
  • that explicit command line arguments still take precedence
  • the error cases: unknown reference, circular reference and a malformed mixin key

sphinx -b html and sphinx -b spelling both build without new warnings.

Describe the reserved 'mixin' key which allows a mixin to be composed out
of other mixins and the order in which the referenced mixins are applied.

Assisted-by: Claude Opus 5
@PiousCrossten
PiousCrossten force-pushed the document-mixins-referencing-mixins branch from 3d2ef53 to bbff6cf Compare August 22, 2026 10:50

@knmcguire knmcguire left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

Just a question to @cottsay, do all commits need to be signed and verified?

PiousCrossten pushed a commit to PiousCrossten/gsoc-2026-colcon-mixin that referenced this pull request Aug 27, 2026
Final report for "Add Support for Mixin Composition in colcon-mixin",
Google Summer of Code 2026 with OSRF / Open Robotics.

Covers the merged work (colcon/colcon-mixin#70, #71), the open follow-ups
(#73 and colcon/colcon.readthedocs.org#113), the architecture and the
ordering alternatives that were considered and rejected, testing, and the
week-by-week project history.

The two working documents are archived under docs/ rather than linked
externally so they remain readable alongside the report. The project log
is lightly redacted: a recurring video-call link and a tokenised proposal
download URL were removed. No project content was altered.
@cottsay

cottsay commented Aug 27, 2026

Copy link
Copy Markdown
Member

do all commits need to be signed and verified?

No, but squash-merging will sign/verify the commit using GitHub's signature.

@cottsay
cottsay merged commit 50698a0 into colcon:main Aug 27, 2026
1 check passed
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.

3 participants