Skip to content

Add dry-run mode, timestamped backups, expanded tests, and CI#5

Merged
ojongerius merged 5 commits intomasterfrom
improve/architectural-improvements
Feb 13, 2026
Merged

Add dry-run mode, timestamped backups, expanded tests, and CI#5
ojongerius merged 5 commits intomasterfrom
improve/architectural-improvements

Conversation

@ojongerius
Copy link
Owner

@ojongerius ojongerius commented Feb 13, 2026

Summary

  • Dry-run mode: --dry-run flag previews what each module would do without making changes
  • Timestamped backups: Backups now use .orig.YYYYMMDDHHMMSS suffix to avoid overwriting previous backups
  • Oh-my-zsh idempotency: Skips installation if ~/.oh-my-zsh already exists
  • Remove set -x from osx.sh (was dumping every command as debug output)
  • Root .gitignore: Ignores __pycache__/, *.pyc, .DS_Store
  • Expanded tests: 6 → 13 BATS tests covering do_ghostty, do_claude, do_oh_my_zsh, and dry-run mode
  • GitHub Actions CI: Runs shellcheck and bats on push/PR to master

Test plan

  • All 13 BATS tests pass locally
  • shellcheck passes on install.sh
  • CI workflow runs successfully on this PR

Otto Jongerius and others added 5 commits February 14, 2026 10:46
- Add --dry-run flag to preview actions without making changes
- Use timestamped backups (.orig.YYYYMMDDHHMMSS) to avoid overwrites
- Add idempotency guard to do_oh_my_zsh (skip if already installed)
- Remove set -x from osx.sh
- Add root .gitignore and remove stale __pycache__
- Expand test suite from 6 to 13 tests (ghostty, claude, oh-my-zsh, dry-run)
- Add GitHub Actions CI with shellcheck and bats
The scandir action was picking up .zshrc which has expected
shellcheck warnings (oh-my-zsh variables, zsh-specific syntax).
@ojongerius ojongerius force-pushed the improve/architectural-improvements branch from cbfbfc4 to 5439cf7 Compare February 13, 2026 22:02
@ojongerius ojongerius merged commit 3ae1e5d into master Feb 13, 2026
2 checks passed
@ojongerius ojongerius deleted the improve/architectural-improvements branch February 13, 2026 22:03
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