Context
During a dependency-update pass on dependecy-update, everything that could be safely updated within its existing semver range was bumped (types packages, prettier, i18next/react-i18next patch releases, react-markdown, ua-parser-js, less, etc. — see that PR for details). The packages below are pinned behind a major version gap and were deliberately left alone, since each needs dedicated migration/testing rather than a blind bump.
Deferred major upgrades
| Package |
Current |
Latest |
Notes |
react / react-dom |
18.3.1 |
19.2.8 |
Root of several other blocked upgrades below |
react-leaflet / react-leaflet-cluster |
4.2.1 / 2.1.0 |
5.0.0 / 4.1.3 |
react-leaflet 5 requires React 19 |
antd |
4.24.16 |
6.6.1 |
Two majors behind; large UI-library migration |
redux / react-redux / redux-thunk |
4.2.1 / 7.2.9 / 2.4.2 |
5.0.1 / 9.3.0 / 3.1.0 |
Move together; react-redux 8/9 drops legacy context API used here |
i18next / react-i18next |
23.16.8 / 15.7.4 |
26.4.0 / 17.0.12 |
Move together |
eslint / eslint-plugin-react-hooks / eslint-config-prettier |
9.39.5 / 5.1.0 / 9.1.2 |
10.8.1 / 7.1.1 / 10.1.8 |
ESLint 10 dropped support for older Node; check plugin compat first |
typescript |
5.9.3 |
7.0.2 |
Skips a major (6); full project type-check needed |
ua-parser-js |
0.7.41 |
2.0.10 |
Breaking API rewrite in 1.x/2.x |
react-intersection-observer |
10.1.0 |
11.0.0 |
|
react-markdown |
9.1.0 |
10.1.0 |
|
vite-plugin-svgr |
4.5.0 |
5.2.0 |
|
leaflet.locatecontrol / @types/leaflet.locatecontrol |
0.81.1 / 0.74.6 |
0.90.1 / 0.82.1 |
|
@types/node |
22.20.1 |
26.2.0 |
Should track the Node major actually used, not necessarily "latest" |
Suggested approach
Tackle in small, independently-testable groups rather than one big bump: e.g. (1) i18next + react-i18next, (2) redux + react-redux + redux-thunk, (3) React 19 + react-leaflet 5 + react-leaflet-cluster, (4) antd, (5) tooling (eslint/typescript/vite-plugin-svgr). Each group should get its own build/lint/test pass and a manual smoke test in the browser before merging.
Context
During a dependency-update pass on
dependecy-update, everything that could be safely updated within its existing semver range was bumped (types packages, prettier, i18next/react-i18next patch releases, react-markdown, ua-parser-js,less, etc. — see that PR for details). The packages below are pinned behind a major version gap and were deliberately left alone, since each needs dedicated migration/testing rather than a blind bump.Deferred major upgrades
react/react-domreact-leaflet/react-leaflet-clusterreact-leaflet5 requires React 19antdredux/react-redux/redux-thunki18next/react-i18nexteslint/eslint-plugin-react-hooks/eslint-config-prettiertypescriptua-parser-jsreact-intersection-observerreact-markdownvite-plugin-svgrleaflet.locatecontrol/@types/leaflet.locatecontrol@types/nodeSuggested approach
Tackle in small, independently-testable groups rather than one big bump: e.g. (1) i18next + react-i18next, (2) redux + react-redux + redux-thunk, (3) React 19 + react-leaflet 5 + react-leaflet-cluster, (4) antd, (5) tooling (eslint/typescript/vite-plugin-svgr). Each group should get its own build/lint/test pass and a manual smoke test in the browser before merging.