v1.2.0 - Automatic Dependency Installation
What's New in v1.2.0
🎯 Automatic Dependency Installation
claude-sync now automatically detects and installs missing dependencies with user confirmation, making setup even easier!
Features
- Smart Package Detection: Automatically detects missing required packages (gnupg, tar, gzip, coreutils, rsync)
- Interactive Installation: Prompts users to install missing dependencies via apt
- Package Mapping: Correctly maps commands to apt package names (e.g.,
gpg→gnupg,sha256sum→coreutils) - Separate Handling: Required packages are handled separately from optional packages (jq, git)
- Verification: Confirms successful installation after package installation
- Clear Fallback: Provides manual installation instructions if automatic installation fails
User Experience
Before (v1.1.0):
$ claude-sync init
[ERROR] Missing dependencies: gpg tar jq
Install with: sudo apt install gpg tar jq
# User must manually install and retryAfter (v1.2.0):
$ claude-sync init
[WARN] Missing required dependencies: gpg tar
Install missing packages using apt? (gnupg tar) [y/N]: y
[INFO] Installing packages: gnupg tar
[INFO] ✓ Successfully installed required packages
[WARN] Missing optional dependencies: jq
Install optional packages? (jq) [y/N]: y
[INFO] Installing optional packages: jq
[INFO] ✓ Backup system initializedChanges
- Enhanced
check_dependencies()function inlib/utils.sh - Updated README.md with automatic installation documentation
- Added CHANGELOG.md for version tracking
- Created TEST_REPORT.md for comprehensive test documentation
- Added
tests/test_dependency_check.shfor validation
Testing
- ✅ All unit tests passing (7/7)
- ✅ All integration tests passing (9/9)
- ✅ Syntax validation complete
- ✅ New dependency check test added
Installation
git clone https://github.com/btafoya/claude-code-sync.git
cd claude-code-sync
./install.sh
claude-sync init # Dependencies will be auto-installed!Full Changelog
See CHANGELOG.md for complete version history.
Previous Release: v1.1.0