Skip to content

Stage 1 - The multi-line text rule #124

Closed

Description

@eirkkr

The multi-line text rule - the section in the code conventions, the expected-text section in the testing conventions that points at it, and every example run.

Delivers R1-R8 of #123.

Branch

feature/multi-line-text-rule

Steps

  1. Add the Multi-line text section to the Python code conventions, after Constants: the rule, its two endings, the old form named, and the line saying review enforces it; add the topic to the file's opening list. Done when the section reads true against R1, R2 and R4, and each new-form example in it, copied to a scratch file with its import, produces the text stated for it under python3 and shows no diff under ruff format --isolated --diff.

  2. Add to that section the four cases that stay as one literal per line, each with its reason. Done when the section reads true against R3, and running the f-string case under python3 shows the text is not dedented.

  3. Add the Expected multi-line text section to the Python testing conventions, after Golden / fixture-comparison tests, linking to the code conventions' section, which gains a line linking back. Done when the section reads true against R5 and R6, both links resolve to a heading, and its example passes the same two commands as step 1. (Step 6 removed the example, and this clause with it.)

  4. Fix what the stage's two reviews found in the sections. Done when every example, pulled from the two docs as committed, still produces its stated text under python3 and shows no diff under ruff format --isolated --diff, and just check passes.

  5. Shorten the Multi-line text section, as the reviewer asked at the gate, without losing anything R1-R4 require. Done when the section still reads true against R1-R4, its examples still produce their stated text under python3, and just check passes.

  6. Cut the testing conventions' section down to what a comparison adds, as the reviewer asked at the gate: the example and the text repeating the code conventions' rule go. Done when the section still reads true against R5 and R6, its link resolves, and just check passes.

  7. Fix what the second review found in the shortened section. Done when its examples still produce their stated text under python3 and show no diff under ruff format --isolated --diff, and just check passes.

  8. Correct what the review of the cut-down sections found: one wrong claim about how ruff format moves the quotes, and three unclear sentences. Done when the section's examples still produce their stated text under python3, and just check passes.

The kit's own Python was re-checked when the stage started: no text of three or more lines is written as adjacent literals or a joined list of literals, so there is no code step.

Activity

  1. self-assigned this
    on Oct 4, 2026
  2. eirkkr commented on Oct 4, 2026

    @eirkkr
    OwnerAuthor

    Step 4 added after the stage's review: the fixes it called for touch all three earlier steps' text, so they are one step of their own. The review's findings and outcomes are on the stage's pull request.

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

Metadata

Metadata

Assignees

Labels

No labels
No labels

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions