Skip to content

Sprites.cmd/4 fails with :closed — drain_pending_frames fix insufficient #6

@hankhan425

Description

@hankhan425

Summary

Sprites.cmd(sprite, "echo", ["hello"]) consistently fails with Command failed: :closed. The drain_pending_frames/1 fix on the feature/control-mode branch does not resolve this.

Environment

  • branch: feature/control-mode
  • Elixir: 1.19.5, OTP 28
  • Platform: macOS Darwin 25.2.0

Reproduction

        sprite = Sprites.sprite(client, "SPRITENAME")

        {output, exit_code} = Sprites.cmd(sprite, "echo", ["hello"])
        ** (RuntimeError) Command failed: :closed
            (sprites 0.1.0) lib/sprites/command.ex:569: Sprites.Command.collect_output/4
            iex:7: (file)

        {output, code} = Sprites.cmd(sprite, "ls", ["-la"],
          dir: "/app",
          env: [{"FOO", "bar"}],
          timeout: 30_000,
          stderr_to_stdout: true
        )
        ** (RuntimeError) Command failed: :closed
            (sprites 0.1.0) lib/sprites/command.ex:569: Sprites.Command.collect_output/4
            iex:7: (file)

        {output, code} = Sprites.cmd(sprite, "bash", ["-c", "tty"],
          tty: true,
          tty_rows: 24,
          tty_cols: 80
        )
        ** (RuntimeError) Command failed: :closed
            (sprites 0.1.0) lib/sprites/command.ex:569: Sprites.Command.collect_output/4
            iex:7: (file)

I was excited to try this SDK but maybe I was too early? In any case I wanted to report this just in case.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions