Description
**[Installation](#installation)** | **[Documentation](https://jupyterlab.readthedocs.io)** | **[Contributing](#contributing)** | **[License](#license)** | **[Team](#team)** | **[Getting help](#getting-help)** | # [JupyterLab](https://jupyterlab.readthedocs.io) [](https://badge.fury.io/py/jupyterlab) [](https://pepy.tech/projects/jupyterlab) [](https://github.com/jupyterlab/jupyterlab/actions?query=branch%3Amain+workflow%3A%22Linux+Tests%22) [](https://github.com/jupyterlab/jupyterlab/actions?query=branch%3Amain+workflow%3A%22Windows+Tests%22) [](http://jupyterlab.readthedocs.io/en/stable/) [](https://crowdin.com/project/jupyterlab) [](https://www.bestpractices.dev/projects/8675) [](https://scorecard.dev/viewer/?uri=github.com/jupyterlab/jupyterlab) [](https://github.com/jupyterlab/jupyterlab/issues) [](https://discourse.jupyter.org/c/jupyterlab) [](https://jupyter.zulipchat.com/#narrow/channel/469762-jupyterlab) [](https://mybinder.org/v2/gh/jupyterlab/jupyterlab-demo/HEAD?urlpath=lab/tree/demo) An extensible environment for interactive and reproducible computing, based on the Jupyter Notebook and Architecture. [JupyterLab](http://jupyterlab.readthedocs.io/en/stable/) is the next-generation user interface for [Project Jupyter](https://jupyter.org) offering all the familiar building blocks of the classic Jupyter Notebook (notebook, terminal, text editor, file browser, rich outputs, etc.) in a flexible and powerful user interface. JupyterLab can be extended using [npm](https://www.npmjs.com/) packages that use our public APIs. The _prebuilt_ extensions can be distributed via [PyPI](https://pypi.org/search/?q=jupyterlab&o=-created&c=Framework+%3A%3A+Jupyter), conda, and other package managers. The _source_ extensions can be installed directly from npm (search for [jupyterlab-extension](https://www.npmjs.com/search?q=keywords:jupyterlab-extension)) but require an additional build step. You can also find JupyterLab extensions exploring GitHub topic [jupyterlab-extension](https://github.com/topics/jupyterlab-extension). To learn more about extensions, see the [user documentation](https://jupyterlab.readthedocs.io/en/stable/user/extensions.html). Read the current JupyterLab documentation on [ReadTheDocs](http://jupyterlab.readthedocs.io/en/stable/). > [!IMPORTANT] > JupyterLab 3 reached its end of maintenance date on May 15, 2024. Fixes for critical issues will still be backported until December 31, 2024. If you are still running JupyterLab 3, we strongly encourage you to **upgrade to JupyterLab 4 as soon as possible.** For more information, see [JupyterLab 3 end of maintenance](https://blog.jupyter.org/jupyterlab-3-end-of-maintenance-879778927db2) on the Jupyter Blog. --- ## Getting started ### Installation If you use [conda](https://docs.conda.io/en/latest/), [mamba](https://mamba.readthedocs.io/en/latest/), or [pip](https://docs.python.org/3/installing/index.html), you can install JupyterLab with one of the following commands. - If you use conda: ```shell conda install -c conda-forge jupyterlab ``` - If you use mamba: ```shell mamba install -c conda-forge jupyterlab ``` - If you use pip: ```shell pip install jupyterlab ``` If installing using `pip install --user`, you must add the user-level `bin` directory to your `PATH` environment variable in order to launch `jupyter lab`. If you are using a Unix derivative (e.g., FreeBSD, GNU/Linux, macOS), you can do this by running `export PATH="$HOME/.local/bin:$PATH"`. For more detailed instructions, consult the [installation guide](http://jupyterlab.readthedocs.io/en/stable/getting_started/installation.html). Project installation instructions from the git sources are available in the [contributor documentation](CONTRIBUTING.md). #### Installing with Previous Versions of Jupyter Notebook When using a version of Jupyter Notebook earlier than 5.3, the following command must be run after installing JupyterLab to enable the JupyterLab server extension: ```bash jupyter se
Release History
| Version | Changes | Urgency | Date |
|---|---|---|---|
| 4.5.6 | Imported from PyPI (4.5.6) | Low | 4/21/2026 |
| v4.5.6 | ## 4.5.6 ([Full Changelog](https://github.com/jupyterlab/jupyterlab/compare/v4.5.5...a6dda8829b2d6b670de634081d26c1a39be145c4)) ### Bugs fixed - Replace scrollback implementation with scroll anchoring outside of `full` windowing mode [#18522](https://github.com/jupyterlab/jupyterlab/pull/18522) ([@krassowski](https://github.com/krassowski)) - Harmonize translation wrappers in Python files to use `gettext` methods [#18597](https://github.com/jupyterlab/jupyterlab/pull/18597) ([@tmetzl](https | Low | 3/11/2026 |
| v4.6.0a4 | ## 4.6.0a4 ([Full Changelog](https://github.com/jupyterlab/jupyterlab/compare/v4.6.0a3...f34f5c9c4bc572a5d0f4addb886a8739a84aa33a)) ### Enhancements made - Expose `IDefaultFileBrowserRenderer` to customize the default file browser renderer [#18600](https://github.com/jupyterlab/jupyterlab/pull/18600) ([@jtpio](https://github.com/jtpio), [@krassowski](https://github.com/krassowski)) - Improve screen reader behavior in launcher/notebook and add tests [#18570](https://github.com/jupyterlab/jup | Low | 3/11/2026 |
| v4.5.5 | ## 4.5.5 ([Full Changelog](https://github.com/jupyterlab/jupyterlab/compare/v4.5.4...4a223c0dbe53f47f03cdff3573fd7e9ccbb2605b)) ### Bugs fixed - Fix theme settings broken in non-English locales [#18530](https://github.com/jupyterlab/jupyterlab/pull/18530) ([@apoorvdarshan](https://github.com/apoorvdarshan)) - Fix comms subshell resource management on disposal and when changing settings [#18531](https://github.com/jupyterlab/jupyterlab/pull/18531) ([@krassowski](https://github.com/krassowski | Low | 2/23/2026 |
| v4.6.0a3 | ## 4.6.0a3 ([Full Changelog](https://github.com/jupyterlab/jupyterlab/compare/v4.6.0a2...fcfab45e4bcf32eab257ce52a82b0e45cc8eee66)) ### Enhancements made - Expand the file browser breadcrumbs when there is space available adaptively [#18430](https://github.com/jupyterlab/jupyterlab/pull/18430) ([@MUFFANUJ](https://github.com/MUFFANUJ), [@krassowski](https://github.com/krassowski)) - Add setting to paste code cells without their outputs [#18390](https://github.com/jupyterlab/jupyterlab/pull/ | Low | 2/23/2026 |
| v4.5.4 | ## 4.5.4 ([Full Changelog](https://github.com/jupyterlab/jupyterlab/compare/v4.5.3...19f81fcfb33889b59260da8b5aa9221379f10d11)) ### Bugs fixed - Avoid using system clipboard in Notebook widget [#18474](https://github.com/jupyterlab/jupyterlab/pull/18474) ([@brichet](https://github.com/brichet)) - Update CodeMirror versions, fixing a few selection issues [#18466](https://github.com/jupyterlab/jupyterlab/pull/18466) ([@krassowski](https://github.com/krassowski)) - Fix debugger variable panel | Low | 2/11/2026 |
| v4.5.3 | ## 4.5.3 ([Full Changelog](https://github.com/jupyterlab/jupyterlab/compare/v4.5.2...a3c7cc66c59cc260de9abe56d0d9aaba824d2036)) ### Bugs fixed - Fix error in console when the debugger switch from a module to another [#18352](https://github.com/jupyterlab/jupyterlab/pull/18352) ([@brichet](https://github.com/brichet)) - Fix focus of replace buttons in the document search box [#18362](https://github.com/jupyterlab/jupyterlab/pull/18362) ([@IsabelParedes](https://github.com/IsabelParedes)) - U | Low | 1/23/2026 |
| v4.6.0a2 | ## 4.6.0a2 ([Full Changelog](https://github.com/jupyterlab/jupyterlab/compare/v4.6.0a1...7d2dba2a79d7b5a979fa08828d4761f708482d79)) ### Enhancements made - Enable moving the console prompt if the console is visible [#18332](https://github.com/jupyterlab/jupyterlab/pull/18332) ([@brichet](https://github.com/brichet), [@krassowski](https://github.com/krassowski)) - Add Ctrl+B shortcut to toggle bold formatting in markdown cells [#18328](https://github.com/jupyterlab/jupyterlab/pull/18328) ([@ | Low | 1/22/2026 |
| v4.6.0a1 | ## 4.6.0a1 ([Full Changelog](https://github.com/jupyterlab/jupyterlab/compare/v4.6.0a0...6cc42e8f4ceb3f777ebf52b06333c340c28a6e42)) ### Enhancements made - Added `interrupt_mode` to the Kernel Spec interface [#18307](https://github.com/jupyterlab/jupyterlab/pull/18307) ([@fleming79](https://github.com/fleming79), [@krassowski](https://github.com/krassowski)) - add better colour to improve visibility against the background [#18284](https://github.com/jupyterlab/jupyterlab/pull/18284) ([@MUFF | Low | 1/12/2026 |
| v4.5.2 | ## 4.5.2 ([Full Changelog](https://github.com/jupyterlab/jupyterlab/compare/v4.5.1...bb13be16887be7116f086da699bd09208042e2b6)) ### Bugs fixed - Backport PR #18250: Make system clipboard opt-in [#18319](https://github.com/jupyterlab/jupyterlab/pull/18319) ([@Darshan808](https://github.com/Darshan808), [@krassowski](https://github.com/krassowski)) - Fix empty math block throws codemirror's error [#18308](https://github.com/jupyterlab/jupyterlab/pull/18308) ([@i-aki-y](https://github.com/i-ak | Low | 1/12/2026 |
| v4.6.0a0 | ## 4.6.0a0 ([Full Changelog](https://github.com/jupyterlab/jupyterlab/compare/v4.5.0...cf5029786133fac829dc094d5f5de16fa1cda729)) ### New features added - feat(completer): Add syntax highlighting for ghost text [#18073](https://github.com/jupyterlab/jupyterlab/pull/18073) ([@MUFFANUJ](https://github.com/MUFFANUJ), [@Darshan808](https://github.com/Darshan808), [@jtpio](https://github.com/jtpio), [@krassowski](https://github.com/krassowski)) ### Deprecated features - Drives: Depre | Low | 12/15/2025 |
| v4.5.1 | ## 4.5.1 ([Full Changelog](https://github.com/jupyterlab/jupyterlab/compare/v4.5.0...0631dcf3bc4333594a02ee975f00c37a937591f5)) ### Deprecated features - Drives: Deprecate the notion of defaultContentProvider [#18169](https://github.com/jupyterlab/jupyterlab/pull/18169) ([@martinRenou](https://github.com/martinRenou)) ### Enhancements made - Detect and log slow plugins [#18181](https://github.com/jupyterlab/jupyterlab/pull/18181) ([@Darshan808](https://github.com/Darshan808)) ### Bugs fi | Low | 12/15/2025 |
| v4.5.0 | ## 4.5.0 ([Full Changelog](https://github.com/jupyterlab/jupyterlab/compare/v4.4.1...05df0d2487691b9bbf9d5e606238702152c3c634)) ### New features added - Add terminal search functionality [#17691](https://github.com/jupyterlab/jupyterlab/pull/17691) ([@ianthomas23](https://github.com/ianthomas23)) ### Enhancements made - Fix kernel status display in status bar [#18047](https://github.com/jupyterlab/jupyterlab/pull/18047) ([@Darshan808](https://github.com/Darshan808)) - Introduce `DebuggerD | Low | 11/18/2025 |
| v4.5.0rc1 | ## 4.5.0rc1 ([Full Changelog](https://github.com/jupyterlab/jupyterlab/compare/v4.5.0rc0...f1675bd277961ea24d369a90237d3d218df932b6)) ### Bugs fixed - Update lumino to `v2025.11.13` [#18108](https://github.com/jupyterlab/jupyterlab/pull/18108) ([@krassowski](https://github.com/krassowski)) - Use `IntersectionObserver` to disable containment for on-screen cells [#18091](https://github.com/jupyterlab/jupyterlab/pull/18091) ([@Meriem-BenIsmail](https://github.com/Meriem-BenIsmail)) - Fix layou | Low | 11/13/2025 |
| v4.5.0rc0 | ## 4.5.0rc0 ([Full Changelog](https://github.com/jupyterlab/jupyterlab/compare/v4.5.0b1...7f9ee36c7c27e96c1f7ffe9979dcac8ac7f374e6)) ### Enhancements made - Fix kernel status display in status bar [#18047](https://github.com/jupyterlab/jupyterlab/pull/18047) ([@Darshan808](https://github.com/Darshan808)) - Introduce `DebuggerDisplayRegistry` to provide context-aware display names for debugger panels [#18043](https://github.com/jupyterlab/jupyterlab/pull/18043) ([@arjxn-py](https://github.co | Low | 10/30/2025 |
| v4.4.10 | ## 4.4.10 ([Full Changelog](https://github.com/jupyterlab/jupyterlab/compare/v4.4.9...58c8b829753da3a3a56a275448d01ecabd842ef2)) ### Bugs fixed - Fix `ObservableList.removeValue` behaviour: if item isn't found, don't just remove the last item! [#18019](https://github.com/jupyterlab/jupyterlab/pull/18019) ([@robertstrauss](https://github.com/robertstrauss)) - Fix highlighting search on output cells and previous match skips [#17797](https://github.com/jupyterlab/jupyterlab/pull/17797) ([@itsm | Low | 10/22/2025 |
| v4.5.0b1 | ## 4.5.0b1 ([Full Changelog](https://github.com/jupyterlab/jupyterlab/compare/v4.5.0b0...d494a58d21ed42447e89ad318f1301593e22f121)) ### Enhancements made - Show execution count in breakpoints, callstack, and sources panels while debugging in console [#18003](https://github.com/jupyterlab/jupyterlab/pull/18003) ([@arjxn-py](https://github.com/arjxn-py)) - Make `DocumentManager` dialogs customizable [#17961](https://github.com/jupyterlab/jupyterlab/pull/17961) ([@Darshan808](https://github.co | Low | 10/16/2025 |
| v4.5.0b0 | ## 4.5.0b0 ([Full Changelog](https://github.com/jupyterlab/jupyterlab/compare/v4.5.0a4...04885e1c403b73f70dde7e66ba0a4908dc384389)) ### Enhancements made - Switch the default windowing mode to `contentVisibility` [#17926](https://github.com/jupyterlab/jupyterlab/pull/17926) ([@Meriem-BenIsmail](https://github.com/Meriem-BenIsmail)) - Pass context down in attachments resolver [#17924](https://github.com/jupyterlab/jupyterlab/pull/17924) ([@krassowski](https://github.com/krassowski)) - Allow | Low | 9/27/2025 |
| v4.4.9 | ## 4.4.9 ([Full Changelog](https://github.com/jupyterlab/jupyterlab/compare/v4.4.8...80d2a2ce152f359dbe17af364942472776b49fc7)) ### Bugs fixed - Correctly dispose `TerminalManager` even if terminals are not available [#17876](https://github.com/jupyterlab/jupyterlab/pull/17876) ([@krassowski](https://github.com/krassowski)) - Fix scrolling to targets within notebook [#17928](https://github.com/jupyterlab/jupyterlab/pull/17928) ([@krassowski](https://github.com/krassowski)) ### Contributors | Low | 9/26/2025 |
| v4.4.8 | ## 4.4.8 ([Full Changelog](https://github.com/jupyterlab/jupyterlab/compare/v4.4.7...526a3d7f7038ed24903bf9c88b9df3e061c65b28)) ### Bugs fixed - Debugger: Only send the `configurationDone` message once as per the DAP [#17912](https://github.com/jupyterlab/jupyterlab/pull/17912) ([@martinRenou](https://github.com/martinRenou)) - Fix output prompt overlay height for large outputs [#17863](https://github.com/jupyterlab/jupyterlab/pull/17863) ([@Meriem-BenIsmail](https://github.com/Meriem-BenIs | Low | 9/25/2025 |
| v4.5.0a4 | ## 4.5.0a4 ([Full Changelog](https://github.com/jupyterlab/jupyterlab/compare/v4.5.0a3...fef3a00d0e6bc87c2261da7a6256ec8cf7de0551)) ### Enhancements made - Add `IUserAPIClient` to make swapping `UserManager` easier [#17884](https://github.com/jupyterlab/jupyterlab/pull/17884) ([@krassowski](https://github.com/krassowski)) - Provide context about the tag and attribute to the URL resolver [#17882](https://github.com/jupyterlab/jupyterlab/pull/17882) ([@krassowski](https://github.com/krassowsk | Low | 9/22/2025 |
| v4.4.7 | ## 4.4.7 ([Full Changelog](https://github.com/jupyterlab/jupyterlab/compare/v4.4.6...983e1c3b5849b6e8ce8d92b161917bd22fdb7937)) ### Enhancements made - Update to mermaid 11.10, marked 16.2 [#17813](https://github.com/jupyterlab/jupyterlab/pull/17813) ([@bollwyvl](https://github.com/bollwyvl)) ### Bugs fixed - Change default line wrap in default editor config [#17818](https://github.com/jupyterlab/jupyterlab/pull/17818) ([@gjmooney](https://github.com/gjmooney)) - Select file and accept di | Low | 9/3/2025 |
| v4.5.0a3 | ## 4.5.0a3 ([Full Changelog](https://github.com/jupyterlab/jupyterlab/compare/v4.5.0a2...c8afc9469e8817780ed2e5c0dd43f2a9ac199365)) ### New features added - Add terminal search functionality [#17691](https://github.com/jupyterlab/jupyterlab/pull/17691) ([@ianthomas23](https://github.com/ianthomas23)) ### Enhancements made - Allow to swap the URL resolver [#17784](https://github.com/jupyterlab/jupyterlab/pull/17784) ([@krassowski](https://github.com/krassowski)) - Add the "Show Workspace I | Low | 8/15/2025 |
| v4.4.6 | ## 4.4.6 ([Full Changelog](https://github.com/jupyterlab/jupyterlab/compare/v4.4.5...44286551eb1acd17dff1e61c41a24b0e7847e448)) ### Bugs fixed - Preserve original cell during split to maintain kernel connections [#17755](https://github.com/jupyterlab/jupyterlab/pull/17755) ([@Darshan808](https://github.com/Darshan808)) - Fix file browser navigation with `preferredDir` [#17723](https://github.com/jupyterlab/jupyterlab/pull/17723) ([@Darshan808](https://github.com/Darshan808)) - Fix anchor na | Low | 8/15/2025 |
| v4.5.0a2 | ## 4.5.0a2 ([Full Changelog](https://github.com/jupyterlab/jupyterlab/compare/v4.5.0a1...235dd10969c06fa9b68c52d4de7072b119a8f97c)) ### Enhancements made - Auto-switch between light and dark mode when "Synchronize with System Settings" is enabled [#17733](https://github.com/jupyterlab/jupyterlab/pull/17733) ([@MUFFANUJ](https://github.com/MUFFANUJ)) - Keep cell `id` when the user changes cell type [#17731](https://github.com/jupyterlab/jupyterlab/pull/17731) ([@afshin](https://github | Low | 8/8/2025 |
| v4.4.5 | ## 4.4.5 ([Full Changelog](https://github.com/jupyterlab/jupyterlab/compare/v4.4.4...5c433d7b6dc090db623e70b9cedc7b85f1b13eae)) ### Bugs fixed - Fix scrollbar behaviour when scrolling past long cell in full windowing mode [#17705](https://github.com/jupyterlab/jupyterlab/pull/17705) ([@krassowski](https://github.com/krassowski)) - Update `@codemirror/view` to `v6.38.1`, fixing `lineWrap` in `defer` mode [#17698](https://github.com/jupyterlab/jupyterlab/pull/17698) ([@krassowski](https://git | Low | 7/20/2025 |
| v4.4.4 | ## 4.4.4 ([Full Changelog](https://github.com/jupyterlab/jupyterlab/compare/v4.4.3...3d687a5e0435ca1df6c85c534ab8f7a6429948ff)) ### Bugs fixed - Fix colors for CodeMirror panels [#17666](https://github.com/jupyterlab/jupyterlab/pull/17666) ([@krassowski](https://github.com/krassowski)) - Fix cell toolbar enabled status with multiple notebooks [#17625](https://github.com/jupyterlab/jupyterlab/pull/17625) ([@MUFFANUJ](https://github.com/MUFFANUJ)) - Create a subshell per target and kern | Low | 6/28/2025 |
| v4.3.8 | ## 4.3.8 ([Full Changelog](https://github.com/jupyterlab/jupyterlab/compare/v4.3.7...0367662b2e1835978dd34e039956850495605a10)) ### Bugs fixed - Fix setting allowed schemes on runtime using `Sanitizer.setAllowedSchemes` [#17602](https://github.com/jupyterlab/jupyterlab/pull/17602) ([@bsundaram1](https://github.com/bsundaram1)) - Fix error handing in extension manager (typo and undefined variable) [#17592](https://github.com/jupyterlab/jupyterlab/pull/17592) ([@Darshan808](https://github.com | Low | 6/24/2025 |
| v4.5.0a1 | ## 4.5.0a1 ([Full Changelog](https://github.com/jupyterlab/jupyterlab/compare/v4.5.0a0...9241bcb7a2283e1749ac6bc8934e4eef670ef603)) ### Enhancements made - Add a `selectionChanged` signal to the file browser [#17563](https://github.com/jupyterlab/jupyterlab/pull/17563) ([@jtpio](https://github.com/jtpio)) - Auto-open uploaded files with size and settings control [#17556](https://github.com/jupyterlab/jupyterlab/pull/17556) ([@Darshan808](https://github.com/Darshan808)) - Add a setting to co | Low | 5/26/2025 |
| v4.4.3 | ## 4.4.3 ([Full Changelog](https://github.com/jupyterlab/jupyterlab/compare/v4.4.2...763903ff99eed3bd50f0c9a9081b4f226138d634)) ### Bugs fixed - Enable save in collaborative mode [#17508](https://github.com/jupyterlab/jupyterlab/pull/17508) ([@Darshan808](https://github.com/Darshan808)) - Fix error handing in extension manager (typo and undefined variable) [#17592](https://github.com/jupyterlab/jupyterlab/pull/17592) ([@Darshan808](https://github.com/Darshan808)) - Ensure strings wi | Low | 5/26/2025 |
| v4.5.0a0 | ## 4.5.0a0 ([Full Changelog](https://github.com/jupyterlab/jupyterlab/compare/v4.4.1...7160c308c0e66b2043818a4a5659e982b661b01f)) ### Enhancements made - Add an optional `exportAs` method to `NbConvert.IManager` [#17482](https://github.com/jupyterlab/jupyterlab/pull/17482) ([@jtpio](https://github.com/jtpio)) - Reorder `extra_labextensions_path` to favor defaults [#17476](https://github.com/jupyterlab/jupyterlab/pull/17476) ([@peytondmurray](https://github.com/peytondmurray)) ### Bugs fixe | Low | 5/7/2025 |
| v4.4.2 | ## 4.4.2 ([Full Changelog](https://github.com/jupyterlab/jupyterlab/compare/v4.4.1...ad8d84f6505b3cc201cb59a95a828eeed4392bd6)) ### Bugs fixed - Fix Settings Editor incorrectly resetting values to default in filtered view [#17540](https://github.com/jupyterlab/jupyterlab/pull/17540) ([@yukiiii04](https://github.com/yukiiii04)) - Upgrade CodeMirror packages to latest [#17526](https://github.com/jupyterlab/jupyterlab/pull/17526) ([@krassowski](https://github.com/krassowski)) - Update widget f | Low | 5/6/2025 |
| v4.3.7 | ## 4.3.7 ([Full Changelog](https://github.com/jupyterlab/jupyterlab/compare/v4.3.6...b1cef18046003274a80a47af824aca009deebc9e)) ### Bugs fixed - Fix editing shortcuts on Safari (allow shortcut edit button to receive focus) [#17511](https://github.com/jupyterlab/jupyterlab/pull/17511) ([@minrk](https://github.com/minrk)) - Fix undo/redo in cells created in `none` windowing mode [#17486](https://github.com/jupyterlab/jupyterlab/pull/17486) ([@krassowski](https://github.com/krassowski)) - Fix | Low | 4/30/2025 |
| v4.4.1 | ## 4.4.1 ([Full Changelog](https://github.com/jupyterlab/jupyterlab/compare/v4.4.0...431caf5477f1c329bb68449a785ca7edda9df963)) ### Bugs fixed - Fix undo/redo in cells created in `none` windowing mode [#17486](https://github.com/jupyterlab/jupyterlab/pull/17486) ([@krassowski](https://github.com/krassowski)) - Fix token extraction for incomplete paths [#17477](https://github.com/jupyterlab/jupyterlab/pull/17477) ([@DenisaCG](https://github.com/DenisaCG)) - Fix handling of the single | Low | 4/22/2025 |
| v4.4.0 | ## 4.4.0 See: https://jupyterlab.readthedocs.io/en/latest/getting_started/changelog.html#v4-4 ([Full Changelog](https://github.com/jupyterlab/jupyterlab/compare/v4.3.0...7723a3d266b14aae183f9ec9ee04d60559169f46)) ### New features added - Add Settings Import Feature from a JSON File [#16994](https://github.com/jupyterlab/jupyterlab/pull/16994) ([@Darshan808](https://github.com/Darshan808)) - Support kernel subshells [#16963](https://github.com/jupyterlab/jupyterlab/pull/16963) ([@i | Low | 4/3/2025 |
| v4.4.0rc1 | ## 4.4.0rc1 ([Full Changelog](https://github.com/jupyterlab/jupyterlab/compare/v4.4.0rc0...7723a3d266b14aae183f9ec9ee04d60559169f46)) ### Bugs fixed - Fix CommandPalette gets re-rendered even if hidden [#17442](https://github.com/jupyterlab/jupyterlab/pull/17442) ([@fcollonval](https://github.com/fcollonval)) - Add distinct accessible aria label for each toolbar [#17441](https://github.com/jupyterlab/jupyterlab/pull/17441) ([@nkn2022](https://github.com/nkn2022)) - Fix read-only indicator n | Low | 4/2/2025 |
| v4.4.0rc0 | ## 4.4.0rc0 ([Full Changelog](https://github.com/jupyterlab/jupyterlab/compare/v4.4.0b2...4c6159f834ad1507384653a4aeba2ab67a11f255)) ### Enhancements made - Create "Kernels" section, split statusbar settings [#17415](https://github.com/jupyterlab/jupyterlab/pull/17415) ([@krassowski](https://github.com/krassowski)) - Improve UX for "Rename on First Save" Dialog [#17217](https://github.com/jupyterlab/jupyterlab/pull/17217) ([@MUFFANUJ](https://github.com/MUFFANUJ)) ### Bugs fixed - Fix for | Low | 3/25/2025 |
| v4.4.0b2 | ## 4.4.0b2 ([Full Changelog](https://github.com/jupyterlab/jupyterlab/compare/v4.4.0b1...5408b22af13e3b695cfd3ae75733de0b6d0c9ac6)) ### Enhancements made - Add `IKernelSpecAPICLient` and `ITerminalAPIClient`, fix definitions of interfaces [#17395](https://github.com/jupyterlab/jupyterlab/pull/17395) ([@jtpio](https://github.com/jtpio)) - If subshells are supported by the kernel, send comm messages to subshells [#17363](https://github.com/jupyterlab/jupyterlab/pull/17363) ([@martinRenou](htt | Low | 3/19/2025 |
| v4.3.6 | ## 4.3.6 ([Full Changelog](https://github.com/jupyterlab/jupyterlab/compare/v4.3.5...ef6df9b9234692d5449808bf6cd845562400ab93)) ### Enhancements made - Remove spurious regex to slightly improve performance of streaming large outputs [#17262](https://github.com/jupyterlab/jupyterlab/pull/17262) ([@krassowski](https://github.com/krassowski)) ### Bugs fixed - Fix cell output stream if previous chunk did not end in new line [#17369](https://github.com/jupyterlab/jupyterlab/pull/17369) ([@davi | Low | 3/14/2025 |
| v4.4.0b1 | ## 4.4.0b1 ([Full Changelog](https://github.com/jupyterlab/jupyterlab/compare/v4.4.0b0...b64a95bc3533a503f26096e0e30bd6592ba8d4c1)) ### Enhancements made - Add a setting to disable the context menu [#17352](https://github.com/jupyterlab/jupyterlab/pull/17352) ([@afshin](https://github.com/afshin)) - Add `IKernelAPIClient` and `ISessionAPIClient` as options for `Kernel.IManager` and `Session.IManager` [#17348](https://github.com/jupyterlab/jupyterlab/pull/17348) ([@jtpio](https://github.com/ | Low | 3/13/2025 |
| v4.4.0b0 | ## 4.4.0b0 ([Full Changelog](https://github.com/jupyterlab/jupyterlab/compare/v4.4.0a3...183042e34850d8c89f485eb2bcdfd4118b3883f5)) ### Enhancements made - Speed up output rendering: add a limit on max length of protocol to linkify [#17264](https://github.com/jupyterlab/jupyterlab/pull/17264) ([@krassowski](https://github.com/krassowski)) - Remove spurious regex to slightly improve performance of streaming large outputs [#17262](https://github.com/jupyterlab/jupyterlab/pull/17262) ([@krasso | Low | 2/19/2025 |
| v4.3.5 | ## 4.3.5 ([Full Changelog](https://github.com/jupyterlab/jupyterlab/compare/v4.3.4...f8d4b0a1d283b8e70a1fc4be1a6dddb243845c3f)) ### Bugs fixed - Fix scrolling and selection restoration on undo/redo [#17158](https://github.com/jupyterlab/jupyterlab/pull/17158) ([@krassowski](https://github.com/krassowski)) - Fix windowing crash due to out-of-bounds access [#17238](https://github.com/jupyterlab/jupyterlab/pull/17238) ([@krassowski](https://github.com/krassowski)) - Increase color contrast of | Low | 1/29/2025 |
| v4.4.0a3 | ## 4.4.0a3 ([Full Changelog](https://github.com/jupyterlab/jupyterlab/compare/v4.4.0a2...163e788d84d3dea52585e8c6f8b4d2e7bc66ffc2)) ### Enhancements made - Replace R logo with official logo [#17216](https://github.com/jupyterlab/jupyterlab/pull/17216) ([@ajbozarth](https://github.com/ajbozarth)) - Bump `@codemirror/lang-python` to provide match-case indentation [#17189](https://github.com/jupyterlab/jupyterlab/pull/17189) ([@deephbz](https://github.com/deephbz)) - Remove `--subshell-console | Low | 1/28/2025 |
| v4.2.7 | ## 4.2.7 ([Full Changelog](https://github.com/jupyterlab/jupyterlab/compare/v4.2.6...bfd73c8ac0b2c119a35fd2865eb794e3345da00d)) ### Bugs fixed - Use bare string `proxies` parameter for `httpx`\<0.28 [#17113](https://github.com/jupyterlab/jupyterlab/pull/17113) ([@AmberArr](https://github.com/AmberArr)) - Use `AsyncHTTPTransport` over `HTTPTransport` for `httpx` [#17058](https://github.com/jupyterlab/jupyterlab/pull/17058) ([@krassowski](https://github.com/krassowski)) - Abort saving if a fi | Low | 1/8/2025 |
| v4.4.0a2 | ## 4.4.0a2 ([Full Changelog](https://github.com/jupyterlab/jupyterlab/compare/v4.4.0a1...1477b7c60f04f7260bf71afaaec27b6565f7bd61)) ### New features added - Support kernel subshells [#16963](https://github.com/jupyterlab/jupyterlab/pull/16963) ([@ianthomas23](https://github.com/ianthomas23)) ### Enhancements made - Add Content Provider API [#17092](https://github.com/jupyterlab/jupyterlab/pull/17092) ([@krassowski](https://github.com/krassowski)) - Add option to render markdown cells upon | Low | 1/6/2025 |
| v4.4.0a1 | ## 4.4.0a1 ([Full Changelog](https://github.com/jupyterlab/jupyterlab/compare/v4.4.0a0...3ff5dd9abeb22030623990322b8352e923b9673a)) ### New features added - Add Settings Import Feature from a JSON File [#16994](https://github.com/jupyterlab/jupyterlab/pull/16994) ([@Darshan808](https://github.com/Darshan808)) ### Enhancements made - Copy edits in `CONTRIBUTING.md` [#17078](https://github.com/jupyterlab/jupyterlab/pull/17078) ([@JasonWeill](https://github.com/JasonWeill)) - Add option for | Low | 12/18/2024 |
| v4.3.4 | ## 4.3.4 ([Full Changelog](https://github.com/jupyterlab/jupyterlab/compare/v4.3.3...541b913d80679e1315a4d0843e1dfb6ac32ab16f)) ### Bugs fixed - Sync Settings Editor with Updated Settings [#17091](https://github.com/jupyterlab/jupyterlab/pull/17091) ([@Darshan808](https://github.com/Darshan808)) - Focus terminal after copy and paste operations [#17097](https://github.com/jupyterlab/jupyterlab/pull/17097) ([@krassowski](https://github.com/krassowski)) - Fix background of the popup to | Low | 12/18/2024 |
| v4.3.3 | ## 4.3.3 ([Full Changelog](https://github.com/jupyterlab/jupyterlab/compare/v4.3.2...613396a4837586e67e7420155c6cad1d9c8903f1)) ### Bugs fixed - Use `AsyncHTTPTransport` over `HTTPTransport` for `httpx` [#17058](https://github.com/jupyterlab/jupyterlab/pull/17058) ([@krassowski](https://github.com/krassowski)) - Fix filebrowser name order [#17038](https://github.com/jupyterlab/jupyterlab/pull/17038) ([@Nriver](https://github.com/Nriver)) - Remove unused CSS [#16968](https://github.com/jupyt | Low | 12/10/2024 |
| v4.3.2 | ## 4.3.2 ([Full Changelog](https://github.com/jupyterlab/jupyterlab/compare/v4.3.1...a8c4b61ee0340cd1ea3a8bfa6db966440caac703)) ### Bugs fixed - Improve performance of rendering stdout/stderr [#17022](https://github.com/jupyterlab/jupyterlab/pull/17022) ([@krassowski](https://github.com/krassowski)) - Fixing missed first keystroke on Ctrl+F [#17005](https://github.com/jupyterlab/jupyterlab/pull/17005) ([@itsmevichu](https://github.com/itsmevichu)) - Fix disappearing cells (heal offsets afte | Low | 12/3/2024 |
| v4.4.0a0 | ## 4.4.0a0 ([Full Changelog](https://github.com/jupyterlab/jupyterlab/compare/v4.3.0...ef7925c4d1b175a2e51bbeab376cafd57a1d0fe0)) ### Enhancements made - Improve drag image styling [#16936](https://github.com/jupyterlab/jupyterlab/pull/16936) ([@JasonWeill](https://github.com/JasonWeill)) - Update the form schema if it changed [#16907](https://github.com/jupyterlab/jupyterlab/pull/16907) ([@brichet](https://github.com/brichet)) - Export user preference settings to a json file [#1689 | Low | 11/19/2024 |
| v4.3.1 | ## 4.3.1 ([Full Changelog](https://github.com/jupyterlab/jupyterlab/compare/v4.3.0...6d8e2f0c1db3fd776498c72d95f56e3c49218fa2)) ### Bugs fixed - Fix total size estimation in full windowing mode to reduce scrollbar jitter [#16950](https://github.com/jupyterlab/jupyterlab/pull/16950) ([@krassowski](https://github.com/krassowski)) - Fix moving files when `Last Modified` column is hidden [#16962](https://github.com/jupyterlab/jupyterlab/pull/16962) ([@krassowski](https://github.com/krassowski)) | Low | 11/16/2024 |
