From 98f50811f97639bbf2015bacf0f4b0b3b843fbc8 Mon Sep 17 00:00:00 2001 From: Masen Furer Date: Fri, 21 Feb 2025 16:11:40 -0800 Subject: [PATCH] Override `react-is@19.0.0` for recharts compatibility (#4857) See https://github.com/recharts/recharts/issues/4558 for details. --- reflex/.templates/jinja/web/package.json.jinja2 | 8 +++++++- reflex/constants/installer.py | 4 ++++ reflex/utils/prerequisites.py | 1 + 3 files changed, 12 insertions(+), 1 deletion(-) diff --git a/reflex/.templates/jinja/web/package.json.jinja2 b/reflex/.templates/jinja/web/package.json.jinja2 index 781f85c30..526f4912a 100644 --- a/reflex/.templates/jinja/web/package.json.jinja2 +++ b/reflex/.templates/jinja/web/package.json.jinja2 @@ -15,7 +15,13 @@ "devDependencies": { {% for package, version in dev_dependencies.items() %} "{{ package }}": "{{ version }}"{% if not loop.last %},{% endif %} - + + {% endfor %} + }, + "overrides": { + {% for package, version in overrides.items() %} + "{{ package }}": "{{ version }}"{% if not loop.last %},{% endif %} + {% endfor %} } } \ No newline at end of file diff --git a/reflex/constants/installer.py b/reflex/constants/installer.py index ace83c59f..baad18f48 100644 --- a/reflex/constants/installer.py +++ b/reflex/constants/installer.py @@ -195,3 +195,7 @@ class PackageJson(SimpleNamespace): "postcss": "8.5.1", "postcss-import": "16.1.0", } + OVERRIDES = { + # This should always match the `react` version in DEPENDENCIES for recharts compatibility. + "react-is": "19.0.0" + } diff --git a/reflex/utils/prerequisites.py b/reflex/utils/prerequisites.py index b5987f4e8..8afa706be 100644 --- a/reflex/utils/prerequisites.py +++ b/reflex/utils/prerequisites.py @@ -846,6 +846,7 @@ def _compile_package_json(): }, dependencies=constants.PackageJson.DEPENDENCIES, dev_dependencies=constants.PackageJson.DEV_DEPENDENCIES, + overrides=constants.PackageJson.OVERRIDES, )