JupyterLab 更新日志#

v4.4#

JupyterLab 4.4 包含多项新功能(如下所述)、错误修复和改进。此版本与支持 JupyterLab 4.0 的扩展兼容。建议扩展作者查阅扩展迁移指南,其中列出了公共 API 的废弃项和更改。

代码控制台改进#

除了默认的底部位置,代码控制台提示现在可以定位在控制台的顶部、左侧或右侧。该位置会持久保存在“提示单元格位置”设置中。

控制台工具栏现在包含以下按钮:

  • 执行代码

  • 重启内核

  • 清除单元格

  • 切换内核

还添加了控制台行为的其他设置:

  • 执行时清除代码内容(默认启用)——禁用时,提交执行的代码保留在代码编辑器中,允许进一步编辑。

  • 隐藏代码输入——启用时,控制台中只显示执行输出。

  • 执行时清除单元格——启用时,只显示最后一个单元格。

切换所有这三个新设置将控制台转换为一个类似于只有一个单元格的临时笔记本的交互式编辑器。

设置导入和导出#

现在可以从设置编辑器将设置导出到 overrides.json,这可用于在部署中预配置默认值或恢复设置。

工作区指示器#

顶部栏(菜单栏旁边)会显示一个可选的工作区指示器。可以在“设置”→“视图”→“外观”→“显示工作区指示器”中启用。

支持不带 RTC: 驱动器的协作#

JupyterLab 早期版本中的实时协作(可通过安装 jupyter-collaboration 包启用)是通过将默认的 JupyterLab 文件系统驱动器切换到带有 RTC: 前缀的协作驱动器来实现的。这种方法与多个扩展不兼容。JupyterLab 4.4 引入了内容提供者 API,允许下一版本的 jupyter-collaboration 在不更改驱动器前缀的情况下工作。这提高了与不支持任意驱动器的扩展的兼容性。

内核子shell支持#

内核子shell,在 JEP 91 中引入,可以在支持它们的内核中实现并发代码执行。在执行长时间运行的计算(例如训练模型)时,子shell允许用户:

  • 使用 ipywidgets,并立即显示更新

  • 监控内核资源使用情况(例如内存使用情况)

  • 在维护对先前定义变量的实时访问的同时,调用任意命令(例如,为后续单元格优化代码)

子shell由 ipykernel 7(目前处于 Alpha 阶段)支持。

要创建子shell,请在支持子shell的内核上打开笔记本的上下文菜单(右键单击),然后选择“新建子shell控制台”。将打开一个新的控制台面板,允许访问主会话中的变量。

如果内核支持此功能,JupyterLab 可以自动为通信消息创建子shell。这使得 ipywidgets 回调可以并发执行,而无需用户操作。此行为可以通过设置更改,选项包括:

  • 禁用该功能以不将子shell用于通信

  • (默认)为每个通信目标自动创建一个子shell(例如,为所有 ipywidgets 创建一个子shell)

  • 自动为每个通信创建一个子shell(这在创建大量通信时可能导致问题)

上下文菜单退出#

现在可以通过切换命令面板中可用的 Enable Context Menu 选项,或通过应用程序上下文菜单中的 JSON 设置编辑器,全局禁用浏览器中右键单击可用的上下文菜单。

更细的状态栏#

如果没有打开终端,终端计数器将不再显示在状态栏中。内核计数器可以通过切换“运行中的终端和内核”中的“显示状态栏项目”设置(代码名称 showStatusBarItem)来禁用。

v4.3#

JupyterLab 4.3 包含多项新功能(如下所述)、错误修复和改进。此版本与支持 JupyterLab 4.0 的扩展兼容。建议扩展作者查阅扩展迁移指南,其中列出了公共 API 的废弃项和更改。

小地图#

虚拟滚动条现在充当小地图,并显示有关单元格是否

  • 正在运行/已调度 ([*])、空闲 ([ ]) 或已运行(例如 [1]

  • 自上次执行以来已修改(“脏”)- 橙色背景

  • 其输出包含错误 - 红色背景

  • 是 markdown/代码(代码为 [ ]/[*]/[1],markdown 为空)

  • 它包含多少文本/代码

要启用小地图,请单击笔记本工具栏中出现的汉堡图标 (≡)。如果看不到汉堡图标,请转到“设置”→“笔记本”→“窗口模式”并选择“完整”。

全屏模式#

JupyterLab 现在提供两种从应用程序内部切换全屏模式的方式:

  • 使用 视图外观全屏模式 菜单项

  • 使用可自定义的快捷键,默认为 F11(Chrome、Safari 和 Edge 支持自定义快捷键)

文件浏览器增强功能#

文件浏览器现在:

  • 支持调整列的大小,并在重新加载 JupyterLab 后记住列的大小

  • 支持通过拖放上传文件夹

  • 支持单次点击导航(可选)

  • 文件过滤器默认折叠(漏斗图标),增加了可用空间

服务器端执行与协作#

JupyterLab 4.2 添加了扩展实现服务器端执行的选项,该选项可在浏览器窗口关闭或断开连接时保留创建的输出。服务器端执行建立在与实时协作(RTC)相同的共享模型 API 之上。

此版本包含更多工作,改进了服务器端执行和实时协作 (RTC) 用例

  • 流式输出的中间状态现在经过优化,在使用共享模型进行长时间计算时防止了内存泄漏,

  • 单元格执行指示器 ([*]) 现在在模型中同步,允许协作者看到单元格正在执行,并允许服务器端执行扩展相应地填充状态,

  • 通过启用协作模型扩展来更新文档哈希,解决了保存时出现虚假“文件更改”对话框的问题。

您可以通过安装扩展来尝试这些功能

* 尽管 jupyter-server-nbmodel 由 JupyterLab 的维护者开发,但在 JupyterLab 4.3.0 发布之日,它不是 Project Jupyter 的官方扩展。

改进的内核和服务器交互#

上一版本支持连接外部内核,例如由第三方应用程序(如 Blender)生成的内核。在此版本中,内核选择器对话框得到了改进,现在也可以显示外部内核。

上一版本通过在内核侧边栏面板中提供树视图和列表视图,提高了对内核/内核规范区别的认识,但只有树视图具有内核标识符。在此版本中,列表视图和树视图都显示内核标识符存根。

内核中添加了一个新的工具栏按钮,允许关闭未使用的内核(没有附加小部件的内核)。

以下对话框现在可以关闭或静默:

  • “服务器连接错误”对话框现在有一个选项,可以在会话期间将其关闭,

  • “重启内核?”对话框现在有一个选项,可以选择不再询问。此偏好设置将保存在设置中(skipKernelRestartDialog),

v4.2#

工作区用户界面#

现在可以在 JupyterLab 中切换和管理工作区

最近打开/关闭的文件#

jupyterlab-recents 扩展已集成到 JupyterLab 中。

用户现在能够:

  • 从主菜单重新打开最近使用的文件

  • 从侧边栏重新打开最近关闭的文件

  • 使用新的可搜索模态对话框快速跳转到打开的标签页/最近关闭的文件(按 Ctrl+Alt+A 打开对话框,或点击侧边栏中的 [↗] 图标)

默认启用完整笔记本窗口模式#

完整 窗口模式下的笔记本只渲染可见单元格,显著提高了应用程序的性能。 完整 模式的一个限制是浏览器中的搜索功能可能会产生误报;建议使用JupyterLab 搜索功能。要恢复到 JupyterLab 4.1 的行为,请转到“设置”→“设置编辑器”→“笔记本”,滚动到“窗口模式”,并选择 defer

改进的快捷键编辑器#

键盘快捷键编辑器进行了多项改进和错误修复,其中包括:

  • 现在可以删除默认快捷键,

  • 使用语言包时快捷键正确排序,

  • 具有不同参数的快捷键现在正确显示为单独的条目。

深色高对比度主题#

一个新的主题,JupyterLab 深色高对比度主题,旨在为需要更高对比度的用户提供便利,遵循 WCAG AAA 无障碍标准中的颜色对比度要求。要选择此主题,请从菜单栏中选择“设置”→“主题”→“JupyterLab 深色高对比度”。请就此主题的进一步改进提供反馈和建议。

键盘快捷键改进#

根据用户的反馈,某些快捷键的实现已从 CodeMirror 编辑器移至 JupyterLab 快捷键系统,从而实现了更好的集成:

  • 删除行的快捷键已恢复为 JupyterLab 3.x 中的 Ctrl+D;扩展(多光标)选择的快捷键已重新映射为 Ctrl+Shift+DCtrl+Shift+K 快捷键也可以用于删除行,以与其他编辑器兼容。

  • 切换行注释(默认为 Ctrl+/)和块注释(默认为 Alt+A)的快捷键可以在快捷键编辑器中自定义,这使得非美国键盘用户可以根据其键盘布局调整键绑定。请注意,块注释仅适用于 CodeMirror 语言数据中定义了专用块注释语法的语言(例如 C、JavaScript,但不包括 Python)。行注释快捷键也可以用于注释多行。

v4.1#

JupyterLab 4.1 包含多项新功能(如下所述)、错误修复和针对扩展开发人员的增强功能。此版本与支持 JupyterLab 4.0 的扩展兼容。建议扩展作者查阅扩展迁移指南,其中列出了公共 API 的废弃项和更改。

自定义 CSS#

JupyterLab 现在支持自动加载自定义 CSS。主题是自定义 JupyterLab 外观和感觉的推荐方式,而自定义 CSS 旨在进行细微的个人调整。

要选择启用,请使用 --custom-css 标志启动 JupyterLab。 custom.css 文件的位置在自定义用户界面部分中说明。

注意

custom.css 在 Jupyter Notebook 中也可用;虽然 JupyterLab 4.1 和 Jupyter Notebook 7.0 之间共享的组件可以使用相似的选择器,但 Notebook 6 及更早版本中有不同的选择器集。使用旧版 Notebook 选择器的自定义 CSS 文件的用户需要更新它们,并注意教程可能引用旧版 Notebook 的选择器。

Markdown 中的图表#

与 GitHub 风格的 Markdown 保持一致,JupyterLab 4.1 现在支持 Mermaid 图表。要创建 Mermaid 图表,请在 Markdown 单元格或文档的代码块中使用 mermaid 语言说明符,例如

```mermaid
flowchart LR

A[Hard] -->|Text| B(Round)
B --> C{Decision}
C -->|One| D[Result 1]
C -->|Two| E[Result 2]
```

其呈现效果为

行内自动补全器#

JupyterLab 现在支持在单元格和文件编辑器中以幽灵文本形式呈现补全,允许生成式 AI 模型提供多行补全。建议由实现 IInlineCompletionProvider API 的插件提供;默认情况下,提供了一个使用内核历史记录的单个提供者。

可以通过键入时或手动使用可配置的快捷方式(默认为 Alt + \)来调用建议。默认键盘快捷方式显示在悬停在幽灵建议上方时出现的小部件中:

  • Alt + End - 接受建议

  • Alt + [ - 上一个建议

  • Alt + ] - 下一个建议

要启用基于内核历史记录的行内建议,请转到“设置”→“行内补全器”→“历史记录提供程序”→选中“已启用”复选框。

除了内置的历史建议,jupyter-ai 扩展可以提供来自支持模型的建议。 jupyter-ai 与行内补全器的集成从 v2.10.0 版本开始可用。

内联补全 API 仍被认为是实验性的,可能会有变化,请分享反馈!

键盘导航改进#

此版本包含对键盘导航的诸多改进,重点关注可访问性和可用性:

  • 笔记本单元格现在保持焦点

  • 焦点现在可以移动到活动笔记本之外

  • 工具栏现在可以使用箭头键进行导航

更多详细信息,请参阅 Jupyter 博客上的这篇文章

笔记本中的执行历史记录#

先前执行的单元格中的代码可以用于填充空单元格,从而允许对先前单元格甚至先前会话中的代码进行迭代(取决于特定内核如何存储历史记录)。

要循环切换历史记录项,请按 Alt + 向上箭头Alt + 向下箭头

要启用执行历史记录,请转到“设置”→“笔记本”→选中“内核历史记录访问”复选框。

此功能在之前的版本中已在控制台中可用;它仅适用于支持执行历史请求的内核。要清除执行历史记录,请查阅您正在使用的内核(例如 IPython/ipykernel)的文档。

从回溯中打开文件#

内核在执行错误时返回的回溯中检测到的代码文件路径现在转换为链接。如果文件在 Jupyter 根目录中,这些链接将打开相应的文件进行编辑;如果文件在根目录之外并且活动内核支持调试器,它们将打开只读预览。

目录中的错误指示器#

当单元格在执行过程中失败时,相应的标题旁会显示一个错误指示器,以提高对笔记本状态的感知,并使用户能够快速导航到需要注意的单元格。

插件管理器#

现在可以通过新的插件管理器用户界面禁用或启用单个插件。每个扩展都由一个或多个插件组成,插件构成了 JupyterLab 本身的基础,因此插件管理器可以更广泛地自定义 JupyterLab 体验。

此功能适用于高级用户,并在文档中有深入说明。

管理员可能希望出于任何原因锁定特定插件;这将阻止用户通过插件管理器和远程 API 调用禁用插件。插件管理器本身可以通过CLI 禁用

窗口模式下笔记本的虚拟滚动条#

窗口式笔记本获得了一个可选的滚动条,用于描绘活动单元格和选定单元格。用户可以跳转到特定单元格。

要启用虚拟滚动条,请转到“设置”→“笔记本”→“窗口模式”,选择“完整”,然后单击笔记本工具栏中出现的汉堡图标 (≡)。

虚拟滚动条被认为是实验性的,请分享反馈!

通知#

JupyterLab 3.6 添加了一个通知中心,到目前为止仅用于公告和版本更新通知(均可选)。JupyterLab 4.1 添加了两个通知,以在可能令人困惑的情况下指导用户:

  • 当用户尝试保存只读文档时,会显示一个临时通知,建议使用“另存为”

  • 当用户在慢启动内核初始化之前尝试执行单元格时,会显示一个通知,指示该单元格尚未执行(这是可选的,需要在设置中启用)

完整笔记本窗口模式改进#

完整 窗口模式下的笔记本只渲染可见单元格,显著提高了应用程序的性能。此版本中包含对完整窗口模式行为(例如滚动、搜索、渲染和导航)的诸多改进(详细信息请参阅 #15258 中的问题列表)。

注意

窗口模式仍处于实验阶段,已知问题仍待解决(#15415#15465#15594)。此外,在 4.1 Beta 版中观察到单元格排序偶尔出现回归(#15610),仍待修复,有待用户报告,以便在 JupyterLab 4.1 中测试窗口模式,以帮助创建可重现的步骤,从而解决此问题。

已在早期版本中启用此模式的用户,建议在决定升级之前,评估 4.1 中包含的修复与上述链接的回归之间的利弊。

搜索改进#

  • 搜索框现在将自动增长以适应更长的文本

  • 现在可以使用 Alt + L 切换在选中区域中搜索,并且可以在设置中配置自动在选中区域中搜索

  • 搜索框中的按钮添加了带有快捷键的工具提示,以提高快捷键的发现性

杂项#

  • 当前主题(深色/浅色)现在可以与浏览器/系统偏好设置同步(“设置”菜单 → “主题” → “与系统设置同步”)

  • 如果文档模型是只读的,导致无法保存文档,则文档工具栏中会显示一个蓝色的“只读”状态指示器。

  • 增加了对查看 jsonl/ndjson 文件的原生支持

  • 文件浏览器中的面包屑折叠可以在文件浏览器设置中禁用

  • 扩展管理器现在可以使用 HTTP 代理来获取扩展

移动的插件#

一些内部 JupyterLab 插件已被重新组织,以提供更好的部署灵活性和下游应用程序(如 Notebook 7)。这可能会影响使用 jupyter labextension disable 命令或 disabledExtensions 配置选项禁用特定插件的用户。

  • help:open 命令不再在 @jupyterlab/help-extension:resources 插件中定义,而是已移至新的 @jupyterlab/help-extension:open 插件中。

v4.0#

4.0.0 - 亮点#

以下是 JupyterLab 4.0.0 的主要亮点。

新的文本编辑器#

用于单元格和文件编辑器的文本编辑器 CodeMirror 已更新到 CodeMirror 6。这带来了重要的可访问性和性能改进,以及更好的自定义功能。我们还改进了编辑器设置。以前,用户必须为每种类型的单元格、文件编辑器和控制台编辑器单独自定义设置。现在,您可以在一个地方更改设置。现在更容易为所有编辑器使用默认设置,并为特定情况更改一些设置。例如,您现在可以只为 Markdown 单元格隐藏行号。

开发人员现在可以通过新的应用程序注册表提供编辑器扩展,如主题和编程语言解析器。

新的扩展管理器#

从 JupyterLab 3 开始,可以通过 Python 包(或其他预构建扩展的提供者)安装扩展。

在 JupyterLab 4 中,在此功能的基础上,扩展管理器现在包含了来自 pypi.org 的扩展。这在使用扩展管理器时消除了安装扩展时的构建步骤。

开发人员可以提供替代的包存储库来显示他们自己的扩展集。

用户界面改进#

用户界面中添加或更改了一些新元素

  • 重做运行中的内核部分

  • 笔记本底部的“添加新单元格”按钮

  • 显示键盘快捷键的对话框,如经典笔记本中所示(使用 Ctrl + Shift + H

  • 折叠时显示单元格输入和输出的第一行

可访问性改进#

JupyterLab 尚未完全可访问。目前,我们专注于使 Notebook 7 可访问。然而,大部分代码是共享的,JupyterLab 4 中有以下可访问性改进:

  • 改进了文件浏览器中的焦点和键盘导航

  • UI 元素添加了更多 ARIA 角色和标签

  • 如果空间不足以显示所有项目,主菜单会折叠成汉堡菜单。

性能增强#

JupyterLab 现在更快,这要归功于以下改进:

  • CSS 规则优化:CSS 选择器已优化,以改善页面上存在许多元素时 Web 浏览器的性能。

  • 升级到 CodeMirror 6:特别是对于包含许多单元格的笔记本,新的 CodeMirror 版本比以前的版本效率高得多。大型笔记本应加载更快。

  • 升级到 MathJax 3:数学方程渲染库已从 v2 升级到 v3,从而加快了渲染速度。

  • 笔记本窗口化:通过仅渲染适合 Web 浏览器视口的笔记本部分,JupyterLab 的效率大大提高。请参阅下面的重要说明。

笔记本窗口化 *可能* 会产生副作用,例如某些单元格输出显示 iframe。因此,它尚未成为默认值。但我们建议用户切换到它并报告错误,以帮助我们完善它。要测试它,您需要将用户设置 *笔记本* > *窗口模式* 设置为 full。如果笔记本渲染出现问题,请尝试改回 defernone。(none 应作为最后手段,因为它禁用了所有优化。)

实时协作#

JupyterLab 3.6 已经对实时协作 (RTC) 功能进行了显著改进。该功能现在在一个独立的存储库中:jupyter_collaboration。这样做的理由是限制不需要 RTC 的用户的依赖项。分离 RTC 还有助于使用 JupyterLab 但不满足文件内容管理特定要求的组织。

要启用 RTC,请使用 pipconda 安装 jupyter-collaboration 包。

  • 使用 pip:pip install "jupyter-collaboration>=1.0.0a0"

  • 使用 conda:*尚未可用*

独立 jupyter-collboration 包 1.0.0 版中的 RTC 亮点包括:

  • 支持显示多个光标和选择

  • 支持注册新的共享模型类型

面向开发人员#

以下是主要工具更新,将使扩展作者和开发人员受益

  • TypeScript v5

  • Yarn v3

  • React v18

  • Lumino v2

我们建议使用 Node.js v18 或更高版本,因为旧版本将在 2023 年或更早达到生命周期结束(请参阅Node 发布计划)。

为了方便代码迁移到 JupyterLab 4,开发人员应查阅迁移指南。一些现有扩展已经迁移,可以作为示例:

4.5.0a3#

完整更新日志

新增功能#

进行的增强#

已修复的错误#

维护和保养改进#

文档改进#

此版本的贡献者#

(此版本的 GitHub 贡献者页面)

@Darshan808 | @fcollonval | @github-actions | @ianthomas23 | @itsmevichu | @jtpio | @jupyterlab-probot | @krassowski | @Zsailer

4.5.0a2#

(完整更新日志)

已进行的增强功能#

  • 当“与系统设置同步”启用时,自动在亮/暗模式之间切换 #17733 (@MUFFANUJ)

  • 用户更改单元格类型时保留单元格 id #17731 (@afshin)

  • 相对于已安装模块发现应用程序目录 #17721 (@zanieb)

  • 将对话框组件的复选框和按钮显示在单独的行上 #17696 (@MUFFANUJ)

  • 为中断消息添加类型,并将其从 shell 移动到 control 通道 #17684 (@krassowski)

  • 将折叠/展开命令添加到菜单和命令面板 #17677 (@Darshan808)

  • 为文件浏览器添加新的 allowFileUploads 设置 #17676 (@jtpio)

  • Dockerfile: 安装 less、vim 和 nano #17670 (@rschroll)

  • 描述所有命令的 args #17649 (@jtpio)

  • 添加 audio-extensionvideo-extension #17636 (@jtpio)

  • 为文件浏览器列表添加全选命令 #17571 (@RRosio)

已修复的错误#

维护和保养改进#

文档改进#

此版本的贡献者#

(此版本的 GitHub 贡献者页面)

@afshin | @bollwyvl | @brichet | @bsundaram1 | @Darshan808 | @dependabot | @github-actions | @ianthomas23 | @itsmevichu | @jtpio | @jupyterlab-probot | @kathatherine | @kr-2003 | @krassowski | @lumberbot-app | @martinRenou | @MUFFANUJ | @nkn2022 | @pre-commit-ci | @RRosio | @rschroll | @zanieb

4.5.0a1#

(完整更新日志)

已进行的增强功能#

已修复的错误#

维护和保养改进#

文档改进#

  • 为文件浏览器添加 selectionChanged 信号 #17563 (@jtpio)

此版本的贡献者#

(此版本的 GitHub 贡献者页面)

@brichet | @Darshan808 | @dnlzrgz | @dotnetautor | @EtiennePelletier | @github-actions | @jtpio | @jupyterlab-probot | @krassowski | @mahendrapaipuri | @ritzdevp | @SylvainCorlay | @yacchin1205

4.5.0a0#

(完整更新日志)

已进行的增强功能#

已修复的错误#

  • 修复设置编辑器在过滤视图中错误地将值重置为默认值的问题 #17540 (@yukiiii04)

  • 将单元格附加到视口时更新小部件标志 #17532 (@trungleduc)

  • 修复窗口化笔记本中长单元格编辑器的渲染问题 #17528 (@krassowski)

  • 将 CodeMirror 包升级到最新版本 #17526 (@krassowski)

  • 更新 lumino 到 v2025.4.30 以拉取菜单 aria 修复 #17525 (@krassowski)

  • 修复 Safari 上的编辑快捷键(允许快捷键编辑按钮接收焦点) #17511 (@minrk)

  • 为没有 title 的图标(<svg> 元素)添加 aria-hidden #17472 (@nkn2022)

维护和保养改进#

  • 在 actions 组中将 actions/create-github-app-token 从 1 升级到 2 #17529 (@dependabot)

  • tough-cookie 从 4.1.2 升级到 4.1.4 #17502 (@dependabot)

  • 在 /jupyterlab/tests/mock_packages/test-hyphens-underscore 中将 ws 从 8.16.0 升级到 8.18.1 #17500 (@dependabot)

  • 在 /jupyterlab/tests/mock_packages/test_no_hyphens 中将 ws 从 8.16.0 升级到 8.18.1 #17499 (@dependabot)

  • 更新到 Playwright 1.52.0 #17483 (@jtpio)

文档改进#

此版本的贡献者#

(此版本的 GitHub 贡献者页面)

@dependabot | @jtpio | @jupyterlab-probot | @krassowski | @minrk | @nkn2022 | @peytondmurray | @pre-commit-ci | @trungleduc | @yukiiii04

4.4.1#

(完整更新日志)

已修复的错误#

维护和保养改进#

  • 在 /jupyterlab/tests/mock_packages/test-hyphens-underscore 中将 webpack 从 5.91.0 升级到 5.99.6 #17495 (@dependabot)

  • 在 /jupyterlab/tests/mock_packages/test_no_hyphens 中将 webpack 从 5.91.0 升级到 5.99.6 #17494 (@dependabot)

  • @babel/runtime 从 7.21.0 升级到 7.27.0 #17491 (@dependabot)

  • 修复 @jupyterlab/services 导入 #17457 (@jtpio)

  • 移除对 Python < 3.9 的依赖 #17453 (@bnavigator)

  • 在 /jupyterlab/tests/mock_packages/test-hyphens-underscore 中将 nanoid 从 3.3.7 升级到 3.3.11 #17448 (@dependabot)

此版本的贡献者#

(此版本的 GitHub 贡献者页面)

@achhina | @afshin | @bnavigator | @brichet | @Darshan808 | @davidbrochart | @DenisaCG | @dependabot | @jtpio | @jupyterlab-probot | @krassowski | @pre-commit-ci

4.4.0#

(完整更新日志)

新增功能#

功能改进#

已修复的 Bug#

维护和保养改进#

文档改进#

本次发布的贡献者#

(本次发布的 GitHub 贡献者页面)

@Adam-D-Lewis | @afshin | @ajbozarth | @AmberArr | @andrewfulton9 | @andreytaboola | @andrii-i | @bollwyvl | @brichet | @Carreau | @claytonparnell | @cmarmo | @Darshan808 | @davidbrochart | @deephbz | @dependabot | @dlqqq | @echarles | @fcollonval | @fleming79 | @github-actions | @holzman | @hxrshxz | @ianthomas23 | @iisakkirotko | @itsmevichu | @JasonWeill | @jesuino | @joaopalmeiro | @jtpio | @jupyterlab-probot | @kellyrowland | @krassowski | @kuraga | @lumberbot-app | @maitreya2954 | @martenrichter | @martinRenou | @mgeier | @MUFFANUJ | @nkn2022 | @Nriver | @pawel99k | @pdarshane | @peytondmurray | @pre-commit-ci | @Princekumarofficial | @Rishab87 | @rpwagner | @RRosio | @rsaditya01 | @SamuelMarks | @SatyajitRedekar | @SylvainCorlay | @trungleduc | @Zsailer

4.4.0rc1#

(完整变更日志)

已修复的错误#

维护和保养改进#

本次发布的贡献者#

(本次发布的 GitHub 贡献者页面)

@Darshan808 | @dependabot | @fcollonval | @github-actions | @jtpio | @jupyterlab-probot | @krassowski | @MUFFANUJ | @nkn2022

4.4.0rc0#

(完整变更日志)

已完成的增强#

已修复的错误#

  • 修复文件浏览器工具提示重复渲染内核信息的问题 #17421 (@itsmevichu)

维护和保养改进#

本次发布的贡献者#

(本次发布的 GitHub 贡献者页面)

@bollwyvl | @brichet | @itsmevichu | @jupyterlab-probot | @krassowski | @MUFFANUJ

4.4.0b2#

(完整变更日志)

已完成的增强#

  • 添加 IKernelSpecAPICLientITerminalAPIClient,修复接口定义 #17395 (@jtpio)

  • 如果内核支持子shell,则向子shell发送comm消息 #17363 (@martinRenou)

已修复的错误#

  • 更具体的“将输出复制到剪贴板”选择器 #17413 (@jtpio)

  • 修复错误中 URL 的链接渲染问题 #17371 (@afshin)

维护和保养改进#

文档改进#

本次发布的贡献者#

(本次发布的 GitHub 贡献者页面)

@afshin | @fleming79 | @ianthomas23 | @jtpio | @jupyterlab-probot | @krassowski | @lumberbot-app | @martinRenou | @trungleduc

4.4.0b1#

(完整变更日志)

已完成的增强#

  • 添加禁用上下文菜单的设置 #17352 (@afshin)

  • 添加 IKernelAPIClientISessionAPIClient 作为 Kernel.IManagerSession.IManager 的选项 #17348 (@jtpio)

  • 使用 display: flex 修复对话框中的复选框对齐问题 #17343 (@SatyajitRedekar)

已修复的错误#

维护和保养改进#

文档改进#

本次发布的贡献者#

(本次发布的 GitHub 贡献者页面)

@afshin | @andrii-i | @bollwyvl | @Darshan808 | @davidbrochart | @dependabot | @dlqqq | @fcollonval | @github-actions | @ianthomas23 | @iisakkirotko | @itsmevichu | @jesuino | @jtpio | @jupyterlab-probot | @krassowski | @lumberbot-app | @martinRenou | @pre-commit-ci | @Princekumarofficial | @RRosio | @rsaditya01 | @SatyajitRedekar | @trungleduc

4.4.0b0#

(完整变更日志)

已完成的增强#

  • 加快输出渲染:限制要链接的协议的最大长度 #17264 (@krassowski)

  • 删除虚假正则表达式以略微提高流式传输大输出的性能 #17262 (@krassowski)

  • 添加(可选)工作区选择器,在标题中显示工作区名称 #17256 (@Darshan808)

  • 添加命令以更改控制台提示符位置到调色板 #17253 (@jtpio)

  • 为获取 Jupyter 新闻选项添加更具描述性的标签 #16848 (@Adam-D-Lewis)

  • 允许通过插件自定义 ServiceManager #16794 (@jtpio)

已修复的错误#

  • 禁用新的 ctrl + m 焦点切换绑定,允许通过键盘快捷键进行配置 #17291 (@krassowski)

  • 允许 <GroupItem> 过滤掉 null 子项并接受任何 ReactNode #17244 (@MUFFANUJ)

  • 缓存项状态以提高文件浏览器的性能 #17239 (@Rishab87)

  • 修复由于越界访问导致的窗口化崩溃 #17238 (@krassowski)

  • 修复 LaTeX 中 \tag{} 指令导致的垂直滚动条问题 #17223 (@MUFFANUJ)

  • 在应用程序 shell 中添加缺失的 aria 标签 #17192 (@Rishab87)

  • 修复“添加标签”按钮中 SVG 图标未对齐的问题 #17187 (@MUFFANUJ)

  • 确保搜索高亮应用于 Python 内置关键字 #17160 (@hxrshxz)

  • 修复撤销/重做时的滚动和选择恢复问题 #17158 (@krassowski)

  • 修复在文本区域打字时对话框意外关闭的问题 #17142 (@Rishab87)

维护和保养改进#

文档改进#

本次发布的贡献者#

(本次发布的 GitHub 贡献者页面)

@Adam-D-Lewis | @afshin | @andrii-i | @brichet | @Carreau | @Darshan808 | @dependabot | @dlqqq | @echarles | @fcollonval | @github-actions | @hxrshxz | @JasonWeill | @jtpio | @jupyterlab-probot | @krassowski | @lumberbot-app | @MUFFANUJ | @pdarshane | @pre-commit-ci | @Rishab87 | @rpwagner | @RRosio | @Zsailer

4.4.0a3#

(完整变更日志)

已完成的增强#

已修复的错误#

  • 修复终端和内核会话状态栏项的工具提示/标题显示 #17220 (@MUFFANUJ)

  • 修复文件浏览器中禁用模糊过滤的问题 #17214 (@Darshan808)

  • 修复“关闭所有标签页”操作中不一致的标签页关闭问题 #17203 (@itsmevichu)

  • 修复服务器端执行时“运行中”的提示状态 #17195 (@krassowski)

  • 增加代码编辑器中运算符的颜色对比度 #17173 (@hxrshxz)

  • 修复笔记本运行操作中 lastCell 的发出问题 #17156 (@pawel99k)

  • 改进暗色和亮色主题下键盘快捷键 UI 中“添加”按钮的对比度 #17153 (@hxrshxz)

  • 修复 devcontainer.json 中缺失的逗号以启用功能配置 #17150 (@hxrshxz)

  • 修复 contentProviderId 的 setter #17141 (@jtpio)

  • 确保在 minimap 中点击外部时上下文菜单关闭 #17128 (@peytondmurray)

维护和保养改进#

文档改进#

本次发布的贡献者#

(本次发布的 GitHub 贡献者页面)

@ajbozarth | @brichet | @Darshan808 | @deephbz | @dependabot | @github-actions | @hxrshxz | @ianthomas23 | @itsmevichu | @JasonWeill | @jtpio | @jupyterlab-probot | @krassowski | @lumberbot-app | @MUFFANUJ | @pawel99k | @peytondmurray | @pre-commit-ci | @SylvainCorlay

4.4.0a2#

(完整变更日志)

新增功能#

已完成的增强#

已修复的错误#

维护和保养改进#

文档改进#

本次发布的贡献者#

(本次发布的 GitHub 贡献者页面)

@AmberArr | @andrewfulton9 | @andreytaboola | @bollwyvl | @Darshan808 | @davidbrochart | @dependabot | @echarles | @fcollonval | @ianthomas23 | @jtpio | @jupyterlab-probot | @krassowski | @martenrichter | @peytondmurray | @SamuelMarks

4.4.0a1#

(完整更新日志)

新增功能#

功能改进#

修复的错误#

维护和改进#

文档改进#

此版本的贡献者#

(此版本的GitHub贡献者页面)

@bollwyvl | @brichet | @claytonparnell | @cmarmo | @Darshan808 | @davidbrochart | @dependabot | @fcollonval | @itsmevichu | @JasonWeill | @joaopalmeiro | @jtpio | @jupyterlab-probot | @krassowski | @lumberbot-app | @mgeier | @Nriver | @pre-commit-ci | @RRosio

4.4.0a0#

(完整更新日志)

功能改进#

修复的错误#

维护和改进#

  • 修复 terminal.spec.ts 中的一个测试 #16942 (@holzman)

  • 修复 docmanager/savehandler “继续保存”测试 #16933 (@holzman)

  • 在 pip 组中,将 sphinx 要求从 <8.1.0, >=1.8 更新到 >=1.8, <8.2.0 (跨 1 个目录) #16922 (@dependabot)

  • 在 actions 组中将 tj-actions/changed-files 从 45.0.2 升级到 45.0.3 #16911 (@dependabot)

  • 将 mermaid 从 10.7.0 升级到 10.9.3 #16885 (@dependabot)

文档改进#

此版本的贡献者#

(此版本的GitHub贡献者页面)

@andrewfulton9 | @brichet | @cmarmo | @Darshan808 | @dependabot | @fcollonval | @holzman | @ianthomas23 | @itsmevichu | @JasonWeill | @jtpio | @jupyterlab-probot | @kellyrowland | @krassowski | @kuraga | @maitreya2954 | @pre-commit-ci

4.3.0#

(完整更新日志)

新增功能#

功能改进#

修复的错误#

维护和改进#

文档改进#

本次发布的贡献者#

本次发布的 GitHub 贡献者页面

@achhina | @afshin | @ajbozarth | @algonell | @andrewfulton9 | @andreytaboola | @andrii-i | @bollwyvl | @brichet | @ChairBorn | @cmarmo | @Darshan808 | @davidbrochart | @dependabot | @dhysdrn | @doshi-kevin | @echarles | @EdsterG | @ellisonbg | @ericsnekbytes | @fcollonval | @g547315 | @gabalafou | @gderocher | @github-actions | @guyq1997 | @HaudinFlorence | @hnben | @itsmevichu | @j264415 | @JasonWeill | @jgoodson | @joaopalmeiro | @jtpio | @jupyterlab-probot | @kaushalaaditya99 | @krassowski | @krishanbhasin-px | @lumberbot-app | @mahendrapaipuri | @maitreya2954 | @Mehak261124 | @mjpsyapse | @Nagidrop | @Nazeeh21 | @nekomeowww | @NexVeridian | @pauldruce | @pre-commit-ci | @Renegade334 | @Rob-P-Smith | @RRosio | @sanskriti2005 | @srdas | @SylvainCorlay | @tonyfast | @welcome | @williamstein | @Wzixiao

4.3.0rc1#

完整更改日志

已进行的改进#

已修复的错误#

维护和保养改进#

文档改进#

本次发布的贡献者#

本次发布的 GitHub 贡献者页面

@Darshan808 | @dependabot | @github-actions | @joaopalmeiro | @jtpio | @jupyterlab-probot | @kaushalaaditya99 | @krassowski | @mjpsyapse | @Nagidrop

4.3.0rc0#

完整更改日志

已进行的改进#

已修复的错误#

维护和保养改进#

文档改进#

本次发布的贡献者#

本次发布的 GitHub 贡献者页面

@algonell | @ChairBorn | @github-actions | @HaudinFlorence | @JasonWeill | @jtpio | @jupyterlab-probot | @krassowski | @nekomeowww | @pre-commit-ci

4.3.0b3#

完整更改日志

已进行的改进#

已修复的错误#

维护和保养改进#

文档改进#

本次发布的贡献者#

本次发布的 GitHub 贡献者页面

@dependabot | @github-actions | @JasonWeill | @jtpio | @jupyterlab-probot | @krassowski

4.3.0b2#

完整更改日志

已进行的改进#

已修复的错误#

维护和保养改进#

文档改进#

  • 修复 IPropertyInspectorProvider 插件描述中的错别字 #16797 (@jtpio)

  • 将指向可访问性项目的链接替换为指向可访问性问题的链接 #16787 (@jtpio)

  • 从文档中删除 Python 2 #16771 (@JasonWeill)

  • 修复与服务器端执行扩展的兼容性 #16764 (@krassowski)

  • 记录在开发模式下运行 JupyterLab 之前的强制步骤 #16761 (@cmarmo)

本次发布的贡献者#

本次发布的 GitHub 贡献者页面

@andrewfulton9 | @bollwyvl | @cmarmo | @Darshan808 | @davidbrochart | @dependabot | @fcollonval | @github-actions | @JasonWeill | @joaopalmeiro | @jtpio | @jupyterlab-probot | @krassowski

4.3.0b1#

完整更改日志

已进行的改进#

已修复的错误#

维护和保养改进#

文档改进#

本次发布的贡献者#

本次发布的 GitHub 贡献者页面

@cmarmo | @davidbrochart | @dependabot | @itsmevichu | @JasonWeill | @joaopalmeiro | @jtpio | @jupyterlab-probot | @krassowski | @maitreya2954

4.3.0b0#

完整更改日志

已进行的改进#

已修复的错误#

维护和保养改进#

文档改进#

本次发布的贡献者#

本次发布的 GitHub 贡献者页面

@afshin | @andrii-i | @brichet | @davidbrochart | @dependabot | @dhysdrn | @EdsterG | @fcollonval | @gabalafou | @gderocher | @github-actions | @HaudinFlorence | @itsmevichu | @JasonWeill | @joaopalmeiro | @jtpio | @jupyterlab-probot | @krassowski | @Mehak261124 | @Nazeeh21 | @NexVeridian | @pauldruce | @pre-commit-ci | @Renegade334 | @Rob-P-Smith | @RRosio | @tonyfast | @welcome | @williamstein

4.3.0a2#

(完整更新日志)

已进行的增强#

已修复的错误#

维护和保养改进#

文档改进#

此版本的贡献者#

(此版本的 GitHub 贡献者页面)

@dependabot | @fcollonval | @g547315 | @gabalafou | @github-actions | @j264415 | @JasonWeill | @joaopalmeiro | @jtpio | @jupyterlab-probot | @krassowski | @NexVeridian | @pre-commit-ci | @welcome

4.3.0a1#

(完整更新日志)

新增功能#

已进行的增强#

  • 定义 ICodeCellModel.executionState,弃用 setPrompt() #16431 (@krassowski)

  • 在滚动条中实现视口跟踪和响应式渲染 #16392 (@krassowski)

  • 对HTML/PDF文件和帮助选项卡使用延迟加载 #16387 (@hnben)

  • 添加选项以在会话期间关闭“服务器连接错误”对话框 #16269 (@RRosio)

已修复的错误#

维护和保养改进#

文档改进#

此版本的贡献者#

(此版本的 GitHub 贡献者页面)

@achhina | @afshin | @brichet | @Darshan808 | @davidbrochart | @dependabot | @echarles | @ellisonbg | @fcollonval | @github-actions | @HaudinFlorence | @hnben | @itsmevichu | @JasonWeill | @jtpio | @jupyterlab-probot | @krassowski | @krishanbhasin-px | @lumberbot-app | @mahendrapaipuri | @Mehak261124 | @pre-commit-ci | @RRosio | @sanskriti2005 | @srdas | @welcome

4.3.0a0#

(完整更新日志)

已进行的增强#

已修复的错误#

  • 修复终端交互模式下控制台中的执行 #16348 (@krassowski)

  • 修复工作区上下文菜单在其他侧边栏部分错误显示的问题 #16346 (@krassowski)

  • 修复 Shift + Tab 上下文帮助检查器工具提示回归 #16343 (@krassowski)

  • 响应式工具栏:避免同时调用 _onResize() #16335 (@brichet)

  • 升级CodeMirror依赖 #16306 (@krassowski)

  • 重置快捷方式不会恢复并启用默认值(如果已修改) #16304 (@itsmevichu)

  • 允许在任何位置(不限于行尾)调用内联补全器 #16298 (@ajbozarth)

  • 在markdown和原始单元格中使用子字符串进行搜索和替换 #16293 (@JasonWeill)

  • 在第一次渲染单元格工具栏项目之前等待,然后再查找重叠 #16291 (@brichet)

  • 添加小写代理变量并使优先级与其他工具保持一致 #16287 (@jgoodson)

维护和保养改进#

文档改进#

  • 在 MacOS 上使用 Python 12 运行 Python 测试,将 canvas 替换为 jest-canvas-mock #16314 (@krassowski)

此版本的贡献者#

(此版本的 GitHub 贡献者页面)

@ajbozarth | @brichet | @dependabot | @fcollonval | @github-actions | @itsmevichu | @JasonWeill | @jgoodson | @jtpio | @jupyterlab-probot | @krassowski | @Rob-P-Smith | @welcome | @Wzixiao

4.2.0#

(完整更新日志)

已修复的错误#

  • 在调用 notifyCommandChanged() 之前检查命令是否已注册 #16273 (@jtpio)

  • 如果 #16262 没有标签,则将 aria-label 设置为标题 (@fcollonval)

  • 修复文本编辑器中更改字体大小的问题 #16261 (@FoSuCloud)

  • 修复替换文本多次匹配源文本时的替换问题 #16258 (@JasonWeill)

  • 将重新打开已关闭命令添加到选项卡上下文菜单 #16250 (@krassowski)

维护和保养改进#

文档改进#

此版本的贡献者#

(此版本的 GitHub 贡献者页面)

@davidbrochart | @dependabot | @fcollonval | @FoSuCloud | @github-actions | @JasonWeill | @jtpio | @jupyterlab-probot | @krassowski | @welcome

4.2.0rc0#

(完整更新日志)

已进行的增强#

  • 将用户界面中的措辞从“目录”更新为“文件夹” #16234 (@Rob-P-Smith)

已修复的错误#

维护和保养改进#

文档改进#

此版本的贡献者#

(此版本的 GitHub 贡献者页面)

@Alanhou1222 | @divyansshhh | @github-actions | @itsmevichu | @JasonWeill | @jtpio | @jupyterlab-probot | @kolibril13 | @krassowski | @NexVeridian | @Rob-P-Smith | @sawickid | @welcome

4.2.0b3#

(完整更新日志)

已修复的错误#

维护和保养改进#

此版本的贡献者#

(此版本的 GitHub 贡献者页面)

@dependabot | @fcollonval | @jupyterlab-probot | @krassowski

4.2.0b2#

(完整更新日志)

已进行的增强#

  • 将工具包搜索输入用于所有搜索输入:文件浏览器、扩展管理器、调试器内核源 #16046 (@Mehak261124)

  • “上次修改”列和日期更小 #15948 (@JasonWeill)

已修复的错误#

维护和保养改进#

文档改进#

此版本的贡献者#

(此版本的 GitHub 贡献者页面)

@AnastasiaSliusar | @andrii-i | @bollwyvl | @brichet | @dependabot | @fcollonval | @github-actions | @JasonWeill | @jtpio | @jupyterlab-probot | @krassowski | @lumberbot-app | @Mehak261124 | @milinm | @Tanmay-Deshmukh | @welcome

4.2.0b1#

(完整更新日志)

新增功能#

  • JupyterLab 的深色高对比度主题,改进了侧边栏焦点指示 #15623 (@m158261)

已进行的增强功能#

已修复的 Bug#

维护和保养改进#

文档改进#

此版本的贡献者#

(此版本的 GitHub 贡献者页面)

@Alanhou1222 | @brichet | @davidbrochart | @dependabot | @e218736 | @echarles | @fcollonval | @FoSuCloud | @gabalafou | @github-actions | @itsmevichu | @jtpio | @jupyterlab-probot | @krassowski | @lumberbot-app | @m158261 | @pre-commit-ci | @Susilkessav | @welcome

4.2.0b0#

(完整更新日志)

已进行的增强功能#

已修复的 Bug#

维护和保养改进#

文档改进#

此版本的贡献者#

(此版本的 GitHub 贡献者页面)

@afshin | @fcollonval | @github-actions | @JasonWeill | @jtpio | @jupyterlab-probot | @krassowski | @UntitledError-09 | @welcome

4.2.0a2#

(完整更新日志)

新增功能#

已进行的增强功能#

已修复的 Bug#

维护和保养改进#

文档改进#

此版本的贡献者#

(此版本的 GitHub 贡献者页面)

@brichet | @dependabot | @erkin98 | @fcollonval | @github-actions | @JasonWeill | @jtpio | @jupyterlab-probot | @krassowski | @mdietz94 | @Mehak261124 | @minrk | @RRosio | @trungleduc | @welcome

4.2.0a1#

(完整更新日志)

已进行的增强功能#

已修复的 Bug#

维护和保养改进#

文档改进#

此版本的贡献者#

(此版本的 GitHub 贡献者页面)

@andrii-i | @blink1073 | @brichet | @dependabot | @diyoyo | @fcollonval | @FoSuCloud | @github-actions | @JasonWeill | @jtpio | @jupyterlab-probot | @krassowski | @linlol | @welcome

4.2.0a0#

(完整更新日志)

已进行的增强功能#

已修复的 Bug#

维护和保养改进#

文档改进#

此版本的贡献者#

(此版本的 GitHub 贡献者页面)

@AllanChain | @brichet | @dependabot | @ericsnekbytes | @fcollonval | @FoSuCloud | @github-actions | @HaudinFlorence | @JasonWeill | @jtpio | @jupyterlab-probot | @krassowski | @linlol | @lumberbot-app | @trungleduc | @welcome

4.1.2#

(完整更新日志)

修复的Bug#

维护和保养改进#

文档改进#

  • 删除 SO 链接,在常见问题中添加更近期的问题 #15811 (@krassowski)

  • 修复文档索引页上指向 mybinder.org 的过时链接 #15800 (@nluetts)

  • 修复打开的 Shadow DOM 内部可编辑元素中的输入问题 #15774 (@krassowski)

此版本的贡献者#

(此版本的 GitHub 贡献者页面)

@FoSuCloud | @github-actions | @JasonWeill | @jupyterlab-probot | @kiliansinger | @krassowski | @lumberbot-app | @nluetts | @trungleduc | @welcome

4.1.1#

(完整更新日志)

修复的Bug#

维护和保养改进#

  • 更新 Binder 环境的 jupyter-collaboration #15767 (@jtpio)

  • 修复“笔记本工具栏 > 粘贴单元格”测试失败 #15720 (@krassowski)

文档改进#

此版本的贡献者#

(此版本的 GitHub 贡献者页面)

@davidbrochart | @dhml | @fcollonval | @g547315 | @github-actions | @JasonWeill | @jtpio | @jupyterlab-probot | @krassowski | @lumberbot-app | @minrk | @pre-commit-ci | @welcome

4.1.0#

(完整更新日志)

新增功能#

功能增强#

修复的Bug#

维护和保养改进#

文档改进#

API 和重大更改#

已弃用的功能#

此版本的贡献者#

(此版本的 GitHub 贡献者页面)

@afshin | @akx | @alden-ilao | @AllanChain | @andrewfulton9 | @andrii-i | @ashna1jain | @bikash30851 | @blink1073 | @bollwyvl | @brichet | @brijsiyag | @coriegulik | @davidbrochart | @DcWire | @Deepali1211 | @DenisaCG | @dependabot | @dharmaquark | @divyansshhh | @dolevf | @DonJayamanne | @echarles | @eliaslma | @emmanuel-ferdman | @ericsnekbytes | @fcollonval | @firai | @FoSuCloud | @g547315 | @gabalafou | @GabrielaVives | @github-actions | @HaudinFlorence | @hbcarlos | @holzman | @isabela-pf | @j264415 | @jans-code | @JasonWeill | @jtpio | @jupyterlab-bot | @jupyterlab-probot | @KiranmaiKalla | @krassowski | @LJMP | @lumberbot-app | @m158261 | @mctoohey | @mdengler | @MFA-X-AI | @misterfads | @mlucool | @mmichilot | @nbowditch-einblick | @nishikantparmariam | @paolocarinci | @parmentelat | @pauky | @paulkim3151 | @phil-zxx | @pre-commit-ci | @Rmarieta | @RRosio | @Sarthug99 | @sinistersnare | @skyetim | @smacke | @SylvainCorlay | @t03857785 | @tibdex | @timkpaine | @tonyfast | @trungleduc | @welcome | @Wh1isper | @yuvipanda

4.1.0rc1#

(完整更新日志)

已修复的 Bug#

维护和日常改进#

文档改进#

此版本的贡献者#

(此版本的 GitHub 贡献者页面)

@FoSuCloud | @github-actions | @JasonWeill | @jtpio | @jupyterlab-probot | @krassowski | @lumberbot-app | @Sarthug99 | @welcome

4.1.0rc0#

(完整更新日志)

已修复的 Bug#

维护和日常改进#

文档改进#

  • 在行内补全器更新日志部分提及 jupyter-ai 预发布版本 #15669 (@krassowski)

此版本的贡献者#

(此版本的 GitHub 贡献者页面)

@brichet | @dependabot | @fcollonval | @FoSuCloud | @github-actions | @j264415 | @JasonWeill | @jupyterlab-bot | @jupyterlab-probot | @KiranmaiKalla | @krassowski | @welcome | @Wh1isper

4.1.0b2#

(完整更新日志)

安全修复#

文档改进#

此版本的贡献者#

(此版本的 GitHub 贡献者页面)

@github-actions | @jupyterlab-probot | @krassowski

4.1.0b1#

(完整更新日志)

已完成的增强功能#

  • 在内核初始化时显示运行代码单元格的提示通知 #15421 (@misterfads)

已修复的 Bug#

维护和日常改进#

文档改进#

此版本的贡献者#

(此版本的 GitHub 贡献者页面)

@alden-ilao | @andrewfulton9 | @bollwyvl | @brichet | @dependabot | @fcollonval | @github-actions | @j264415 | @jtpio | @jupyterlab-probot | @krassowski | @MFA-X-AI | @misterfads | @pre-commit-ci | @welcome | @Wh1isper

4.1.0b0#

(完整更新日志)

新增功能#

  • 为带窗口列表添加虚拟滚动条组件。 #15533 (@afshin)

已完成的增强功能#

已修复的 Bug#

维护和日常改进#

文档改进#

已弃用的功能#

此版本的贡献者#

(此版本的 GitHub 贡献者页面)

@afshin | @akx | @ashna1jain | @brichet | @DcWire | @dependabot | @DonJayamanne | @fcollonval | @g547315 | @gabalafou | @GabrielaVives | @github-actions | @j264415 | @jtpio | @jupyterlab-probot | @krassowski | @lumberbot-app | @m158261 | @mmichilot | @parmentelat | @pre-commit-ci | @t03857785 | @tonyfast | @welcome

4.1.0a4#

(完整更新日志)

已完成的增强功能#

已修复的 Bug#

维护和日常改进#

文档改进#

此版本的贡献者#

(此版本的 GitHub 贡献者页面)

@andrewfulton9 | @blink1073 | @brichet | @fcollonval | @gabalafou | @github-actions | @j264415 | @jtpio | @jupyterlab-probot | @krassowski | @lumberbot-app | @m158261 | @mdengler | @parmentelat | @RRosio | @tonyfast | @welcome

4.1.0a3#

(完整更新日志)

新增功能#

已完成的增强功能#

已修复的 Bug#

维护和日常改进#

文档改进#

此版本的贡献者#

(此版本的 GitHub 贡献者页面)

@andrewfulton9 | @andrii-i | @blink1073 | @bollwyvl | @brichet | @DenisaCG | @dependabot | @dharmaquark | @divyansshhh | @dolevf | @eliaslma | @ericsnekbytes | @fcollonval | @firai | @github-actions | @j264415 | @jtpio | @jupyterlab-probot | @krassowski | @LJMP | @lumberbot-app | @m158261 | @mmichilot | @nbowditch-einblick | @nishikantparmariam | @parmentelat | @pauky | @paulkim3151 | @pre-commit-ci | @sinistersnare | @skyetim | @tibdex | @tonyfast | @trungleduc | @welcome

4.1.0a2#

(完整更新日志)

新增功能#

功能增强#

错误修复#

维护和保养改进#

文档改进#

API 和重大变更#

此版本的贡献者#

(此版本的 GitHub 贡献者页面)

@afshin | @andrewfulton9 | @bikash30851 | @brichet | @Deepali1211 | @dependabot | @echarles | @fcollonval | @gabalafou | @github-actions | @HaudinFlorence | @hbcarlos | @isabela-pf | @jans-code | @jtpio | @jupyterlab-probot | @krassowski | @lumberbot-app | @m158261 | @parmentelat | @pre-commit-ci | @Rmarieta | @smacke | @trungleduc | @welcome

4.1.0a1#

(完整更新日志)

功能增强#

错误修复#

维护和保养改进#

文档改进#

此版本的贡献者#

(此版本的 GitHub 贡献者页面)

@AllanChain | @andrii-i | @bollwyvl | @brichet | @brijsiyag | @coriegulik | @davidbrochart | @DenisaCG | @dependabot | @echarles | @emmanuel-ferdman | @ericsnekbytes | @fcollonval | @FoSuCloud | @g547315 | @gabalafou | @GabrielaVives | @github-actions | @hbcarlos | @holzman | @isabela-pf | @j264415 | @JasonWeill | @jtpio | @jupyterlab-probot | @krassowski | @lumberbot-app | @mctoohey | @pauky | @pre-commit-ci | @skyetim | @SylvainCorlay | @timkpaine | @tonyfast | @trungleduc | @welcome | @yuvipanda

4.0.2#

(完整更新日志)

错误修复#

维护和保养改进#

文档改进#

此版本的贡献者#

(此版本的 GitHub 贡献者页面)

@dependabot | @ericsnekbytes | @fcollonval | @GabrielaVives | @github-actions | @jtpio | @jupyterlab-probot | @krassowski | @pre-commit-ci | @tonyfast

4.0.1#

(完整更新日志)

功能增强#

错误修复#

维护和保养改进#

文档改进#

此版本的贡献者#

(此版本的 GitHub 贡献者页面)

@brijsiyag | @c3Vu | @dependabot | @fcollonval | @github-actions | @j264415 | @JasonWeill | @JeanLescutMuller | @jtpio | @jupyterlab-probot | @krassowski | @nishikantparmariam | @t03857785 | @tpatel | @tuncbkose | @welcome

4.0.0#

(完整更新日志)

JupyterLab 4 发布啦!:tada

查看新功能、改进和错误修复:https://lab.jupyter.org.cn/en/latest/getting_started/changelog.html#v4-0

对于扩展开发者,有可用的迁移指南,帮助您将扩展迁移到 JupyterLab 4:https://lab.jupyter.org.cn/en/latest/extension/extension_migration.html#jupyterlab-3-x-to-4-x


作为参考,以下是自 v4.0.0rc1 以来的更改

错误修复#

维护和保养改进#

文档改进#

此版本的贡献者#

(此版本的 GitHub 贡献者页面)

@afshin | @andrii-i | @fcollonval | @github-actions | @HaudinFlorence | @jupyterlab-probot | @krassowski | @welcome

4.0.0rc1#

(完整更新日志)

错误修复#

维护和保养改进#

文档改进#

本次发布的贡献者#

(本次发布在 GitHub 上的贡献者页面)

@afshin | @andrewfulton9 | @andrii-i | @bikash30851 | @dependabot | @fcollonval | @gabalafou | @github-actions | @JaSpa | @jtpio | @jupyterlab-probot | @krassowski | @meeseeksdev | @pre-commit-ci | @welcome

4.0.0rc0#

(完整更新日志)

新增功能#

功能增强#

已修复的错误#

维护和保养改进#

文档改进#

API 和重大更改#

本版本的贡献者#

(此版本的 GitHub 贡献者页面)

@3coins | @a3626a | @aditya211935 | @afshin | @agoose77 | @ajbozarth | @akhmerov | @alec-kr | @Alexboiboi | @andrii-i | @athornton | @blink1073 | @bollwyvl | @brichet | @c00kie123 | @cccs-nik | @chbrandt | @ChristopherDavisUCI | @damiend97 | @davidbrochart | @dependabot | @dlqqq | @dmonad | @kamalika0363 | @domoritz | @echarles | @ellisonbg | @ericsnekbytes | @fcollonval | @firai | @FoSuCloud | @fperez | @frenzymadness | @frivas-at-navteca | @gabalafou | @GabrielaVives | @github-actions | @HaudinFlorence | @hbcarlos | @hsuanxyz | @hugetim | @isabela-pf | @jasongrout | @JasonWeill | @jmk89 | @joaopalmeiro | @JohanMabille | @jtpio | @jupyterlab-probot | @kenyaachon | @kostyafarber | @krassowski | @kulsoomzahra | @liliyao2022 | @malemburg | @markgreene74 | @marthacryan | @martinRenou | @matthewturk | @mctoohey | @meeseeksdev | @meeseeksmachine | @mgcth | @minrk | @mlucool | @NikolayXHD | @oscar6echo | @peytondmurray | @pre-commit-ci | @psychemedia | @RobbyPratl | @RRosio | @rursprung | @siddartha-10 | @steff456 | @SylvainCorlay | @telamonian | @thetorpedodog | @thomasaarholt | @tonyfast | @trallard | @trungleduc | @vidartf | @vthinkxie | @welcome | @yangql176 | @yanmulin | @yczhangsjtu | @yumyumqing | @yuvipanda | @zrottman | @Zsailer

v3.6#

3.6.3#

(完整更新日志)

维护和升级改进#

文档改进#

本次发布的贡献者#

(本次发布的GitHub贡献者页面)

@andrii-i | @bollwyvl | @brichet | @damiend97 | @fcollonval | @github-actions | @JasonWeill | @jtpio | @jupyterlab-probot | @krassowski | @welcome

3.6.2#

(完整更新日志)

修复的Bug#

维护和升级改进#

文档改进#

本次发布的贡献者#

(本次发布的GitHub贡献者页面)

@andrii-i | @blink1073 | @bollwyvl | @brichet | @bt- | @dlqqq | @domoritz | @echarles | @fcollonval | @fperez | @gabalafou | @GabrielaVives | @github-actions | @goanpeca | @HaudinFlorence | @hbcarlos | @ianhi | @jasongrout | @JasonWeill | @jtpio | @jupyterlab-dev-mode | @jupyterlab-probot | @krassowski | @meeseeksdev | @meeseeksmachine | @mlucool | @psychemedia | @telamonian | @tonyfast | @vidartf | @welcome

3.6.1#

(完整更新日志)

修复的Bug#

文档改进#

本次发布的贡献者#

(本次发布的GitHub贡献者页面)

@fcollonval | @jupyterlab-probot | @meeseeksmachine

3.6.0#

(完整更新日志)

新增功能#

功能增强#

修复的Bug#

维护和升级改进#

文档改进#

API和重大更改#

本次发布的贡献者#

(本次发布的GitHub贡献者页面)

@afshin | @andrii-i | @blink1073 | @bollwyvl | @brichet | @Carreau | @davidbrochart | @echarles | @ellisonbg | @ericsnekbytes | @fcollonval | @fperez | @github-actions | @HaudinFlorence | @hbcarlos | @jasongrout | @JasonWeill | @jtpio | @jupyterlab-dev-mode | @jupyterlab-probot | @krassowski | @martinRenou | @meeseeksdev | @meeseeksmachine | @psychemedia | @SylvainCorlay | @trungleduc | @uenot | @vidartf | @welcome

v3.5#

3.5.0#

(完整更新日志)

功能增强#

错误修复#

维护和保养改进#

文档改进#

此版本的贡献者#

(此版本的 GitHub 贡献者页面) @Carreau | @davidbrochart | @ellisonbg | @fcollonval | @hbcarlos | @jasongrout | @jtpio | @jupyterlab-probot | @krassowski | @meeseeksdev | @meeseeksmachine | @SylvainCorlay | @trungleduc | @welcome

v3.4#

3.4.7#

(完整更新日志)

功能增强#

错误修复#

此版本的贡献者#

(此版本的 GitHub 贡献者页面)

@agoose77 | @blink1073 | @ellisonbg | @fcollonval | @gabalafou | @github-actions | @jtpio | @jupyterlab-probot | @krassowski | @meeseeksmachine | @welcome

3.4.6#

(完整更新日志)

错误修复#

维护和保养改进#

文档改进#

此版本的贡献者#

(此版本的 GitHub 贡献者页面)

@ajbozarth | @athornton | @blink1073 | @ellisonbg | @fcollonval | @goanpeca | @ian-r-rose | @isabela-pf | @jasongrout | @jtpio | @jupyterlab-dev-mode | @jupyterlab-probot | @JasonWeill | @krassowski | @KrishnaKumarHariprasannan | @malemburg | @manfromjupyter | @meeseeksdev | @meeseeksmachine | @mlucool | @saulshanabrook | @telamonian | @tgeorgeux | @trallard | @VersBersh | @vidartf | @welcome

3.4.5#

(完整更新日志)

功能增强#

错误修复#

维护和保养改进#

文档改进#

此版本的贡献者#

(此版本的 GitHub 贡献者页面)

@afshin | @agoose77 | @blink1073 | @davidbrochart | @fcollonval | @jasongrout | @jtpio | @jupyterlab-dev-mode | @jupyterlab-probot | @krassowski | @martinRenou | @meeseeksdev | @meeseeksmachine | @ryanlovett | @SylvainCorlay | @telamonian | @trungleduc | @welcome

3.4.4#

(完整更新日志)

功能增强#

错误修复#

维护和保养改进#

文档改进#

此版本的贡献者#

(此版本的 GitHub 贡献者页面)

@afshin | @aiqc | @davidbrochart | @dlqqq | @dmonad | @echarles | @ellisonbg | @fcollonval | @github-actions | @goanpeca | @hbcarlos | @jasongrout | @JohanMabille | @jtpio | @jupyterlab-dev-mode | @jupyterlab-probot | @JasonWeill | @krassowski | @martinRenou | @meeseeksdev | @meeseeksmachine | @siddartha-10 | @SylvainCorlay | @welcome | @williamstein

3.4.3#

(完整更新日志)

新增功能#

功能增强#

错误修复#

维护和保养改进#

文档改进#

此版本的贡献者#

(此版本的 GitHub 贡献者页面)

@afshin | @blink1073 | @bollwyvl | @davidbrochart | @dmonad | @echarles | @ellisonbg | @fcollonval | @github-actions | @hbcarlos | @jtpio | @jupyterlab-dev-mode | @jupyterlab-probot | @meeseeksdev | @meeseeksmachine | @welcome

3.4.2#

(完整更新日志)

错误修复#

  • 如果未使用最新补丁,构建扩展会失败 #12571 (@ajbozarth)

  • 修复了当重命名目标存在时 shouldOverwrite 从未被调用的问题 #12543 (@ephes)

维护和保养改进#

此版本的贡献者#

(此版本的 GitHub 贡献者页面)

@fcollonval | @jtpio | @jupyterlab-probot | @karlaspuldaro | @meeseeksmachine | @welcome

3.4.1#

(完整更新日志)

功能增强#

错误修复#

维护和保养改进#

此版本的贡献者#

(此版本的 GitHub 贡献者页面)

@ajbozarth | @echarles | @fcollonval | @github-actions | @jtpio | @jupyterlab-probot | @meeseeksmachine | @welcome

3.4.0rc0#

(完整更新日志)

功能增强#

错误修复#

维护和保养改进#

文档改进#

已弃用的功能#

此版本的贡献者#

(此版本的 GitHub 贡献者页面)

@bollwyvl | @davidbrochart | @echarles | @fcollonval | @gabalafou | @github-actions | @jtpio | @jupyterlab-probot | @JasonWeill | @krassowski | @meeseeksdev | @meeseeksmachine | @welcome

3.4.0#

(完整更新日志)

功能增强#

错误修复#

维护和升级改进#

文档改进#

已弃用功能#

此版本的贡献者#

(此版本的 GitHub 贡献者页面)

@afshin | @bollwyvl | @davidbrochart | @echarles | @fcollonval | @gabalafou | @github-actions | @jtpio | @jupyterlab-probot | @JasonWeill | @krassowski | @meeseeksdev | @meeseeksmachine | @welcome

v3.3#

3.3.4#

(完整更新日志)

功能增强#

错误修复#

维护和升级改进#

文档改进#

此版本的贡献者#

(此版本的 GitHub 贡献者页面)

@aiqc | @blink1073 | @echarles | @fcollonval | @github-actions | @jasongrout | @jtpio | @jupyterlab-probot | @JasonWeill | @krassowski | @meeseeksdev | @meeseeksmachine | @welcome

3.3.3#

(完整更新日志)

功能增强#

  • 在文件浏览器面包屑中添加一个 preferred-dir 图标 #12354 (@echarles)

  • 将 preferKernel 选项添加到 JupyterLab 代码中 #12260 (@JasonWeill)

  • 为扩展中的测试添加 aria progressbar 角色和 data-status #12238 (@krassowski)

错误修复#

维护和升级改进#

文档改进#

此版本的贡献者#

(此版本的 GitHub 贡献者页面)

@afshin | @aiqc | @ajbozarth | @blink1073 | @bollwyvl | @damianavila | @davidbrochart | @echarles | @fcollonval | @github-actions | @hbcarlos | @isabela-pf | @jtpio | @jupyterlab-probot | @JasonWeill | @krassowski | @marthacryan | @martinRenou | @meeseeksdev | @meeseeksmachine | @mlucool | @rccern | @welcome

3.3.2#

(完整更新日志)

错误修复#

文档改进#

  • 在扩展教程中添加关于 asyncawaitPromises 的说明 #12199 (@jtpio)

此版本的贡献者#

(此版本的 GitHub 贡献者页面)

@fcollonval | @github-actions | @jtpio | @jupyterlab-probot | @meeseeksmachine

3.3.1#

(完整更新日志)

功能增强#

错误修复#

文档改进#

此版本的贡献者#

(此版本的 GitHub 贡献者页面)

@davidbrochart | @echarles | @ellisonbg | @fcollonval | @github-actions | @jasongrout | @jtpio | @jupyterlab-probot | @JasonWeill | @krassowski | @martinRenou | @meeseeksmachine | @welcome

3.3.0#

(完整更新日志)

功能增强#

错误修复#

维护和升级改进#

文档改进#

API 和破坏性更改#

其他已合并的 PRs#

此版本的贡献者#

(此版本的 GitHub 贡献者页面)

@agoose77 | @andrewfulton9 | @baggiponte | @blink1073 | @bollwyvl | @Carreau | @davidbrochart | @dmonad | @echarles | @ellisonbg | @ErikBjare | @fcollonval | @github-actions | @hbcarlos | @isabela-pf | @jasongrout | @JohanMabille | @jtpio | @jupyterlab-dev-mode | @jupyterlab-probot | @JasonWeill | @krassowski | @marthacryan | @meeseeksdev | @meeseeksmachine | @mlucool | @schmidi314 | @SylvainCorlay | @Sync271 | @telamonian | @thesinepainter | @trungleduc | @welcome | @yuvipanda | @Zsailer

v3.2#

3.2.9#

(完整更新日志)

已修复的错误#

维护和改进#

  • 使用 maintainer-tools 基本设置动作 #11595 (@jtpio)

  • 放弃 Python 3.6 测试,在 Python 3.10 上测试 #11646 (@jtpio)

文档改进#

此版本的贡献者#

(此版本的 GitHub 贡献者页面)

@andrewfulton9 | @blink1073 | @bollwyvl | @echarles | @fcollonval | @github-actions | @hbcarlos | @isabela-pf | @jasongrout | @JohanMabille | @jtpio | @jupyterlab-dev-mode | @jupyterlab-probot | @krassowski | @marthacryan | @meeseeksdev | @meeseeksmachine | @mlucool | @welcome | @yuvipanda | @Zsailer

3.2.8#

(完整更新日志)

维护和改进#

此版本的贡献者#

(此版本的 GitHub 贡献者页面)

@github-actions | @hbcarlos | @jtpio | @jupyterlab-probot | @meeseeksdev | @meeseeksmachine

3.2.7#

没有合并的 PR

3.2.6#

(完整更新日志)

已完成的改进#

已修复的错误#

维护和改进#

文档改进#

其他合并的 PR#

此版本的贡献者#

(此版本的 GitHub 贡献者页面)

@andrewfulton9 | @bollwyvl | @davidbrochart | @echarles | @ellisonbg | @fcollonval | @github-actions | @hbcarlos | @jasongrout | @JohanMabille | @jtpio | @jupyterlab-dev-mode | @jupyterlab-probot | @krassowski | @meeseeksdev | @meeseeksmachine | @schmidi314 | @TheOtherRealm | @thesinepainter | @welcome

3.2.5#

(完整更新日志)

已完成的改进#

已修复的错误#

维护和改进#

文档#

此版本的贡献者#

(此版本的 GitHub 贡献者页面)

@blink1073 | @bollwyvl | @dmonad | @echarles | @ellisonbg | @fcollonval | @github-actions | @hbcarlos | @jasongrout | @jess-x | @jtpio | @jupyterlab-dev-mode | @jupyterlab-probot | @JasonWeill | @krassowski | @meeseeksdev | @meeseeksmachine | @trungleduc | @welcome

3.2.4#

(完整更新日志)

已完成的改进#

已修复的错误#

维护和改进#

此版本的贡献者#

(此版本的 GitHub 贡献者页面)

@blink1073 | @fcollonval | @github-actions | @isabela-pf | @jasongrout | @jtpio | @jupyterlab-probot | @krassowski | @meeseeksdev | @meeseeksmachine | @welcome | @williamstein

3.2.3#

(完整更新日志)

已完成的改进#

已修复的错误#

  • 处理 themePathschemaDir 的相对路径 #11427 (@jtpio)

  • 在 3.2.x 分支上反向移植 PR #11398(修复 #11377 并升级 Yjs 依赖项并修复 modeldb 覆盖 yjs 内容) #11408 (@dmonad)

维护和改进#

  • 在 3.2.x 分支上反向移植 PR #11420(使 ILabShell 在 toc 扩展中可选) #11421 (@JasonWeill)

此版本的贡献者#

(此版本的 GitHub 贡献者页面)

@dmonad | @fcollonval | @github-actions | @jasongrout | @jtpio | @jupyterlab-probot | @JasonWeill | @krassowski | @meeseeksdev | @meeseeksmachine

3.2.2#

(完整更新日志)

修复的 Bug#

维护和升级改进#

文档改进#

本次发布的贡献者#

(本次发布的 GitHub 贡献者页面)

@blink1073 | @davidbrochart | @ellisonbg | @fcollonval | @github-actions | @jasongrout | @jess-x | @jtpio | @jupyterlab-dev-mode | @jupyterlab-probot | @krassowski | @meeseeksmachine | @trungleduc | @welcome | @williamstein | @Zsailer

3.2.1#

(完整更新日志)

修复的 Bug#

维护和升级改进#

文档改进#

本次发布的贡献者#

(本次发布的 GitHub 贡献者页面)

@3coins | @blink1073 | @ellisonbg | @fcollonval | @github-actions | @jasongrout | @jtpio | @jupyterlab-probot | @meeseeksmachine | @welcome

3.2.0#

(完整更新日志)

改进功能#

修复的 Bug#

维护和升级改进#

文档改进#

本次发布的贡献者#

(本次发布的 GitHub 贡献者页面)

@3coins | @achimgaedke | @blink1073 | @echarles | @ellisonbg | @fcollonval | @github-actions | @goanpeca | @hbcarlos | @isabela-pf | @jasongrout | @jess-x | @joelostblom | @jtpio | @jupyterlab-dev-mode | @jupyterlab-probot | @krassowski | @loichuder | @meeseeksdev | @meeseeksmachine | @SylvainCorlay | @trungleduc | @welcome

v3.1#

3.1.19#

(完整更新日志)

修复的 Bug#

维护和升级改进#

本次发布的贡献者#

(本次发布的 GitHub 贡献者页面)

@agoose77 | @andrewfulton9 | @baggiponte | @blink1073 | @bollwyvl | @Carreau | @davidbrochart | @dmonad | @echarles | @ellisonbg | @fcollonval | @github-actions | @hbcarlos | @isabela-pf | @jasongrout | @jess-x | @JohanMabille | @jtpio | @jupyterlab-dev-mode | @jupyterlab-probot | @JasonWeill | @krassowski | @meeseeksdev | @meeseeksmachine | @schmidi314 | @SylvainCorlay | @telamonian | @thesinepainter | @trungleduc | @welcome | @williamstein | @yuvipanda | @Zsailer

3.1.18#

(完整更新日志)

修复的 Bug#

  • 回溯 PR #11249 到分支 3.1.x (修复 Webpack 加密处理) #11252 (@blink1073)

本次发布的贡献者#

(本次发布的 GitHub 贡献者页面)

@blink1073 | @github-actions | @jupyterlab-probot

3.1.17#

(完整更新日志)

修复的 Bug#

本次发布的贡献者#

(本次发布的 GitHub 贡献者页面)

@jupyterlab-probot | @meeseeksmachine

3.1.16#

(完整更新日志)

修复的 Bug#

维护和升级改进#

本次发布的贡献者#

(本次发布的 GitHub 贡献者页面)

@blink1073 | @echarles | @ellisonbg | @fcollonval | @github-actions | @goanpeca | @hbcarlos | @isabela-pf | @jasongrout | @jupyterlab-dev-mode | @jupyterlab-probot | @krassowski | @loichuder | @meeseeksdev | @meeseeksmachine | @SylvainCorlay | @welcome

3.1.15#

(因发布过程中的错误而跳过)

3.1.14#

(完整更新日志)

修复的 Bug#

维护和升级改进#

文档改进#

本次发布的贡献者#

(本次发布的 GitHub 贡献者页面)

@blink1073 | @echarles | @github-actions | @goanpeca | @jess-x | @jupyterlab-probot | @krassowski | @meeseeksdev | @meeseeksmachine | @welcome

3.1.13#

(完整更新日志)

改进功能#

  • 通过 ServerConnection.ISettings 获取翻译 #11091 (@jtpio)

修复的 Bug#

维护和升级改进#

文档改进#

  • 在扩展教程中添加关于 Jupyter Releaser 的说明 #11085 (@jtpio)

其他合并的 PR#

本次发布的贡献者#

(本次发布的 GitHub 贡献者页面)

@blink1073 | @fcollonval | @github-actions | @jtpio | @jupyterlab-dev-mode | @jupyterlab-probot | @krassowski | @meeseeksmachine | @Mithil467 | @trungleduc | @welcome

3.1.12#

(完整更新日志)

修复的错误#

维护和改进#

文档改进#

其他已合并的 PR#

此版本的贡献者#

(此版本的 GitHub 贡献者页面)

@blink1073 | @github-actions | @jasongrout | @jtpio | @jupyterlab-dev-mode | @jupyterlab-probot | @krassowski | @meeseeksmachine | @Mithil467

3.1.11#

(完整更新日志)

修复的错误#

  • 在 3.1.x 分支中恢复已合并的待处理输入 PR #10792 #11020 (@echarles)

  • 修复 #10997 - 增加 websocket 消息的最大消息大小 #11003 (@dmonad)

  • 使用正确的 nbformat 版本 - 修复 #11005 #11017 (@dmonad)

  • 修复了被忽略的 promise 导致初始工具提示位置不正确的问题 #11010 (@krassowski)

  • 修复 nbformat 对话框中的拼写错误 #11001 (@davidbrochart)

  • 在 3.1.x 分支上反向移植 PR #10943(简化 IRankedMenu 接口)#10991 (@fcollonval)

  • 添加防护以避免在多个输入请求时发生内核死锁 #10792 (@echarles)

维护和改进#

文档改进#

此版本的贡献者#

(此版本的 GitHub 贡献者页面)

@blink1073 | @echarles | @fcollonval | @jtpio | @jupyterlab-dev-mode | @meeseeksmachine

3.1.10#

(完整更新日志)

修复的错误#

维护和改进#

文档改进#

此版本的贡献者#

(此版本的 GitHub 贡献者页面)

@agoose77 | @baggiponte | @blink1073 | @echarles | @ellisonbg | @fcollonval | @goanpeca | @jasongrout | @jtpio | @jupyterlab-dev-mode | @krassowski | @mbektas | @meeseeksdev | @meeseeksmachine | @SarunasAzna | @welcome

3.1.9#

(完整更新日志)

修复的错误#

文档改进#

此版本的贡献者#

(此版本的 GitHub 贡献者页面)

@blink1073 | @jupyterlab-dev-mode | @meeseeksdev | @meeseeksmachine | @welcome

3.1.8#

(完整更新日志)

修复的错误#

维护和改进#

此版本的贡献者#

(此版本的 GitHub 贡献者页面)

@blink1073 | @fcollonval | @jupyterlab-dev-mode | @krassowski | @meeseeksdev | @meeseeksmachine

3.1.7#

(完整更新日志)

修复的错误#

维护和改进#

文档改进#

此版本的贡献者#

(此版本的 GitHub 贡献者页面)

@3coins | @afshin | @blink1073 | @fcollonval | @goanpeca | @jasongrout | @jupyterlab-dev-mode | @krassowski | @meeseeksmachine | @welcome

3.1.6#

(完整更新日志)

修复的错误#

维护和改进#

此版本的贡献者#

(此版本的 GitHub 贡献者页面)

@blink1073 | @jupyterlab-dev-mode | @krassowski | @meeseeksmachine

3.1.5#

(完整更新日志)

修复的错误#

此版本的贡献者#

(此版本的 GitHub 贡献者页面)

@echarles | @jupyterlab-dev-mode | @meeseeksmachine | @welcome

3.1.2#

(完整更新日志)

增强功能#

修复的错误#

维护和改进#

此版本的贡献者#

(此版本的 GitHub 贡献者页面)

@AnudeepGunukula | @blink1073 | @ellisonbg | @fcollonval | @goanpeca | @jasongrout | @jupyterlab-dev-mode | @krassowski | @meeseeksmachine | @welcome

3.1.1#

(完整更新日志)

修复的错误#

  • 恢复工作区时在页面标题中使用 appName (与 3.1.x 版本相对) #10724 (@bollwyvl)

维护和改进#

文档改进#

此版本的贡献者#

(此版本的 GitHub 贡献者页面)

@blink1073 | @bollwyvl | @goanpeca | @hbcarlos | @jtpio | @jupyterlab-dev-mode | @meeseeksmachine | @welcome

3.1.0#

(完整更新日志)

面向用户的更改#

  • 从 JupyterLab 3.1 开始,文件文档和笔记本具有使用 Yjs 共享编辑框架的协作编辑功能。编辑器默认情况下不是协作的;要激活它,请使用 --collaborative 标志启动 JupyterLab。请参阅 协作的完整文档。

  • 笔记本中的撤销/重做历史现在是文档范围的(跟踪所有单元格的更改);未来的版本将能够恢复每个单元格的撤销/重做行为。

  • 目录收到了多个新功能和设置,具体请参见用户文档

  • 调试器获得了许多改进,包括对在断点处评估代码和变量检查的基本支持。

  • 默认情况下不再自动添加右括号;可以通过菜单栏(设置 -> 自动关闭括号)或高级设置编辑器重新启用旧行为。

  • 引入了一个新的视觉指示器,用于突出显示自上次执行以来代码在编辑器中发生更改的单元格:一个 GIF,显示在编辑单元格后出现的视觉指示器。

  • 许多其他新功能已添加,如下所示。

新增功能#

已进行的增强功能#

已修复的错误#

维护和保养改进#

文档改进#

此版本的贡献者#

(此版本的 GitHub 贡献者页面)

@0618 | @achandak123 | @afonit | @afshin | @AgoCan | @agoose77 | @ainzzorl | @aiqc | @ajbozarth | @akx | @andrewfulton9 | @Ashish-15s | @blink1073 | @bollwyvl | @bsyouness | @cameron-toy | @consideRatio | @darcsoel | @davidbrochart | @dge8 | @dharmaquark | @dhirschfeld | @DianeHu | @dmonad | @echarles | @ellisonbg | @fasiha | @fcollonval | @flying-sheep | @fperez | @gereleth | @goanpeca | @Guillaume-Garrigos | @hbcarlos | @ian-r-rose | @isabela-pf | @jahn96 | @janjagusch | @jasongrout | @jayqi | @jess-x | @jhamet93 | @jluttine | @jochym | @JohanMabille | @jtpio | @jupyterlab-dev-mode | @krassowska | @krassowski | @legendb317 | @loichuder | @maartenbreddels | @manavendrasen | @manfromjupyter | @mariobuikhuizen | @marthacryan | @martinRenou | @mbektas | @meeseeksdev | @meeseeksmachine | @mellesies | @mgeier | @mlucool | @mnowacki-b | @mwakaba2 | @NPetz | @ognjenjevremovic | @ohrely | @palewire | @paravatha | @partev | @plan-do-break-fix | @robertpyke | @RodyLipson | @sarahspak | @saulshanabrook | @shngt | @skyetim | @smacke | @stadlerb | @SylvainCorlay | @telamonian | @tonyfast | @trallard | @vidartf | @vkaidalov-rft | @welcome | @yasmin-bb | @yuvipanda

v3.0#

请参阅 GitHub 上的 JupyterLab 3.0 里程碑,以获取完整的拉取请求和已关闭问题的列表。

v3.0.16#

完整更新日志

维护和保养改进#

v3.0.15#

完整更新日志

增强功能#

维护和保养改进#

  • [3.0.x] 移除对 Jupyter Packaging 的依赖 #10218 (@jtpio)

文档改进#

其他已合并的 PRs#

v3.0.14#

  • 清理浏览器检查 #10080

  • 放宽对 jupyter-packaging 的限制 #9998

v3.0.13#

  • 根据笔记本格式 4.5 添加单元格 ID (#10018)

  • 修复“为编辑器创建控制台”的标签 (#9794)

  • 使用 blob 在图像查看器中设置图像的 svg 源 (#10029)

  • [修复] 复制可共享链接命令 (#10021)

  • 澄清 overrides.json 文件在文档中的位置 (#9996)

  • 避免不必要的 npm 注册表请求 (#9974)

  • 修复 URL 和路径的转义 (#9978)

v3.0.12#

  • 修复 Safari 支持,修改目录的正则表达式 (#9962)

  • 修复 DocRegistry FileType 模式匹配 (#9958)

v3.0.11#

  • 修复:使用 process/browser 模块作为真正的 polyfill (#9636)

  • 修复目录扩展程序 markdown 中 HTML 注释的 bug (#9938)

  • 使目录扩展程序不重写所有笔记本标题 (#9932)

v3.0.10#

  • 修复外部扩展的监视模式 (#9915)

  • 扩展监视模式行为的错误修复 (#9889, #9861)

v3.0.9#

  • 移除先前的 file_to_run 逻辑。 (#9848)

  • 在生产最小化模式下启用缓存。 (#9834)

  • 移除自动切换到“移动”模式的功能,以及与移动模式相关的行为切换。 (#9832)

  • 修复恢复时断点的显示。 (#9828)

  • 更新 CI 脚本超时。 (#9825)

  • 修复 mimerender 测试示例并在 CI 中测试。 (#9820)

v3.0.8#

  • @jupyterlab/rendermime: 升级 marked 依赖以解决漏洞。 (#9809)

  • 修复服务测试。 (#9806)

  • 使 jupyter labextension build/watch 适用于自定义 jupyterlab 分发。 (#9697)

  • 向 webpack 请求添加哈希以启用缓存。 (#9776)

  • 更新 MANIFEST.in 以包含 package_data 文件。 (#9780)

  • 更正元数据和标签小部件之间标签的同步。 (#9773)

  • 修复模块名称中连字符的使用。 (#9655)

  • 添加缺少的 default_url 字段到示例。 (#9731, #9737)

v3.0.7#

  • 也为预构建扩展添加链接。 (#9702)

  • 移除关于 ipywidgets 的过时说明。 (#9707)

  • 修复构建命令中的调试标志处理。 (#9715)

  • 更新笔记本工具栏示例文档。 (#9705)

  • 使用 Path.resolve() 获取规范的大小写敏感路径名。 (#9709)

v3.0.6#

  • 监听服务器的 'restarting' 而非 'autorestarting'。 (#9674)

  • 在可用时使用 jupyterhub make_singleuser_app 混入。 (#9681)

  • 移除 jest 版本限制。 (#9632)

  • 禁用对 notebook server < 5.1 的大文件上传。 (#9628)

  • 预加载设置时忽略超时错误。 (#9629)

  • 升级扩展时自定义模板分支。 (#9630)

  • 重命名与模块冲突的变量。 (#9641)

  • 允许延迟检索文档(带 getter)。 (#9643)

  • 升级 html-webpack-plugin 以支持 webpack 5。 (#9651)

  • 修复 Safari 中 PDF 文件的查看问题。 (#9656)

  • 为 markdown 单元格中的所有标题添加目录条目。 (#9358)

  • 恢复在简单界面中为新启动器创建新浏览器选项卡的功能。 (#9664)

  • xeus-robot 添加到调试器文档中。 (#9661)

v3.0.5#

  • 启用大文件上传。 (#9616)

  • 修复 Windows 上 ?? 帮助的显示问题。 (#9617)

  • 更新应用程序和联合示例。 (#9586)

v3.0.4#

  • 在纯 js 中不使用 ??,因为它太新了。 (#9606)

  • 修复调试器对多个笔记本的处理。 (#9598)

  • 重构 labhub + CI。 (#9604)

v3.0.3#

  • 将 open_browser 移动到类的顶级配置。 (#9580)

v3.0.2#

  • 更好地管理内核消息队列,以防止乱序执行。 (#9571)

  • 修复面包屑链接。 (#9572)

  • 修复与 JupyterHub 的集成。 (#9568)

  • 修复空 CSV 文件的解析。 (#9557)

  • 使用树/表按钮显示调试器变量视图模式。 (#9502)

  • 更新最终 jlab 3 发布的教程。 (#9562)

  • 修复 upgrade_extension.py。 (#9551, #9550)

  • 更新 README 中的 Binder 链接,指向 3.0 Binder。 (#9549)

v3.0.1#

  • 修复在 Windows 上应用 jupyterlab.upgrade_extension 时出现的错误。 (#9546)

  • 改进升级脚本以添加样式设置。 (#9515)

  • 修复指向 GitHub 里程碑的错误链接。 (#9516)

  • 将贡献指南分为基于 Web 的和本地说明。 (#9540)

  • 在扩展教程中移除 --checkout 3.0。 (#9545)

  • 3.0 的文档更新。 (#9546)

  • 修复使用测试。 (#9547)

  • 移除终端可见的 1px 边框。 (#9548)

v3.0.0#

面向用户的更改#

无需使用 NodeJS 构建 JupyterLab 即可安装扩展#

在 JupyterLab 3.0 中,提供了一种新的推荐方式,即将扩展作为 Python pip 或 conda 包进行分发和安装。安装此类扩展无需重新构建 JupyterLab,也无需安装 NodeJS。以前将扩展作为 npm 包分发并需要重新构建 JupyterLab 的方式仍然可用。有关更多详细信息,请参阅文档

JupyterLab 界面支持多种语言#

JupyterLab 现在提供了设置用户界面显示语言的功能。有关更多详细信息,请参阅文档

新的可视化调试器#

JupyterLab 现在默认附带一个调试器前端,适用于支持新调试协议的内核。有关更多详细信息,请参阅文档

简单界面模式和移动端改进#

简单界面模式(以前是单一文档模式)现在更加简化。JupyterLab 现在支持在浏览器 URL 栏中显示正在使用的当前文件,类似于经典的 Jupyter Notebook。

目录现在是核心功能#

流行的目录扩展现在是 JupyterLab 核心的一部分。这个核心扩展使得查看笔记本和其他文档的大纲视图变得容易。

文件浏览器中的可视化过滤器#

文件浏览器现在有一个过滤器输入,它使用与命令面板相同的模糊匹配来过滤文件列表。

属性检查器移至右侧边栏#

JupyterLab 的默认界面现在左侧有系统范围的侧边栏窗格,右侧有与特定文档(例如调试器或笔记本属性检查器)交互的侧边面板。一如既往,您可以在左右侧边栏之间移动窗格(右键单击侧边栏图标,或在高级设置中更改)。

命令面板#

命令面板现在是一个浮动窗口,出现在 JupyterLab 工作区上方。这使用户能够快速调用命令,同时保持侧边栏关闭或切换侧边面板。命令面板可以通过调整高级设置中的默认值重新放置到侧边栏中。

Jupyter 服务器#

JupyterLab 3.0 现在依赖于 Jupyter Server,这是一个基于经典 Notebook 服务器的服务器部分的新 Jupyter 项目。请参阅迁移指南,将自定义笔记本配置迁移到 Jupyter Server。

开发者须知#

预构建扩展#

用户通常会使用预构建扩展,这些扩展是使用 JupyterLab 构建的带有静态资产的 Python 包。有关从头开始创建预构建扩展的工作流程,请参阅更新后的 APOD 教程。对于现有扩展,有一个新的 python -m jupyterlab.upgrade_extension 脚本可用于升级扩展。该脚本将更新相关依赖项并添加创建 Python 包的样板。对于已经包含 Python 包(通常是服务器扩展)的扩展,文件不会被覆盖,需要手动复制一些内容。请参阅示例,该脚本被大量使用。其中有两个突出显示的提交演示了如何升级服务器扩展。预构建扩展在下面的更改中也称为联邦扩展,因为它们使用了 Webpack 5 中的联邦模块功能。

  • 更好地处理同时提供预构建和源代码扩展的扩展。 (#9489, #9277)

  • 记录新的页面配置约定 (#9454, #9240)

  • 在预构建扩展中使用 stylemodule (#9460, #9459)

  • 更新 style-loader 和 mini-css-extract-plugin (#9451)

  • 对 js css 导入使用更明确的 stylemodule 键 (#9427, #9423)

  • 如果存在预构建包,则在构建或加载 jupyterlab 时忽略源包 (#9424, #9277)

  • 在扩展管理器中从 API 包含联合扩展 (#9390, #9367)

  • 在开发脚本中处理连字符并切换到 importlib (#9471)

  • 在构建核心应用程序时,将 jupyterlab 和 lumino 模块分块在一起 (#9359)

  • 在扩展管理器联合对话框中链接到文档 (#9327)

  • 联合扩展脚本:更改包名称逻辑 (#9326, #9320)

  • 如果未提供 requiredversion,则不报错。(#9321)

  • 恢复扩展管理器 (#9317)

  • 使用联合依赖的内置扩展 (#9310)

  • 更新升级脚本以将 labextension 用于 outputdir (#9306)

  • 要求“package”而不是“package/”,以便 webpack 激活共享 (#9300)

  • 设置标志后,在开发模式下启用联合扩展。(#9286, #9235)

  • 将 webpack 更新到 5.3.1 (#9245)

  • 将包安装信息添加到 labextension 列表和卸载输出 (#9244)

  • 重构联合扩展以允许包管理器元数据 (#9239)

  • 列出扩展管理器中的动态扩展 (#9236, #8804)

  • 拒绝卸载联合扩展。(#9232, #9230)

  • 允许对联合扩展进行自定义 webpack 配置 (#9224, #9175)

  • 使用新的 webpack 5“auto”公共路径 (#9062, #9043)

  • 将 webpack 升级到 5.0rc1 (#9091)

  • 更新升级脚本,不将开发依赖替换为 caret (#9090)

  • 将 webpack 升级到 5.0rc2 (#9103)

  • 修复 watch 模式 (#9101, #9089)

  • 升级到 webpack 5 (#9148)

  • 修复 watch 模式 (#9146, #9116)

  • 文档:修复 watch 命令 (#9163)

  • 文档:更新扩展开发指南中的 jupyter lab 命令 (#9165, #)

  • 更新发布测试脚本以同时安装联合扩展 (#9166, #8818)

  • 删除 @types/webpack(随 webpack 5 附带)(#9167)

  • 在迁移指南中提及 jupyter-packaging 和 cookiecutter (#9199)

  • 在教程中安装 jupyter_packaging (#9190, #9174)

  • 处理链接包和本地安装扩展的共享 (#9213, #9203)

  • 清理联合扩展安装和升级 (#8974)

  • 为构建扩展添加 --development--source-map 标志。(#8961, #8952)

  • 添加扩展升级脚本 (#8950, #8870, #8869)

  • 改进禁用扩展的处理 (#8944, #7481)

  • 将开发模式添加到 lab 扩展构建脚本 (#8918)

  • 从 webpack 编译中提取联合扩展加载数据 (#8913, #8842)

  • 更新 labextension build cli 以包含用于设置 webpack publicpath 选项的参数 (#8911)

  • 更新 apod 扩展教程 (#8905, #8859)

  • 让 webpack 自动确定所需的依赖版本 (#8875)

  • 修复联合扩展的重建并将发现元数据添加到 schema (#8874)

  • 修复 publicpath 的构建问题 (#8871)

  • 将 buildutils 拆分为 buildutils 和 builder (#8863, #8857)

  • 根据页面配置动态设置生成扩展中的公共路径 (#8861, #8827)

  • 清理联合扩展 cli (#8855, #46)

  • 修复应用程序示例。(#8852)

  • 将 lumino 依赖添加到 buildutils,以便 phosphor webpack 别名工作 (#8850, #8822)

  • 添加另一个联合示例包。(#8847, #5)

  • 修复联合示例 (#8846)

  • 向 publicpath 添加斜杠 (#8845)

  • 更新 webpack 5 的 watch 插件 (#8841, #8705)

  • 将 mime 扩展添加到 webpack 配置 (#8825)

  • 修复 labextension build (#8821)

  • 修复布尔错误 (#8819)

  • CI 和扩展开发者清理 (#8810)

  • 将扩展添加到共享模块列表 (#8808)

  • 模块联邦实现 (#8802)

  • 修复示例并更新 webpack (#8779, #8767)

  • 添加扩展构建脚本 (#8772)

  • 在 staging 中保留现有的 webpack 文件 (#8673)

  • 解决 vega 构建错误的工作方法 (#8666)

  • 添加缺失的 polyfill (#8664, #8660)

  • 将 url 添加为 apputils 的 polyfill 依赖项。(#8659, #8657)

  • 更新到 webpack 5b21 (#8651)

  • 修复示例并分解为单独的构建 (#8647, #8646)

  • 为 url-loader 添加 cur 扩展 (#8634)

  • 模块联邦实验 (#8385)

Jupyter 服务器#

JupyterLab 3.0 使用 Jupyter 服务器而不是经典的 Notebook 服务器。现有服务器扩展将进行 shim 兼容,但建议更新扩展以使用 jupyter_server

  • 更新服务器、nbclassic、pytest fixtures (#9478, #9473)

  • 添加 jupyter_core 作为依赖项 (#9251)

  • 将 exposeappinbrowser 和 quitbutton 值放回页面配置中 (#9262)

  • 更新 favicon 处理 (#9145, #9138)

  • 使 JupyterLab 作为旧的 notebook 服务器扩展运行 (#8956, #8943)

  • 修复了 static_url_prefix,添加了经典 notebook 标志和别名,并提升了 jupyterlab_server 依赖项 (#8910)

  • 使用 jupyter_server 提供的 favicons (#8898, #8794)

  • 在 jupyter_server 上运行的同时加载 app_version (#8889, #8812)

  • 恢复 labhubapp (#8806, #8704)

  • Jupyterlab 作为服务器扩展 (#7416)

国际化#

JupyterLab UI 现在支持翻译。

  • 清理翻译扩展的 tsconfig (#9357)

  • 添加选项以向字符串添加前缀 (#8946)

  • 添加一个独立的翻译管理器以在插件外部使用 (#8945)

  • 添加缺失的字符串修复 (#8888)

  • 添加 crowdin 徽章 (#8823)

  • optionsmap 更改为元组数组,以便能够本地化选项 (#8820)

  • 本地化 jlab 中的字符串 (#8800)

  • 添加翻译包 (#8681)

可视化调试器#

  • 调试器侧边栏 (#9452)

  • 在调试器变量查看器中处理多个作用域 (#9346)

  • 从调试器用户文档中删除 ptvsd 依赖项 (#9344)

  • 如果内核无法启动调试器,则抛出错误 (#9426)

  • 替换调试器中的 switch (#9432, #9354)

  • 将 terminatedebuggee 设置为 false (#9362)

  • 在调试器侧边栏中添加缺失的返回签名 (#9088)

  • 修复调试器中不可见的断点 (#8908)

  • jupyterlab/debugger PR #527 移植到 JupyterLab (#8878)

  • 将 jupyterlab 调试器添加到核心 (#8747, #75)

目录#

  • 更新目录 UI (#9275)

  • 为目录添加测试 (#8757, #8558)

  • 将目录更改为使用 labicon (#8692, #8557)

  • 将目录中笔记本折叠行为的设置注册表更改为信号 (#8601)

  • toctoc-extension 中删除 husky 依赖项 (#8571)

  • 将 toc 扩展合并到核心 (#8538)

其他#

  • 在重新连接时解决“restarting”状态 (#9484, #9008)

  • 升级 typedoc (#9483)

  • 更新到 typescript 4.1.3 (#9476)

  • 如果没有运行中的内核或终端,则禁用“全部关闭”按钮 (#9468, #48)

  • 使代码控制台插件的一些依赖项可选 (#9467)

  • 要求 tornado>=6.1.0 (#9453)

  • 在 binder 上锁定 tornado>=6.1 (#9449)

  • 修复一些 UI 组件依赖项警告 (#9448)

  • 修复浏览器测试 (#9447)

  • 支持文件浏览器中的小写搜索查询 (#9446)

  • 默认设置选项卡菜单标题 (#9445)

  • 添加源扩展和预构建扩展之间互操作性的测试 (#9443, #9333)

  • 使 itreepathupdater 在文件浏览器插件中可选 (#9442)

  • 使 ilabshell 在文件浏览器工厂插件中可选 (#9439)

  • 减少 yarn 超时 (#9419)

  • 删除 tree-resolver 插件中未使用的 requires (#9412)

  • 更新 @types/react 到 ^17.0.0 (#9409)

  • 创建 JS 模块的 CSS 依赖图 (#9407)

  • 清理 examples/ 中未使用的 python 导入 (#9404)

  • 在继续响应时清除模型和信号 (#9402)

  • 清除输出时修复滚动位置 (#9400, #9331)

  • 删除初始额外的 _onmimetypechanged 调用 (#9394)

  • 提升 eslint 开发依赖项 (#9391)

  • 手动重启时重新连接到内核 (#9388)

  • 删除内存使用状态栏项 (#9386, #9363)

  • 将用户引用从单文档模式更改为简单界面(模式)(#9380, #9378)

  • 在重启操作时重新连接到内核 (#9371)

  • 在基本 webpack 配置中为 path 添加 polyfill (#9368, #9345)

  • 添加重新连接到内核主菜单项和笔记本实现。(#9356, #9353)

  • 更新 blueprint 依赖项 (#9350)

  • 默认以 sys-prefix 为目标,但允许指定用户 (#9347)

  • 消除急切共享 (#9348, #9343)

  • 恢复在单文档模式下在新选项卡中打开 (#9334, #9323)

  • 仅急切共享核心包及其依赖项 (#9332, #9329)

  • 将表达式更改为“服务器不可用或无法访问”而不是“服务器未运行” (#9325)

  • 将发布和使用 npm 包之间的暂停时间增加到 5 分钟 (#9319)

  • Lint 扩展管理器 (#9318)

  • 重构构建约定 (#9312, #9304)

  • 使 ilabshell 在启动器扩展中可选 (#9305)

  • 更新 binder 以使用 conda,这允许我们安装自己的 nodejs。(#9298)

  • 将单文档切换移动到状态栏 (#9296)

  • 为创建进程添加 utf-8 编码参数 (#9294, #8600)

  • 修复 github prs 中的 linting 错误 (#9293)

  • 启用 mimedocument 以使用可选的特定渲染器 (#9291)

  • 发布包后暂停,以便 npm 有时间更新其列表 (#9288)

  • 侧边栏宽度 (#9287, #8938)

  • 在开发者指南中为希望测试自己分支的人提供 Mybinder.org 链接 (#9284, #9255)

  • 删除 ensure-max-old-space 脚本 (#9282)

  • 修复拒绝卸载联合扩展的使用测试 (#9281, #9280)

  • 添加新的菜单 shell 区域 (#9274)

  • 修复 #9255 (#9273, #9255)

  • 修复 jupyterlab builder 中的主题路径 (#9272)

  • 将文档模式切换移动到单独的插件 (#9270)

  • 修复菜单栏中单文档模式切换的样式 (#9267)

  • 使 PDF 查看器扩展识别 PDF 文件 (#9266)

  • 修复 markdown 图像中的相对路径处理 (#9264, #9253, #9243)

  • 将 jupyterhub 添加到页面配置 (#9256, #9248)

  • 更新到 webpack-cli 4.1.0 (#9254)

  • 升级到 react 17 (#9227)

  • 扩展文档 (#9221)

  • Lint 修复 (#9218)

  • 更新更改日志 (#9217)

  • 更新提交者列表 (#9215)

  • 升级到 TypeScript 4 (#8883)

  • 文件浏览器筛选器 (#8615)

  • 更新 yarn.lock。(#9095)

  • 在页面重新加载时处理处于繁忙状态的笔记本内核 (#9077)

  • 使用 span 元素保持省略号 (#9075, #9074)

  • 添加 codemirror 单例插件 (#9067)

  • 支持终端 websocket 通信的令牌身份验证 (#9080)

  • 不为主区域小部件特殊处理逻辑。(#9094)

  • 为检查器主区域小部件设置图标 (#9093)

  • 修复主区域小部件图标的打开选项卡处理 (#9092, #126)

  • 对完成筛选结果进行排序 (#9098, #9048, #9048)

  • 像工具栏一样,为菜单添加悬停滚动。(#9097)

  • 添加 codemirror 简单模式插件 (#9123)

  • 创建 codeql-analysis.yml (#9119)

  • 创建 ensurevimkeymap 函数 (#9161)

  • 增加文档字符串弹出工具提示的大小 (#9134, #9085)

  • 添加 2.x -> 3.x 迁移指南 (#9162, #9118)

  • 为断开连接或未知内核状态添加离线圆形图标 (#9172)

  • 在 sphinx 文档中包含 js api (#9179)

  • 更新 rtd 构建 (#9182)

  • 允许替换默认的自动补全渲染器 (#8930, #8926)

  • 更新 beta 版依赖项 (#8921)

  • 测试清理 (#8894)

  • 在内容高度更改时调整隔离 iframe 的大小 (#8909, #5696)

  • 将最低 python 版本更新到 python 3.6。(#8903)

  • 更新 yarn.lock (#8862)

  • 使 class dsvmodel 的一些属性和方法在类外部可访问。(#8849, #8848)

  • 在 websocket url 中不使用令牌参数 (#8835, #8813)

  • 在 jupyterlab 中使用 blocked/allowed 扩展命名 (#8799, #8533)

  • 为文件浏览器中的 pdf 创建图标 (#8791)

  • 在工作区应用程序上正确设置 base_url (#8788)

  • 将 isessioncontextdialogs 传递给 notebookwidgetfactory (#8778)

  • 更新 vega 示例中的编码版本。( #8766)

  • 升级 codemirror (#8739)

  • 重命名 logconsole:nboutput 插件 ID (#8729)

  • 将 celltags 插件 ID 重命名为 @jupyterlab/celltags (#8728)

  • 切换内核时出现未捕获的 TypeError (#8727)

  • 将检查器 detail_level 更改为 1 (#8725)

  • 更改主菜单的级别,允许应用程序菜单位于文件的左侧 (#8719)

  • 处理异步 browser_check 中的错误 (#8717, #8709)

  • 将 mehmet 和 andrew 添加到贡献者名单,修复姓氏顺序 (#8712)

  • 更新 puppeteer 版本至 v4.0.0 (#8707)

  • 更新单例包,以包含至少每个带有“tokens.ts”文件的包 (#8703)

  • 更新指向 jupyter 贡献指南的链接 (#8697, #8682)

  • 添加了从标题栏上下文菜单删除文档的功能 (#8670)

  • 将 codemirror html 树和相关 css 移动到 shadow dom (#8584)

  • 在终端中支持 macoptionismeta 选项 (#8573, #4236)

  • 使输出基线与提示对齐 (#8561, #8560)

  • 对单元格提示和代码使用相同的字体系列 (#8553, #8552)

  • 重建前提示保存文件 (#8526, #7372)

  • 将 json5 有效负载更改为 json 有效负载 (#8225)

  • 将笔记本日志记录插件移动到 notebook-extension 包 (#7830)

  • 初步添加滚动到单元格方法 (#6818)

  • 在用户文档和贡献指南中添加调试器部分 (#8977)

单文档模式和移动增强#

  • 使单文档标题小部件适用于非主区域小部件的小部件 (#9078)

  • 在单文档打开菜单的顶部添加边框 (#9096, #9065)

  • 在菜单栏中为单文档模式实现一个简单的复选框。( #9100, #8292)

  • 跟进 #9100:使 sdm 开关美观、易于访问 (#9104)

  • 改进了单文档模式的 URL 方案、状态和交互 (#8715)

  • 添加工作区 mime 处理程序并手动加载/保存工作区 (#8691)

  • 修改 ansi 颜色修复 (#8555, #8554)

  • 改进单文档模式以解决经典笔记本使用案例 (#8531)

  • 逐步改进 jupyterlab 移动用户体验 (#8456)

基准测试(现为单独的存储库)#

  • 将基准测试移至单独的 repo (#8795)

  • 修复基准测试示例中差一错误 (#8785)

  • 基准测试参数可配置并增加超时 (#8786)

  • 基准测试:新的错误输出 + 更大的超时 + 子文件夹中的笔记本定义 (#8783)

  • 添加比较基准测试的功能 (#8737)

  • 基准测试笔记本加载 (#8020)

错误修复#

  • 修复 lerna 警告 (#9061)

  • 修复文档构建 (#9063, #9060)

  • 使文本设置菜单工作 (#9066, #9042)

  • 修复 codemirror-extension 包的 lint 检查 (#9087)

  • 修复示例 ci (#9150)

  • 测试:清理 eslint jest 规则和文件 (#9125)

  • 切换到不同的 murmurhash2 实现以处理 unicode 字符 (#9158)

  • 在 release_test.sh 中的 mktemp 命令中添加更多 xxx (#9131)

  • 将 setup.py 和 pyproject.toml 添加到 manifest.in (#9129)

  • Urlext.join 无法处理相对路径中的冒号 (#9169, #9159)

  • 删除绝对文档搜索窗格宽度 (#9180, #9178)

  • 仅在实际更改时更新会话和内核管理器数据。( #9189, #9133)

  • 更新记录的元数据以更好地与 jupyter 协议对齐 (#9206)

  • 修复命令面板的焦点问题 (#9210, #9121)

  • 更新拖动文件的 mimetype (#8965, #8934)

  • 修复解释扩展入口点的注释。( #8964)

  • 安全文档:链接到 jupyter-server 而不是 jupyter-noteboook (#8954)

  • 修复扩展开发文档中的标题 (#8948)

  • 修复 apod 教程中的链接语法 (#8942)

  • 修复 codemirror 文本颜色与深色 jupyter 主题冲突的问题。( #8919, #8792)

  • 卸载扩展时,删除扩展路径,而不是整个扩展目录 (#8904)

  • 标头 'content-type' 不应被覆盖 (#8891, #8890)

  • 确保添加或删除单元格标签实际上替换了标签列表,以便为单元格元数据发出更改信号 (#8751, #8534)

  • 修复确保包和 repo (#8749, #8748)

  • extension_points.rst 中添加逗号以修复代码语法错误 (#8745)

  • 修复:贡献指南链接不同步 (#8665)

  • 修复 api 文档链接 (#8624, #8616)

  • 修复教程中关闭面板后已处置小部件的处理 (#8623)

  • 修复开发扩展文档中的小错字 (#8622)

  • 手动状态重置时重新加载应用程序 (#8621)

  • 移除工作区重置时多余的页面重新加载 (#8619)

  • 移除应用程序 shell 中多余的控制台日志 (#8618)

  • 修复扩展教程中的小错字 (#8613)

  • 修复扩展文档中的小错字。( #8551)

  • 修复安装文档中的小错字 (#8550)

  • 修复更多 linting 错误 (#8454)

  • 内核重启时重新连接 websocket。( #8432)

v2.2.x#

v2.2.0#

有关已关闭的拉取请求和问题的完整列表,请参阅 GitHub 上的JupyterLab 2.2里程碑。

2020 年 7 月#

我们非常高兴本月将 Eric Charles 添加到核心团队!(#8513)

面向用户的更改#

  • 内核终止或重启时,单元格无法再执行。内核指示器上这些事件有一个新状态 (#8562, #8477)

  • 为文件浏览器窗口中的隐藏文件和文件夹添加了视觉线索 (#8393)

  • 启用工具栏水平滚动以改善移动体验 (#8417)

  • 改进了文件编辑器的右键上下文菜单 (#8425)

  • 合并单元格时合并单元格附件 (#8427, #8414)

  • 使用 nbresuse 在状态栏中添加高内存使用警告的样式 (#8437)

  • 添加了对 Python 3.10 版本的支持 (#8445)

  • 支持 SVG 实时编辑并更新渲染 (#8495, #8494)

面向开发者#

  • 指定我们推荐 TypeScript 而不是 JavaScript 来开发扩展 (#8411)

  • 延迟加载 codemirror 主题样式表。( #8506)

  • 将链接有效期增加到一周 (#8402)

  • 添加关于私有 npm 注册表使用的文档 (#8455, #7827, #7660)

  • 在 readme 中添加功能请求模板 + 略微重组 (#8467)

  • 在 extension-examples repo 中添加 react 示例的链接 (#8474)

  • 更新 whitelist/blacklist 的文档 (#8540)

  • 改进文档中的白名单图描述 (#8517)

错误修复#

  • 错字:将 extensino 修正为 extension (#8512)

  • 关闭正确的选项卡 (#8529)

  • 删除未使用的 css 规则 (#8547, #8537)

  • 修复入门文档中的小错字,代理 (#8549)

  • 修复 CI 徽章上的链接 (#8603)

  • 简化了多光标退格代码 (#8523)

  • 修复文件浏览器中 recent breaking changes to normalizepath (#8383, #8382)

  • 修复监视模式并添加 ci 测试 (#8394)

  • 解决 CI 故障 (#8433)

  • 修复依赖图脚本中的 lint 错误 (#8451)

  • 修复 github actions 中出现的 lint 警告 (#8452)

  • 解决 CI 使用测试超时 (#8464)

  • 将 chokidar 添加到 dev_mode/package.json (#8481)

  • 修复自动链接 (#8496)

  • 更新磷光体别名 (#8498)

  • 修复 Python 中扩展没有版本元数据时的默认返回值 (#8430)

  • 更新 read the docs 上的安装文档以与 repo 上的 readme 文件匹配 (#8386)

  • 作为扩展启动时处理 quit_button (#8486, #8483)

  • 添加 worker-loader (#8593, #8587)

v2.1.x#

v2.1.2#

  • 修复第三方扩展的图标侧边栏高度 (#8333)

  • 更严格地限制 JupyterLab 服务器要求 (#8330)

  • 删除后将单元格滚动到视图中 (#8287)

  • 在文件浏览器中设置文件类型的数据属性 (#8275)

v2.1.1#

  • 固定 puppeteer 以修复 ci (#8260)

  • 修复无会话文件的“另存为”功能 (#8248)

v2.1.0#

2020 年 4 月#

有关已关闭的拉取请求和问题的完整列表,请参阅 GitHub 上的JupyterLab 2.1里程碑。

面向用户的更改#

  • 默认情况下在左侧边栏中显示扩展管理器。用户在使用前需要确认扩展管理器中的免责声明。( #8050, #8145)

  • 为扩展管理器添加了 blacklist and whitelist support <extension_listings> (#7989)

  • 自动链接笔记本输出文本中的 URL (#8075, #7393)

  • 在笔记本工具栏中添加了“重启内核并运行所有单元格…”按钮 (#8024)

  • 添加了从 Markdown 预览打开 Markdown 编辑器的上下文菜单项 (#7942)

  • 支持 Node.js 10+ (#8112, #8083)

  • 添加了一个命令,用于在编辑器中用文本替换选区(如果没有选区则插入)。这可以像下面这样分配一个键盘快捷键。我们还添加了一个命令,用于按顺序执行一系列命令并运行第一个启用的命令。( #7908) 这是一个在当前活动的笔记本编辑器中插入文本的键盘快捷键

    {
      command: "notebook:replace-selection",
      selector: ".jp-Notebook",
      keys: ["Ctrl L"],
      args: {text: "lambda x: x"}
    }
    

    这是一个在当前活动的控制台、文件编辑器或笔记本的编辑器中插入文本的键盘快捷键

    {
      command: "apputils:run-first-enabled",
      selector: "body",
      keys: ["Ctrl L"],
      args: {
        commands: [
          "console:replace-selection",
          "fileeditor:replace-selection",
          "notebook:replace-selection",
        ],
        args: {text: "lambda x: x"}
      }
    }
    

面向开发者#

  • NotebookWidgetFactory 现在是一个插件,因此可以被覆盖 (#8066, #7996)

  • LabIcon 进行了许多改进:与所有 SVG 加载器一起工作,提高性能,修复扩展菜单问题 (#8125)

  • 将标题应用程序区域更改为盒式面板,这意味着如果其子项设置了最小高度,则标题区域将显示 (#8059, #7279)

  • JupyterLab 的自定义上下文菜单现在在带有 data-jp-suppress-context-menu 属性的 DOM 元素的任何后代上都被禁用 (#7877, #7670)

错误修复#

  • 修复重新加载时属性检查器恢复问题 (#8114)

  • 增加 yarn 的超时时间 (#8104, #8102)

  • 修复空字符串的查找和替换 (#8100, #8098)

  • 聚焦搜索叠加层时选择搜索文本 (#8073, #7932)

  • 修复将带有空格的图像附加到 Markdown 单元格的问题 (#8095)

  • 通过使用 Python 包分发 .yarnrc 配置来修复构建错误 (#8045)

  • 限制设置注册表数据连接器中的 fetch 请求 (#7927)

  • 消除笔记本输出行之间的间隙 (#7832, #7760)

v2.0.2#

2020 年 4 月#

有关已关闭的拉取请求和问题的完整列表,请参阅 GitHub 上的JupyterLab 2.0.2里程碑。

  • 修复记录计时时单元格执行问题 (#8057, #8056)

  • 修复编辑器的字体设置 (#8004, #7910)

  • 避免加载笔记本时冗余的检查点调用 (#7926, #7889)

  • 面向开发者:通过不包含 undefined 使内核 IFuture.done 类型更正确 (#8032)

v2.0.0#

2020 年 2 月#

以下是本次发布的一些亮点。有关已关闭的拉取请求和问题的完整列表,请参阅 GitHub 上的JupyterLab 2.0里程碑。

面向用户的更改#

  • 笔记本单元格标签的新用户界面 (#7407, #7786)

  • 在文件浏览器中将鼠标悬停在文件上时显示文件信息 (#7485, #7352)

  • 支持在笔记本中搜索输出 (#7258)

  • Ctrl Shift .Ctrl Shift , 快捷键分别将焦点移动到主区域的下一个和上一个标签栏 (#7673)

  • 笔记本中的 Shift HomeShift End 快捷键分别选择从当前单元格到笔记本顶部或底部的所有单元格 (#7177)

  • 新笔记本的内核选择对话框中明确的“无内核”按钮 (#7647)

  • 笔记本 recordTiming 高级设置,用于控制是否将执行计时信息存储在笔记本文件中 (#7578)

  • 添加了“选择当前运行或上次运行的单元格”命令(需要将笔记本 recordTiming 高级设置设置为 true)(#7551)

  • Codemirror lineWiseCopyCut 高级设置,用于控制没有选区时复制/剪切键盘快捷键的行为 (#7842)

  • 更新了命令面板和属性检查器侧边栏图标和用户界面 (#7577, #7038, #7733, #7732, #7718, #7686)

  • 文件浏览器上下文菜单中的“新建文件”和“新建 Markdown 文件”项 (#7483, #4280)

  • 文件菜单中的“下载”项 (#7480)

  • 笔记本内核菜单中的“重启内核并运行到选定单元格”项 (#7789, #6746)

  • 在扩展管理器中,“启用”按钮现在仅对已安装的扩展显示 (#7482)

  • 现在可以通过点击对话框外部来关闭对话框 (#7885, #3784)

  • documentsearch:startWithReplace 命令,用于打开带替换功能的文档查找叠加层。目前没有默认的键盘快捷键,但可以在高级设置中分配自定义键盘快捷键。( #7725)

  • # 添加到 CSV Viewer 分隔符选项 (#7367, #6324)

  • JSON 查看器现在只显示数组和空对象的结构提示,以获得更简洁的体验 (#7227)

  • 键盘快捷键定义中可选的平台感知键盘快捷键字段 linuxKeysmacKeyswinKeys (#7589)

    {
      command: "application:toggle-mode",
      selector: "body",
      linuxKeys: ["Ctrl Shift M"], // only linux
      macKeys: ["Cmd Shift Z"], // only mac
      winKeys: ["Ctrl Shift B"], // only windows
      keys: ["Accel Shift U"] // default shortcut
    }
    
  • 添加了 jupyter lab clean 的选项,以清理构建的特定部分,例如 --extensions--settings--static--all (#7583, #6734)

  • 移除了 vega 4 和 vega-lite 2 渲染器(vega 5 和 vega-lite 4 默认包含在 JupyterLab 中)。这些旧版渲染器可能通过自定义扩展提供 (#7650, #7523, #7658)

  • JupyterHub 用户应使用 c.Spawner.default_url = '/lab' 设置,而不是已弃用且现已移除的 labhubapp (#7724)

面向开发者#

请参阅 extension_migration 以获取有关将扩展迁移到 JupyterLab 2.0 的帮助。

向后不兼容的更改#

  • @phosphor 依赖项切换到 @lumino。(#7582, #7534, #7763, #7762, #7595)

  • 从 coreutils 中分解出 settingsregistrystatedb 包 (#7681, #7615)

  • 重构服务架构(会话、内核、终端)。在这些更改中,ClientSession 重命名为 SessionContextIKernelConnection.connectToComm 方法被 IKernelConnection.createCommIKernelConnection.hasComm 方法替换。(#7252, #7674, #7820, #7694, #7690, #7682)

  • 升级到 TypeScript 3.7 (#7522)

  • 从 coreutils 中移除 polling,转而使用 @lumino/polling (#7617)

  • 核心包中的 TypeScript 严格空值检查 (#7657, #7607)

  • 更新状态数据库列表方法以基于命名空间匹配进行查询。(#7742, #7257)

  • 解决 2.0 的代码待办事项和弃用项 (#7720, #7724)

  • 更新控制台面板跟踪小部件 (#7705, #7726, #7648, #7645)

  • 更新贡献指南以要求 Node v12+ (#7479)

  • Running 侧边栏扩展的新 API (#6895, #6876)

  • 统一 LabIcon 下图标处理的清理 (#7192 #7700, #7765, #7767, #7800, #7846, #7859, #7864, #7886)

其他更改#

  • 新的属性检查器用于显示当前选定主区域小部件的属性 (#7665, #7664, #7718, #7686)

  • 允许启动器项目使用元数据 (#7654, #7652)

  • 允许默认文件浏览器手动恢复。(#7695, #4009)

  • 升级捆绑的 yarn 到 1.21.1 (#7691, #7692)

  • 使会话对话框可配置 (#7618, #7616)

  • 支持瞬态编辑器配置 (#7611, #7295)

  • 可选地强制打开新浏览器标签页 (#7603, #7602)

  • 更新核心依赖项(例如,codemirrorxterm.jsmarkdownfontawesome 等)(#7590, #7194, #7326, #6479, #7769)

  • ui-components 添加 storybook (#7588, #6799)

  • 添加明确的文档,鼓励人们重用 lab 组件 (#7543)

  • 为本地安装的 labextensions 启用 TypeScript 源映射以便调试 (#7541)

  • 向文档添加 UseSignal 示例 (#7519)

  • 向内核选项添加 env 属性 (#7499)

  • 添加 kernelspec 元数据 (#7229, #7228)

  • 允许剪贴板数据使用不同的 MIME 类型 (#7202)

  • 向 apputils 添加密码对话框 (#7855)

  • 将 phosphor 包别名为 lumino,以便为 phosphor 提供弃用期 (#7893)

  • 在 ui-components peerdependencies 中匹配 react 版本 (#7794)

  • 修复 lint-staged 在 Windows 和 Mac 上的问题 (#7784)

  • 更新 Node 环境的 websocket 解决方法 (#7780, #6934)

  • 修复链接扩展的处理 (#7728, #6738)

  • 修复预发布版和支持多个 JupyterLab 主要版本的扩展的兼容性检查 (#7723, #7241, #7919)

  • 让 update-dependency 了解更多的范围说明符,并使其采用任何标签的当前范围 (#7709)

  • 增加对顶部区域项目赋予排名的支持 (#7278)

  • 将所有选项应用于初始 JupyterLab 应用程序实例 (#7251)

错误修复#

  • 文件浏览器上下文菜单中的“复制可共享链接”现在在 JupyterHub 中正常工作 (#7906)

  • 更新单元格和控制台示例中的 Mathjax CDN (#7680)

  • 恢复 ensure-max-old-space,因为 Node 12+ 具有更好的默认内存上限 (#7677, #7675)

  • 解决默认文件浏览器和树形 URL 之间的竞争条件。(#7676, #4009)

  • 修复代码编辑器刷新处理 (#7672, #7671)

  • 以编辑模式启动新笔记本 (#7666, #6731)

  • 使用一致的 React 版本 (#7661, #7655)

  • 向 nbconvert-css 添加滚动条样式 (#7653)

  • 当相应的笔记本关闭时,关闭输出视图 (#7633, #7301)

  • 修复了新命令面板图标不正确的白色背景 (#7609, #7577)

  • 阻止为已禁用的插件获取设置 (#7147)

  • 在计时元数据更改时,确保信号触发 (#7576)

  • 防止 Vega 渲染器中的内存泄漏 (#7564)

  • 处理单元格销毁时的单元格执行取消 (#7555, #7554)

  • 修复 Windows 上下拉选项样式问题 (#7513)

  • 在检查元素类型时,确保标签链接到控件 (#7458)

  • 优化日志控制台消息的用户体验 (#7448, #7444, #7443)

  • 修复多光标退格 (#7401, #7205)

  • 当非笔记本标签页激活时,重置日志显示和计数 (#7334, #7325)

  • 通过解决 Safari 错误来修复 Safari 多个标签页的问题。(#7316, #6921)

  • 当设置了下载属性时,跳过链接上的自定义点击行为 (#7311, #5443)

  • 修复上下文菜单命中测试以处理 SVG 节点。(#7242, #7224)

  • 修复 IPython.display 渲染的锚点目标属性被覆盖的问题 (#7215, #6827)

  • 修复树视图中的文件浏览器位置 (#7155)

  • 阻止 docmanager-extension 中过多的 fetch 调用 (#7879, #7874)

  • 确保文件编辑器中 Shift Tab 缩进快捷方式正常工作 (#7865)

  • 修复使用 documentsearch 时意外跳转到最后一个搜索结果的问题 (#7835)

  • 修复 HTML 查看器刷新问题 (#7824, #7552)

  • 修复使用 IPython.display.image 居中对齐图像的问题 (#7798)

  • 设置编辑器更改应触发应用程序脏状态 (#7774, #7757)

  • 将 vega 从“devDependencies”移到“dependencies” (#7699, #7689)

  • 手动恢复默认文件浏览器。(#7695, #4009)

  • app_dir'' 时,使用默认的 app_dir (#7268, #7264)

v1.2.0#

2019 年 10 月 29 日#

以下是本次发布的一些亮点。有关已关闭的拉取请求和问题的完整列表,请参阅 GitHub 上的 JupyterLab 1.2.0 里程碑。

面向用户的更改#

  • 使用 Shift Home 从当前单元格选择到笔记本顶部,使用 Shift End 选择到笔记本底部 (#7336, #6783)

  • 添加日志控制台扩展以显示未处理的消息和其他活动 (#7318, #7319, #7379, #7399, #7406, #7421)

  • 允许在 JupyterLab 之外指定 npm max-old-space 选项 (#7317)

  • 仅在 JSON 树视图中显示数组和空对象的节点结构 (#7261)

  • 通过不为发布构建 JavaScript 源映射,使分发包更小。(#7150)

  • 增加对粘贴单元格附件和从文件浏览器拖动附件的支持 (#5913, #5744)

  • 添加新的 registry 配置参数,以便在构建时覆盖默认的 yarn 存储库 (#7363, #7109, #7249, #7248)

面向开发人员#

  • 将 Markdown 渲染器 (marked) 更新到 0.7.0 (#7328)

  • 移除 datagrid 的单例模式,允许扩展使用更新的版本 (#7312)

  • 向 kernelspec 信息添加元数据 (#7234)

  • 允许剪贴板数据使用不同的 MIME 类型 (#7233)

  • 为工具栏按钮添加内联 svg 图标支持 (#7232)

  • 添加 PageConfig 函数以查询插件是否延迟或禁用 (#7216)

  • 允许为 nbformat.ierror 创建渲染器 (#7203, #7193)

  • 重构 fileeditor-extension 以实现模块化 (#6904)

  • 向单元格添加执行计时 (#6864, #3320)

错误修复#

  • 修复 file-browser-path 查询参数 (#7313)

  • 当设置了下载属性时,跳过链接上的自定义点击行为 (#7323)

  • 修复 Safari 中打开多个浏览器标签页的问题 (#7322)

  • 修复 SVG 图标上的上下文菜单 (#7263)

  • 修复 IPython.display 渲染的锚点目标属性被覆盖的问题 (#7231)

  • 修复多光标退格 (#7205, #7401, #7413)

  • 修复多光标单元格拆分 (#7207, #7417, #7419)

v1.1.0#

2019 年 8 月 28 日#

以下是本次发布的一些亮点。有关已关闭的拉取请求和问题的完整列表,请参阅 GitHub 上的 JupyterLab 1.1.0 里程碑。

面向用户的更改#

  • jupyter lab build 现在有一个 --minimize=False 选项,可以在不进行最小化的情况下构建以节省内存和时间 (#6907)

  • 修复工作区重置功能 (#7106, #7105)

  • 恢复“raises-exception”单元格标签的行为 (#7020, #7015)

  • 添加设置以覆盖主题字体大小 (#6926)

  • 接受查询参数以可选更改文件浏览器位置 (#6875)

  • 在控制台中按 Escape 键应退出编辑模式 (#6822)

  • 修复 Google Chrome 中的文件浏览器下载问题 (#6686)

  • 使覆盖默认小部件以查看文件成为可能 (#6813, #4048)

  • 支持安装同一扩展的多个版本 (#6857)

  • 支持 JupyterHub 1.0 的 JupyterHub 服务器名称 (#6931)

  • 添加文档以帮助用户在创建问题之前诊断问题 (#6971)

  • JupyterLab conda-forge 包现在是一个 noarch 包。如果您正在使用 JupyterLab 和 notebook 5.2 或更早版本,您可能需要手动启用 JupyterLab 服务器扩展。有关更多详细信息,请参阅该问题 (#7042)

面向开发人员#

  • 为测试暴露 install_kernel,以便外部项目更好地使用测试框架 (#7089)

  • 修复 comm_info_request 内容以兼容旧版本的方式符合 Jupyter 消息规范 (#6949, #6947)

  • 添加 yarn 包解析以构建,将核心包版本限制在补丁 semver 范围内 (#6938)

  • 使内核连接中的通信消息处理可选。(#6929)

  • 将图标 svg 暴露给主题 css (#6034, #7027)

  • 暴露打开对话框的便捷函数 (#6366, #6365)

  • 向可能的内核消息添加调试消息 (#6704)

  • 添加服务器端 coreconfig 对象 (#6991)

错误修复#

  • 处理内核选择期间发生的错误 (#7094)

  • 修复页面配置和其他模板变量的转义问题 (#7016, #7024, #7061, #7058, #6858)

  • 要求 jinja2 2.10+ 以修复转义问题 (#7055, #7053)

  • 将搜索去抖动从 100ms 增加到 500ms,以提高大型文档中增量搜索的响应速度 (#7034)

  • 修复 vega 下载和一般下载 URL (#7022, #7017, #7098, #7047)

  • 在构建中不要抱怨重复或可选的包 (#7013)

  • 修复 R 帮助的上下文帮助布局 (#6933, #6935)

v1.0.0#

2019 年 6 月 28 日#

有关 1.0.0 中关闭的拉取请求和问题的完整列表,以及补丁版本中修复的错误,请参阅 GitHub 上的 JupyterLab 1.0.0 里程碑和其它 1.0.x 里程碑。

查找和替换#

我们增加了对 JupyterLab 查找和替换的一流支持。它目前在笔记本和文本文件中受支持,并且可以扩展到其他希望支持它的小部件。(#6350, #6322, #6301, #6282, #6256, #6241, #6237, #6159, #6081, #6155, #6094, #6024, #5937, #5795, #1074)

状态栏#

我们已将 JupyterLab 状态栏包 集成到核心分发中。扩展也可以向其添加自己的状态 (#5577, #5525 #5990, #5982, #5514, #5508, #5352)。

JupyterHub 集成#

  • 我们现在将 JupyterHub 扩展包含在核心 JupyterLab 中,因此您不再需要安装 @jupyterlab/hub-extension。(#6451, #6428)

  • JupyterLab 现在在 JupyterHub 运行时有一个文件 > 注销菜单项 (#6087, #5966)

打印#

我们现在有一个打印系统,允许扩展自定义文档和活动的打印方式。(#5850, #1314)

其他面向用户的更改#

  • 启动器显示更长的内核名称并支持键盘导航 (#6587)

  • 没有任何有效 MIME 类型渲染器的笔记本输出将不会显示,而不是显示错误 (#6559, #6216)

  • 为文件浏览器根面包屑图标添加工具提示,显示服务器根目录(如果可用)(#6552)

  • 下载文件将不再打开新的浏览器窗口 (#6546)

  • 将帮助“检查器”重命名为“上下文帮助”,并将其移至“帮助”菜单(#6493#6488#6678#6671

  • 更新了许多图标以使其更加一致(#6672#6618#6664#6621

  • 更新设置 UI 以移除表格视图(#6654#6622#6653#6623#6646#6642

  • 将 FAQ 扩展替换为 JupyterLab 文档的链接(#6628#6608#6625#6610

  • 将关闭标签页的默认键盘快捷键更改为 Alt+w 而不是 Cmd/Ctrl+w,以避免与操作系统冲突。(#6486#6357

  • 在检查器窗口中显示帮助文本,描述您应该选择一个函数(#6476

  • 修复 SVG 渲染(#6469#6295

  • 添加了在标签栏区域拖放标签页的支持。(#6454#5406

  • 将一些默认快捷键切换为使用 Accel 而不是 Ctrl,以便 Mac 用户使用起来更自然(#6447#5023

  • 增加了区分悬停和选定命令面板项的能力(#6407#279

  • 当文件浏览器较窄时,隐藏“最后修改”列(#6406#6093

  • 在终端和 Mac OS 中支持使用 Ctrl+CCtrl+V 进行复制/粘贴(#6391#6385#1146

  • 支持在运行中的内核面板中滚动(#6383#6371

  • 在笔记本的上下文菜单中添加了“合并选定单元格”的功能(#6375#6318

  • 在 Xterm.js 中开启辅助功能,使其更兼容屏幕阅读器(#6359

  • 现在,使用键盘快捷键选择单元格时,我们跳过已折叠的单元格(#6356#3233

  • 支持在 JSON 查看器中打开 .geojson 文件(#6349

  • 基于文本的进度条的性能修复(#6304#4202

  • 添加了对 Vega 5 和 Vega Lite 3 渲染的支持,同时保留了现有的 Vega 4 和 Vega Lite 2 渲染器(#6294#6133#6128#6689#6685#6684#6675#6591#6572

  • 将控制台单元格拖放到笔记本或文本编辑器中(#5585#4847

  • 将笔记本单元格拖放到控制台或文本编辑器中(#5571#3732

  • 扩展管理器搜索现在根据 NPM 分配给扩展的分数对扩展进行排序,而不是按字母顺序排序(#5649

  • 当内核自动重启时通知用户,例如,如果因内存不足错误而崩溃(#6246#4273

  • 在命令和菜单项中公开扩展管理器(#6200

  • 添加命令以渲染所有 Markdown 单元格(#6029#6017

  • 支持在输出区域使用 Shift 键选择文本(#6015#4800

  • 在新视图中打开的输出区域现在在重新加载时会正确恢复(#5981#5976

  • 添加了在单元格工具区域的新“高级工具”部分管理笔记本元数据的支持。单元格和笔记本元数据现在始终反映笔记本的当前状态(#5968#5200

  • 终端主题继承自核心主题(#5964

  • 添加了内置 HTML 查看器,以便您可以查看 HTML 文件(#5962#5855#2369

  • 现在,当您使用相同的 Workspace 名称创建新窗口时,会自动生成新的 Workspace。(#5950#5854#5830#5214

  • 我们现在在上下文菜单中添加了一个提示,描述如何访问本地浏览器菜单(#5940#4023

  • 左侧面板上的选项卡已更改,使其更易于理解(#5920#5269

  • 当页面刷新且旧终端已关闭时,启动一个新终端(#5917

  • 添加了一个打开主菜单的命令,可以将其分配给键盘快捷键,以便无需鼠标即可打开和导航菜单(#5910#3074

  • 上下文帮助现在会根据鼠标光标的更改而不是仅仅键盘的更改进行更新(#5906#5899

  • 当服务器上的内核更改时,启动器现在会更新(#5904#5676

  • 即使单元格输出被清除,也保留单元格自动滚动行为(#5817#4028

  • 如果您在 Markdown 单元格中链接到非文件相对路径,现在将保留该路径,而不是将其更改为文件 URL(#5814

  • 增加了链接到 CSV 文件中特定行并让查看器打开到该行的功能(#5727#5720

  • 我们改进了切换到大型笔记本的性能(#5700#4292#2639

  • vdom 扩展现在支持事件处理,因此您可以让内核代码响应用户与 UI 的交互运行(#5670

  • 增加了在代码和 Markdown 文件中运行“运行所有代码”和“重启内核并运行所有代码”的功能(#5641#5579

  • 我们现在会在加载文本文件时记住其行尾符,因此带有 CRLF 行尾符的文件将正确地以相同的行尾符保存(#5622#4464#3901#3706

  • 修复了 HTML MimeType 输出中 SVG 元素的渲染问题(#5610#5610#5589

  • 允许在文件浏览器中拖动文件时按住 Ctrl 键复制文件(#5584#3235

  • 将文件浏览器中悬停修改时间切换为使用本地格式(#5567

  • 我们添加了关闭和清理文件的默认键盘快捷键 Ctrl Shift Q#5534#4390

  • 增加了在 CSV 查看器中查找并跳转到特定行的功能(#5523

  • 增加了从启动器和命令面板创建新的文本和 Markdown 文件的能力(#5512#5511

  • 文件浏览器上下文菜单中已添加“新建文件夹”选项(#5447

  • ANSI 颜色现在与经典笔记本中的颜色相同(#5336#3773

  • 在单元格中单步执行代码时,发送完整语句而不是当前行(#6515#6063

  • 描述列表样式(dldtdd)得到了改进,以与 nteract 项目保持一致(#5682#2399

设置#

  • 设置系统已重写(#5470#5298),现在使用 json5 作为语法,它支持注释和其他功能以提高可读性(#6343#6199)。

  • 键盘快捷键系统已重写,现在在设置注释中显示系统命令列表(#5812#5562)。

以下许多项目都有新的设置,包括

命令行更改#

  • 安装扩展将更安静,并为扩展安装添加 --debug#6567#6499#5986

  • 我们现在支持当 JupyterLab 的应用程序目录是符号链接时运行它(#6240#6166

  • 添加 --all 标志到 labextension uninstall 以删除所有扩展(#6058#6006

  • 增加了从配置中覆盖基本 URL 的功能(#5518#5503

  • 更新了工作区 CLI 命令(#6473#5977#6276#6234#6210#5975#5695#5694

扩展开发更改#

  • 我们重写了扩展提供键盘快捷键和与设置系统交互的方式。如果您之前定义过键盘快捷键或使用过设置机制,您将需要更新您的扩展(#5470#5298

  • 我们将插件类型从 JupyterLabPlugin 重命名为 JupyterFrontEndPlugin。应用程序参数也从 JupyterLab 重命名为 JupyterFrontEnd,其部分功能已移至单独的 ILabShell 插件(#5845#5919

  • 实验室 shell 的 addToMainAreaaddToLeftAreaaddToTopAreaaddToRightAreaaddToBottomArea 函数已替换为单个 add() 函数,该函数接受区域作为参数。将 addToMainArea(widget, options) 替换为 add(widget, 'main', options),依此类推。(#5845

  • 在服务器连接中将 pageUrl 重命名为 appUrl#6509#6508#6585#6584

  • MainAreaWidget 实例现在将其更新请求转发给其 content#6586#6571

  • 主题数据属性已重命名并移至文档正文元素。如果您在 CSS 中依赖这些属性根据主题进行条件样式设置,则应更新其名称。例如,data-theme-light 现在是 data-jp-theme-light。(#6566#6554

  • 需要 CSS 的扩展不应再将其 CSS 文件导入到其 Javascript 文件中。相反,它们应在其 package.jsonstyle 属性中指定一个根 CSS 文件,JupyterLab 将自动导入该 CSS 文件。(#6533#6530#6395#6390

  • Dialog.prompt 已被许多特定类型的对话框取代,例如 InputDialog.getStringInputDialog.getBoolean 等。(#6522#6378#6327#6326

  • RenderMime 小部件重新渲染时,默认行为是删除 DOM 中所有现有内容。如果需要,可以覆盖此行为。(#6513#6505#6497

  • 我们已将内部 TypeScript 版本更新到 3.5.1,并将编译目标更新到 ES2017。扩展可能也需要升级其 TypeScript 版本和目标。(#6440#6224

  • 我们已经更新了一些内核消息的类型定义,以便它们更好地匹配规范。(#6433

  • 已向某些管理器类添加了 connectionFailure 信号,可用于检测与服务器的连接何时丢失(#6399#6176#3324

  • 将速率限制和轮询实用程序添加到 coreutils,用于限制和去抖 API 请求(#6345#6346#6401#6305#6157#6192#6186#6141#3929#6141#3929#6186#6192#6401#6305#6157

  • 在实例化终端小部件时需要会话(#6339#5061

  • 提供了一个信号,用于查看目录列表中打开的项目(#6270#6269

  • 添加了在主工作区上方顶部标题区域添加小部件的功能(#5936

  • JupyterFrontEnd 中的 contextMenuFirst 重命名为 contextMenuHitTest#5932

  • 从终端创建命令中删除了 initialCommand 参数。(#5916

  • 为主题添加了 --jp-code-cursor-width0--jp-code-cursor-width1--jp-code-cursor-width2 变量,以支持在更改字体大小时更改光标宽度(#5898

  • 增加了在另一个项目之前或之后向工具栏插入新项目的能力(#5896#5894

  • 增加了扩展注册新 CodeMirror 模式的能力(#5829

  • 我们已移除 JUPYTERLAB_xxx_LOADER Webpack 加载器,现在您应该直接在 URL 中使用加载器,因为 Webpack 支持此功能(#5709#4406

  • 增加了处理文档小部件片段的能力(#5630#5599

  • 我们添加了一个 @jupyterlab/ui-components 包,其中包含可重用的 React 组件,供内部和扩展使用。您可以随意使用它来创建具有一致样式的扩展 UI(#5538

  • showErrorMessage 函数现在允许您自定义其使用的按钮(#5513

  • 我们现在提供了在 JupyterLab 中使用 React 组件的助手。如果您之前使用 ReactElementWidget,您应该切换到使用 ReactWidget。(#5479#5766#6595#6595

  • 共享链接命令已移至其自己的扩展中,以便可以覆盖它(#5460#5388

  • 创建新的服务会话现在需要传递内核模型而不是内核实例(#6503, #6142

  • 我们升级了Webpack原始文件加载器。新版本的原始加载器导出ES2015模块,因此这可能需要更改使用原始加载器导入文件的扩展。例如,如果您使用require('myfile.md')来获取myfile.md的内容作为字符串,您现在应该使用ES2015 import语法导入它,或者使用require(\'myfile.md\').default

  • 小部件工厂现在可以支持来自可选源小部件的自定义克隆行为(#6060, #6044

  • 我们已将类型InstanceTracker重命名为WidgetTracker#6569)。

  • 为了将小部件添加到主区域(例如,像旧的XKCD扩展教程中那样),现在正确的语法是app.shell.add(widget)app.shell.add(widget, 'main'),请参阅此处

v0.35.0#

2018年10月3日#

请参阅GitHub上的JupyterLab 0.35.0里程碑,了解已关闭的拉取请求和问题的完整列表。

功能#

  • 现在,笔记本单元格可以设置为只读,反映其enabled元数据。(#5401, #1312

  • 在文本编辑器的“编辑”菜单中添加“转到行”。(#5377

  • 侧边栏面板现在可以在左侧和右侧侧边栏之间切换。右键单击侧边栏选项卡以将其移动到另一个侧边栏。(#5347, #5054, #3707

  • 使侧边栏稍微窄一些,并使最小宽度可以从主题中调整。(#5245

  • 从服务器nbconvert功能填充“文件”、“导出笔记本为…”子菜单。(#5217

  • 服务器内容管理器现在可以告诉JupyterLab将文件作为笔记本打开。例如,几个自定义内容管理器将笔记本保存并打开为Markdown文件。(#5247, #4924

  • 添加用于管理工作区的命令行界面。(#5166

  • 允许在Markdown中使用安全的内联CSS样式。(#5012, #1812

  • 在适当的时候,将“退出”添加到“文件”菜单中。(#5226, #5252, #5246, #5280

  • 重新设计扩展管理器用户体验。(#5147, #5042

深色主题#

  • 使用深色主题时显示深色启动屏幕。(#5339, #5338, #5403

  • 修复深色主题的代码补全菜单。(#5364, #5349

  • 为深色主题设置CSV查看器样式。(#5304, #3456

  • 使Matplotlib图表在深色主题中清晰可见。(#5232

  • 修复深色主题中笔记本单元格下拉菜单的清晰度问题。(#5168

错误修复#

  • 当文件不可写入时,文件菜单和工具栏中的各种保存选项现在被禁用。(#5376, #5391

  • 内核选择器对话框不再截断内核名称。(#5260, #5181

  • 修复工具栏的焦点问题。(#5344, #5324, #2995, #5328

  • 修复工具栏按钮的启用/禁用状态。(#5278

  • Markdown中现在支持表格对齐。(#5301, #3180

  • 修复Markdown列表的语法高亮问题。(#5297, #2741

  • 对于各种命令,使用当前文件浏览器而不是默认文件浏览器。(#5390

  • 修复链接处理中的转义,以符合Markdown语法。这意味着链接引用中的空格现在需要编码为%20。(#5383, #5340, #5153

构建系统#

  • 使用Typescript 3.1。(#5360

  • 使用Lerna 3.2.1。(#5262

  • 现在需要Node >=6.11.5。(#5227

  • 将vega-embed版本固定为3.18.2。(#5342

  • 使用Jest进行服务测试。(#5251, #5282

  • 使第三方扩展更容易使用JupyterLab测试应用程序和测试工具。(#5415

  • 修复Windows上的jupyter lab clean。(#5400, #5397

  • 修复NFS上的jupyter lab build。(#5237, #5233

  • 仅构建Python 3的wheels。(#5287

  • 迁移到使用jupyterlab_server而不是jupyterlab_launcher并修复应用程序示例。(#5316

  • 将Mathjax 2排版器移至库包。(#5259, #5257

对于开发人员#

  • 可以覆盖默认工具栏按钮,并且MIME渲染器现在可以指定工具栏按钮。(#5398, #5370, #5363

  • JupyterLab应用程序实例现在可以获得文档注册表、服务管理器和命令链接器。(#5291

v0.34.0#

2018年8月18日#

请参阅GitHub上的JupyterLab 0.34.0里程碑,了解已关闭的拉取请求和问题的完整列表。

主要功能#

  • 笔记本、控制台和文本文件现在可以访问本地令牌的补全。

  • 现在使用JupyterLab需要Python 3.5+。Python 2内核仍然可以在JupyterLab中运行。

  • 添加了管道(|)字符作为CSV分隔符选项。

  • 在顶级File菜单中添加了“从路径打开…””。

  • 为文件上下文菜单添加了“复制下载链接”。

开发者变更#

  • 笔记本、控制台和文本文件现在可以访问本地令牌的补全。如果文本文件有与其路径关联的正在运行的内核(如附加控制台所发生的那样),它还会从该内核获取补全和工具提示。(#5049

  • FileBrowser小部件有一个新的构造函数选项refreshInterval,允许创建者自定义小部件轮询存储后端​​的频率。这在某些情况下有助于防止速率限制。(#5048

  • 应用程序shell现在获取一对CSS数据属性,指示当前主题以及它是浅色还是深色。扩展作者可以编写CSS规则来针对这些属性,以使其扩展UI元素响应应用程序主题。例如,要编写一个规则来针对主题是整体浅色还是深色,您可以使用

    [data-theme-light='true'] your-ui-class {
      background-color: white;
    }
    [data-theme-light='false'] your-ui-class {
      background-color: black;
    }
    

    主题名称也可以通过为data-theme-name编写CSS规则来定位。(#5078

  • IThemeManager接口现在公开了一个themeChanged信号,允许扩展作者响应主题的变化。主题扩展还必须提供一个新的布尔属性isLight,声明它们是否大致是浅色的。此数据允许第三方扩展更好地响应活动的应用程序主题。(#5078

  • 添加了一个补丁,用于在文件上传错误时立即更新每个FileBrowserModeluploads。以前,出错的上传只会在更新时从uploads中移除。这将使状态栏组件和使用FileBrowserModel的其他扩展更加精确。(#5077

  • 当单元格执行时,单元格ID现在作为单元格元数据的一部分在shell消息中传递。这有助于开发响应式内核。(#5033

  • 自上次运行单元格以来所有已删除单元格的ID现在作为单元格元数据的一部分在执行时传递。NotebookModel中存储了自上次运行单元格以来已删除单元格的ID,名为deletedCells。这有助于开发响应式内核。(#5037

  • apputils中的ToolbarButton已进行重构,并进行了API更改,现在使用React组件ToolbarButtonComponent来渲染其子元素。它现在是一个div,带有一个button子元素,该子元素又带有两个span元素,用于图标和文本标签。使用className选项的扩展应将其重命名为iconClassNameclassName选项仍然存在,但它用作button元素本身的CSS类。API更改是为了适应按钮的样式更改。(#5117

  • Toolbar.createFromCommand函数已被一个专门的ToolbarButton子类CommandToolbarButton替换,该子类封装了一个同名的React组件。(#5117

  • 右侧和左侧侧边栏选项卡的设计和样式已得到改进,以解决#5054。我们现在使用图标来渲染JupyterLab自带的扩展的选项卡,并鼓励扩展作者也这样做(文本标签仍然有效)。基于图标的选项卡可以通过删除widget.caption并添加widget.iconClass = '<youriconclass> jp-SideBar-tabIcon';来使用。(#5117

  • JupyterLab中按钮的样式已更新为无边框设计。(#5117

  • 新增了一系列用于以不同尺寸样式化SVG图标的辅助CSS类:jp-Iconjp-Icon-16jp-Icon-18jp-Icon-20

  • 默认侧边栏小部件的排名已更新。主要更改是给扩展管理器一个1000的排名,使其出现在默认项目的末尾。

  • 现在使用JupyterLab需要Python 3.5+。Python 2内核仍然可以在JupyterLab中运行。(#5119

  • JupyterLab现在使用yarn 1.9.4(别名为jlpm),现在允许用户使用Node 10+。(#5121

  • 清理PageConfigServerConnectionbaseUrlwsURL的处理。(#5111

其他变更#

  • 添加了管道(|)字符作为CSV分隔符选项。(#5112

  • 在顶级File菜单中添加了Open From Path...。(#5108

  • 为文档上下文对象添加了saveState信号。(#5096

  • 为文件上下文菜单添加了“复制下载链接”。(#5089

  • 标记为deprecated的扩展不再显示在扩展管理器中。(#5058

  • 从单元格提示中删除InOut文本。提示宽度从90px缩小到64px。在浅色主题中,将已执行控制台单元格的提示颜色设置为活动提示颜色,并将其不透明度降低到0.5。在深色主题中,将已执行控制台单元格的提示颜色设置为活动提示颜色,并将其不透明度设置为1。(#5097#5130

错误修复#

  • 修复了命令面板中“新笔记本”项的渲染错误。(#5079

  • 我们只在扩展管理器小部件启用时才创建它。这可以防止不必要的对npmjs.com的网络请求。(#5075

  • running面板现在显示启动时正在运行的会话。(#5118

  • 在文件浏览器中双击文件总是会打开它,而不是有时选择它进行重命名。(#5101

v0.33.0#

2018年7月26日#

请参阅GitHub上的JupyterLab 0.33.0里程碑,了解已关闭的拉取请求和问题的完整列表。

主要功能:#

不再处于测试版#

在JupyterLab 0.33中,我们删除了“测试版”标签,以更好地表明JupyterLab已准备好供用户日常使用。扩展开发者API仍在稳定中。有关详细信息,请参阅发布博客文章。(#4898, #4920

工作区#

我们新增了工作区支持,它允许您拥有多个保存的布局,包括在不同的浏览器窗口中。有关更多详细信息,请参阅workspace documentation。(#4502, #4708, #4088, #4041 #3673, #4780

键盘快捷键#

  • “另存为…”已指定键盘快捷键Ctrl/Cmd Shift S。(#4560

  • “运行所有单元格”已指定键盘快捷键Ctrl/Cmd Shift Enter。(#4558

  • “notebook:change-to-cell-heading-X”键盘快捷键(和命令)已重命名为“notebook:change-cell-to-heading-X”,其中X=1…6。这修复了用于更改标题的笔记本命令模式键盘快捷键。(#4430

  • 控制台执行快捷键现在可以在控制台设置中设置为EnterShift Enter。(#4054

命令面板项#

  • “笔记本”已添加到命令面板,用于打开新笔记本。(#4812

  • “在控制台中运行选定文本或当前行”已添加到命令面板,用于从笔记本中运行选定文本或当前行。此命令尚无默认键盘快捷键,但用户可以使用notebook:run-in-console命令添加。要为该命令添加键盘快捷键Ctrl G,请使用“设置”|“高级设置编辑器”菜单项打开“键盘快捷键”高级设置,并在“用户覆盖”窗格中的快捷键JSON对象中添加以下JSON(如果需要,请调整实际的键盘快捷键)。(#3453, #4206, #4330

    {
      "command": "notebook:run-in-console",
      "keys": ["Ctrl G"],
      "selector": ".jp-Notebook.jp-mod-editMode"
    }
    
  • 命令面板现在以更一致和正确的方式渲染标签、切换状态和键盘快捷键。(#4533, #4510

设置#

  • “fontFamily”、“fontSize”和“lineHeight”设置已添加到文本编辑器高级设置中。(#4673

  • 来自CodeMirror的Solarized深色和浅色文本编辑器主题。(#4445

更大的文件上传#

  • 当使用Jupyter notebook server版本>= 5.1时,支持更大的文件上传(>15MB)。(#4224

扩展管理和安装#

  • 新的扩展管理器,用于在JupyterLab UI中从npm安装JupyterLab扩展。您可以从高级设置界面启用此功能。(#4682, #4925

  • 请注意,要在JupyterLab中安装扩展,您必须使用NodeJS版本9或更早版本(即,不能使用NodeJS版本10)。我们将在yarn中的bug修复后升级yarn,以支持NodeJS版本10。(#4804

界面变更#

  • 主工作区中选项卡更宽,以显示更长的文件名。(#4801

  • 笔记本或控制台的初始内核选择不能再取消:用户必须选择一个内核。(#4596

  • 控制台现在默认不显示来自其他客户端的输出。已添加新的“显示所有内核活动”控制台上下文菜单项,以在控制台中显示来自内核的所有活动。(#4503

  • 收藏夹图标现在显示JupyterLab中内核的繁忙状态。(#4361, #3957, #4966

渲染器#

  • JupyterLab现在默认随附Vega4渲染器(从Vega3升级)。(#4806

  • HTML消毒器现在允许在渲染的HTML中包含一些额外的标签,包括kbdsupsub。(#4618

  • JupyterLab现在识别.tsv文件扩展名作为制表符分隔文件。(#4684

  • 笔记本单元格中的Javascript执行已重新启用。(#4515

开发者变更#

  • 用于观察应用程序脏状态状态变化的新信号。(#4840

  • 用于观察笔记本单元格执行的新信号。(#4740, #4744

  • 用于观察内核发送或接收的任何消息的新anyMessage信号。(#4437

  • 一种通用方式,供不同小部件注册一个“保存并附加额外内容”命令,该命令出现在“文件”菜单的“保存”下方。(#3981

  • 一个用于从JupyterLab菜单中移除组的新API。addGroup现在返回一个IDisposable,可用于移除该组。removeGroup已被移除。(#4890

  • Launcher现在使用应用程序CommandRegistry中的命令来启动新活动。添加启动器项目的扩展作者需要更新它们以使用命令。(#4757

  • 应用程序中现在有一个顶层addToBottomArea函数,允许扩展作者添加底部面板项,如状态栏。(#4752

  • 渲染MIME扩展现在可以指示它们是文件类型的默认渲染小部件工厂。例如,markdown文件的默认小部件是文本编辑器,但默认渲染小部件是markdown查看器。(#4692

  • jupyterlab_server添加新的工作区REST端点,并使其在@jupyterlab/services中可用。(#4841

  • 现在可以使用 IInstanceTracker 访问使用 mimerenderer 扩展创建的文档,该扩展会跟踪这些文档。在插件中包含令牌 IMimeDocumentTracker 以访问此功能。IInstanceTracker 接口也增加了便利函数 findfilter,以简化实例的迭代。(#4762

  • RenderMime 渲染错误现在会显示给用户。(#4465

  • getNotebookVersion 已添加到 PageConfig 对象。(#4224

  • 会话 kernelChanged 信号现在包含旧内核和新内核,以便轻松地从旧内核中注销事物。(#4834

  • 连接到内核和会话的 connectTo 函数现在是同步的(立即返回连接而不是 Promise)。DefaultSession 的 cloneupdate 方法现在也是同步的。(#4725

  • 内核消息处理现在是异步的,这保证了即使处理程序是异步的,处理顺序也一致。如果内核消息处理程序返回一个 Promise,内核消息处理将暂停,直到 Promise 解决。当接收到消息时,内核的 anyMessage 信号在异步消息处理之前同步发出,而 iopubMessageunhandledMessage 信号在异步消息处理期间发出。这些更改意味着 comm 的 onMsgonClose 处理程序以及内核 future 的 onReplyonIOPubonStdin 处理程序,以及 comm target 和消息 hook 处理程序,都可以是异步的并返回 Promise。(#4697

  • 内核 comm target 和消息 hook 现在使用 removeCommTargetremoveMessageHook 注销,而不是使用 disposables。相应的 registerCommTargetregisterMessageHook 函数现在不返回任何内容。(#4697

  • 内核 connectToComm 函数是同步的,现在返回 comm 而不是 comm 的 Promise。(#4697

  • KernelFutureHandler 类的 expectShell 构造函数参数已重命名为 expectReply。(#4697

  • 如果 Future 没有回复消息,内核 future 的 done 返回的 Promise 现在解析为 undefined。(#4697

  • IDisplayDataMsg 已更新为具有可选的 transient 键,并添加了新的 IUpdateDisplayDataMsg 类型用于更新显示消息。(#4697

  • 来自 @jupyterlab/coreutilsuuid 函数已删除。请改为从 @phosphor/coreutils 导入 UUID 并使用 UUID.uuid4()。(#4604

  • 启动器和控制台等主区域小部件继承自一个通用的 MainAreaWidget 类,该类提供内容区域 (.content) 和工具栏 (.toolbar),一致的焦点处理和激活行为,以及在给定的 reveal Promise 解决之前显示的加载动画。文档小部件(如笔记本、文本编辑器和从文档管理器打开的其他文档)实现了 IDocumentWidget 接口(而不是 DocumentRegistry.IReadyWidget),该接口基于 MainAreaWidget 并添加了一个用于文档上下文的 .context 属性,并使脏数据处理保持一致。扩展作者可以考虑继承 MainAreaWidgetDocumentWidget 类以保持一致性。这些更改的一些影响如下所述。(#3499, #4453

    • 笔记本面板的 .notebook 属性已重命名为 .content

    • 文本编辑器现在是 DocumentWidget.content,因此顶级编辑器小部件有一个工具栏,编辑器本身是 widget.content.editor 而不是 widget.editor

    • Mime 文档现在使用嵌入在 DocumentWidget 中的 MimeContent 小部件。

    • 主区域小部件和文档小部件现在有一个 revealed Promise,当小部件被显示时(即,加载动画已被移除),该 Promise 会解决。这应该替代 ready Promise 使用。

JupyterLab 代码基础设施的变化包括

  • JupyterLab TypeScript 代码库现在使用 TypeScript 2.9 编译到 ES2015 (ES6)。我们还开启了 TypeScript 的 esModuleInterop 标志,以支持更自然地从非 ES2015 JavaScript 模块导入。随着更新到 ES2015 输出,异步/等待语法生成的代码变得更易于管理,因此我们已开始在整个代码库中广泛使用异步/等待,尤其是在测试中。由于我们使用 Typedoc 进行 API 文档,因此在 Typedoc 使用的地方,我们仍然使用与 TypeScript 2.7 兼容的语法。扩展作者可能需要进行一些小的兼容性更新。如果您正在使用 TypeScript 编写扩展,我们建议更新到 TypeScript 2.9 并同样 targeting ES2015 输出。(#4462#4675#4714#4797

  • JupyterLab 代码库现在使用 Prettier 进行格式化。默认情况下,开发环境会安装一个预提交钩子,用于格式化您暂存的更改。(#4090

  • 使用 webpack 4 和更好的类型更新了构建基础设施。(#4702#4698

  • Yarn 已升级到 1.6 版本。请注意,您必须使用 NodeJS 9 或更早版本与 JupyterLab(即,不能是 NodeJS 10)。当 Yarn 中的一个错误 修复后,我们将升级 Yarn,并支持 NodeJS 10。(#4804

  • 各种进程工具已移至 jupyterlab_server。(#4696

其他修复#

  • 修复了单文档模式下启动器中的渲染错误。(#4805

  • 修复了在 Chrome 中无法在笔记本单元格中触发原生上下文菜单的错误。(#4720

  • 修复了深色主题下光标不显示的错误。(#4699

  • 修复了阻止相对链接在备用 IDrive 中正常工作的错误。(#4613

  • 修复了保存图像后图像查看器中断的错误。(#4602

  • 修复了笔记本 Markdown 标题中代码块的字体大小。(#4617

  • 防止了在重复渲染 Vega 图表时出现内存泄漏。(#4904

  • 支持终端连接断开后重新连接。(#4763, #4802

  • vega4-extension 中使用 require.ensure 以在首次渲染时延迟加载 vega-embed 及其依赖项。(#4706

  • 包含锚点标签的文档的相对链接现在将正确滚动文档到正确位置。(#4692

  • 修复了设置编辑器中默认设置 JSON 的错误。(#4591, #4595

  • 修复了设置编辑器窗格布局的拉伸因子。(#2971, #4772

  • 程序化设置现在以更美观的格式输出。(#4870

  • 修复了显示单行 CSV 文件的错误。(#4795, #4796

  • 修复了富文本输出中的 JSON 数组被折叠成字符串的错误。(#4480

Beta 2 (v0.32.0)#

2018 年 4 月 16 日#

这是 JupyterLab Beta 系列发布的第二个版本。它包含许多增强、错误修复和改进,其中包括

  • 更好地处理损坏或无效的状态数据库。(#3619#3622#3687#4114)。

  • 修复文件脏状态指示器。(#3652)。

  • 是否自动保存文档的新选项。(#3734)。

  • 笔记本上下文菜单中更多命令。(#3770#3909

  • 防御性检查内核的完成元数据。(#3888

  • “运行中”面板中新增“全部关闭”按钮。(#3764

  • 性能改进,非焦点文档更少地轮询服务器。(#3931

  • 更改单文档模式的键盘快捷键,使其不易触发。(#3889

  • 渲染文本流的性能改进,尤其是在进度条方面。(#4045)。

  • 取消“重启内核”现在功能正常。(#3703)。

  • 在应用程序恢复后,延迟加载文件内容。(#4087)。

  • 能够在图像查看器中旋转、翻转和反转图像。(#4000

  • 大型 CSV 查看的重大性能改进。(#3997)。

  • 文件浏览器中始终显示上下文菜单,即使对于空目录也是如此。(#4264)。

  • 更正确地处理服务库中的异步 comm 消息(注意:这意味着 @jupyterlab/services 现在是 2.0 版本!)([#4115](https://github.com/jupyterlab/jupyterlab/pull/4115))。

  • 当内核重启时,在控制台中显示内核横幅以标记重启 ([#3663](https://github.com/jupyterlab/jupyterlab/pull/3663))。

  • 对用户界面进行了许多调整,并改进了错误处理。

Beta 1 (v0.31.0)#

2018 年 1 月 11 日#

v0.30.0#

2017 年 12 月 5 日#

v0.29.2#

2017 年 11 月 17 日#

修复了文件浏览器右键点击处理的错误。jupyterlab/jupyterlab#3019

v0.29.0#

2017 年 11 月 9 日#

  • 在单元格上下文菜单中创建单元格的新视图。#3159

  • 用于 VDOM 和 JSON mime 类型和文件的新渲染器。#3157

  • 切换到 React 作为我们的 VDOM 实现。影响 VDomRenderer 类。#3133

  • 独立单元格示例。#3155

v0.28.0#

2017 年 10 月 16 日#

此版本主要侧重于开发者和扩展作者的增强功能以及一般错误修复。

  • 插件 ID 和架构文件约定更改。jupyterlab/jupyterlab#2936

  • 主题创作约定更改。#3061

  • 启用和禁用扩展的增强功能。#3078

  • Mime 扩展 API 更改(name -> id 和新的命名约定)。#3078

  • 为扩展作者添加了 jupyter lab --watch 模式。#3077

  • 新的综合扩展创作教程。#2921

  • 添加了使用备用 LaTeX 渲染器的功能。#2974

  • 大量的错误修复和样式增强。

v0.27.0#

2017 年 8 月 23 日#

v0.26.0#

2017 年 7 月 21 日#

v0.25.0#

2017 年 7 月 7 日#

v0.24.0#

2017 年 6 月 16 日#

  • 启动器大改造。#2380

  • 客户端设置系统的初始实现。#2157

  • 可更新的输出。#2439

  • CSV 查看器使用新的 Phosphor Datagrid。#2433

  • 添加了无需重新构建即可启用/禁用扩展的功能。#2409

  • 为文件查看器添加了语言和制表符设置。#2406

  • 改进了实时协作体验。#2387 #2333

  • 扩展兼容性检查。#2410

  • 大量的错误修复和样式改进。

v0.23.0#

2017 年 6 月 2 日#

v0.22.0#

2017 年 5 月 18 日#

v0.20.0#

2017 年 4 月 21 日#

发布说明

大量的错误修复和改进。

v0.19.0#

2017 年 4 月 4 日#

主要侧重于后端功能的发布,与 Phosphor 1.0 兼容,并对会话处理(ClientSession 类)进行了重大重构,为笔记本、控制台、检查器等类提供了更简单的对象来与 API 通信。还包括在重大拆分后 JupyterLab 本身开发工作流程的改进。

jupyterlab/jupyterlab#1984 jupyterlab/jupyterlab#1927

v0.18.0#

2017 年 3 月 21 日#

v0.17.0#

2017年3月1日#

v0.16.0#

2017年2月9日#

  • 添加了一个单元格工具侧边栏,允许您编辑笔记本单元格元数据。 #1586

  • 添加了在标签页之间切换的键盘快捷键(Cmd/Ctrl LeftArrow 和 Cmd/Ctrl RightArrow)。 #1647

  • 升级到 xterm.js 2.3。 #1664

  • 修复了应用程序配置中的一个错误,但实验室扩展将需要重新启用。 #1607

  • 大量其他错误修复和样式改进。