React 18 Epic
React 18 support is multi-faceted. We first need to make sure that our packages can be used in React 18, and then there is work needed to actually USE React 18 in our packages, and determine if any packages will be left behind.
This epic will start tracking the work involved for each of those paths
- Consumption in React 18 projects
- Internal use of React 18
Consumption issues found
Fluent UI 9
- [x] #23872
- [x] https://github.com/microsoft/fluentui/issues/23625
- [x] Ensure that useInsertionEffect works properly in CRA and Emotion
- [ ] #24085
- [ ] Add entire react-components package to v9 test app and fix typing issues
Fluent UI 8
- [ ] Create testing enviroment for Fluent UI v8 and React 18
- [x] https://github.com/microsoft/fluentui/issues/24041
- [ ] Dialog and DialogFooter. Property 'children' does not exist on type 'IntrinsicAttributes & IDialogProps'
- [ ] Teaching bubble missing children prop
Build/TS issues found
V9
- [ ] getSlots needs explicit children | Type 'ExoticComponent<{ children?: ReactNode; }>' is not assignable to type 'ElementType<R[K]> | null'.
- [ ] resolveShorthand | 'UnknownSlotProps | ReactNodeArray' is not assignable to type 'UnknownSlotProps'.
- [ ] ssrContext children | <SSRContext.Provider value={value}>{props.children}</SSRContext.Provider>;
Other todos
- [ ] Create repeatable upgrade to make contribution easier (pick your react version)
Will FluentUI v8 get React 18 support or only FluentUI v9?
Will FluentUI v8 get React 18 support or only FluentUI v9?
Yes, v8 and v9 will support React 18 as soon as we are confident that the controls will work in the new React version.
@micahgodbolt Looking forward to this, any updates?
@joaomoreno PRs were just merged to update our peer deps. We're as confident as we're able to be about React 18 consumption, so test away and please give us any feedback.
Going to close this epic down as the focus was to enable consumption in React 18.
PRs were just merged to update our peer deps
@micahgodbolt thanks for making this change! When do you expect to do your next stable npm release with the update?
@micahgodbolt react-hooks package still has react <18 in peer deps
React hooks was updated in https://github.com/microsoft/fluentui/pull/25278