Skip to content

Migrate rcopy CLI from Bash to Go#1

Draft
mrAibo wants to merge 6 commits into
mainfrom
feat/go-cli
Draft

Migrate rcopy CLI from Bash to Go#1
mrAibo wants to merge 6 commits into
mainfrom
feat/go-cli

Conversation

@mrAibo

@mrAibo mrAibo commented Jul 13, 2026

Copy link
Copy Markdown
Owner

Summary

  • add a dependency-free Go implementation of the rcopy CLI
  • preserve the existing Bash implementation as a compatibility fallback
  • keep existing command-line options and exit-code behavior
  • add unit and Bats regression tests
  • add CI checks for formatting, modules, tests, vet, vendor-only build, and static Linux/amd64 build
  • publish the rcopy-linux-amd64 workflow artifact

Design

The implementation follows the Ponytail rules: standard library first, no new runtime dependencies, direct command execution without shell interpolation, minimal file layout, and executable regression coverage for non-trivial argument/command construction.

Compatibility note

The Go CLI is introduced alongside rcopy.sh; the Bash function is not removed in this change.

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.

1 participant