【问题标题】:nbdev and 'coroutine' object is not subscriptablenbdev 和“协程”对象不可下标
【发布时间】:2021-07-03 09:20:19
【问题描述】:

我最近更新了我的一个“旧”项目的 nbdev 版本(我创建了一个新的 conda 环境),现在 github 中的自动测试(构建的“运行测试”部分)失败了

'coroutine' object is not subscriptable

每个笔记本的错误,这似乎与我的代码完全无关。还有一些

RuntimeWarning: Enable tracemalloc to get the object allocation traceback

RuntimeWarning: coroutine 'ZMQSocketChannel.get_msg' was never awaited

当我在本地运行 nbdev_test_nbs 时,这些都不会发生。

有什么线索吗?

【问题讨论】:

  • 我也面临同样的错误。

标签: python jupyter-notebook nbconvert


【解决方案1】:

我遇到了同样的问题。原来我在setup.py 中固定了nbconvert 版本,比如'nbconvert~=5.6.1'

取消此限制后,测试再次开始通过。

附: nbconvert 的版本现在是 6+。

【讨论】:

  • 我不明白这怎么可能是解决方案,因为即使 nbdev 1.1.21 仍然需要 nbconvert
【解决方案2】:

这是 jupyter-client 的问题,请参阅在您报告的那天部署了一个 yanked 版本:https://pypi.org/project/jupyter-client/#history

此线程详细介绍了 RCA:https://github.com/jupyter/jupyter_client/issues/637

我通过降级到jupyer-client==6.1.12解决了这个问题

【讨论】:

  • 我周围没有jupyter_client,但出现了这个错误。在日志中(也包括您的),您可能会看到错误的来源是nbconvert/preprocessors/execute.py
猜你喜欢
  • 2021-12-01
  • 2019-12-06
  • 2022-06-29
  • 1970-01-01
  • 1970-01-01
  • 2010-10-14
  • 2013-09-22
  • 2020-02-17
  • 2021-11-10
相关资源
最近更新 更多