是否与Jupyter Lab 1.0+版兼容的ipywidget?

时间:2019-06-26 14:58:46

标签: python jupyter-notebook jupyter jupyter-lab ipywidgets

我想使用预发行版本的Jupyter Lab 1.0+。我有一个SELECT * from customer where client_id = $P{CLIENT_ID} AND (Account_id = CASE WHEN $P{Account_ID}>0 THEN $P{Account_ID} ELSE Account_ID END OR Account_ID IS NULL ) AND datetrx BETWEEN $P{DATE_START} AND $P{DATE_END} ,看起来像这样:

select * from Colors where colorname is not null and colorname = 'blue' and colorname = 'yellow' and colorval != '100' ;

将安装以下版本:

  • Pipfile
  • [[source]] name = "pypi" url = "https://pypi.org/simple" verify_ssl = true [packages] ipywidgets = "*" jupyterlab = ">=1.0.0a0" ... [requires] python_version = "3.7" [pipenv] allow_prereleases = true
  • jupyterlab==1.0.0rc0
  • ipywidgets==7.4.2

然后我运行命令notebook==5.7.8。它安装了labextension:

  • widgetsnbextension==3.4.2

我无法使小部件出现在笔记本中。

enter image description here

我知道Jupyter Lab和Jupyter Widgets版本不匹配会导致问题。是否有与Jupyter Lab 1.0版兼容的Jupyter Widgets版本?

1 个答案:

答案 0 :(得分:0)

这已经很老了,但我遇到了这个问题,因为我自己在使用 AWS SageMaker 时遇到了类似的问题,该问题目前仍固定在 jupyter lab 的第 1 版中。

我或多或少地重现了您的问题,我认为这里有两个不同的问题:

  1. 您的要求具有冲突的 tornado 依赖项。我什至无法执行任何单元格,反而会在控制台中收到类似 AttributeError: 'WebSocketProtocol13' object has no attribute 'is_closing' 的错误。根据要求从 pip-compile 运行 pip-tools 揭示了不兼容的 tornado 版本。这可以通过更改您的 jupyter lab 版本来解决,我认为该版本作为主要版本的第一个补丁肯定存在问题。由于您要求它是 1.0.*,升级到 1.0.10 为我解决了这个问题。

  2. 然而,第二个问题是您的 jupyterlab-manager 版本而不是 ipywidgetsjupyter lab 的不同版本对应的兼容版本列于 here。在您的情况下,您必须安装 v1.0。我不确定为什么要安装 v0.39.1,但您可以将其设置为 jupyter labextension install @jupyter-widgets/jupyterlab-manager@1.0

同时执行这两项操作可使 ipywidgets 小部件正确呈现。