This should be called Python Type Server Protocol, no? Seems weird to mine the generic protocol namespace for a protocol that only supports Python. Especially coming from the company behind LSP, which actually is generic.
tobz1000yesterday at 7:49 PM
As someone with minimal knowledge of LSP specifics, I'm a bit confused about why this exists. Is it the case that LSP alone does not provide adequate functionality for Python type queries?
impoppytoday at 3:21 AM
It’s really good that folks over at Astral decided to implement it. It was difficult for me to understand what does this protocol provide that couldn’t be implemented with a new LSP capability, the linked document doesn’t really explain that, but what did become clear to me is that seemingly Microsoft are trying to invent new features for their proprietary LSP server that only works in VS Code so people will have harder times switching to other editors. This way, no matter what Microsoft comes up with, will be matched with very high quality open source tools.
Tareanyesterday at 6:58 PM
So basically adding machine readable type-at-point queries as an lsp extension so Pylance and Pywright can be separated?
The 'result types'format is super python specific, like not having a for all binder. I don't think this specific schema will be used for any non-python languages.
pipesyesterday at 7:46 PM
Can someone explain what this is to someone like me that doesn't know python very well, but programs a lot in c#?
PufPufPufyesterday at 10:37 PM
I just use the Pyrefly extension in VSCode/Zed, run Pyrefly in the CI, and everything works well. The fragmentation around pyright/pylance/basedpyright/cursor-pyright etc. makes it pretty much unusable, you can't get consistent results across IDEs.
0cf8612b2e1eyesterday at 7:07 PM
It kept with UTF-16. New protocol is a chance to correct that poor decision.
ashkankianitoday at 1:17 AM
When I wrote the initial version of the neovim LSP client, I got intimately familiar with LSP, and how much I hate it. Microsoft protocols have a habit of being extremely specialized to their application despite being recommended for broader use. I will never, ever, ever adapt another microsoft language protocol.
_heimdalltoday at 1:22 AM
Reading the main README, I'm not sure why I'd reach for this over ant other typed JSON RPC, tRPC or similar. What are the benefits I'm missing here?
rmzs0711yesterday at 7:18 PM
Is there any application for that, except python?
dev_l1x_beyesterday at 8:35 PM
The primary reason i guess is standardizing the type checking, so you can bring your own (3rd party).
deletedyesterday at 6:53 PM
rjbworkyesterday at 7:25 PM
It's such a shame python got such mindshare. It's a disaster of a language and ecosystem that people keep bolting and hacking things that much better thought out languages have had for decades.
paaloeyeyesterday at 6:55 PM
Interesting, LSP, DAP, MCP, and TSP now...
paaloeyeyesterday at 9:30 PM
Is it Python specific only?
madelgiyesterday at 9:43 PM
i primarily work in python and from a language-design standpoint, sure, there are generally better options out there. but all the people convincing themselves that a language with this much of a user base and this large of an ecosystem will fade away because of ai or some other reason are deluding themselves. i'm sure the death of python will be imminent for the next several decades, just as it has been for java
ChrisArchitectyesterday at 7:46 PM
Blog posts:
Pylance + Pyrefly: bring your preferred type checker to Visual Studio Code
Type-shed, type-server. When can this Python madness stop? How about using CORBA to make it even more enterprisey?
Why don't you spend your resources on F# instead of this nonsense?
beaconflintyesterday at 7:11 PM
[flagged]
sick_of_slopyesterday at 11:27 PM
[dead]
wetpawsyesterday at 6:41 PM
[dead]
coindeftoday at 4:01 AM
[flagged]
arionmilesyesterday at 9:45 PM
The cottage industry around fixing gaps in Python is sometimes awe-inspiring and most times just downright awful.
Maybe just make a Python 4 with better types built in at this point...
pacman1337yesterday at 8:40 PM
languages with dynamic types will be obsolete thanks to AI, you heard it here first. It is just introduces more errors, with AI you want formal checking, sure static types are not that, but it is a small piece of it. If 10 percent of errors are types, with a typed language keeping everything the same you have 10 percent less errors, simple as that.