Version Migration
This section contains guides for upgrading between major versions of MSR. Each guide includes detailed instructions, breaking changes, and examples to help you migrate smoothly.
Available Upgrade Guides
- v0.5.x → v0.6.0 - Breaking: Generic type parameters (required), constructor signature change, metrics collection
- v0.4.x → v0.5.0 - Non-Breaking: Transaction management, environment variables, enhanced hooks
- v0.3.x → v0.4.0 - Breaking: SQL migrations, API method renames (
up()/down()),filePatternsarray,checkConnection()required - v0.2.x → v0.3.0 - Breaking:
migrate()now returnsIMigrationResult, no longer callsprocess.exit() - v0.1.x → v0.2.0 - Package rename from
migration-script-runnerto@migration-script-runner/core
Migration Policy
When We Create Migration Guides
We create migration guides for:
- Major version changes (e.g., v1 to v2) - Always includes migration guide
- Breaking changes in minor versions (e.g., v0.1 to v0.2) - Includes migration guide
- Package renames or structural changes - Includes migration guide
What’s In a Migration Guide
Each guide includes:
- ✅ Summary of changes
- ✅ Breaking changes list
- ✅ Step-by-step migration instructions
- ✅ Before/after code examples
- ✅ Troubleshooting tips
- ✅ Automated migration tools (when applicable)
Semantic Versioning
MSR follows Semantic Versioning:
- MAJOR version (x.0.0) - Incompatible API changes
- MINOR version (0.x.0) - New features, backward compatible
- PATCH version (0.0.x) - Bug fixes, backward compatible
During v0.x development, minor versions may include breaking changes (we’ll always provide migration guides).
Need Help?
If you encounter issues during migration:
- Check the specific migration guide for your version
- Search GitHub Issues
- Review the API documentation for detailed reference
- Create a new issue if your problem isn’t covered
Stay Updated
To stay informed about new versions and breaking changes:
- Watch the GitHub repository
- Check the Changelog
- Follow the npm package