jupyterlab-lsp

Coding assistance for JupyterLab (code navigation + hover suggestions + linters + autocompletion + rename) using Language Server Protocol

BSD-3-CLAUSE License

Downloads
16M
Stars
1.7K
Committers
49

Bot releases are hidden (Show)

jupyterlab-lsp - v3.9.3

Published by krassowski almost 3 years ago

This release contains only a minor workaround for translation strings. The minimum supported Python version is now Python 3.7 as Python 3.6 reaches end of life this week.

To upgrade to this release:

  1. Make sure your JupyterLab version is 3.0.x, 3.1.x or 3.2.x (this is the last minor release with user support for 3.0).

  2. Update the extension:

    pip install jupyterlab-lsp==3.9.3 jupyter-lsp==1.5.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=3.9.3 jupyter-lsp=1.5.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.

Changelog of jupyterlab-lsp (3.9.3)

  • bug fixes:
    • workaround upstream issue in merging translation (#726, thanks @fcollonval)

Full Changelog: https://github.com/jupyter-lsp/jupyterlab-lsp/compare/v3.9.2...v3.9.3

jupyterlab-lsp - v3.9.2

Published by krassowski almost 3 years ago

This release comes with new details-below layout allowing to change the completer arrangement, and many bug fixes improving jump to definition feature, diagnostic panel, removing deprecation warnings and improving support for translations.

side-by-side (current, default) details-below
side-by-side details-below

To upgrade to this release:

  1. Make sure your JupyterLab version is 3.0.x, 3.1.x or 3.2.x (this is the last minor release with user support for 3.0).

  2. Update the extension:

    pip install jupyterlab-lsp==3.9.2 jupyter-lsp==1.5.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=3.9.2 jupyter-lsp=1.5.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 (3.9.2), jupyter-lsp (1.5.1) and completion-theme (3.2.0)

  • features:
    • add details-below layout allowing to change the completer arrangement (#698)
  • bug fixes:
    • prevent very long completion details text from extending the completer indefinitely (#698)
    • correct status translations (#700, thanks @fcollonval)
    • fix translations in status pop-up (#703)
    • workaround issue causing file rename when opening external files by jumping to them (#712, thanks @jepcor97)
    • fix sorting by "Line:Ch" and "Cell" in Diagnostics Panel (#717)
    • fix header border missing when scrolling in Diagnostics Panel (#717)
  • documentation improvements:
    • clarify that JupyterLab restart is needed after installation (#714, thanks @3coins)
  • documentation improvements:
    • document troubleshooting steps for texlab server (#702)
  • maintenance and upkeep:
    • migrate test configuration to ServerApp as needed (#713)
    • address deprecation warnings (#713)
    • remove karma tests from lsp-ws-connection (#720)
    • bump ws from 5.2.2 to 5.2.3 (#721)
    • bump completion theme version, update release date (#722)

New Contributors

Full Changelog: https://github.com/jupyter-lsp/jupyterlab-lsp/compare/v3.9.1...v3.9.2

jupyterlab-lsp - v3.9.1

Published by krassowski almost 3 years ago

This release comes with support and auto-autodetection of a new language server for TypeScript and JavaScript, typescript-language-server (the previous is no longer maintained) and fixes developer-facing issues in extending this extension.

To upgrade to this release:

  1. Make sure your JupyterLab version is 3.0.x, 3.1.x or 3.2.x (this is the last minor release with user support for 3.0).

  2. Update the extension:

    pip install jupyterlab-lsp==3.9.1 jupyter-lsp==1.5.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=3.9.1 jupyter-lsp=1.5.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 (3.9.1) and jupyter-lsp (1.5.0)

  • bug fixes:
    • fix build issues making it difficult to reuse/extend the package (#696, thanks @cccs-jc)
  • features:
    • add support for new typescript-language-server replacing javascript-typescript-langserver;
      despite the name both packages provide support for all four: JavaScrip, JSX, TypeScript and TSX;
      the old javascript-typescript-langserver can still be used, but it is no longer maintained
      and we will not be supported, and specs may be removed in the next major release (#697).

New Contributors

Full Changelog: https://github.com/jupyter-lsp/jupyterlab-lsp/compare/v3.9.0...v3.9.1

jupyterlab-lsp - v3.9.0

Published by krassowski about 3 years ago

This release includes highly anticipated bug fixes and improvements:

  • fixes completions of paths in Python,
  • fixes kernel completions in R,
  • improves the signature feature, which will now:
    • highlight the active argument
    • be displayed above the active line to avoid conflicts with completer
  • enables you to disable specific features, which may improve performance by reducing LSP server workload
before after
before after

This is the last minor release using @krassowski npm organization. Subsequent major and minor releases will use new @jupyter-lsp organization. This is the last minor release targeting JupyterLab 3.0, subsequent releases will target 3.1 and 3.2 versions.

To upgrade to this release:

  1. Make sure your JupyterLab version is 3.0.x, 3.1.x or 3.2.x (this is the last minor release with user support for 3.0).

  2. Update the extension:

    pip install jupyterlab-lsp==3.9.0 jupyter-lsp==1.4.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=3.9.0 jupyter-lsp=1.4.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 and jupyter-lsp

  • features:
    • signature help box will now persist while typing the arguments of a function (#671)
    • the currently active argument will be highlighted in the signature help box
    • if the documentation exceeds a user-configurable number of lines the signature
      help box will only display the first line of the documentation and the following
      lines will be collapsed into an expandable details section.
    • the signature box is now displayed above the current line
    • the signature box takes up less space
    • you can now disable specific features in settings (#689)
  • bug fixes:
    • fix missing translation strings (#675)
    • fix kernel completions not showing up for R (#686)
    • fix tab completions not showing up in strings due to incomplete trigger kind invalidation (#686)
    • fix path completions reconciliation for pyls/pylsp with IPython (#686)
    • improve escaping rule for IPython magics overrides (#688)
    • fix documentation panel not showing up when typing fast (#692)

New Contributors

jupyterlab-lsp - v3.8.1

Published by krassowski about 3 years ago

This release fixes too verbose output in the command line, and improves the behaviour and rendering of the hover feature:

before after
before after
before after
before-no-border soft-border

To upgrade to this release:

  1. Make sure your JupyterLab version is 3.0.x or 3.1.x (we are now testing against 3.1.x but will support 3.0 for a limited time too)

  2. Update the extension:

    pip install jupyterlab-lsp==3.8.1 jupyter-lsp==1.4.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=3.8.1 jupyter-lsp=1.4.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 and jupyter-lsp

  • bug fixes:
    • %Rdevice magic is now properly overridden and won't be extracted to R code (#646)
    • Fix hover rendering for MarkedStrings, fix hover disappearing when moving mouse towards it (#653)
    • remove spurious ValidationError warnings for non-installed servers (#645, thanks @karlaspuldaro)
    • reduce number and verbosity of logs on startup

Contributors to this release

@karlaspuldaro | @krassowski

jupyterlab-lsp - v3.8.0

Published by krassowski over 3 years ago

This release improves user experience when troubleshooting server extension installation (thanks @icankeep) and installation of specific language servers, improves performance of completer (note: this change will be only noticeable by users already using fast language servers), and fixes a few other bugs. It is accompanied with an update of jupyter-lsp which was extended to support listing all known language servers (even when not installed) and specifying language server installation troubleshooting information; external providers of language server specification who use ShellSpec may need to update is_installed() method signature (more details in the full changelog).

To upgrade to this release:

  1. Make sure your JupyterLab version is 3.0.x

  2. Update the extension:

    pip install jupyterlab-lsp==3.8.0 jupyter-lsp==1.4.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=3.8.0 jupyter-lsp=1.4.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.

jupyterlab-lsp changelog:

  • improvements:

    • add a note on manually enabling backend extension (#621, thanks @icankeep)
    • in-app troubleshooting/installation help is now offered for servers which are needed but could not be detected
      (if auto-detection specification for those is present) (#634)
  • bug fixes:

    • fix rename shortcut registration in file editor (#614)
    • improve performance of icon rendering in completer (#625)
    • fix cache misses and concurrency issues for hover (#630)

For jupyter-lsp changelog see here.

Contributors to this release

@krassowski | @icankeep | @yaegassy

jupyterlab-lsp - v3.7.0

Published by krassowski over 3 years ago

This release adds autodetection of pyright sever (thanks @yuntan), ability to choose which server is used if multiple are installed (using priority setting), support for log messages and message requests from LSP servers, ability to disable kernel or LSP completions (thanks @Carreau), and compatibility with RetroLab (previously JupyterLab Classic, thanks @jtpio).

To upgrade to this release:

  1. Make sure your JupyterLab version is 3.0.x

  2. Update the extension:

    pip install jupyterlab-lsp==3.7.0 jupyter-lsp==1.3.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=3.7.0 jupyter-lsp=1.3.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:

  • features:

    • add ability to deactivate Kernel completions or LSP completion through the settings (#586, thanks @Carreau)
    • allow to set a priority for LSP server, allowing to choose which server to use when multiple servers are installed (#588)
    • add auto-detection of pyright server (#587, thanks @yuntan)
    • update from JupyterLab Classic to RetroLab (#602)
    • log server messages in user-accessible console (#606)
  • bug fixes:

    • workaround url-parse issue causing problems when using JupyterLab 3.0.15 or newer (#599)
  • other changes:

    • drop Node 10 (EOL 2 weeks ago) testing on CI, add Node 15 (#587)
    • update lsp-ws-connection dependencies (#606)
    • old emit-based API of lsp-ws-connection is new deprecated and will be removed in the next major version; please use serverNotifications, clientNotifications, clientRequests and serverRequests instead (#606)
jupyterlab-lsp - v3.6.0

Published by krassowski over 3 years ago

This release adds support for translations and the new community-maintained fork of pyls: python-lsp-server as well as multiple bug fixes. We also updated our documentation fixing rendering, making it more readable and adding a section on kernel requirements when using custom LSP servers in notebook. Special shout-out to the new contributors: @JessicaBarh, @marimeireles, @stonebig and @maresb.

To upgrade to this release:

  1. Make sure your JupyterLab version is 3.0.x

  2. Update the extension:

    pip install jupyterlab-lsp==3.6.0 jupyter-lsp==1.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=3.6.0 jupyter-lsp=1.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 a recent jedi-language-server or python-lsp-server, please make sure to upgrade IPython to 7.20.
  • 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:

  • features:

    • added translation support (#557, thanks @JessicaBarh)
    • add support for python-lsp-server, a community fork of pyls (#584 and #582, thanks @maresb)
  • bug fixes:

    • fixed name of jupyterlab-lsp package displayed in JupyterLab UI (#570, thanks @marimeireles)
    • removed vendored CodeMirror from distribution (#576, thanks @bollwyvl)
    • fix encoding on Windows for non-conda installs (#580, thanks @stonebig)
jupyterlab-lsp - v3.5.0

Published by krassowski over 3 years ago

This release provides notable improvements and bug fixes to the completion feature and handling of IPython magics:

  • %%bigquery IPython cell magic is now supported
  • detail information about the completion is now shown instead of the type by default; if no detail is available, then type or source ("Kernel" for kernel completions) is shown instead
    detail-and-source-opt
  • new settings are available for completer:
    • caseSensitive: you can make matching of completions case-insensitive by setting it to false
    • includePerfectMatches: you can ask completer not to include perfect matches by setting it to false
    • labelExtra: you can revert to old behaviour of showing the type next to the label, or change it to showing source, or only detail.
      new-completion-settings
  • for extension developers:
    • RegExpForeignCodeExtractor's extract_to_foreign was split into foreign_capture_groups and foreign_replacer
    • minimal functional extractor and code overrides APIs are now exported; these APIs can be subject to change in future releases
    • the completions code was refactored to make it possible to support integration with other completion providers in the future

To upgrade to this release:

  1. Make sure your JupyterLab version is 3.0.x

  2. Update the extension:

    pip install jupyterlab-lsp==3.5.0 jupyter-lsp==1.1.3
    # 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=3.5.0 jupyter-lsp=1.1.3
    
  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 a recent jedi-language-server (versions 0.22+) please make sure to upgrade IPython to 7.20 to avoid this issue.

Changelog:

  • features:

    • adds %%bigquery IPython cell magic support for BigQuery (#553, thanks @julioyildo)
    • completions filtering can be set to case-insensitive in settings (#549)
    • completions filtering can hide exact matches (#549)
    • the extra information displayed next to the completion label now can include 'detail' (usually module/package of origin), and can be customized in settings (#549)
  • bug fixes:

    • prevents throwing a highlights error when adding new cell with Shift + Enter (#544)
    • fixes IPython pinfo and pinfo2 (? and ??) for identifiers containing s (#547)
    • fixes incorrect behaviour of LSP features in some IPython magics with single line of content (#560)
  • for extension authors:

    • minimal functional extractor and code overrides APIs are now exported; these APIs can be subject to change in future releases (#562)
jupyterlab-lsp - v2.1.4

Published by jtpio over 3 years ago

This is a bugfix-only release for the older version of JupyterLab 2.2.x. We recommend upgrading to JupyterLab 3.0.x and extension 3.x to benefit from the improvements made in the 3.x releases.

To upgrade to this release:

  1. Make sure your JupyterLab version is 2.2 (for JupyterLab 3.0 please use the never extension versioned 3.x)

  2. Install/update LSP packages:

jupyter labextension install @krassowski/[email protected]

Changelog:

bug fixes:

  • backport: Handle case where getCursor() returns null in highlighter ([#544], [#546])
jupyterlab-lsp - v3.4.1

Published by krassowski over 3 years ago

This release fixes an issue with installation from source (via JupyterLab Extension Manager or jupyter labextension install) failing to build when jupyterlab-classic was not installed. The installation using pip or conda is recommended over source installations.

To learn more about precious changes introduced in version 3.4, or to see the recommended installation instructions please see: v3.4.0

Changelog:

  • bug fixes:

    • fixed installation of the source version of the extension (causing build error if classic was not installed) (#526)
jupyterlab-lsp - v3.4.0

Published by krassowski over 3 years ago

This release provides notable improvements and bug fixes to the completer (sorting, completion in strings, rendering of markdown documentation) and to the diagnostics panel (when foreign documents like %%R, or %%sql cells are used). The long paths in the status popover will not be collapsed to prevent it from spanning a large portion of the screen; you can get the full path by hovering over the collapsed path. The ambiguous suppressInvokeIn setting was replaced by suppressContinuousHintingIn and suppressTriggerCharacterIn settings; if you customized it before please update the settings accordingly.

To upgrade to this release:

  1. Make sure your JupyterLab version is 3.0.x

  2. Update the extension:

    pip install jupyterlab-lsp==3.4.0 jupyter-lsp==1.1.3
    # 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=3.4.0 jupyter-lsp=1.1.3
    
  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 a recent jedi-language-server (versions 0.22+) please make sure to upgrade IPython to 7.20 to avoid this issue.

Changelog:

  • features:

    • the priority of the completions from kernel can now be changed by switching new kernelCompletionsFirst setting (#520)
    • completer panel will now always render markdown documentation if available (#520)
      • the implementation re-renders the panel as it is the best we can do until jupyterlab#9663 is merged
    • the completer now uses filterText and sortText if available to better filter and sort completions (#520, #523)
    • completer suppressInvokeIn setting was removed; suppressContinuousHintingIn and suppressTriggerCharacterIn settings were added (#521)
    • suppressContinuousHintingIn by default includes def to improve the experience when writing function names (#521)
    • long file paths are now collapsed if composed of more than two segments to avoid status popover and diagnostics panel getting too wide (#524)
  • bug fixes:

    • user-invoked completion in strings works again (#521)
    • completer documentation will now consistently show up after filtering the completion items (#520)
    • completions containing HTML-like syntax will be displayed properly (an upstream issue) (#520, #523)
    • diagnostics panel will no longer break when foreign documents (e.g. %%R cell magics) are removed (#522)
jupyterlab-lsp - v3.3.1

Published by krassowski over 3 years ago

This release improves the completer and signature behaviour on focus loss and brings other UX improvements to the completer behaviour (see the changelog notes below). With jupyter-lsp 1.1.3, the JupyterHub/Binder users should no longer be required to switch to to jupyter_server to get this extension working.

To upgrade to this release:

  1. Make sure your JupyterLab version is 3.0.x

  2. Update the extension:

    pip install jupyterlab-lsp==3.3.1 jupyter-lsp==1.1.3
    # 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=3.3.1 jupyter-lsp=1.1.3
    
  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 a recent jedi-language-server (versions 0.22+) please make sure to upgrade IPython to 7.20 to avoid this issue.

Changelog:

  • bug fixes:

    • completion and signature suggestions get invalidated when editor changes (#507)
    • signature suggestions now invalidate on cursor move to another line or backwards too (#507)
    • LaTeX is now rendered in documentation panel of completer (#506)
    • completion response returned as plain text use pre tag to retain whitespace formatting (#506)
    • pre-formatted code font size was reduced to match font-size of the text in completion panel (#506)
    • completer no longer spans the entire screen if it has long entries (#506)
    • add config for the classic notebook server extension (#504)
jupyterlab-lsp - v2.1.3

Published by krassowski over 3 years ago

This is a bugfix-only release for the older version of JupyterLab 2.2.x. We recommend upgrading to JupyterLab 3.0.x and extension 3.x to benefit from the improvements made in the 3.x releases. Many thanks to @jtpio for backporting the changes and driving this release.

To upgrade to this release:

  1. Make sure your JupyterLab version is 2.2 (for JupyterLab 3.0 please use the never extension versioned 3.x)

  2. Install/update LSP packages:

pip install jupyter-lsp==0.9.3
jupyter labextension install @krassowski/[email protected]

Changelog:

bug fixes:

  • backport: connection manager now properly keeps track of notebooks when multiple notebooks are open (#474, #486)
  • backport: notebook (and diagnostics panel) state is now properly updated after rename or kernel restart (#499)
jupyterlab-lsp - v3.3.0

Published by krassowski over 3 years ago

This release improves overall speed and experience of the completer, including new configuration options and bug fixes, notably a major stability fix Windows.

To upgrade to this release:

  1. Make sure your JupyterLab version is 3.0.x and uses jupyter_server (if you use JupyterHub, please see this comment)

  2. Update the extension:

    pip install jupyterlab-lsp==3.3.0 jupyter-lsp==1.1.2
    # 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=3.3.0 jupyter-lsp=1.1.2
    
  3. Note:

  • If upgrading from 2.x version, please carefully follow the 3.0 release upgrading instructions; JupyterHub users, please note the additional steps needed to enable jupyter_server
  • 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 a recent jedi-language-server (versions 0.22+) please make sure to upgrade IPython to 7.20 to avoid this issue.

Changelog:

  • features:

    • added a timeout for kernel completion, with the default of 600ms (#496)
    • added an option to skip waiting for kernel completions if busy, off by default (#496)
  • bug fixes:

    • fixed issues with language server messages being truncated in certain circumstances on Windows (#494, thanks @dpriedel)
    • delayed completion suggestions will no longer show up if cursor moved to another line (#496)
    • changes in notebooks after kernel restart or file rename will now be recorded by the language server again (#496)
    • when either of kernel providers: kernel or LSP server fails, the completion from the other will still be shown (#496)
jupyterlab-lsp - v3.2.0

Published by krassowski over 3 years ago

This release brings support for documentation panel for more languages (including R and javscript/typescript) and multiple bug fixes.

To upgrade to this release:

  1. Make sure your JupyterLab version is 3.0.x and uses jupyter_server (if you use JupyterHub, please see this comment)

  2. Update the extension:

    pip install jupyterlab-lsp==3.2.0 jupyter-lsp==1.1.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=3.2.0 jupyter-lsp=1.1.1
    
  3. Note the following:

  • If you are upgrading from 2.x version, please carefully follow the 3.0 release upgrading instructions; JupyterHub users, please note the additional steps needed to enable jupyter_server
  • If you are 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, please use the 0.21 version as the newer 0.22 (released just 4 days ago) transitioned to a new Jedi version which is not yet supported by IPython. You may ignore this warning if you work with a custom Python kernel that does not use on Jedi.

Changelog:

  • features:

    • documentation panel in completer now works for R language too: implemented completionItem/resolve (#487)
    • kernel types returned by IPython and IJulia are now mapped to LSP types; you can customize the mappings in settings (#487)
  • bug fixes:

    • diagnostics panel works after kernel restart properly (#485)
    • workaround was added to enable jedi-language-server diagnostics (#485)
    • Julia language server will not crash when saving a non-Julia file: fixed sendSaved notification scope (#491)
    • PythonModuleSpec no longer raises exception when the server module does not exist (#485)
jupyterlab-lsp - v3.1.0

Published by krassowski almost 4 years ago

This release brings many bug fixes as well as new experimental features:

  • experimental support for jupyterlab-classic,
  • experimental support for Julia server, LanguageServer.jl,
  • experimental support for jedi-language-server (please use version 0.21 and uninstall pyls).

To upgrade to this release:

  1. JupyterHub users: please see https://github.com/krassowski/jupyterlab-lsp/issues/375#issuecomment-761078622

  2. Make sure your JupyterLab version is 3.0.x and uses jupyter_server

  3. Update the extension:

    pip install jupyterlab-lsp==3.1.0 jupyter-lsp==1.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=3.1.0 jupyter-lsp=1.1.0
    
  4. Note the following:

  • If you are upgrading from 2.x version, please carefully follow the 3.0 release upgrading instructions; JupyterHub users, please note the additional steps needed to enable jupyter_server
  • If you are 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, please use the 0.21 version as the newer 0.22 (released just 4 days ago) transitioned to a new Jedi version which is not yet supported by IPython. You may ignore this warning if you work with a custom Python kernel that does not use on Jedi.

Changelog extract:

  • features

    • compatibility with jupyterlab-classic - experimental, not all features are functional yet (#465)
    • new status "Server extension missing" and a dialog with advice was added to help users with atypical configurations (#476)
    • for developers: the verbosity of console logs is now controllable from settings and set to warn by default (#480)
    • added experimental detection of Julia and Jedi language servers (#481)
  • bug fixes:

    • namespace completions in R (after double and triple colon) now work properly (#449)
    • improved status icon contrast when status item is active (#465)
    • connection manager now properly keeps track of notebooks when multiple notebooks are open (#474)
    • new cells added after kernel restart now work properly; kernel changes are handled correctly (#478)
    • increase total timeout for language server connection (#479)
    • fix status communication during initialization (#479)
    • send periodic pings on websocket channels to maintain connection (#459, thanks @franckchen)
    • R languageserver is no longer incorrectly shown as available when not installed (#463)
    • fix completion of very large namespaces (e.g. in R's base or in JavaScript) due to truncated message relay (#477)
jupyterlab-lsp - v3.0.0

Published by krassowski almost 4 years ago

This release provides support for JupyterLab 3.0. Many thanks to everyone who helped to port the extension: @martinRenou, @jtpio, @bollwyvl, and @karlaspuldaro.

To upgrade to this release:

  1. JupyterHub users: please see https://github.com/krassowski/jupyterlab-lsp/issues/375#issuecomment-761078622

  2. Make sure your JupyterLab version is 3.0 and uses jupyter_server:

    jupyter server extension list       # note: a space between "server" and "extension"
    

    should include:

    jupyterlab enabled
    - Validating jupyterlab...
      jupyterlab 3.0.0 OK
    

    if you get an error (jupyter-server: command not found) instead, you are probably using the old notebook server rather than the new jupyter_server, most likely due to having an older JupyterLab version installed.

  3. Uninstall the old versions (if installed) - this step may not be necessary, but is recommended anyways

    pip uninstall jupyter-lsp    # or and equivalent for conda (depending on which conda package you installed)
    jupyter labextension uninstall @krassowski/jupyterlab-lsp
    
  4. Install the new JupyterLab 3.0-compatible version:

    # note that it is jupyter**lab**-lsp now
    pip install jupyterlab-lsp==3.0.0
    # or, for conda:
    # conda install -c conda-forge jupyterlab-lsp=3.0.0
    
  5. Validate that the installation succeeded:

    jupyter labextension list         # note: **no** space between "lab" and "extension"
    

    should include:

    @krassowski/jupyterlab-lsp v3.0.0 enabled OK (python, jupyterlab_lsp)
    

If you are 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.

jupyterlab-lsp - v2.1.2

Published by krassowski almost 4 years ago

This release brings an ability to auto-clear the highlights when cell is not focused along with performance improvements and bug fixes to the highlights and completion features. Please see the CHANGELOG.md for details on the improvements in this version.

To upgrade to this release

  1. Make sure your JupyterLab version is 2.2 (please note that JupyterLab 3.0 is not supported yet)

  2. Install/update LSP packages:

pip install jupyter-lsp==0.9.3
jupyter labextension install @krassowski/[email protected]

If you are 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.

jupyterlab-lsp - v2.1.1

Published by krassowski almost 4 years ago

This is a hotfix release for Windows users with GBK codec who experienced crash due to one of the schema files containing UTF characters (and JupyterLab extension system not enforcing UTF). Please see the CHANGELOG.md for the details.

To upgrade to this release

  1. Make sure your JupyterLab version is 2.2

  2. Install/update LSP packages:

pip install jupyter-lsp==0.9.3
jupyter labextension install @krassowski/[email protected]

If you are 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.

Package Rankings
Top 1.7% on Pypi.org
Top 18.42% on Spack.io
Top 2.79% on Npmjs.org
Top 24.05% on Anaconda.org
Top 6.1% on Proxy.golang.org
Top 11.85% on Conda-forge.org
Badges
Extracted from project README
CI Documentation Status Python Demo R Demo Julia Demo Binder