8000 Colab-server-powered language support (LSP). · Issue #214 · googlecolab/colab-vscode · GitHub
[go: up one dir, main page]

Skip to content

Colab-server-powered language support (LSP). #214

Open

Description

@JagjeevanAK

Is your feature request related to a problem?

I am frustrated when there is no support for LSP

Describe the solution you'd like to see

As now we don't have to install modules directly because colab provided out of the box directly but locally LSP does not support like we have LSP support in browser or you can say notebook running on colab website

Activity

  1. JagjeevanAK commented on Nov 14, 2025

    @JagjeevanAK
    Author

    Hey it looks like after disabling the pylance it is working fine

  2. kevineger commented on Nov 14, 2025

    @kevineger
    Member

    Hey @JagjeevanAK, thanks for filing the issue!

    You're right - support for this hasn't quite landed, and adding it's been a bit tricky! But good news... it should land early next week!


    The following are some nitty gritty details, which may or may not be interesting.

    First, why it's tricky... Users can configure whatever language clients they want for their VS Code installation. As with the rest of VS Code, configuration is entirely up to the user! The standard out of the box config is through the defacto Python extension which uses Pylance for a language client/server. This operates strictly using the running VS Code's Python sys path. For most users, that's their local computer where they're running VS Code (or the remote VS Code server they're connected to).

    But thankfully, Colab actually runs a language server! We're in the midst of hooking this up (can see some of the in-flight PRs landing if curious). Our language client support should satisfy/work for most folks, though it will be partial because:

    • Currently, VS Code and the dependent Jupyter extension lack the APIs needed for us to stably link which notebook editors are connected to which Colab servers.
      • We intend to configure a single language client which uses the most recently provisioned Colab server as a backend. For the vast majority of users, I anticipate this being sufficient. It's not common for users to bounce between multiple Colab servers concurrently and if they do, it's unlikely the installed modules differ enough to provide incorrect diagnostics.
      • Please toss Jupyter API: Support associating a notebook with a resolve server. microsoft/vscode-jupyter#17112 a ➕ so we can add this in a more reliable way!
    • At the end of the day, most users have Pylance installed. We may in the future pop warnings to disable Pylance which may assume packages that the Colab machine has installed by default (e.g. numpy) are unavailable, if they aren't also installed wherever the local Pylance client is looking.
  3. changed the title [-]local LSP support for modules as models are stored remotely[/-] [+]Colab-server-powered language support (LSP).[/+] on Nov 14, 2025
  4. JagjeevanAK commented on Nov 17, 2025

    @JagjeevanAK
    Author

    Hey @kevineger thank you for your kind words

  5. yangdanny97 commented on Nov 18, 2025

    @yangdanny97

    Hi, we got a request to allow Pyrefly (a new language server for Python) to be used in colab - I wanted to make sure that the language server support being added here is generic and not specific to Pylance.

  6. JagjeevanAK commented on Nov 19, 2025

    @JagjeevanAK
    Author

    @yangdanny97 I think remote colab support will be generic and general if not wrong as current issue is that vscode and jupyter does not provide some api's so that colab team can play around it.

  7. kevineger commented on Nov 19, 2025

    @kevineger
    Member

    colab support will be generic and general

    Yep, that's correct.


    Colab implements a language server (see the protocol for details). Our extension will register a LanguageClient (see VS Code docs) against it.

    I had hoped to wrap that work up this week, but it'll spill over to next week.

    Will update this issue as things progress.

  8. dorongold commented on Apr 9, 2026

    @dorongold

    @kevineger, just checking in. Is there any update on this issue?

  9. asukaminato0721 commented on Aug 30, 2026

    @asukaminato0721

    oh, I find a crazy way to do this. Since we have terminal

    Image

    it works...

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

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions

      0