JupyterLab v2.1.0 Release Notes

  • April 2020

    ๐Ÿ‘€ See the JupyterLab 2.1 milestone on GitHub for the full list of pull requests and issues closed.

    ๐Ÿ‘‰ User-facing changes

    • 0๏ธโƒฃ Display the extension manager in the left sidebar by default. Users will need to acknowledge the disclaimer in the extension manager before using it. (#8050, #8145)
    • โž• Added blacklist and whitelist support <extension_listings> for the extension manager (#7989)
    • Automatically link URLs in notebook output text (#8075, #7393)
    • โž• Added a \"Restart Kernel and Run All Cells...\" button to the notebook toolbar (#8024)
    • โž• Added a context menu item for opening a Markdown editor from the Markdown preview (#7942)

    • ๐Ÿ‘Œ Support Node.js 10+ (#8112, #8083)

    • โž• Added a command to replace the selection in an editor with text (inserting if there is no selection). This can be assigned a keyboard shortcut, as shown below. We also added a command to go through a series of commands and run the first enabled command. (#7908) Here is a keyboard shortcut to insert text in a currently-active notebook editor:

      {
        command: "notebook:replace-selection",
        selector: ".jp-Notebook",
        keys: ["Ctrl L"],
        args: {text: "lambda x: x"}
      }
    

    Here is a keyboard shortcut to insert text into an editor of the currently active console, file editor, or notebook:

      {
        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"}
        }
      }
    

    For developers

    • ๐Ÿ”Œ NotebookWidgetFactory is now a plugin so it can be overridden (#8066, #7996)
    • Many improvements to LabIcon: work with all SVG loaders, improve performance, fix issue with menus from extensions (#8125)
    • ๐Ÿ”„ Change the header application area to a box panel, which means the header area will display if its children set their minimum height (#8059, #7279)
    • JupyterLab\'s custom context menu is now disabled on all descendants of a DOM element with a data-jp-suppress-context-menu attribute (#7877, #7670)

    ๐Ÿ›  Bugfixes

    • ๐Ÿ›  Fix property inspector restoration on reload (#8114)
    • โฑ Increase the timeout for yarn (#8104, #8102)
    • ๐Ÿ›  Fix find and replace with empty strings (#8100, #8098)
    • Select search text when focusing the search overlay (#8073, #7932)
    • ๐Ÿ›  Fix attaching images with spaces in their names to Markdown cells (#8095)
    • ๐Ÿ›  Fix build errors by distributing the .yarnrc configuration with the Python package (#8045)
    • Throttle fetch requests in the setting registry\'s data connector (#7927)
    • Close the gap between lines in notebook output (#7832, #7760)