Migration & Compatibility
Azu provides smooth migration paths and maintains backward compatibility across versions. This section covers version upgrades, breaking changes, and compatibility guidelines.
Overview
Azu's migration features are designed for:
Smooth version upgrades with clear migration paths
Backward compatibility where possible
Breaking change documentation with migration guides
Deprecation warnings with clear upgrade instructions
Compatibility matrices for dependencies
Version Compatibility
Compatibility Matrix
0.5.x
1.2.x+
✅ Current
-
0.4.x
1.1.x+
✅ Supported
2024-12-31
0.3.x
1.0.x+
⚠️ Deprecated
2024-06-30
0.2.x
0.36.x+
❌ EOL
2023-12-31
Version Upgrades
Upgrading to Azu 0.5.x
Azu 0.5.x introduces several improvements and breaking changes:
New Features
Enhanced WebSocket support with connection pooling
Improved template engine with better error handling
New middleware for rate limiting and IP spoofing protection
Better performance monitoring and metrics
Breaking Changes
Removed deprecated
Azu::Handler::Session(useAzu::Handler::Session::Redisinstead)Changed WebSocket channel API for better type safety
Updated template engine configuration format
Modified response serialization interface
Migration Steps
Update Crystal Version
Update Azu Version
Update WebSocket Channels
Update Template Configuration
Learn more about Version Upgrades →
Breaking Changes
Azu 0.5.x Breaking Changes
1. WebSocket Channel API Changes
Before (0.4.x):
After (0.5.x):
2. Session Handler Removal
Before (0.4.x):
After (0.5.x):
3. Response Serialization Changes
Before (0.4.x):
After (0.5.x):
Learn more about Breaking Changes →
Deprecation Warnings
Azu provides deprecation warnings to help you identify code that needs to be updated:
Common Deprecation Warnings
1. Deprecated Handler Usage
2. Deprecated Template Methods
3. Deprecated Configuration
Handling Deprecation Warnings
Enable Deprecation Warnings
Suppress Specific Warnings
Update Deprecated Code
Compatibility Guidelines
1. API Compatibility
Stable APIs
Core endpoint interface
Request/response contracts
Basic middleware interface
Template rendering API
Evolving APIs
WebSocket channel API (improvements in 0.5.x)
Configuration interface (consolidated in 0.5.x)
Session handling (Redis-only in 0.5.x)
2. Dependency Compatibility
Required Dependencies
Optional Dependencies
3. Environment Compatibility
Development Environment
Production Environment
Migration Tools
1. Automated Migration Scripts
Azu provides migration scripts to help automate common upgrades:
2. Compatibility Checker
3. Upgrade Assistant
Testing Migrations
1. Test Suite Updates
Update your test suite to work with new versions:
2. Compatibility Tests
Support and Resources
1. Migration Support
Migration Guide - Step-by-step upgrade instructions
Breaking Changes - Detailed breaking change documentation
GitHub Issues - Report migration issues
2. Community Resources
Discord Community - Get help with migrations
Migration Examples - Working migration examples
FAQ - Common migration questions
Next Steps
Version Upgrades - Step-by-step upgrade guides
Breaking Changes - Detailed breaking change documentation
Compatibility Matrix - Version compatibility information
Examples
Check out the migration examples for complete working examples of:
0.4.x to 0.5.x upgrades
Breaking change migrations
Compatibility testing
Automated migration scripts
Need help with migration? Start with the Version Upgrades guide for step-by-step instructions, then check Breaking Changes for detailed information about API changes.
Last updated
Was this helpful?
