react-router v6 flip (2/3): route remaining imports through routerCompat - #495
Merged
Conversation
First step of splitting the react-router v5-compat -> v6 flip into reviewable pieces. Because react-router-dom-v5-compat peer-requires react-router-dom v4/5, the package bump and every import retarget are otherwise one atomic 370-file change that exceeds tooling review limits. Introduce `src/routerCompat.js`, a single re-export point for the react-router API the app uses, and retarget the first ~half of the v5-compat importers (components, contexts, hooks, and the first block of screens) to import from it. `routerCompat` currently re-exports from react-router-dom-v5-compat, so this is a behaviour-preserving indirection: no API or routing change, the app still runs on react-router-dom v5 + the compat bridge. The final part of the split repoints `routerCompat` at react-router-dom once the package is on v6, flipping every consumer at once. App.js keeps importing CompatRouter directly (no v6 equivalent) until that final step.
Retarget the remaining react-router-dom-v5-compat importers (the second half of the screens) to import from `src/routerCompat` instead, continuing part 1. Still behaviour-preserving: `routerCompat` re-exports the same v6 API from react-router-dom-v5-compat, so the app remains on react-router-dom v5 + the compat bridge with no API or routing change. After this PR the only direct react-router-dom-v5-compat importers left are `routerCompat` itself, `App.js` (CompatRouter, no v6 equivalent), and the two TopologyView RTL test harnesses that wrap with <CompatRouter> -- all handled in the final part.
This was referenced Jun 19, 2026
Contributor
|
Reviewed, will merge once conflicts are resolved. |
# Conflicts: # awx/ui/src/components/AddRole/AddResourceRole.js # awx/ui/src/components/ContentError/ContentError.js # awx/ui/src/components/LaunchButton/LaunchButton.js # awx/ui/src/components/Lookup/CredentialLookup.js # awx/ui/src/components/Lookup/HostFilterLookup.js # awx/ui/src/components/Lookup/InstanceGroupsLookup.js # awx/ui/src/components/Lookup/InventoryLookup.js # awx/ui/src/components/Lookup/Lookup.js # awx/ui/src/components/Lookup/MultiCredentialsLookup.js # awx/ui/src/components/Lookup/OrganizationLookup.js # awx/ui/src/components/Lookup/PeersLookup.js # awx/ui/src/components/Lookup/ProjectLookup.js # awx/ui/src/components/Schedule/ScheduleEdit/ScheduleEdit.js # awx/ui/src/screens/Host/HostEdit/HostEdit.js # awx/ui/src/screens/InstanceGroup/Instances/InstanceListItem.js # awx/ui/src/screens/Inventory/AdvancedInventoryHosts/AdvancedInventoryHosts.js # awx/ui/src/screens/Inventory/InventoryEdit/InventoryEdit.js # awx/ui/src/screens/Inventory/InventoryGroupHosts/InventoryGroupHostListItem.js # awx/ui/src/screens/Inventory/InventoryHostEdit/InventoryHostEdit.js # awx/ui/src/screens/Inventory/InventoryRelatedGroups/InventoryRelatedGroupListItem.js # awx/ui/src/screens/Inventory/SmartInventoryEdit/SmartInventoryEdit.js # awx/ui/src/screens/Inventory/shared/InventoryGroupsDeleteModal.js # awx/ui/src/screens/Job/WorkflowOutput/WorkflowOutputToolbar.js # awx/ui/src/screens/NotificationTemplate/NotificationTemplateEdit/NotificationTemplateEdit.js # awx/ui/src/screens/Organization/OrganizationEdit/OrganizationEdit.js # awx/ui/src/screens/Team/TeamEdit/TeamEdit.js
Contributor
Author
|
Merge conflicts with main have been resolved. |
cigamit
approved these changes
Jun 22, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
SUMMARY
Part 2 of 3 of the react-router
v5-compat→ v6 flip (continues #494).Retargets the remaining
react-router-dom-v5-compatimporters (the second half of the screens — 166 files) to import fromsrc/routerCompatinstead.Still behaviour-preserving:
routerCompatre-exports the same v6 API fromreact-router-dom-v5-compat, so the app stays onreact-router-domv5 + the<CompatRouter>bridge with no API or routing change.After this PR the only direct
react-router-dom-v5-compatimporters left are:routerCompat.jsitself (the re-export source),App.js(CompatRouter— no v6 equivalent),TopologyViewRTL test harnesses that wrap with<CompatRouter>.All three are handled in the final part, which repoints
routerCompatatreact-router-domv6.ISSUE TYPE
COMPONENT NAME
ASCENDER VERSION
ADDITIONAL INFORMATION
npm --prefix awx/ui run lintclean;npm --prefix awx/ui run test— 552 suites / 2908 tests green (3 documented skips). Pure indirection, suite passes unchanged.