-
Notifications
You must be signed in to change notification settings - Fork 8
Description
User Story: Upgrade to React 19
Issue Type: Feature Request
Priority: High
Feature: AB#59294
Related Issues: #3504
User Story
As a product owner and development team
I want the Fusion Framework to support React 19
So that we can leverage the latest React features, maintain security compliance, and ensure long-term maintainability of our framework and applications.
Business Value
- Security & Support: React 19 is actively supported with security updates; React 17 is end-of-life
- Performance: React 19 includes performance improvements benefiting all applications
- Ecosystem: Third-party libraries are moving to React 19 support
- Technical Debt: Proactive upgrade prevents future migration costs from larger version gaps
- Developer Experience: Access to modern features and better tooling
Functional Requirements
FR1: Framework Core Support
The Fusion Framework core packages must support React 19 as a peer dependency.
Acceptance Criteria:
- All core React packages accept React 18 or React 19
- Framework initializes and functions correctly with React 19
- No breaking changes to public APIs
- Backward compatibility maintained for React 18
FR2: Application Rendering
Applications built with Fusion Framework must render correctly using React 19's modern rendering APIs.
Acceptance Criteria:
- Applications render without errors using React 19
- All rendering APIs use React 19-compatible methods (
createRoot) - No console warnings related to deprecated React APIs
- Application lifecycle (mount/unmount) works correctly
FR3: Module Compatibility
All Fusion Framework React modules must be compatible with React 19.
Modules: AL HTTP, Context, Bookmark, Navigation, Event, SignalR, Feature Flag, AG Grid
Acceptance Criteria:
- All modules initialize and function correctly with React 19
- Module hooks and providers work as expected
- All module examples and cookbooks function correctly
FR4: Development Tools & Testing
Development tools, test utilities, and cookbooks must support React 19 development and testing.
Acceptance Criteria:
- All cookbooks build and run with React 19
- Development portal works with React 19
- Test utilities function correctly with React 19
- All existing tests pass with React 19
FR5: Documentation & Migration Support
Documentation must guide application teams through React 19 migration.
Acceptance Criteria:
- Migration guide available for upgrading from React 18 to 19
- Breaking changes documented with migration examples
- Code examples updated to React 19 patterns
- Changelog updated with React 19 upgrade details
FR6: CLI React Version Notification
The Fusion Framework CLI must notify developers if their application is not using React 19.
Acceptance Criteria:
- CLI checks React version in package.json during application creation or build
- CLI displays warning/notification if React version is below 19
- Notification includes recommendation to upgrade to React 19
- Notification can be suppressed via CLI flag for existing projects