Skip to content

Releases: jupyter-lsp/jupyterlab-lsp

v5.0.0rc1

01 Oct 12:00
7679546

Choose a tag to compare

This is the second release candidate of v5.0.0, providing support for JupyterLab 4.0. There are no know major bugs at this point - if you see any issues, please report on https://github.com/jupyter-lsp/jupyterlab-lsp/issues. A final release is expected in the upcoming week.

To test this release:

  1. Make sure your JupyterLab version is 4.0.6 or newer and Python version is 3.8 or newer.

  2. Update the extension:

    pip install jupyterlab-lsp==5.0.0rc1 jupyter-lsp==2.2.0 jupyterlab==4.0.6

Changes compared to last 5.0.0rc0

  • restored re-use of standalone virtual documents for transculsions

Requires JupyterLab >=4.0.6,<5.0.0a0

v4.3.0

21 Sep 11:07
87fddaf

Choose a tag to compare

To upgrade to this release:

  1. Make sure your JupyterLab version is 3.6.x (for JupyterLab 4.0 please use jupyterlab-lsp 5.0) and Python version is 3.8 or newer

  2. Update the extension:

    pip install jupyterlab-lsp==4.3.0 jupyter-lsp==2.2.0
    # or, for conda:
    # > Please note that conda packages may take a day or two since release before becoming available!
    # conda install -c conda-forge jupyterlab-lsp=4.3.0 jupyter-lsp=2.2.0
  3. Note:

  • If installing this extension for the first time, please read the full installation instructions as language servers of your choice need to be installed too, and additional configuration can make your experience smoother.
  • If you wish to use jedi-language-server or python-lsp-server, please make sure to upgrade IPython to 7.20 or newer.
  • If you wish to migrate to python-lsp-server (which is encouraged), please start by uninstalling python-language-server and only then install python-lsp-server; you may also need to replace pyls occurrences with pylsp in settings if you modified any.

Changelog of jupyterlab-lsp (4.3.0)

  • features:
    • extractor for spark SQL magic was added (#980, thanks @skbitsp)
    • classes needed to register custom adapters are now exported (#980, thanks @skbitsp)
      • using these classes is not recommended for new code as registration mechanism was rewritten in JupyterLab 4.0 and moved to @jupyterlab/lsp

Full Changelog: v4.2.0...v4.3.0

v5.0.0rc0

17 Sep 19:09
3fb68db

Choose a tag to compare

This is the first release candidate of v5.0.0, providing support for JupyterLab 4.0. There are no know major bugs at this point - if you see any issues, please report on https://github.com/jupyter-lsp/jupyterlab-lsp/issues.

To test this release:

  1. Make sure your JupyterLab version is 4.0.6 or newer and Python version is 3.8 or newer.

  2. Update the extension:

    pip install jupyterlab-lsp==5.0.0rc0 jupyter-lsp==2.2.0 jupyterlab==4.0.6

Changes compared to last 5.0.0b1

  • fixes diagnostics not showing up in text editor in certain circumstances
  • fixes signature hover box not being clickable
  • improves performance by not creating a temporary editor to setup linter underline style
  • JSON overrides work again
  • fixes issue with syntax highlighting breaking when pasting multiple cells
  • numerous fixes for completer
  • fixes for highlights when switching between notebooks/editors

Requires JupyterLab >=4.0.6,<5.0.0a0

v5.0.0b1

02 Sep 20:13
86df891

Choose a tag to compare

v5.0.0b1 Pre-release
Pre-release

This is a second beta of v5.0.0 providing support for JupyterLab 4.0. There are known upstream bugs in completer, affecting functionality of this extension - you can disable the LSP completer in the settings.

Please report regressions on https://github.com/jupyter-lsp/jupyterlab-lsp/issues.

To test this release:

  1. Make sure your JupyterLab version is 4.0.5 or newer and Python version is 3.8 or newer.

  2. Update the extension:

    pip install jupyterlab-lsp==5.0.0b1 jupyter-lsp==2.2.0

Changes compared to alpha

  • fix highlights conflict with selection
  • fix scrolling to diagnostics and diagnostic rendering in windowed notebook
  • suppress kernel completer in transclusions

v5.0.0b0

29 Aug 04:34
98a8794

Choose a tag to compare

v5.0.0b0 Pre-release
Pre-release

This is a first beta of v5.0.0 providing support for JupyterLab 4.0. There are known upstream bugs in completer, affecting functionality of this extension - you can disable the LSP completer in the settings.

Please report regressions on https://github.com/jupyter-lsp/jupyterlab-lsp/issues.

To test this release:

  1. Make sure your JupyterLab version is 4.0.5 or newer and Python version is 3.8 or newer.

  2. Update the extension:

    pip install jupyterlab-lsp==5.0.0b0 jupyter-lsp==2.2.0

Changes compared to alpha

  • fixed regressions caught by tests (#966)
  • diagnostics panel now reopens on reload (#967)
  • toasts notifications are used for transient notifications (#965)

v5.0.0a0

26 Aug 20:11
6d0c90f

Choose a tag to compare

v5.0.0a0 Pre-release
Pre-release

This is a first release providing support for JupyterLab 4.0. There are known upstream bugs in completer which affect functionality of this extension - you can disable the LSP completer in the settings.

Please report regressions on https://github.com/jupyter-lsp/jupyterlab-lsp/issues.

To test this release:

  1. Make sure your JupyterLab version is 4.0.5 or newer and Python version is 3.8 or newer.

  2. Update the extension:

    pip install jupyterlab-lsp==5.0.0a0 jupyter-lsp==2.2.0

v4.2.0

28 May 15:29
ff8b6c4

Choose a tag to compare

This release brings a new configuration option to ignore diagnostics based on severity and compatibility with new versions of bash-language-sever (which relies entirely on shellcheck for linting).

New diagnostic severity filter New bash-language-sever options
image Screenshot from 2023-05-28 16-17-14

To upgrade to this release:

  1. Make sure your JupyterLab version is 3.6.x (JupyterLab 4.0 is not yet supported) and Python version is 3.8 or newer

  2. Update the extension:

    pip install jupyterlab-lsp==4.2.0 jupyter-lsp==2.2.0
    # or, for conda:
    # > Please note that conda packages may take a day or two since release before becoming available!
    # conda install -c conda-forge jupyterlab-lsp=4.2.0 jupyter-lsp=2.2.0
  3. Note:

  • If installing this extension for the first time, please read the full installation instructions as language servers of your choice need to be installed too, and additional configuration can make your experience smoother.
  • If you wish to use jedi-language-server or python-lsp-server, please make sure to upgrade IPython to 7.20 or newer.
  • If you wish to migrate to python-lsp-server (which is encouraged), please start by uninstalling python-language-server and only then install python-lsp-server; you may also need to replace pyls occurrences with pylsp in settings if you modified any.

Combined changelog of jupyterlab-lsp (4.2.0) and jupyter-lsp (2.2.0)

  • features:
    • diagnostics can be ignored by severity level with new ignoreSeverities setting (#940)
  • bug fixes:
    • await sleep() coroutine (#939, thanks @jinzhen-lin)
    • limit attempts to initialise shadow file system to three trials (#936)
  • maintenance:

Full Changelog: v4.0.1...v4.1.0

v4.1.0

24 Apr 19:04
b576383

Choose a tag to compare

The headline change is this minor release is gradual phasing out of .virtual_documents; if you are maintaining a specification for a custom language server, switching requires_documents_on_disk to False is recommended as it will benefit users with less write operations on disk (with marginal performance gains) and to verify that the server does not need any fixes to support in-memory files.

Users of signature feature will benefit from a better contrast for the highlight of active parameter (if using a server which provides this information), especially in dark mode:

Light mode Dark mode
Screenshot from 2023-04-16 15-43-42 Screenshot from 2023-04-16 15-43-50

To upgrade to this release:

  1. Make sure your JupyterLab version is 3.6.0 or newer (3.3+ may work but there is no official support) and Python version is 3.8 or newer

  2. Update the extension:

    pip install jupyterlab-lsp==4.1.0 jupyter-lsp==2.1.0
    # or, for conda:
    # > Please note that conda packages may take a day or two since release before becoming available!
    # conda install -c conda-forge jupyterlab-lsp=4.1.0 jupyter-lsp=2.1.0
  3. Note:

  • If installing this extension for the first time, please read the full installation instructions as language servers of your choice need to be installed too, and additional configuration can make your experience smoother.
  • If you wish to use jedi-language-server or python-lsp-server, please make sure to upgrade IPython to 7.20 or newer.
  • If you wish to migrate to python-lsp-server (which is encouraged), please start by uninstalling python-language-server and only then install python-lsp-server; you may also need to replace pyls occurrences with pylsp in settings if you modified any.

Combined changelog of jupyterlab-lsp (4.1.0) and jupyter-lsp (2.1.0)

  • features:
    • make .virtual_documents optional, with pyright server being trialled as the first opting out (#930)
      • frontend side: logic for solving URIs will now check if the server does not require it
      • server side: added requires_documents_on_disk spec field (default True, will become False in next major version)
  • bug fixes:
    • fix contrast of mark highlights in dark mode (#928)
    • fix conflict with block/rectangular selections on Alt + 🖱️ click (#927)
  • maintenance:
    • update texlab expectation (#929)

Full Changelog: v4.0.1...v4.1.0

v4.0.1

21 Mar 17:26
b7690aa

Choose a tag to compare

This is a minor bug-fix only release restoring support for settings defined in overrides.json file and fixing pyright schema.

To upgrade to this release:

  1. Make sure your JupyterLab version is 3.6.0 or newer (3.3+ may work but there is no official support) and Python version is 3.8 or newer

  2. Update the extension:

    pip install jupyterlab-lsp==4.0.1 jupyter-lsp==2.0.1
    # or, for conda:
    # > Please note that conda packages may take a day or two since release before becoming available!
    # conda install -c conda-forge jupyterlab-lsp=4.0.1 jupyter-lsp=2.0.1
  3. Note:

  • If installing this extension for the first time, please read the full installation instructions as language servers of your choice need to be installed too, and additional configuration can make your experience smoother.
  • If you wish to use jedi-language-server or python-lsp-server, please make sure to upgrade IPython to 7.20 or newer.
  • If you wish to migrate to python-lsp-server (which is encouraged), please start by uninstalling python-language-server and only then install python-lsp-server; you may also need to replace pyls occurrences with pylsp in settings if you modified any.

Combined changelog of jupyterlab-lsp (4.0.1) and jupyter-lsp (2.0.1)

  • bug fixes:
    • overrides from overrides.json are now picked up again (#919)
    • pyright schema now includes required python. prefixes (#919)

Full Changelog: v4.0.0...v4.0.1

v4.0.0

15 Mar 09:17
c2eba21

Choose a tag to compare

This is a release with breaking changes (most notable migration to @jupyter-lsp organisation) and a number of improvements, notably:

Settings UI

demo

Eliding of long paths in completer

Screenshot from 2023-01-02 03-59-58

Jump-to selector

Jump-to received a selector to resolve jump target when multiple targets exist

jump-selector-references

To upgrade to this release:

  1. Make sure your JupyterLab version is 3.6.0 or newer (3.3+ may work but there is no official support) and Python version is 3.8 or newer

  2. Update the extension:

    pip install jupyterlab-lsp==4.0.0 jupyter-lsp==2.0.0
    # or, for conda:
    # > Please note that conda packages may take a day or two since release before becoming available!
    # conda install -c conda-forge jupyterlab-lsp=4.0.0 jupyter-lsp=2.0.0
  3. Note:

  • If installing this extension for the first time, please read the full installation instructions as language servers of your choice need to be installed too, and additional configuration can make your experience smoother.
  • If you wish to use jedi-language-server or python-lsp-server, please make sure to upgrade IPython to 7.20 or newer.
  • If you wish to migrate to python-lsp-server (which is encouraged), please start by uninstalling python-language-server and only then install python-lsp-server; you may also need to replace pyls occurrences with pylsp in settings if you modified any.

Combined changelog of jupyterlab-lsp (4.0.0) and jupyter-lsp (2.0.0)

  • features:
    • implement jump target selector and jump to references (#739)
    • implement settings UI using native JupyterLab 3.3 UI (#778)
    • add option to show hover tooltip automatically (#864, thanks @yamaton)
    • implement eliding for long paths/files in completer (#893)
    • allow to pass default workspace config (serverSettings) in specs (#856)
  • bug fixes:
    • use correct websocket URL if configured as different from base URL (#820, thanks @MikeSem)
    • clean up all completer styles when completer feature is disabled (#829).
    • fix undefined being inserted for path-like completion items with no insertText (#833)
    • reduce signature flickering when typing and hover flicker when moving mouse (#836)
    • fix sporadic misplacement of hover tooltips (#860, thanks @yamaton)
    • fix hover tooltip not updated after character deletions (#867, thanks @yamaton)
    • handle potential race condition in feature settings loading (#882)
  • refactoring:
    • changed NPM packages namespace from @krassowski to @jupyter-lsp (#862)
    • move client capabilities to features (#738)
  • downstreams:
    • use the host application's HTTP settings for requests to the REST and WebSocket routes (#881)
    • source maps are provided for improved debugging (#882)
    • the derived JSON Schema types are avilable as SCHEMA (#882)
    • includes sourcemaps for easier debugging (#882)
  • documentation:
  • maintenance:
    • bump minimum required JupyterLab version to 3.3 (>=3.3.0,<4.0.0a0)
    • bump minimum required Node.js version to 14.0 (12.0 reached EOL in April)
    • use newer @jupyterlab/builder which provides third-party license information (#882)
    • handle notification promises more explicitly (#882)
  • dependencies:
    • uses importlib_metadata (or importlib.metadata on 3.10+) for entry_points (#882)
    • supports Python versions are 3.8 or newer
  • performance:
    • entry_point discovery is deferred until server has started, improving
      jupyter_server startup time (#852)

Full Changelog: v3.10.2...v4.0.0