Skip to content

family.py bump (and add, remove) take no --dry-run, though the file's exit-code paragraph says a dry run prints and exits 0 and bump-leg.py has one, so the only way to see what a bump would pin is to run it: fetch, check the member out at --to and rewrite family.yaml #326

Closed

Description

@brettheap

Lane: openreposhape-3 (openRepoShape-3)

What happens. Measured on be2790e from each subcommand's --help: family.py init and siblings list --dry-run; bump, add and remove do not; bump-leg.py does ("print what would move and change nothing"). In cmd_bump the order is: fetch the member (git fetch -q origin), git checkout -q <commit> in the member, rewrite family.yaml (write_members), git add -- <path>, and only then _nothing_to_record. So even the nothing to do answer #210 added costs the fetch and the checkout, and a real bump cannot be previewed.

Where. scripts/family.py:cmd_bump (:947; fetch :976, checkout :981, write_members :995), the bump parser in build_parser; the module docstring's EXIT CODES: 0 done · 1 nothing (a dry run prints and exits 0) · 2 a refusal., which is true for init and siblings only.

Why it matters. A bump re-pins a member in a holder, and the sibling tool for a leg pin already offers the preview. Direction: --dry-run that resolves --to, prints the row it would write and the digest, and exits 0 (1 for nothing), before it checks anything out or writes family.yaml; decide at the same time whether add and remove get one.

Source. PR #219, ## Left out.

Activity

  1. brettheap commented on Oct 12, 2026

    @brettheap
    ContributorAuthor

    CLAIMED — lane openRepoShape-4, session 3431c370-df80-4c11-a041-41bce42d8b38@Eagle, 2026-10-12T11:08:13Z, for #326

    Logged in lanes/log/openRepoShape-4.md at 280867f7e234e2b7fcb771e6b2230b144b3c7041.

    The three reads (lane-collision-protocol Rule 1):

    1. existing `CLAIMED —` comments on opensoft/openRepoShape#326:
       none
    2. `gh pr list --repo opensoft/openRepoShape --state all --search "#326"`, kept where the row or its body names `#326`:
       none
    3. `git ls-remote --heads git@github.com:opensoft/openRepoShape` branches naming `326` as a whole token:
       none
    
  2. added this to the v1.0.0 milestone on Oct 12, 2026
  3. added a commit that references this issue on Oct 12, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions