Skip to content

Provide a collision-resistant command runner API #15

Description

@codeforester

Context

The stdlib exports a public run helper. It is ergonomic, but run is a collision-prone name in Bash ecosystems, especially with BATS, shunit2, and caller-local wrappers. The test suite already preserves BATS' run as bats_run, which proves the conflict is real.

Scope

  • Decide the canonical public name for the command runner, such as std_run or lib_run.
  • Keep backward compatibility for existing callers if appropriate, possibly through an opt-in or compatibility alias.
  • Update docs, examples, and tests to show the preferred API.
  • Document the migration path for existing run users.

Acceptance Criteria

  • The preferred command runner name is less likely to collide with external frameworks.
  • Existing callers are either preserved or given a clear migration path.
  • README.md, lib/bash/std/README.md, examples, and tests agree on the API.

Validation

  • ./tests/validate.sh

Suggested Branch

enhancement/<issue>-20260618-command-runner-api

Activity

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

Metadata

Metadata

Assignees

Labels

enhancementNew feature or product improvement

Type

No type

Projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions