Skip to content

Track deferred major dependency upgrades (React 19, antd 6, redux 5, i18next 26, ESLint 10, TypeScript 7, ...) #494

Description

@KirDE

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.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions