diff --git a/dss-plugin-visual-edit/code-env/python/desc.json b/dss-plugin-visual-edit/code-env/python/desc.json index f39475f..1e30f4b 100644 --- a/dss-plugin-visual-edit/code-env/python/desc.json +++ b/dss-plugin-visual-edit/code-env/python/desc.json @@ -3,7 +3,7 @@ "PYTHON38", "PYTHON39" ], - "corePackagesSet": "PANDAS15", + "corePackagesSet": "PANDAS13", "installCorePackages": true, "installJupyterSupport": false, "basePackagesInstallMethod": "PRE_BUILT", diff --git a/dss-plugin-visual-edit/code-env/python/spec/requirements.txt b/dss-plugin-visual-edit/code-env/python/spec/requirements.txt index 99df2c6..7287439 100644 --- a/dss-plugin-visual-edit/code-env/python/spec/requirements.txt +++ b/dss-plugin-visual-edit/code-env/python/spec/requirements.txt @@ -1,4 +1,4 @@ dash>=2.4.0 dash_extensions pydantic -pandas==1.5.3 \ No newline at end of file +pandas==1.3.5 \ No newline at end of file diff --git a/dss-plugin-visual-edit/python-lib/commons.py b/dss-plugin-visual-edit/python-lib/commons.py index bcc9dd2..aaf9707 100644 --- a/dss-plugin-visual-edit/python-lib/commons.py +++ b/dss-plugin-visual-edit/python-lib/commons.py @@ -212,7 +212,8 @@ def apply_edits_from_df(original_ds, edits_df): if col in primary_keys + display_columns + editable_columns: if is_integer_dtype(original_dtype): # there may be missing values so choose a dtype supporting them. - edits_df[col] = edits_df[col].astype(Int64Dtype()) + # Cast as float first to work around issue with pandas 1.3 https://stackoverflow.com/a/60024263 + edits_df[col] = edits_df[col].astype(float).astype(Int64Dtype()) elif is_float_dtype(original_dtype): edits_df[col] = edits_df[col].astype(float) else: