All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
1.0.0 - 2025-11-02
- ✨ Initial production release
- 🚀 CLI tool for MongoDB data migration and backup
- 📦 Programmatic API for Node.js integration
- 🪄 Copy entire databases or specific collections
- ⚡ Batch processing with adjustable batch size
- 🧰 Dry-run mode to simulate operations
- 💾 JSON export/import for backups
- 🤖 CI-ready with
--yesflag to skip confirmations - 📊 Beautiful progress feedback with spinners
- 🧠 Environment-based configuration via
.envfile - 🔧 Support for custom batch sizes
- 📝 Comprehensive logging with file output option
- 🐛 Environment validation no longer blocks
--helpcommand - 🐛 JSON export now writes proper array format instead of multiple arrays
- 🐛 Improved error handling for missing environment variables
- 🔒 Environment variables validation
- 🔒 Secure connection string handling
1.1.0 - 2025-11-02
- ✨ Progress Bars: Real-time visual feedback with document counts during copy operations using
cli-progress - 🔄 Incremental Backups: Copy only new/updated documents since a specific date using
--incremental,--timestamp-field, and--sinceoptions - 🔑 Index Copying: Automatically copy indexes from source to target collections with
--copy-indexesflag - ✅ Schema Validation: Optional pre-copy validation to ensure data compatibility with
--validate-schemaflag - 🚀 Performance Optimizations: Enhanced batch processing with streaming and bulk operations for very large datasets
- 📊 Progress Control: Added
--no-progressflag to disable progress bars when needed - 🧪 Enhanced Test Coverage: Comprehensive test suite covering all new features, parameter validation, and integration points
- 🔧 Improved batch processing with bulkWrite operations for incremental mode
- 🔧 Optimized cursor streaming for better memory efficiency
- 📚 Updated documentation with new CLI examples and API usage patterns
- 📦 Bumped version to 1.1.0 with updated package description
- Incremental mode uses
replaceOnewithupsertfor efficient document updates - Progress bars show collection name, percentage, and document counts
- Index copying filters out
_id_index and handles conflicts gracefully - Schema validation performs test insert/delete to verify compatibility
- All new features work seamlessly with JSON export/import modes
- TypeScript version
- Change streams support for real-time sync
- Parallel collection processing
- Compression for JSON exports