News

VS Code Gets New Python Language Server, Named After Monty Python Character

Someone on the development team for Python in Visual Studio Code is a Monty Python fan.

Microsoft announced a new Python language server for the wildly popular open source, cross-platform VS Code editor.

The famed versatility of VS Code is bolstered by its extensive dependence upon language servers, which use the Language Server Protocol to provide language-specific "smarts" in the editor such as autocomplete and smart completions (IntelliSense), error-checking (diagnostics), jump-to-definition, linting and corrections, find all references and so on.

This week, the dev team for Python in Visual Studio Code announced a new tool to provide those smarts, Pylance, named after a character created by the British Monty Python surreal comedy troupe.

"The name Pylance serves as a nod to Monty Python's Lancelot, who is the first knight to answer the bridgekeeper's questions in the Holy Grail," said Savannah Ostrowski, a program manager, in a June 30 blog post. (For fans of "Monty Python and the Holy Grail" -- an acquired taste -- those questions can be found here.)

Microsoft has gone all in on Python for VS Code, and that language extension is now by far the No. 1 tool in the VS Code Marketplace, nearing 22 million downloads.

Pylance in Animated Action
[Click on image for larger, animated GIF view.] Pylance in Animated Action (source: Microsoft).

After months of development to improve upon the performance of the existing language server released in 2018, the team created the new tool based on the company's Pyright static type checker.

Some of its capabilities include:

  • Type information
  • Auto-imports
  • Type-checking diagnostics
  • Multi-root workspace support

Now Pylance is available in the VS Code Marketplace, already nearing 4,000 downloads at press time.

It's now available as an option to the preceding language server, but the team plans on eventually deprecating and removing the latter as an option.

"Pylance represents a drastic improvement for the Python experience in Visual Studio Code, to which our team has dedicated months of work. The new, free language server offers increased performance and many more features. Because of that, our team's focus will shift to Pylance to continue evolving it," Ostrowski said.

Although Microsoft over the years has morphed into an open source champion, Ostrowski said there are no plans to make Pylance open source, in reply to a developer question. However, it does have its own GitHub repo for providing feedback and documentation, which states: "The Pylance codebase is not open-source but you can contribute to Pyright to make improvements to the core typing engine that powers the Pylance experience."

About the Author

David Ramel is an editor and writer at Converge 360.

comments powered by Disqus

Featured

  • Compare New GitHub Copilot Free Plan for Visual Studio/VS Code to Paid Plans

    The free plan restricts the number of completions, chat requests and access to AI models, being suitable for occasional users and small projects.

  • Diving Deep into .NET MAUI

    Ever since someone figured out that fiddling bits results in source code, developers have sought one codebase for all types of apps on all platforms, with Microsoft's latest attempt to further that effort being .NET MAUI.

  • Copilot AI Boosts Abound in New VS Code v1.96

    Microsoft improved on its new "Copilot Edit" functionality in the latest release of Visual Studio Code, v1.96, its open-source based code editor that has become the most popular in the world according to many surveys.

  • AdaBoost Regression Using C#

    Dr. James McCaffrey from Microsoft Research presents a complete end-to-end demonstration of the AdaBoost.R2 algorithm for regression problems (where the goal is to predict a single numeric value). The implementation follows the original source research paper closely, so you can use it as a guide for customization for specific scenarios.

  • Versioning and Documenting ASP.NET Core Services

    Building an API with ASP.NET Core is only half the job. If your API is going to live more than one release cycle, you're going to need to version it. If you have other people building clients for it, you're going to need to document it.

Subscribe on YouTube