CHANGELOG.md 24 KB

JupyterLab Changelog

0.33

Jul 24, 2018

We added new workspace support, which enables you to have multiple saved layouts, including in different browser windows. See the workspace documentation for more details. (#4502, #4708, #4088, #4041 #3673, #4780)

We also added new menu items, keyboard shortcuts, commands, and settings:

  • "Activate Previously Used Tab" added to the Tab menu (Ctrl/Cmd Shift ') to toggle between the previously active tabs in the main area. (#4296).
  • "Reload From Disk" added to File menu to reload an open file from the state saved on disk (#4615).
  • "Increase/Decrease Font Size" added to the text editor settings menu (#4811).
  • "Show in File Browser" added to a document tab's context menu (#4500).
  • "Open in New Browser Tab" added to the file browser context menu (#4315).
  • "Copy Path" added to file browser context menu to copy the document's path to the clipboard (#4582).
  • "Save As..." given the keyboard shortcut Ctrl/Cmd Shift S (#4560)
  • "Run All Cells" given the keyboard shortcut Ctrl/Cmd Shift Enter (#4558).
  • "Notebook" added to the command palette to open a new notebook (#4812).
  • notebook:run-in-console added to the command palette to run the selected text or current line from a notebook in a console. A default shortcut for this command is not yet provided, but can be added by users. (#3453, #4206, #4330)
  • "fontFamily", "fontSize", and "lineHeight" settings added to the text editor advanced settings (#4673).

Other changes for users include:

  • A command for persisting collapsed and scrolling state of notebook cells with a default keybinding of Ctrl Shift S. We also added a generic way for different widgets to register a "Save with extras" command that appears in the File menu under save. We now read the collapsed, scrolled, jupyter.source_hidden and jupyter.outputs_hidden notebook cell metadata when opening. collapsed and jupyter.outputs_hidden are redundant and the initial collapsed state is the union of both of them. When the state is persisted, if an output is collapsed, both will be written with the value true, and if it is not, both will not be written. (#3981).
  • Support for larger file uploads (>15MB) when using Jupyter notebook server version >= 5.1. (#4224).
  • Solarized dark and light text editor themes from CodeMirror (#4445).
  • New extension manager for installing extensions from within the JupyterLab UI (#4682, #4925)
  • JupyterLab now ships with a Vega4 renderer by default (upgraded from Vega3). (#4806)
  • Wider tabs in the main working area to show longer filenames (#4801).
  • The HTML sanitizer now allows some extra tags in rendered HTML, including kbd, sup, and sub. (#4618).
  • Javascript execution in notebook cells has been re-enabled (#4515).
  • The console execute shortcut can now be set to either Enter or Shift Enter as a Console setting. (#4054).
  • Initial kernel selection for a notebook or console can no longer be canceled: the user must select a kernel. (#4596).
  • The command palette now renders labels, toggled state, and keyboard shortcuts in a more consistent and correct way. (#4533, #4510).

Changes for developers include:

  • The JupyterLab codebase is now compiled to ES6 rather than ES5. Extension authors may have some minor compatibility updates to make. If you are writing an extension in Typescript, we recommend changing it to ES6 as well. (#4462).
  • The JupyterLab codebase is now formatted using Prettier. By default the development environment installs a pre-commit hook that auto-formats your staged changes. (#4090).
  • A new signal for observing application dirty status state changes (#4840)
  • A new signal for observing notebook cell execution (#4740, #4744).
  • A new API for removing groups from a JupyterLab menu. addGroup now returns an IDisposable which can be used to remove the group. removeGroup has been removed. (#4890)
  • The Launcher now uses commands from the application CommandRegistry to launch new activities. Extension authors that add items to the launcher will need to update them to use commands. (#4757).
  • There is now a top-level addToBottomArea function in the application, allowing extension authors to add bottom panel items like status bars. (#4752).
  • Rendermime extensions can now indicate that they are the default rendered widget factory for a file-type. For instance, the default widget for a markdown file is a text editor, but the default rendered widget is the markdown viewer. (#4692).
  • Add new workplace REST endpoints to jupyterlab_launcher and make them available in @jupyterlab/services (#4841).
  • Documents created with a mimerenderer extension can now be accessed using an IInstanceTracker which tracks them. Include the token IMimeDocumentTracker in your plugin to access this. The IInstanceTracker interface has also gained convenience functions find and filter to simplify iterating over instances. (#4762).
  • getNotebookVersion is added to the PageConfig (#4224).

Fixes

  • Fixed a rendering bug with the Launcher in single-document mode. (#4805)
  • Fixed a bug where the native context menu could not be triggered in a notebook cell in Chrome. (#4720).
  • Fixed a bug where the cursor would not show up in the dark theme. (#4699).
  • Fixed a bug preventing relative links from working correctly in alternate IDrives. (#4613).
  • Fixed a bug breaking the image viewer upon saving the image. (#4602).
  • Prevented a memory leak when repeatedly rendering a Vega chart. (#4904).
  • Support dropped terminal connection re-connecting (#4763, #4802).
  • Use require.ensure in vega4-extension to lazily load vega-embed and its dependencies on first render (#4706).
  • Relative links to documents that include anchor tags will now correctly scroll the document to the right place. (#4692).
  • Fix default settings JSON in setting editor (#4591, #4595).
  • Fix setting editor pane layout's stretch factor (#2971, #4772).
  • Programmatically set settings are now output with nicer formatting. (#4870)

Beta 2 (v0.32.0)

Apr 16, 2018

This is the second in the JupyterLab Beta series of releases. It contains many enhancements, bugfixes, and refinements, including:

  • Better handling of a corrupted or invalid state database (#3619, #3622, #3687, #4114).
  • Fixing file dirty status indicator (#3652).
  • New option for whether to autosave documents (#3734).
  • More commands in the notebook context menu (#3770, #3909)
  • Defensively checking for completion metadata from kernels (#3888)
  • New "Shutdown all" button in the Running panel (#3764)
  • Performance improvements wherein non-focused documents poll the server less (#3931)
  • Changing the keyboard shortcut for singled-document-mode to something less easy to trigger (#3889)
  • Performance improvements for rendering text streams, especially around progress bars (#4045).
  • Canceling a "Restart Kernel" now functions correctly (#3703).
  • Defer loading file contents until after the application has been restored (#4087).
  • Ability to rotate, flip, and invert images in the image viewer (#4000)
  • Major performance improvements for large CSV viewing (#3997).
  • Always show the context menu in the file browser, even for an empty directory (#4264).
  • Handle asynchronous comm messages in the services library more correctly (Note: this means @jupyterlab/services is now at version 2.0!) (#4115).
  • Display the kernel banner in the console when a kernel is restarted to mark the restart (#3663).
  • Many tweaks to the UI, as well as better error handling.

Beta 1 (v0.31.0)

Jan 11, 2018

v0.30.0

Dec 05, 2017

v0.29.2

Nov 17, 2017

Bug fix for file browser right click handling. https://github.com/jupyterlab/jupyterlab/issues/3019

v0.29.0

Nov 09, 2017

  • Create new view of cell in cell context menu. #3159
  • New Renderers for VDOM and JSON mime types and files. #3157
  • Switch to React for our VDOM implementation. Affects the VDomRenderer class. #3133
  • Standalone Cell Example. #3155

v0.28.0

Oct 16, 2017

This release generally focuses on developer and extension author enhancements and general bug fixes.

  • Plugin id and schema file conventions change. https://github.com/jupyterlab/jupyterlab/pull/2936.
  • Theme authoring conventions change. #3061
  • Enhancements to enabling and disabling of extensions. #3078
  • Mime extensions API change (name -> id and new naming convention). #3078
  • Added a jupyter lab --watch mode for extension authors. #3077
  • New comprehensive extension authoring tutorial. #2921
  • Added the ability to use an alternate LaTeX renderer. #2974
  • Numerous bug fixes and style enhancements.

v0.27.0

Aug 23, 2017

v0.26.0

Jul 21, 2017

v0.25.0

Jul 07, 2017

v0.24.0

Jun 16, 2017

  • Overhaul of the launcher. #2380
  • Initial implementation of client-side settings system. #2157
  • Updatable outputs. #2439
  • Use new Phosphor Datagrid for CSV viewer. #2433
  • Added ability to enable/disable extensions without rebuilding. #2409
  • Added language and tab settings for the file viewer. #2406
  • Improvements to real time collaboration experience. #2387 #2333
  • Compatibility checking for extensions. #2410
  • Numerous bug fixes and style improvements.

v0.23.0

Jun 02, 2017

0.22.0 (v0.22.0)

May 18, 2017

0.20.0 (v0.20.0)

Apr 21, 2017

Release Notes:

Numerous bug fixes and improvements.

Release 0.19 (v0.19.0)

Apr 04, 2017

Mainly backend-focused release with compatibility with Phosphor 1.0 and a big refactor of session handling (the ClientSession class) that provides a simpler object for classes like notebooks, consoles, inspectors, etc. to use to communicate with the API. Also includes improvements to the development workflow of JupyterLab itself after the big split.

https://github.com/jupyterlab/jupyterlab/pull/1984 https://github.com/jupyterlab/jupyterlab/pull/1927

Version 0.18 (v0.18.0)

Mar 21, 2017

0.17.0 (v0.17.0)

Mar 01, 2017

Version 16 (v0.16.0)

Feb 09, 2017

  • Adds a Cell Tools sidebar that allows you to edit notebook cell metadata. #1586.
  • Adds keyboard shortcuts to switch between tabs (Cmd/Ctrl LeftArrow and Cmd/Ctrl RightArrow). #1647
  • Upgrades to xterm.js 2.3. #1664
  • Fixes a bug in application config, but lab extensions will need to be re-enabled. #1607
  • Numerous other bug fixes and style improvements.