Releases: jupyterlab/jupyterlab
v4.6.0a0
4.6.0a0
New features added
- feat(completer): Add syntax highlighting for ghost text #18073 (@MUFFANUJ, @Darshan808, @jtpio, @krassowski)
Deprecated features
- Drives: Deprecate the notion of defaultContentProvider #18169 (@martinRenou, @brichet, @jasongrout, @jtpio, @krassowski)
Enhancements made
- Add a "Stop Debugger" button to the paused overlay #18184 (@arjxn-py, @jtpio, @krassowski, @martinRenou)
- Detect and log slow plugins #18181 (@Darshan808, @jtpio, @krassowski)
- Add the 'jupyterlab' entry point #18158 (@brichet, @jasongrout, @jtpio)
- Add a setting to show file filter bar by default #18104 (@MUFFANUJ, @Darshan808, @krassowski)
- Move Kernel Sources filter bar to toolbar and enable live filtering #18079 (@arjxn-py, @jtpio, @krassowski, @martinRenou)
- Improve the error message provided when jupyterhub is missing #18060 (@frenzymadness, @Darshan808, @hroncok, @krassowski)
Bugs fixed
- Fix search icon styling in command palette #18202 (@Meriem-BenIsmail, @jtpio, @krassowski)
- Fix
scrollPastEndfor text editors #18186 (@Meriem-BenIsmail, @krassowski) - Restore focus after closing the command palette #18167 (@Meriem-BenIsmail, @jasongrout, @krassowski)
- Enable undo/redo in JSON settings editor #18165 (@Meriem-BenIsmail, @krassowski)
- Fix: Safely handle missing args in fileeditor:change-font-size label provider #18157 (@prajyot-porje, @Darshan808, @krassowski)
- Show rename dialog for new files moved before saving #18145 (@anafontan, @Darshan808, @ZhYGuoL, @jtpio)
- Fix Notebook Debugger: Missing Current-Line Highlight #18140 (@arjxn-py, @RRosio, @martinRenou)
- Debugger: Handle the case for editor being null #18124 (@martinRenou, @krassowski)
ToolbarButtonComponentandCommandToolbarButtonComponent: addAriaMenuButtonPropsto allow ARIA menu-button attributes #18118 (@agriyakhetarpal, @krassowski)- Debugger: Fix restart and debug command. #18115 (@HaudinFlorence, @RRosio, @brichet, @krassowski, @martinRenou)
- Respect the
activateoption when opening document widgets #18114 (@brichet, @krassowski) - Restore auto-resizing of the code console input prompts #17819 (@jtpio, @Darshan808, @agriyakhetarpal, @krassowski)
- Fix inconsistent state updates of toolbar buttons #17230 (@MUFFANUJ, @krassowski)
Maintenance and upkeep improvements
- Check if the list of commands, tokens and plugins has changed #18198 (@jtpio, @krassowski)
- Revert "Add the 'jupyterlab' entry point" #18166 (@jtpio, @jasongrout)
- Update to Playwright 1.57.0 #18151 (@jtpio, @krassowski)
- Prevent some supply-chain attack vectors #18142 (@jasongrout, @krassowski, @mfisher87)
- Switch from
webpacktorspackfor bundling #16005 (@jtpio, @FoSuCloud, @chenjiahan, @erkin98, @jasongrout, @krassowski, @xc2)
Documentation improvements
- Update announcement and installation instructions post 4.5.0 final release #18125 (@krassowski, @jtpio, @ktaletsk)
- Clean up old references to restructured text #18123 (@jtpio, @krassowski)
- Add plotting and visualization documentation #18094 (@MMesch, @Darshan808, @krassowski)
Contributors to this release
The following people contributed discussions, new ideas, code and documentation contributions, and review.
See our definition of contributors.
(GitHub contributors page for this release)
@agriyakhetarpal (activity) | @anafontan (activity) | @arjxn-py (activity) | @brichet (activity) | @chenjiahan (activity) | @Darshan808 (activity) | @erkin98 (activity) | @FoSuCloud (activity) | @frenzymadness (activity) | @HaudinFlorence (activity) | @hroncok (activity) | @ianthomas23 ([activity](https://github.com/search?q=repo%3Ajupyterlab%2Fjupyterlab+in...
v4.5.1
4.5.1
Deprecated features
- Drives: Deprecate the notion of defaultContentProvider #18169 (@martinRenou)
Enhancements made
- Detect and log slow plugins #18181 (@Darshan808)
Bugs fixed
- Debugger: Fix restart and debug command. #18115 (@HaudinFlorence)
- Fix
scrollPastEndfor text editors #18186 (@Meriem-BenIsmail) - Enable undo/redo in JSON settings editor #18165 (@Meriem-BenIsmail)
- Restore focus after closing the command palette #18167 (@Meriem-BenIsmail)
- Restore auto-resizing of the code console input prompts #17819 (@jtpio)
- Fix: Safely handle missing args in fileeditor:change-font-size label provider #18157 (@prajyot-porje)
Maintenance and upkeep improvements
- Check if the list of commands, tokens and plugins has changed #18198 (@jtpio)
- Update to Playwright 1.57.0 #18151 (@jtpio)
- Reconfigure 4.5.x branch #18161 (@jtpio, @jasongrout, @krassowski)
Contributors to this release
The following people contributed discussions, new ideas, code and documentation contributions, and review.
See our definition of contributors.
(GitHub contributors page for this release)
@Darshan808 (activity) | @FoSuCloud (activity) | @HaudinFlorence (activity) | @ianthomas23 (activity) | @jasongrout (activity) | @jtpio (activity) | @krassowski (activity) | @martinRenou (activity) | @meeseeksmachine (activity) | @Meriem-BenIsmail (activity) | @prajyot-porje (activity) | @xc2 (activity)
v4.5.0
4.5.0
New features added
- Add terminal search functionality #17691 (@ianthomas23)
Enhancements made
- Fix kernel status display in status bar #18047 (@Darshan808)
- Introduce
DebuggerDisplayRegistryto provide context-aware display names for debugger panels #18043 (@arjxn-py) - Introduce new token for the default
IContentProvider#18027 (@martinRenou) - Update
Show more outputsbutton design #18021 (@andrii-i) - Optimize
content-visibilityapplication #18013 (@Meriem-BenIsmail) - Show execution count in breakpoints, callstack, and sources panels while debugging in console #18003 (@arjxn-py)
- Keep debugger state though kernel restarts #17972 (@gjmooney)
- Make
DocumentManagerdialogs customizable #17961 (@Darshan808) - Systematise how base URL is obtained to allow swapping it more easily #17952 (@krassowski)
- Export the
ContentProviderRegistry#17940 (@martinRenou) - Make filebrowser breadcrumbs configurable #17932 (@Darshan808)
- Switch the default windowing mode to
contentVisibility#17926 (@Meriem-BenIsmail) - Pass context down in attachments resolver #17924 (@krassowski)
- Allow swapping the empty markdown cell placeholder (and translate it) #17920 (@krassowski)
- Enable the minimap for all windowing modes #17904 (@Meriem-BenIsmail)
- Debugger: Differentiate selected breakpoints with specific style #17893 (@HaudinFlorence)
- Use console for debugger evaluation #17892 (@gjmooney)
- Debugger: Visual indicator when debugger is paused #17891 (@arjxn-py)
- Add
IUserAPIClientto make swappingUserManagereasier #17884 (@krassowski) - Provide context about the tag and attribute to the URL resolver #17882 (@krassowski)
- Debugger: Show cell execution count in breakpoint/call stack/source panel #17881 (@arjxn-py)
- Add file browser menu for creating new Python/R/Julia files #17848 (@martinRenou)
- Allow configuring
toSkipfor theSettingsEditor#17834 (@jtpio) - Use
content-visibilityto render notebook cells more efficiently #17822 (@Meriem-BenIsmail) - Use toolbar registry for log console #17814 (@gjmooney)
- Add a new
addExtraLineOnCellMergesetting #17806 (@jtpio) - Update to mermaid 11.10, marked 16.2 #17800 (@bollwyvl)
- Allow opening notebooks without starting a kernel #17798 (@jtpio)
- Allow to swap the URL resolver #17784 (@krassowski)
- Add the "Show Workspace Indicator" command to the palette #17780 (@jtpio)
- Auto-switch between light and dark mode when "Synchronize with System Settings" is enabled #17733 (@MUFFANUJ)
- Keep cell
idwhen the user changes cell type #17731 (@afshin) - Discover the app directory relative to the installed module #17721 (@zanieb)
- Show checkbox and buttons of Dialog component on separate lines #17696 (@MUFFANUJ)
- Add types for interrupt messages, and move them from
shelltocontrolchannel #17684 (@krassowski) - Add fold/unfold commands to menu and command palette #17677 (@Darshan808)
- Add a new
allowFileUploadssetting to the file browser #17676 (@jtpio) - Dockerfile: Install less, vim, and nano #17670 (@rschroll)
- Describe
argsfor all commands #17649 (@jtpio) - Add
audio-extensionandvideo-extension#17636 (@jtpio) - Add select all command for file browser listing #17571 (@RRosio)
- Add a
selectionChangedsignal to the file browser #17563 (@jtpio) - Auto-open uploaded files with size and settings control #17556 (@Darshan808)
- Add a setting to configure the default log level for the Log Console #17547 (@jtpio)
- Add a signal when cells are pasted in the Notebook #17506 (@brichet)
- Add new CSS rule for expanding linked output to 100% height #17487 (@SylvainCorlay)
- Add an optional
exportAsmethod toNbConvert.IManager#17482 (@jtpio) - Reorder
extra_labextensions_pathto favor defaults #17476 (@peytondmurray) - Use the system clipboard for copying and pasting cells #17445 (@yacchin1205)
- Add jump to executing/executed cell button #16880 (@Darshan808)
Bugs fixed
- Update lumino to
v2025.11.13#18108 (@krassowski) - Use
IntersectionObserverto disable containment for on-screen cells #18091 (@Meriem-BenIsmail) - Fix layout trashing when navigating notebook cell-by-cell #18080 (@krassowski)
- Hide “Paused in Debugger” overlay when session terminates #18067 (@arjxn-py)
- Debugger: Fix breakpoints lost when closing modules #18063 (@HaudinFlorence)
- Fix
allow-same-originexception handling in sandbox when changing trust status #18049 (@skapin) - Don't open default editor if a different kind of editor is already open #18034 (@robertstrauss)
- Fix debugger initialization for notebooks on reload #18028 (@arjxn-py)
- Only show hidden part of the path in the tooltip of ellipsis [#18026](https://github.com/jupyterlab/jupyterlab/pull...
v4.5.0rc1
4.5.0rc1
Bugs fixed
- Update lumino to
v2025.11.13#18108 (@krassowski) - Use
IntersectionObserverto disable containment for on-screen cells #18091 (@Meriem-BenIsmail) - Fix layout trashing when navigating notebook cell-by-cell #18080 (@krassowski)
- Hide “Paused in Debugger” overlay when session terminates #18067 (@arjxn-py)
- Debugger: Fix breakpoints lost when closing modules #18063 (@HaudinFlorence)
Maintenance and upkeep improvements
- Make usage2 server startup/teardown test more robust #18087 (@krassowski)
- Separate verdaccio install and startup to fix flaky
release_testCI job #18082 (@krassowski)
Documentation improvements
- Clean up references to Gitpod #18107 (@jtpio)
- Update example for disabling
buildAvailable#18075 (@Frank-Steiner) - Update announcement from JupyterCon to JupyterLab 4.5.0 RC #18074 (@krassowski)
- Mention JupyterLab 4.5.0 RC in the installation instructions #18061 (@krassowski)
- Add plausible and logos to API docs #18059 (@krassowski)
- Convert documentation to Markdown #18044 (@jtpio)
Contributors to this release
(GitHub contributors page for this release)
@arjxn-py | @Frank-Steiner | @HaudinFlorence | @jasongrout | @jtpio | @jupyterlab-probot | @krassowski | @martinRenou | @Meriem-BenIsmail
v4.5.0rc0
4.5.0rc0
Enhancements made
- Fix kernel status display in status bar #18047 (@Darshan808)
- Introduce
DebuggerDisplayRegistryto provide context-aware display names for debugger panels #18043 (@arjxn-py) - Introduce new token for the default
IContentProvider#18027 (@martinRenou) - Update
Show more outputsbutton design #18021 (@andrii-i) - Optimize
content-visibilityapplication #18013 (@Meriem-BenIsmail) - Keep debugger state though kernel restarts #17972 (@gjmooney)
- Add jump to executing/executed cell button #16880 (@Darshan808)
Bugs fixed
- Fix
allow-same-originexception handling in sandbox when changing trust status #18049 (@skapin) - Don't open default editor if a different kind of editor is already open #18034 (@robertstrauss)
- Fix debugger initialization for notebooks on reload #18028 (@arjxn-py)
- Only show hidden part of the path in the tooltip of ellipsis #18026 (@krassowski)
- Fix
ObservableList.removeValuebehaviour: if item isn't found, don't just remove the last item! #18019 (@robertstrauss) - Fix breadcrumb drag-and-drop issues #18014 (@Darshan808)
- Make file browser optional in file editor extension #17922 (@Ankitaupadhaya)
- Fix kernel status display in status bar #17894 (@Darshan808)
Maintenance and upkeep improvements
- Update PyPI Downloads badge in
README.md#18052 (@jtpio) - Update to mermaid 11.12.1 #18046 (@bollwyvl)
- Revert "Fix kernel status display in status bar" #18038 (@krassowski)
- Fix flaky test
Drag file from nested directory to parent via breadcrumb#18015 (@Darshan808)
Documentation improvements
- Update PyPI Downloads badge in
README.md#18052 (@jtpio) - Add plausible.io stats to the jupyterlab docs #18041 (@jasongrout)
- Document how to disable the file uploads via the settings #18040 (@jtpio)
- Fix changelog URLs #18031 (@krassowski)
- User-facing changelog for JupyterLab 4.5 #17967 (@RRosio)
Contributors to this release
(GitHub contributors page for this release)
@andrii-i | @Ankitaupadhaya | @arjxn-py | @bollwyvl | @Darshan808 | @domoritz | @ellisonbg | @gjmooney | @jasongrout | @jtpio | @jupyterlab-probot | @krassowski | @martinRenou | @Meriem-BenIsmail | @robertstrauss | @RRosio | @skapin
v4.4.10
4.4.10
Bugs fixed
- Fix
ObservableList.removeValuebehaviour: if item isn't found, don't just remove the last item! #18019 (@robertstrauss) - Fix highlighting search on output cells and previous match skips #17797 (@itsmevichu)
- Fix spurious scrollbar in output area due to prompt overlay #17981 (@shreve)
- Fix race condition renaming unnamed files on first save #17982 (@shreve)
- Fix empty whitespace after large cell rendering #17949 (@Meriem-BenIsmail)
Maintenance and upkeep improvements
- Bandaid: pin ipykernel on CI to pre-7.0 #17992 (@krassowski)
- Fix examples on
4.4.x#17963 (@krassowski) - Temporarily pin
ipykernelto avoid CI breakage with 7.0 pre-release #17957 (@arjxn-py)
Documentation improvements
- Update JupyterCon 2025 announcement links #17983 (@krassowski)
- Add cross-references to API reference, fix missing packages in API #17953 (@krassowski)
- Fix parameter documentation issues in API reference #17954 (@krassowski)
Contributors to this release
(GitHub contributors page for this release)
@andrii-i | @arjxn-py | @Darshan808 | @github-actions | @hxrshxz | @jtpio | @jupyterlab-probot | @krassowski | @lumberbot-app | @martinRenou | @meeseeksmachine
v4.5.0b1
4.5.0b1
Enhancements made
- Show execution count in breakpoints, callstack, and sources panels while debugging in console #18003 (@arjxn-py)
- Make
DocumentManagerdialogs customizable #17961 (@Darshan808) - Systematise how base URL is obtained to allow swapping it more easily #17952 (@krassowski)
- Export the
ContentProviderRegistry#17940 (@martinRenou) - Make filebrowser breadcrumbs configurable #17932 (@Darshan808)
- Debugger: Visual indicator when debugger is paused #17891 (@arjxn-py)
- Debugger: Show cell execution count in breakpoint/call stack/source panel #17881 (@arjxn-py)
Bugs fixed
- Fix race condition renaming unnamed files on first save #17982 (@shreve)
- Fix spurious scrollbar in output area due to prompt overlay #17981 (@shreve)
- Fix file drag-and-drop to breadcrumbs #17975 (@Darshan808)
- Delay content-visibility application to handle early CodeMirror initialization (Firefox) #17973 (@Meriem-BenIsmail)
- Prevent widget closure when Save As is cancelled #17956 (@Darshan808)
- Fix empty whitespace after large cell rendering #17949 (@Meriem-BenIsmail)
- Fix highlighting search on output cells and previous match skips #17797 (@itsmevichu)
Maintenance and upkeep improvements
- Bandaid: pin ipykernel on CI to pre-7.0 #17992 (@krassowski)
- Add UI testing on Firefox (ignore snapshot differences) #17965 (@krassowski)
- Update to Playwright 1.56.0 #17960 (@jtpio)
- Temporarily pin
ipykernelto avoid CI breakage with 7.0 pre-release #17957 (@arjxn-py) - Fix case of 'Debugger console' to 'Debugger Console' #17939 (@jtpio)
- Improve robustness of inline-completer UI tests #17931 (@ianthomas23)
Documentation improvements
- Update JupyterCon 2025 announcement links #17983 (@krassowski)
- Make
DocumentManagerdialogs customizable #17961 (@Darshan808) - Fix parameter documentation issues in API reference #17954 (@krassowski)
- Add cross-references to API reference, fix missing packages in API #17953 (@krassowski)
- Systematise how base URL is obtained to allow swapping it more easily #17952 (@krassowski)
Contributors to this release
(GitHub contributors page for this release)
@andrii-i | @arjxn-py | @Darshan808 | @github-actions | @hxrshxz | @ianthomas23 | @itsmevichu | @jtpio | @jupyterlab-probot | @krassowski | @lumberbot-app | @martinRenou | @Meriem-BenIsmail | @shreve
v4.5.0b0
4.5.0b0
Enhancements made
- Switch the default windowing mode to
contentVisibility#17926 (@Meriem-BenIsmail) - Pass context down in attachments resolver #17924 (@krassowski)
- Allow swapping the empty markdown cell placeholder (and translate it) #17920 (@krassowski)
- Enable the minimap for all windowing modes #17904 (@Meriem-BenIsmail)
- Debugger: Differentiate selected breakpoints with specific style #17893 (@HaudinFlorence)
- Use console for debugger evaluation #17892 (@gjmooney)
Bugs fixed
- Fix scrolling to targets within notebook #17928 (@krassowski)
- Debugger: fix adding a breakpoint on an empty line of code and reclicking after addition #17923 (@HaudinFlorence)
- Debugger: Only send the
configurationDonemessage once as per the DAP #17912 (@martinRenou) - Correctly dispose
TerminalManagereven if terminals are not available #17876 (@krassowski)
Maintenance and upkeep improvements
- Make debugger console tests more robust and faster #17937 (@krassowski)
- Fix integrity checks on CI #17927 (@krassowski)
- Ignore npmjs.com in check-links #17915 (@jtpio)
- Update to Playwright 1.55.1 #17914 (@jtpio)
Contributors to this release
(GitHub contributors page for this release)
@github-actions | @gjmooney | @HaudinFlorence | @jtpio | @jupyterlab-probot | @krassowski | @martinRenou | @Meriem-BenIsmail
v4.4.9
4.4.9
Bugs fixed
- Correctly dispose
TerminalManagereven if terminals are not available #17876 (@krassowski) - Fix scrolling to targets within notebook #17928 (@krassowski)
Contributors to this release
(GitHub contributors page for this release)
@jupyterlab-probot | @krassowski | @martinRenou | @meeseeksmachine
v4.4.8
4.4.8
Bugs fixed
- Debugger: Only send the
configurationDonemessage once as per the DAP #17912 (@martinRenou) - Fix output prompt overlay height for large outputs #17863 (@Meriem-BenIsmail)
- Prevent overlay of content from other columns when renaming a file in the file browser #17857 (@CrafterKolyan)
- Fix notebook toolbar item order #17866 (@Darshan808)
Maintenance and upkeep improvements
Documentation improvements
- Add JupyterCon banner and Jupyter colors #17906 (@choldgraf)
Contributors to this release
(GitHub contributors page for this release)
@brichet | @github-actions | @HaudinFlorence | @jtpio | @jupyterlab-probot | @krassowski | @martinRenou | @meeseeksmachine | @Meriem-BenIsmail | @williamstein