|
| 1 | +# 037 Migrate From MediatR To TimeWarp.Mediator |
| 2 | + |
| 3 | +## Description |
| 4 | + |
| 5 | +Migrate the codebase from using MediatR to TimeWarp.Mediator. Since TimeWarp.Mediator is a fork of Mediator (forked at the last Apache 2 license commit before it went commercial), this should be a straightforward migration involving mainly package references and global usings changes. Create a migration document with notes during the process. |
| 6 | + |
| 7 | +## Requirements |
| 8 | + |
| 9 | +- Replace all MediatR package references with TimeWarp.Mediator |
| 10 | +- Update global usings to reference TimeWarp.Mediator namespaces |
| 11 | +- Create comprehensive migration documentation with notes and lessons learned |
| 12 | +- Ensure all existing functionality continues to work after migration |
| 13 | +- Verify all tests pass after migration |
| 14 | + |
| 15 | +## Checklist |
| 16 | + |
| 17 | +### Design |
| 18 | +- [ ] Analyze current MediatR usage patterns across the solution |
| 19 | +- [ ] Identify all package references and global usings to update |
| 20 | +- [ ] Plan migration strategy focusing on package refs and usings |
| 21 | + |
| 22 | +### Implementation |
| 23 | +- [ ] Update package references in all .csproj files |
| 24 | +- [ ] Update global usings files to reference TimeWarp.Mediator namespaces |
| 25 | +- [ ] Update any explicit using statements if needed |
| 26 | +- [ ] Update dependency injection registrations if namespace changes affect them |
| 27 | +- [ ] Run build to verify no compilation errors |
| 28 | +- [ ] Run all tests to ensure functionality is maintained |
| 29 | + |
| 30 | +### Documentation |
| 31 | +- [ ] Create migration document with step-by-step notes |
| 32 | +- [ ] Document any issues encountered and solutions |
| 33 | +- [ ] Update CLAUDE.md references from MediatR to TimeWarp.Mediator |
| 34 | +- [ ] Document benefits of using TimeWarp.Mediator over MediatR |
| 35 | + |
| 36 | +## Notes |
| 37 | + |
| 38 | +- TimeWarp.Mediator is a fork of Mediator (not MediatR) from the last Apache 2 license commit |
| 39 | +- This should be primarily a package reference and namespace change |
| 40 | +- The migration document should serve as a guide for future similar migrations |
| 41 | +- Pay attention to any subtle differences between the forked version and original |
| 42 | +- Document the reasoning behind the fork (commercial licensing issue) |
0 commit comments