-
Notifications
You must be signed in to change notification settings - Fork 2.8k
Closed
1 / 11 of 1 issue completedLabels
Fluent UI react (v8)Issues about @fluentui/react (v8)Issues about @fluentui/react (v8)Package: chartingReact 19Type: Feature
Description
Area
v8 (@fluentui/react, @fluentui/react-charting)
Describe the feature that you would like added
Add React 19 support to v8
Additional context
To support user migration efforts to React 19 while their apps are in hybrid state ( using both v8 and v9 ) v8 needs to support React 19 as well.
This goal of this issue is to get overview of effort needed to make this happen.
Status report:
data acquired from RIT test pipeline enabled on v8 packages https://github.com/microsoft/fluentui/actions/runs/17771405979/job/50508171575?pr=35199
package | e2e | test | type-check |
---|---|---|---|
react | N/A | 🔴 | N/A |
react-hooks | N/A | ✅ | N/A |
react-examples ( covers react,charting,experiments ) | ✅ | N/A | 🔴 / 389 errors in 225 files |
react-charting | N/A | 🔴 | N/A |
react-experiments | N/A | 🔴 | N/A |
More Detailed Errors to Handle (test):
- problem:
console.error] react-test-renderer is deprecated
- solution: refactor test to use RTL
- problem:
Error: Maximum update depth exceeded. This can happen when a component repeatedly calls setState inside componentWillUpdate or componentDidUpdate. React limits the number of nested updates to prevent infinite loops. at getRootForUpdatedFiber (/Users/runner/work/fluentui/fluentui/tmp/rit/react-19/node_modules/react-dom/cjs/react-dom-client.development.js:3860:11)
- solution: fix logic
- problem:
Can't access .root on unmounted test renderer
- solution: refactor test to use RTL
More Detailed Errors to Handle (e2e):
N/A
More Detailed Errors to Handle (type-check):
- problem:
TS2503: Cannot find namespace 'JSX'
- solution: provide same custom JSX namespace types like we have in
react-utilities
to v8
- solution: provide same custom JSX namespace types like we have in
- problem:
TS2322: Type 'RefObject<IDetailsList | null>' is not assignable to type 'IRefObject<IDetailsList> | undefined'
->componentRef?: IRefObject<IComboBox>;
- solution: updating ref types like for v9?
- problem:
TS2554: Expected 1 arguments, but got 0.
- >React.useRef<number | null>();
- solution: updating useRef types
- problem:
error TS2786: 'TilesList' cannot be used as a JSX component. Its type 'typeof TilesList' is not a valid JSX element type. Type 'typeof TilesList' is not assignable to type 'new (props: any) => Component<any, any, any>'. Types of construct signatures are incompatible. Type 'new <TItem>(props: ITilesListProps<TItem>, context: any) => TilesList<TItem>' is not assignable to type 'new (props: any) => Component<any, any, any>'. Target signature provides too few arguments. Expected 2 or more, but got 1.
- solution: TBA
Have you discussed this feature with our team
@microsoft/cxe-prg
Validations
- Check that there isn't already an issue that requests the same feature to avoid creating a duplicate.
Priority
None
Sub-issues
Metadata
Metadata
Assignees
Labels
Fluent UI react (v8)Issues about @fluentui/react (v8)Issues about @fluentui/react (v8)Package: chartingReact 19Type: Feature