Skip to content

Retire motion_mp(), which never worked - #375

Merged
alexarje merged 1 commit into
masterfrom
retire-motion-mp
Aug 23, 2026
Merged

Retire motion_mp(), which never worked#375
alexarje merged 1 commit into
masterfrom
retire-motion-mp

Conversation

@alexarje

Copy link
Copy Markdown
Contributor

Closes #370. mypy 26 → 17, 682 tests pass.

motion_mp() rendered a motion video across several processes, coordinating them with a socket server and an argparse child. It raised on its first call — two fields were read as one between parent and workers — and behind that failure it called save_txt and save_analysis with arguments in the wrong positions. It produced nothing for anyone who tried it, and nothing tested it.

  • The method stays as a stub that explains this and points at motion(), which does the same work in one process and is tested. A script calling the old name gets a sentence, not an AttributeError.
  • The two modules behind it are deleted. Keeping a socket server and a child-process protocol that never worked serves nobody; git remembers.
  • Docs follow: both generated API pages, and the four references in MODULES.md, the module index, the results guide and the video-analysis guide. No dangling links.

The usual deprecate-now-remove-at-2.0 path is deliberately not used. That convention protects working code, and there was none — nothing can have depended on a method that raises on its first call.

This also sets the floor #350 had reached: 17 is exactly the count that was addressable without touching this, because typing code that cannot run would have been effort spent hiding a breakage.

🤖 Generated with Claude Code

ARJ's call, after #370 established what it does. It rendered a motion video
across several processes, coordinating them with a socket server and an argparse
child, and it raised on its first call: two fields were read as one between the
parent and the workers, and behind that failure it called `save_txt` and
`save_analysis` with arguments in the wrong positions. So it produced nothing
for anyone who tried it, and nothing tested it.

The method stays as a stub that says all of that and points at `motion()`, which
does the same work in one process and is tested. Someone whose script calls the
old name gets a sentence rather than an AttributeError. The two modules behind
it are deleted --- keeping a socket server and a child-process protocol that
never worked serves nobody, and git remembers.

The usual deprecate-now-remove-at-2.0 path is deliberately not used here. That
convention protects working code, and there was none: nothing can have depended
on a method that raises on its first call.

Docs follow: both generated API pages removed, and the four references in
MODULES.md, the module index, the results guide and the video-analysis guide.
No dangling links remain.

This also sets the floor #350 had reached. mypy goes from 26 errors to 17, which
is exactly the count that was addressable without it, because typing code that
cannot run would have been effort spent hiding a breakage.

682 tests pass, 4 skipped.

Closes #370.

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
@alexarje
alexarje merged commit 633b285 into master Aug 23, 2026
12 checks passed
@alexarje
alexarje deleted the retire-motion-mp branch August 23, 2026 17:21
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.

motion_mp() is broken: fails before it starts, and calls save_txt/save_analysis with the wrong arguments

1 participant