Skip to content

Allow injecting Executor class to control how commands are made / ran #383

@tony

Description

@tony

Default behavior is the same

Executors:

  • Default: run() w/ a pass-through to show real time stderr of progress

  • subprocess.run pass-through

  • SubprocessCommand generates functions in dataclasses you can invoke later

    Rather than immediately running a SubprocessCommand, you can introspect, pickle it, adjust it, etc.

    Git(executor=SubprocessCommand)

  • Bring your own

    If you're not satisfied and don't think a PR will do, create your own executor class.

    If you do, you may want to either 1.) override the class's #run() or 2.) pass a run_fn to override it.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions