NewYour coding agent can read the release notes before it upgrades.Set up the MCP server →
PyPI · #590 most downloaded on PyPI
JupyterLab computational environment
Last release 9 days ago
21 Sep 2026
Ships fairly regularly
a new release about every 2 weeks
Nearly every release is documented
notes for 59 of the last 60 stable releases
Nothing withdrawn
no release was ever pulled
10 years old
607 releases · first in 2016
Define ICodeCellModel.executionState, deprecate setPrompt() #16431 (@krassowski)
Show Virtual Scrollbar -> Show Minimap #16776 (@jtpio)@jupyterlab/ui-components and update SVGO #16678 (@joaopalmeiro)@jupyterlab/completer type colors to theme CSS variables #16656 (@joaopalmeiro)--jp-border-radius CSS variable in missing input fields #16568 (@joaopalmeiro)Tab as an alternative shortcut for accepting inline completion #16565 (@andrewfulton9).jp-ThemedContainer class #16519 (@fcollonval)ICodeCellModel.executionState, deprecate setPrompt() #16431 (@krassowski)Completer.selected signals #16312 (@ajbozarth)serverRequests #16834 (@kaushalaaditya99)inline-grid for browser column positioning #16765 (@krassowski)jupyterlab-unfold #16763 (@krassowski)class instead of id in the log console test #16723 (@krassowski)configure calls not being propagated correctly #16508 (@krassowski)jupyter-collaboration-missing error message #16436 (@krishanbhasin-px)Shift + Tab contextual help inspector tooltip regression #16343 (@krassowski)@jupyter/ydoc final #16898 (@jtpio)https://code.visualstudio.com in check-links #16878 (@jtpio)pypi.org links for now #16843 (@jtpio)|| in the update:dependency script #16821 (@krassowski)browser_check in headed mode #16810 (@jtpio).gitignore #16595 (@joaopalmeiro)setuptools dependency) #16423 (@jtpio)canvas with jest-canvas-mock #16314 (@krassowski)(beta) from the 4.3 changelog #16902 (@jtpio)4.3.0rc0 to the release postmortems #16858 (@jtpio)IPropertyInspectorProvider plugin description #16797 (@jtpio)tmpPath #16587 (@krassowski).jp-ThemedContainer class #16519 (@fcollonval)api directory is present to build documentation #16467 (@Darshan808)canvas with jest-canvas-mock #16314 (@krassowski)(GitHub contributors page for this release)
@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
One column per quarter.
Standardize the button role and label for single, dismissal buttons in dialogs #16622 (@joaopalmeiro)
serverRequests #16834 (@kaushalaaditya99)https://code.visualstudio.com in check-links #16878 (@jtpio)4.3.0rc0 to the release postmortems #16858 (@jtpio)(GitHub contributors page for this release)
@Darshan808 | @dependabot | @github-actions | @joaopalmeiro | @jtpio | @jupyterlab-probot | @kaushalaaditya99 | @krassowski | @mjpsyapse | @Nagidrop
Change "File Size" column name to "Size" at small widths #16849 (@JasonWeill @ChairBorn)
(GitHub contributors page for this release)
@algonell | @ChairBorn | @github-actions | @HaudinFlorence | @JasonWeill | @jtpio | @jupyterlab-probot | @krassowski | @nekomeowww | @pre-commit-ci
Adds command to toggle cell outputs #16833 (@JasonWeill)
inline-grid for browser column positioning #16765 (@krassowski)|| in the update:dependency script #16821 (@krassowski)(GitHub contributors page for this release)
@dependabot | @github-actions | @JasonWeill | @jtpio | @jupyterlab-probot | @krassowski
Improve notebook output stream processing #16814 (@davidbrochart)
Show Virtual Scrollbar -> Show Minimap #16776 (@jtpio)Tab as an alternative shortcut for accepting inline completion #16565 (@andrewfulton9)jupyterlab-unfold #16763 (@krassowski)class instead of id in the log console test #16723 (@krassowski)browser_check in headed mode #16810 (@jtpio)IPropertyInspectorProvider plugin description #16797 (@jtpio)(GitHub contributors page for this release)
@andrewfulton9 | @bollwyvl | @cmarmo | @Darshan808 | @davidbrochart | @dependabot | @fcollonval | @github-actions | @JasonWeill | @joaopalmeiro | @jtpio | @jupyterlab-probot | @krassowski
Clean up SVG icons from @jupyterlab/ui-components and update SVGO #16678 (@joaopalmeiro)
@jupyterlab/ui-components and update SVGO #16678 (@joaopalmeiro)(GitHub contributors page for this release)
@cmarmo | @davidbrochart | @dependabot | @itsmevichu | @JasonWeill | @joaopalmeiro | @jtpio | @jupyterlab-probot | @krassowski | @maitreya2954
Update docs to mention "show cell toolbar" option #16658 (@JasonWeill)
@jupyterlab/completer type colors to theme CSS variables #16656 (@joaopalmeiro).gitignore #16595 (@joaopalmeiro)tmpPath #16587 (@krassowski)(GitHub contributors page for this release)
@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
Adopt the --jp-border-radius CSS variable in missing input fields #16568 (@joaopalmeiro)
--jp-border-radius CSS variable in missing input fields #16568 (@joaopalmeiro).jp-ThemedContainer class #16519 (@fcollonval).jp-ThemedContainer class #16519 (@fcollonval)(GitHub contributors page for this release)
@dependabot | @fcollonval | @g547315 | @gabalafou | @github-actions | @j264415 | @JasonWeill | @joaopalmeiro | @jtpio | @jupyterlab-probot | @krassowski | @NexVeridian | @pre-commit-ci | @welcome
Define ICodeCellModel.executionState, deprecate setPrompt() #16431 (@krassowski)
ICodeCellModel.executionState, deprecate setPrompt() #16431 (@krassowski)configure calls not being propagated correctly #16508 (@krassowski)jupyter-collaboration-missing error message #16436 (@krishanbhasin-px)setuptools dependency) #16423 (@jtpio)api directory is present to build documentation #16467 (@Darshan808)(GitHub contributors page for this release)
@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
Add the command to toggle the virtual scrollbar to the palette #16322 (@jtpio)
Completer.selected signals #16312 (@ajbozarth)Shift + Tab contextual help inspector tooltip regression #16343 (@krassowski)canvas with jest-canvas-mock #16314 (@krassowski)canvas with jest-canvas-mock #16314 (@krassowski)(GitHub contributors page for this release)
@ajbozarth | @brichet | @dependabot | @fcollonval | @github-actions | @itsmevichu | @JasonWeill | @jgoodson | @jtpio | @jupyterlab-probot | @krassowski | @Rob-P-Smith | @welcome | @Wzixiao
Use bare string proxies parameter for httpx\<0.28 #17113 (@AmberArr)
proxies parameter for httpx<0.28 #17113 (@AmberArr)AsyncHTTPTransport over HTTPTransport for httpx #17058 (@krassowski)FileBrowserModel.onFileChanged for drives (including RTC:) #16988 (@davidbrochart)httpx version window #17041 (@bollwyvl)40.8.0 #17032 (@krassowski)httpx versions, bump httpx to v0.28.0 #17013 (@davidbrochart)(GitHub contributors page for this release)
@andreytaboola | @bollwyvl | @claytonparnell | @Darshan808 | @davidbrochart | @echarles | @fcollonval | @ianthomas23 | @JasonWeill | @jtpio | @jupyterlab-probot | @krassowski | @lumberbot-app | @meeseeksmachine | @RRosio
Maintain autosave timers while disconnected #16903 (@holzman)
class instead of id in the log console test #16723 (@krassowski)(GitHub contributors page for this release)
@andreytaboola | @bollwyvl | @ChairBorn | @Darshan808 | @davidbrochart | @echarles | @fcollonval | @github-actions | @HaudinFlorence | @JasonWeill | @jtpio | @jupyterlab-probot | @kellyrowland | @krassowski | @kuraga | @meeseeksmachine
Use locale name instead of display/native name to toggle language #16710 (@maitreya2954)
(GitHub contributors page for this release)
@davidbrochart | @fcollonval | @github-actions | @HaudinFlorence | @JasonWeill | @jtpio | @jupyterlab-probot | @krassowski | @meeseeksmachine | @Mehak261124 | @Rob-P-Smith | @tonyfast | @welcome | @williamstein
Fix the identifier to download licenses in JSON format #16584 (@joaopalmeiro)
tmpPath #16587 (@krassowski)(GitHub contributors page for this release)
@andrii-i | @brichet | @ellisonbg | @fcollonval | @g547315 | @gabalafou | @github-actions | @j264415 | @JasonWeill | @joaopalmeiro | @jtpio | @jupyterlab-probot | @krassowski | @meeseeksmachine | @welcome
Fix inline completer configure calls not being propagated correctly #16508 (@krassowski)
configure calls not being propagated correctly #16508 (@krassowski)(GitHub contributors page for this release)
@brichet | @fcollonval | @github-actions | @jtpio | @jupyterlab-probot | @krassowski | @lumberbot-app | @meeseeksmachine | @Mehak261124 | @welcome
Fix width and margins of the notebook footer. #16383 (@HaudinFlorence)
jupyter-collaboration-missing error message #16436 (@krishanbhasin-px)setuptools dependency) #16423 (@jtpio)canvas with jest-canvas-mock #16314 (@krassowski)api directory is present to build documentation #16467 (@Darshan808)canvas with jest-canvas-mock #16314 (@krassowski)(GitHub contributors page for this release)
@davidbrochart | @echarles | @fcollonval | @jtpio | @jupyterlab-probot | @krassowski | @lumberbot-app | @meeseeksmachine | @srdas | @welcome
Fix Shift + Tab contextual help inspector tooltip regression #16343 (@krassowski)
Shift + Tab contextual help inspector tooltip regression #16343 (@krassowski)(GitHub contributors page for this release)
@github-actions | @jtpio | @jupyterlab-probot | @krassowski | @meeseeksmachine | @Rob-P-Smith | @welcome
For user-facing changelog see https://jupyterlab.readthedocs.io/en/latest/getting_started/changelog.html#v4-2
For user-facing changelog see https://jupyterlab.readthedocs.io/en/latest/getting_started/changelog.html#v4-2
notifyCommandChanged() #16273 (@jtpio)(GitHub contributors page for this release)
@davidbrochart | @dependabot | @fcollonval | @FoSuCloud | @github-actions | @JasonWeill | @jtpio | @jupyterlab-probot | @krassowski | @welcome
Update wording from directory to folder in user interface #16234 (@Rob-P-Smith)
FilterBox #16216 (@krassowski)(GitHub contributors page for this release)
@Alanhou1222 | @divyansshhh | @github-actions | @itsmevichu | @JasonWeill | @jtpio | @jupyterlab-probot | @kolibril13 | @krassowski | @NexVeridian | @Rob-P-Smith | @sawickid | @welcome
Update resolution for jupyter-ui-toolkit #16204 (@fcollonval)
(GitHub contributors page for this release)
@dependabot | @fcollonval | @jupyterlab-probot | @krassowski
Use toolkit search input for all search inputs: filebrowser, extension manager, debugger kernel source #16046 (@Mehak261124)
IDefaultFileBrowser dependency from launcher-extension #16173 (@milinm)Enter #16156 (@krassowski)(GitHub contributors page for this release)
@AnastasiaSliusar | @andrii-i | @bollwyvl | @brichet | @dependabot | @fcollonval | @github-actions | @JasonWeill | @jtpio | @jupyterlab-probot | @krassowski | @lumberbot-app | @Mehak261124 | @milinm | @Tanmay-Deshmukh | @welcome
Dark High Contrast Theme for JupyterLab with Improved Sidebar Focus Indication #15623 (@m158261)
notebook:create-output-view command #16138 (@jtpio)smart scroll in debugger to minimize distraction #16084 (@krassowski)dependency_type: minimum for Minimum Versions check #16105 (@krassowski)altair and jupyterlab-language-pack-zh-cn for tests, relax copier pin #16094 (@dependabot)(GitHub contributors page for this release)
@Alanhou1222 | @brichet | @davidbrochart | @dependabot | @e218736 | @echarles | @fcollonval | @FoSuCloud | @gabalafou | @github-actions | @itsmevichu | @jtpio | @jupyterlab-probot | @krassowski | @lumberbot-app | @m158261 | @pre-commit-ci | @Susilkessav | @welcome
Refactor shortcuts UI to fix most of the known issues #16043 (@krassowski)
full notebook windowing mode by default #15964 (@krassowski)ICellExecutor providing an entry to customize cell execution #15830 (@fcollonval)IShell.currentChanged and notify commands based on it #15449 (@fcollonval)IWorkspaceCommands in apputils extension #16058 (@krassowski)IWorkspaceCommands in apputils extension #16058 (@krassowski)(GitHub contributors page for this release)
@afshin | @fcollonval | @github-actions | @JasonWeill | @jtpio | @jupyterlab-probot | @krassowski | @UntitledError-09 | @welcome
Fix ServerApp.token deprecation warnings #16011 (@jtpio)
ServerConnection.appendToken via PageConfig #16022 (@minrk)ServerApp.token deprecation warnings #16011 (@jtpio)whatwg-fetch polyfill #16000 (@jtpio)--verbose #15905 (@krassowski)whatwg-fetch polyfill #16000 (@jtpio)(GitHub contributors page for this release)
@brichet | @dependabot | @erkin98 | @fcollonval | @github-actions | @JasonWeill | @jtpio | @jupyterlab-probot | @krassowski | @mdietz94 | @Mehak261124 | @minrk | @RRosio | @trungleduc | @welcome
Allow to customise directory and notebook icon #15828 (@linlol)
selectItemByName() if already selected #15970 (@krassowski)ContentsManagerMock #15291 (@jtpio)@jupyter/ydoc v2.0.1 #15982 (@jtpio)ContentsManagerMock #15974 (@jtpio)node-fetch dependency #15969 (@jtpio)node-fetch dependency #15969 (@jtpio)(GitHub contributors page for this release)
@andrii-i | @blink1073 | @brichet | @dependabot | @diyoyo | @fcollonval | @FoSuCloud | @github-actions | @JasonWeill | @jtpio | @jupyterlab-probot | @krassowski | @linlol | @welcome
Copy edits in dialog #15875 (@JasonWeill)
metadataform to the labeler #15896 (@jtpio)child_process dependency #15888 (@jtpio)sanitize-html to latest v2.12.1 #15877 (@krassowski)4.0.x and 4.1.x to the documentation switcher #15850 (@jtpio)(GitHub contributors page for this release)
@AllanChain | @brichet | @dependabot | @ericsnekbytes | @fcollonval | @FoSuCloud | @github-actions | @HaudinFlorence | @JasonWeill | @jtpio | @jupyterlab-probot | @krassowski | @linlol | @lumberbot-app | @trungleduc | @welcome
Consider higher levels when toggling plugin #16251 (@divyansshhh)
(GitHub contributors page for this release)
@github-actions | @jupyterlab-probot | @krassowski | @meeseeksmachine | @welcome
Fix toggling extension at system level #16241 (@krassowski)
(GitHub contributors page for this release)
@andrii-i | @bollwyvl | @davidbrochart | @echarles | @fcollonval | @github-actions | @JasonWeill | @jtpio | @jupyterlab-probot | @kolibril13 | @krassowski | @lumberbot-app | @meeseeksmachine | @welcome
Fix outputarea collapse expand #16124 (@FoSuCloud)
smart scroll in debugger to minimize distraction #16084 (@krassowski)dependency_type: minimum for Minimum Versions check #16105 (@krassowski)(GitHub contributors page for this release)
@afshin | @brichet | @fcollonval | @gabalafou | @github-actions | @JasonWeill | @jtpio | @jupyterlab-probot | @krassowski | @lumberbot-app | @meeseeksmachine | @Mehak261124 | @RRosio | @trungleduc | @welcome
Fix Theme color is not applied to Toolbar Button #15957 (@FoSuCloud)
selectItemByName() if already selected #15970 (@krassowski)(GitHub contributors page for this release)
@andrii-i | @brichet | @jtpio | @jupyterlab-probot | @krassowski | @linlol | @meeseeksmachine | @welcome
Fix creating files in custom drives, fix ContentsManagerMock #15291 (@jtpio)
ContentsManagerMock #15291 (@jtpio)(GitHub contributors page for this release)
@ericsnekbytes | @github-actions | @jtpio | @jupyterlab-probot | @krassowski | @meeseeksmachine
Fix Pressing enter in console with console run keystroke set to enter creates a newline and runs #15869 (@FoSuCloud)
4.1.x #15848 (@krassowski)4.1.x #15848 (@krassowski)(GitHub contributors page for this release)
@AllanChain | @brichet | @ericsnekbytes | @fcollonval | @FoSuCloud | @github-actions | @JasonWeill | @jtpio | @jupyterlab-probot | @krassowski | @linlol | @lumberbot-app | @meeseeksmachine | @welcome
Fix highlight sequencing when replacing text in code cells #15803 (@JasonWeill)
(GitHub contributors page for this release)
@FoSuCloud | @github-actions | @JasonWeill | @jupyterlab-probot | @kiliansinger | @krassowski | @lumberbot-app | @nluetts | @trungleduc | @welcome
Correct Alt + number keyboard shortcuts command map #15791 (@g547315)
document.cookie #15788 (@minrk)OSError in addition to PermissionError when sys_prefix is read-only #15756 (@dhml)jupyter-collaboration for the Binder environment #15767 (@jtpio)(GitHub contributors page for this release)
@davidbrochart | @dhml | @fcollonval | @g547315 | @github-actions | @JasonWeill | @jtpio | @jupyterlab-probot | @krassowski | @lumberbot-app | @minrk | @pre-commit-ci | @welcome
Your coding agent can read these notes before it upgrades. Set up the MCP server →