Skip to content

Having pygls.protocol.json_rpc ValueError after updating to 2025.6.0 from 2025.4.0 #25060

Closed as not planned

Description

@mondwan

Type: Bug

Behaviour

Once updated the python extension from 2025.4.0 to 2025.6.0, the vscode python extension starts behaved strange.

Before the updates, there will be a tooltip for the documentation on whatever varaible, modules I highlighted. After the updates, it stopped working after a while.

It worked fine if I rollback to 2025.4.0. Is it because I am still using python3.8 instead?

Steps to reproduce:

  1. Install the latest version of Python plugin
  2. Mouse hover to the variable / module
  3. There should be a tooltip showing the document of that variable / module
  4. After a while, it stopped showing the doc, but keep showing Loading...

Diagnostic data

Output for Python in the Output panel (View→Output, change the drop-down the upper-right of the Output panel to Python)

2025-05-13 10:22:46.286 [info] ERROR:pygls.protocol.json_rpc:Failed to handle request 80 textDocument/documentSymbol DocumentSymbolParams(text_document=TextDocumentIdentifier(uri='file:///home/vdc/....venv/lib/python3.8/site-packages/.../services.py'), work_done_token=None, partial_result_token=None)
Traceback (most recent call last):
  File "/home/vdc/.vscode-server/extensions/ms-python.python-2025.6.0-linux-x64/python_files/lib/jedilsp/jedi/cache.py", line 110, in wrapper
    return dct[key]
KeyError: ((), frozenset())

Extension version: 2025.6.0
VS Code version: Code 1.100.0 (19e0f9e681ecb8e5c09d8784acaa601316ca4571, 2025-05-07T12:48:53.763Z)
OS version: Windows_NT x64 10.0.22631
Modes:
Remote OS version: Linux x64 5.4.0-200-generic

  • Python version (& distribution if applicable, e.g. Anaconda): 3.8.10
  • Type of virtual environment used (e.g. conda, venv, virtualenv, etc.): Venv
  • Value of the python.languageServer setting: Jedi
User Settings


languageServer: "Jedi"

testing
• promptToConfigure: false
• pytestEnabled: true
• autoTestDiscoverOnSaveEnabled: false

Installed Extensions
Extension Name Extension Id Version
black-formatter ms- 2024.6.0
debugpy ms- 2025.8.0
docker doc 0.6.0
gitlab-workflow Git 6.13.1
gitlens eam 17.0.3
hcl has 0.6.0
intellicode-api-usage-examples Vis 0.2.9
isort ms- 2025.0.0
js-debug ms- 1.100.0
live-server ms- 0.4.15
php-cs-fixer jun 0.3.21
php-debug xde 1.36.1
php-docblocker nei 2.7.0
phpcs ika 1.0.5
phpunit ema 4.16.1
python ms- 2025.6.0
remote-kubernetes Okt 0.5.2
vscode-coverage-gutters rya 2.13.0
vscode-docker ms- 1.29.6
vscode-eslint dba 3.0.10
vscode-intelephense-client bme 1.14.4
vscode-js-profile-table ms- 1.0.10
vscode-kubernetes-tools ms- 1.3.23
vscode-openapi 42C 4.33.2
vscode-pylance ms- 2025.4.1
vscode-yaml red 1.18.0
vscodeintellicode Vis 1.3.2
System Info
Item Value
CPUs Intel(R) Core(TM) i7-10850H CPU @ 2.70GHz (12 x 2712)
GPU Status 2d_canvas: enabled
canvas_oop_rasterization: enabled_on
direct_rendering_display_compositor: disabled_off_ok
gpu_compositing: enabled
multiple_raster_threads: enabled_on
opengl: enabled_on
rasterization: enabled
raw_draw: disabled_off_ok
skia_graphite: disabled_off
video_decode: enabled
video_encode: enabled
vulkan: disabled_off
webgl: enabled
webgl2: enabled
webgpu: enabled
webnn: disabled_off
Load (avg) undefined
Memory (System) 31.78GB (18.43GB free)
Process Argv
Screen Reader no
VM 0%
Item Value
Remote SSH: vm027943
OS Linux x64 5.4.0-200-generic
CPUs Intel(R) Xeon(R) Platinum 8462Y+ (2 x 0)
Memory (System) 7.76GB (6.03GB free)
VM 100%

Activity

  1. changed the title [-]pygls.protocol.json_rpc ValueError[/-] [+]Having pygls.protocol.json_rpc ValueError after updating to 2025.6.0 from 2025.4.0[/+] on May 13, 2025
  2. bytemain commented on May 14, 2025

    @bytemain

    Encountered the same problem on remote ssh.

  3. karthiknadig commented on May 14, 2025

    @karthiknadig
    Member

    Mond WAN (@mondwan) You are using Python3.8 which is deprecated. You need to pin the extension to older version for Python 3.8 support.

  4. mondwan commented on May 15, 2025

    @mondwan
    Author

    Karthik Nadig (@karthiknadig) Before raising this ticket, I had considered that the issue might be version-related. However, since there was no version information included in the release log, I wasn't able to confirm this on my own. That’s why I proceeded to raise the ticket for clarification.

    As a suggestion, it might be helpful to include version changes in future release logs to make it easier for others to identify such issues proactively.

    Thanks again

  5. ZhengRui commented on Jun 2, 2025

    @ZhengRui

    I am using Python 3.12, after update the extension to 2025.6.0, I also encounter the same issue. I had to change the python language server to Pylance for now. Upgrading Jedi is not working. Hovering on any variable or methods just shows "loading...".

    logs:

    2025-06-02 17:04:13.207 [info] WARNING:pygls.protocol.json_rpc:Cancel notification for unknown message id "2"
    2025-06-02 17:04:13.243 [info] WARNING:pygls.protocol.json_rpc:Cancel notification for unknown message id "3"
    2025-06-02 17:04:13.389 [info] semantic_tokens_full file:///Users/zerry/Work/Libs/ctc-forced-aligner/ctc_forced_aligner/align.py 
    2025-06-02 17:04:13.397 [info] semantic_tokens_range file:///Users/zerry/Work/Libs/ctc-forced-aligner/ctc_forced_aligner/align.py 101:0-264:0
    2025-06-02 17:04:13.500 [info] ERROR:pygls.protocol.json_rpc:Exception occurred for message "6": _pickle.UnpicklingError: unpickling stack underflow
    NoneType: None
    2025-06-02 17:04:13.500 [info] [Error - 5:04:13 PM] Request textDocument/semanticTokens/full failed.
    2025-06-02 17:04:13.500 [info]   Message: _pickle.UnpicklingError: unpickling stack underflow
      Code: -32603 
    [object Object]
  6. chenghui-lee commented on Jun 8, 2025

    @chenghui-lee

    I am also having the exact same issue on Python 3.12.3 with the extension version 2025.6.1. Downgrading the extension version to 2025.4.0 fixed the issue.

  7. Root-Core commented on Oct 1, 2025

    @Root-Core

    Karthik Nadig (@karthiknadig) This is still an issue on Python 3.13.7 and extension version 2025.14.0.
    Both are the latest stable releases, so no deprecation.

    Downgrading the extension version to 2025.4.0 fixed the issue.

    This is the easiest solution at the moment.

  8. karthiknadig commented on Oct 1, 2025

    @karthiknadig
    Member

    Root-Core Try the pre-release the sematic token issue in Jedi should be fixed by this PR #25450

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    info-neededIssue requires more information from postertriage-neededNeeds assignment to the proper sub-team

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions