v0.3.0 - Architecture Improvements and i18n
v0.3.0 - Architecture Improvements and i18n
- 0.x.Y (minor) - new features, improvements (backward compatible)
- 0.x.y (patch) - bug fixes (backward compatible)
- X.y.z (major) - will be used for first stable API (v1.0.0+)
🎯 New Features
🌍 Spanish Language Support
- Complete Spanish localization for CLI help, usage examples, and error messages
- Multiple language detection methods:
--lang,TS_SSH_LANG,LANG,LC_ALL - Dynamic help display that respects language preferences
- Extensible i18n framework for future language additions
⚡ Power CLI Features
- Multi-host operations with parallel execution support
- Built-in tmux session management for concurrent connections
- Advanced file transfer operations across multiple hosts
- Host discovery and interactive selection (
--pick)
🏗️ Major Improvements
🧹 Code Architecture Cleanup
- Removed 180+ lines of dead TUI code and dependencies
- Eliminated unused dependencies:
github.com/rivo/tview,github.com/gdamore/tcell/v2 - Consolidated 85+ lines of duplicated SSH connection logic
- Modular code organization with focused helper functions
🐛 Critical Bug Fixes
- FIXED: Password prompts now display correctly (
user@hostinstead of garbled text) - FIXED: i18n formatting issues throughout the application
- FIXED: Race conditions in parallel authentication and terminal management
- FIXED: Windows cross-compilation compatibility
🧪 Enhanced Testing & Quality
- Comprehensive test suite: 14.5% → 22% coverage improvement
- New test files:
i18n_test.go,ssh_helpers_test.go,terminal_state_test.go - Race condition testing: Concurrent access validation for critical components
- Thread safety: Improved synchronization and mutex usage
🔧 Cross-Platform Support
Pre-built binaries for all major platforms:
- Linux: AMD64, ARM64
- macOS: AMD64 (Intel), ARM64 (Apple Silicon)
- Windows: AMD64, ARM64
💾 Installation
Quick Install (Linux/macOS)
# Linux AMD64
curl -L -o ts-ssh https://github.com/derekg/ts-ssh/releases/download/v0.3.0/ts-ssh-linux-amd64
chmod +x ts-ssh && sudo mv ts-ssh /usr/local/bin/
# macOS (detect architecture automatically)
curl -L -o ts-ssh https://github.com/derekg/ts-ssh/releases/download/v0.3.0/ts-ssh-darwin-$(uname -m < /dev/null | sed 's/x86_64/amd64/')
chmod +x ts-ssh && sudo mv ts-ssh /usr/local/bin/Windows
Download the appropriate .exe file:
Build from Source
git clone https://github.com/derekg/ts-ssh.git
cd ts-ssh
go build -ldflags "-X main.version=v0.3.0" .🚀 Usage Examples
Spanish Interface
# Use Spanish interface
ts-ssh --lang es --help
ts-ssh --lang es --list
# Set via environment
LANG=es ts-ssh --helpMulti-Host Operations
# Interactive host selection
ts-ssh --pick
# Parallel command execution
ts-ssh --exec "uptime" host1,host2,host3 --parallel
# Multi-host file transfer
ts-ssh --copy "localfile host1,host2:/remote/path"📈 Impact
Code Quality Metrics:
- Removed: 568 lines (dead code elimination)
- Added: 796 lines (tests + improvements)
- Net Result: Cleaner, more maintainable, better tested codebase
User Experience:
- Fixed critical formatting bugs affecting daily usage
- Enhanced error messages and troubleshooting
- Multi-language support for international users
- Better cross-platform compatibility
🔄 Migration from Previous Versions
- No breaking changes - all existing functionality preserved
- Improved reliability - better error handling and user feedback
- Enhanced features - new multi-host and i18n capabilities
Semantic Versioning: This release follows semver.org guidelines. Thanks to the Hacker News community for the feedback on proper versioning practices!
Full Changelog: v0.2.0...v0.3.0