Pre RN 0.81 changes: jsx-runtime, build updates, tool updates, package.json linting and normalization #3987
+5,975
−4,308
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Platforms Impacted
Description of changes
These changes help prepare FURN to go to RN 0.81, the next version that office will use.
Runtime Changes
Moved from using the classic runtime to the new react-jsx runtime. The classic runtime is no longer supported in react 19+ which will be a requirement for 0.81. The implementation was already in place but switching over required the following changes:
"jsx": "react-jsx"which causes the default behavior to be react's jsx-runtime.@jsxRuntime classicand@jsx withSlotscalls, replacing them with@jsxImportSource @fluentui-react-native/framework-baseBuild Changes
The main build change is to add a lint-package command for each package which allows us to reconfigure package.json files from the root without needing to make a ton of manual changes. The summary of build changes are:
There's probably more I'm forgetting. My apologies for the sheer number of changes but this should minimize the churn in the future.
Verification
Pipeline runs and tests