jupyter-widgets / ipydatagrid

Fast Datagrid widget for the Jupyter Notebook and JupyterLab
BSD 3-Clause "New" or "Revised" License
579 stars 51 forks source link

Fix scroll upshot in voila rendering context, bump lumino dependencies #272

Closed ibdafna closed 3 years ago

ibdafna commented 3 years ago

Signed-off-by: Itay Dafna i.b.dafna@gmail.com

ibdafna commented 3 years ago

@gaborbernat I saw some Python test suite failures on versions >3.6 and re-triggered the tests. I can't reproduce locally. Also this code change should not affect the Python side.

ibdafna commented 3 years ago

@martinRenou looks related to your PR in jupyter_client:

https://github.com/jupyter/jupyter_client/commit/1363f53f308f0d3621950dcbd2e49edd89ab4aa6

I'm not sure where this is coming from, but it does look related to jupyter_client.

ibdafna commented 3 years ago

EDIT: I can now reproduce locally with a fresh environment and python=3.9.

Confirmed this is only happening with jupyter_client>=7.0.0. Debating whether to force 6.2.0 for now. @martinRenou will wait for your input.

ibdafna commented 3 years ago

Discussed this with @martinRenou. We will fix the serialisation issue in ipywidgets, and in the meantime I will pin jupyter_client to version 6.2.0.

SylvainCorlay commented 3 years ago

Discussed this with @martinRenou. We will fix the serialisation issue in ipywidgets, and in the meantime I will pin jupyter_client to version 6.2.0.

@ibdafna are you still around?

SylvainCorlay commented 3 years ago

It is probably not a good idea to support the case of tuple keys in the js serialization of ipykernel, or ipydwidgets.

ibdafna commented 3 years ago

@SylvainCorlay still around. I don't think there's a way around that for serialisation of nested-index pandas DataFrames. Why is it a bad idea? Tuples are immutable, and they can also be converted to string if necessary.

SylvainCorlay commented 3 years ago

@SylvainCorlay still around. I don't think there's a way around that for serialisation of nested-index pandas DataFrames. Why is it a bad idea? Tuples are immutable, and they can also be converted to string if necessary.

Walking over all JSON entries in ipykernel to find tuple keys is very inefficient. It should probably be converted to string in the client code.