8 ms·
Microsoft Refuses to Open Source VSCode Python Language Server
- muglug 6y agoHaving written a language server for PHP, I can tell you it's damn hard – I don't begrudge Microsoft's behaviour here at all.
- voxl 6y agoGod forbid developers and companies try to make money off their work!
- rowanG077 6y agoThe python language server does not cost any money.
- Camas 6y agohttps://github.com/microsoft/pylance-release/issues/4#issuecomment-652555104 https://github.com/microsoft/pylance-release/issues/4#issuec... >Pylance [..] is planned to be included in proprietary service offerings.
- rowanG077 6y agoThat doesn't mean anything. There are many free pieces of software included in proprietary service offerings.
- deleted 6y ago[deleted]
- ssivark 6y agoAs has been pointed out, Microsoft has been very heavily pushing for the language server approach with the argument that it simplifies the integration between {languages, editors} from M*N to M+N. That they would forbid their holy language server implementation from integrating with other editors exposes the perfidy at the heart of their advocacy. If they want to keep the extension proprietary and charge for the language server, that’s fine! But allow people to use it with whichever editor instead of forbidding it through the license. It’s wholly malicious to use a language server implementation to extend control to the editor landscape. This is exactly the kind of nonsense that got them in trouble in the 90s, in the first place.
- ChuckNorris89 6y agoDon't know why you're being downvoted. People pay for IDEs all the time since it benefits their productivity but seem to have a problem when Microsoft release free proprietary tools. Maybe someone can explain what the issue is because I don't see it.
- immigrantsheep 6y agoBecause it's Microsoft so people here are always looking for problems. I never seen anyone mentioning that XCode isn't open source. Or Sublime Text for that matter.
- oneplane 6y agoThat's because those never were open source. Microsoft presented an open source editor, and an open source python language server, and an open source python checker, and then wants to replace those with closed source versions that you're not allowed to run anywhere else anymore.
- immigrantsheep 6y agoAnd I'm sure you have other open source python language servers and open source python checkers for other open source editors. Nobody is locking you in here. Everyone is free to move to something else to write python.
- oneplane 6y agoThat completely misses the point here... it's not about having a facility, it's about a change in direction that people don't like.
- oneplane 6y agoIt's because microsoft started to open source a lot of stuff and started a direction in which it sells services instead of simply licenses, and then bought the Python BDFL and cut off some projects that fall in line with the expectations of their offerings in the open source space so far.
- deleted 6y ago[deleted]
- ipsum2 6y agoIn addition, Microsoft refuses to open source their remote VS Code implementation: https://github.com/microsoft/vscode-remote-release https://github.com/microsoft/vscode-remote-release See issue: https://github.com/microsoft/vscode-remote-release/issues/179 https://github.com/microsoft/vscode-remote-release/issues/17...
- Snuupy 6y agoExactly - https://github.com/VSCodium/vscodium/issues/240 https://github.com/VSCodium/vscodium/issues/240 "And the remote server actively prevents OSS versions from connecting. Even if you enable the proposed apis needed, you will get an "Unauthorized client" error message."
- ithrow 6y agoThat extension is a competitive advantage that's crippling Jetbrains. Just business as usual.
- disgruntledphd2 6y agoI was honestly very surprised that Jetbrains didn't already have a remote plugin. I know that I wouldn't consider any new editor without one, as I almost always develop on a remote box.
- rckoepke 6y agoI use JetBrain's remote python interpreter functionality[0] with great success and convenience. For anyone whose development environment is appropriate for its use, I honestly cannot recommend it highly enough. I generally can only use it when I'm running the full "Professional" license version, however. This uses SSH and SCP to automatically deploy the code to the remote environment and run it with the interpreter on that machine, rather than your own local laptop/desktop. One advantage is that it does not require any special software to be installed on the remote server. VS Code's solution requires a pretty hefty installation consisting of basically an entire copy of VSCode onto the remote server. The downside of JetBrain's approach... I believe that it requires a local copy of the files in order to perform the "LSP"-like syntax error highlighting / suggestion functionality that JetBrains software is so lauded for. This could be difficult/inconvenient if your codebase is particularly enormous, or if you aren't allowed to mirror it locally. However, given the amount of support that JetBrains has for this kind of setup, I wouldn't be shocked to see an additional future option for something more in the style of "VS Code Remote Development" 0: https://www.jetbrains.com/help/pycharm/configuring-remote-interpreters-via-ssh.html https://www.jetbrains.com/help/pycharm/configuring-remote-in...
- jpalomaki 6y agoI would imagine the threat for Microsoft is Amazon picking up what they have done and using it to compete against Azure.
- oneplane 6y agoI don't think Amazon needs Pylance to compete against Azure... Heck, they already have a fully integrated IDE, you can essentially open a browser, go to the AWS console and do all your work there (and never leave or store anything locally).
- teddyh 6y ago> @microsoft microsoft locked as resolved and limited conversation to collaborators on Jul 17, 2020
- uncledave 6y agoThey do this all the time. Or restructure all the repos and lose all the history. Or delete the entire issue tracking system.
- jcelerier 6y agoI still don't understand how they can get away with this given that VSCode is based on Blink which is LGPL
- HideousKojima 6y agoLGPL means only the library itself has to be open source, any other libraries or software that make use of the LGPL'D library can be closed.
- jcelerier 6y agoit's not that simple, one has to argue that the whole software is its own work and not simply an extension of the library. Quoting LGPLv3: > An “Application” is any work that makes use of an interface provided by the Library, but which is not otherwise based on the Library. Defining a subclass of a class defined by the Library is deemed a mode of using an interface provided by the Library. making a simple wrapper of a large LGPLv3 library is a more-than-grey area with the "not otherwise based on" wording.
- saagarjha 6y agoI hate to bring out the old “embrace, extend, extinguish” argument, but I honestly can’t think of any other reason for this. Visual Studio Code has gotten really popular lately, but I think very few people realize that many parts of it are closed source. And you can’t take extensions from the Microsoft store and use them in your own editor…this just seems designed to get people to use your editor, give them enough source so you can claim it’s hackable, but prevent any other editor from reusing it. That doesn’t sound very open at all. Actually, in this specific case, it really hurts, because Microsoft had been the one pushing for LSP to enable reusability and interoperability. You can’t take M*N to M+N if every editor refuses to let their implementation be used by anyone else. Honestly, Microsoft, what are you getting from taking a bunch of open source code and making the good bits proprietary, and then sabotaging your own messaging around standards that you want adopted? Because I can’t see any reason why you have to do this :/
- Jonnax 6y agoDoes Microsoft disallow people from using the Microsoft marketplace for VS code extensions in their own editors? Because I notice on Edge, if I visit the chrome store, it gives me an option to install extensions from there.
- dimensi0nal 6y agoYep. It's the same tactic Signal uses - sure, you can fork it, but the fork can't legally use their servers.
- zeusk 6y agowell that should kinda be obvious? Will Linus pay for your internet bill if you use Linux on your router?
- deleted 6y ago[deleted]
- kenniskrag 6y ago
- thecrumb 6y agoMicrosoft looks at recent language survey lists, sees Python on top and wants to make money. They are only 'open' if it benefits them, not us.
- marcinzm 6y agoI mean, was that ever in question? Microsoft is a for profit corporation and not a charity.
- banana_giraffe 6y agoWe won't know for years, if ever, I'm sure, but I wonder what Guido van Rossum makes of this now that he's on the other side of the fence.
- danielovichdk 6y agoI have pretty much respect for Microsoft for open sourcing a lot of things and changing their culture for the better. Don't have anything against them having closed sourced applications, frameworks or languages. You cannot ask for everything all the time.
- _the_inflator 6y agoExactly. And never underestimate the time it takes to take care of the community that evolves around open source, merge requests and so on. If you are in the early stages of a new product, this can lead to distractions. Maybe they later on decide to take a different stance.
- Grimm1 6y agoThey've put a lot of work including some interesting ML work to my knowledge into the python language server. I wonder if it's that latter part that makes them cagey about open sourcing it.
- Lunrtick 6y agoI don't mind this too much, to be honest, though I would prefer it if they open sourced it with licence based restrictions. They're not open sourcing Pylance, which has some really nice features. The ones I mainly use are the semantic highlighting (it colours variables etc based on their type), and the auto imports (wow, I didn't realise how much I missed that). However, those are just sugary extras, the real benefit is the typescript based type analysis. This can be had using the open sourced pyright extension.
- hintymad 6y agoSo, Microsoft open sourced so many things and "it really hurt" because they didn't choose to open source everything for now? No wonder Olive Cooke chose to kill herself, and few people even showed up at her funeral. She gave almost everything she owned, yet people sent her more than 180 mails everyday, demanding more, scolding her for not giving more. The more generous you are, the more generous you must be, or you're the villain. Got it.
- g9yuayon 6y agoChinese has a saying, which I don't know how to translate: 升米恩,斗米仇。It roughly means that you give a starving man a bowl of rice, he will be grateful; if you continue to give the same man a bag of rice for him to live better, he will hate you for not giving enough. It rings very true.
- pritambaral 6y agoExcept that's NOT how FOSS works. This whole "Free as in Beer" vs "Free as in Speech" debate is really old now, and the rhetoric that FOSS users/supporters are just freeloaders mooching off of work done by others is grossly outdated.
- g9yuayon 6y agoDoes FOSS mandate that anything and everything must be open sourced? Richard Stallman holds this belief that all software should be free as in speech, but is such belief universally held? Or simply put, did MS violate any license at all? And no, I didn't imply that FOSS supporters are freeloaders in any way. You got that impression probably because of loss in translation. Rather, people who criticize MS for not open sourcing a specific piece of software are moral crusaders, trying to force a company or anyone to totally comply with their moral standard.
- pritambaral 6y ago> Does FOSS mandate that anything and everything must be open sourced? That is not the argument you're seeing here. There is no claim that any portions of MS's other IDEs (like the older, unrelated Visual Studio) be open sourced. This is only in the context of MS playing the façade that VS Code is "Open Source" and "Microsoft hearts Open Source" that such decisions fall under scrutiny. > And no, I didn't imply that FOSS supporters are freeloaders in any way. You got that impression probably because of loss in translation. Perhaps, but I don't see how else to interpret "he will hate you for not giving enough". > trying to force a company or anyone to totally comply with their moral standard. 1. I don't see force. I see criticism. 2. The criticism draws its legitimacy from an action MS took: they're the ones claiming they "heart" Open Source and that VS Code is Open Source. Sure, MS doesn't have to Open Source this specific extension, or any part of their IDE. They don't even have to keep the IDE Open Source. But then, they need to stop calling it so when it isn't: https://underjord.io/the-best-parts-of-visual-studio-code-are-proprietary.html https://underjord.io/the-best-parts-of-visual-studio-code-ar...
- agrue 6y agoMicrosoft is pro open source when it suits them. If there were in it for the long haul we would see things like Office for linux. Instead we see WSL. One or two CEO changes and they'll be back to litigation for patent infringement.
- deleted 6y ago[deleted]
- apetrovic 6y agoWhat you think would be the cost for porting and supporting Office to Linux? And how many Linux users would pay for desktop Office, either Office 365 subscription or one-time purchase? They're not charity. They have right to do whatever they want with their source.
- agrue 6y agoMS office is head and shoulders above Libre on Linux. I'd happily buy it. Not sure on the effort required. I checked GH (not a Microsoft company...) but couldn't find the source code. People and organizations can act within their rights and still be detrimental other people, organizations, and communities.
- HideousKojima 6y ago>They're not charity. They have right to do whatever they want with their source. Copyright is a government granted monopoly on intellectual property, not an inherent right. What needs to happen is extreme reform (or outright abolishment) of copyright. Though that's basically a pipe dream right now
- wasdfff 6y agoIf they’ve been building it on mac os for decades it shouldn’t be too hard to package it for other unix based OSs. Hire a single engineer and they could probably get something running in six months.
- Barrin92 6y agoAlmost the entire thread seems like a case of "give them a finger and they'll take the whole hand" Microsoft is a profit driven business, it never committed to open-sourcing every piece of software it writes, of course they're trying to somehow make money with VSCode, because it costs money to develop it. If you don't like it choose another one of the billion text editors and IDEs that exist or write a competitive language server, but nobody 'lured you in' or is extinguishing anyone.
- throwaway7281 6y agoExactly, do not expect a business (except it is a non-profit) to do something out of charity - they don't.
- SquareWheel 6y agoAgreed. Microsoft has released tons of open-source work. They're not obligated to do so for every product they develop. There's likely more complex licensing restrictions on some of their products. They even allude to this in their answer.
- saagarjha 6y agoThey did here by pushing LSP as a standard. Actually, LSP allows for closed source extensions that are generally useful: they have specially prevented that from happening here. There may be the usual “but it’s not open source” complaints here if they did that, but I suspect that people were mostly interested in the source so they could build their own version that they could use elsewhere more than that they actually wanted the code for something.
- deleted 6y ago[deleted]
- majkinetor 6y agoI am glad they did. LSP is eons better then stuff we had before.
- 6y ago
- dgellow 6y agoNot sure what’s the issue here. If they don’t feel like open sourcing this specific piece of software, that’s their right. They are already one of the largest contributor of open source software in the world.
- kam 6y agoPylance is built on their open source Pyright library, which is also available as a VSCode extension. I'm just using Pyright instead and don't seem to be missing out on anything important. https://github.com/microsoft/pyright https://github.com/microsoft/pyright
- singhrac 6y agoWhile Pyright the project is still under development, when Pylance was released, it was mentioned that the Pyright VSCode extension wouldn't be developed any more. I'm surprised it still works, but I guess that's more of a coincidence of not breaking API compatibility?
- Xavdidtheshadow 6y agoThis title is inaccurate. The language server _is_ open source, and is available here: https://github.com/microsoft/python-language-server https://github.com/microsoft/python-language-server. This is the default one VSCode ships with. This issue is filed on Pylance, a new (released June 2020) language server that's currently still in beta (announcement: https://devblogs.microsoft.com/python/announcing-pylance-fast-feature-rich-language-support-for-python-in-visual-studio-code/ https://devblogs.microsoft.com/python/announcing-pylance-fas...). Also, like the contributor notes, a lot of the "secret sauce" in Pylance is part of the open source Pyright typechecker: https://github.com/microsoft/pyright https://github.com/microsoft/pyright.
- saagarjha 6y agoI don’t use Visual Studio Code, so take this with a grain of salt, but the person who told me to try this said they were using the old one and switched because they got prompted to do so. So perhaps it is now the default?
- ipsum2 6y agoIt's not really inaccurate, because: > Our long-term plan is to transition our Microsoft Python Language Server users over to Pylance and eventually deprecate and remove the old language server as a supported option.
- Closi 6y agoWell it's open source, so the community can maintain and support it if it wants to. Microsoft isn't obligated to maintain and support its old language server in perpetuity. Nor is it obligated to open source it's new language server, which it clearly sees as filled with secret sauce, being best in class and providing a significant competitive advantage that it doesn't want to give away for free to all of it's competitors. If I was them, I wouldn't open source it.
- turbinerneiter 6y agoThat's fine, but then they should please stop acting like they are the second coming of christ for Linux and Open Source. They are misleading their users.
- maximilianroos 6y agoWhy are people so much more upset about this relative to MS not open-sourcing their other products? Is it that it's free? If Microsoft _sold_ a more advanced Python LSP, would that receive as many complaints?
- saagarjha 6y agoPersonally, I am more upset that they don’t allow it to be used elsewhere than it being closed source.
- Thristle 6y agoHow can you blame them for not making the only edge (that, and the type checker) they have over pycharm in terms of language support? M$ wants VSC users and python users will go where the best language support is, pycharm has a lot of cool/good features but they don't have all of them.
- ithrow 6y agoHow can you blame them for not making the only edge The remote code dev extension is another big one.
- teekert 6y agoNot sure if related but I installed vscodium because everyone said it's vscode with the tracking disabled. Except there is no remote-ssh plugin. I live in that plugin. It worries me a bit although I know I'll find something new when I starts to bite me.
- pritambaral 6y agoYes, that is another closed-source extension of theirs. I'd miss it too, had I not already been introduced to the (much older, more powerful) TRAMP mode on Emacs. There's not that many Open-Source IDEs with seamless remote editing support, which I now consider a must-have.
- tonymet 6y agoRefuses? How about “hasn’t yet” , or “has decided against?”
- dschuetz 6y agoTLDR: I am not surprised. A couple of years ago everybody was over VSC like flies, loving it, because it's open source and runs everywhere. I was in the minority of skeptics who predicted that kind of move. And now, once again, Microsoft proved that they only care for OSS, and created VSC, because it enabled them to spy on coders and their code to develop proprietary and closed sourced spins for software development product. The OSS community got served. Well done.
- deleted 6y ago[deleted]
- deleted 6y ago[deleted]
- heavyset_go 6y agoIf you're looking for an open source Python language server, check out `python-language-server`[1]. It's released under the MIT license, and works pretty well. While it's maintained by Palantir, it works well for me, so take from that what you will. [1] https://github.com/palantir/python-language-server https://github.com/palantir/python-language-server
- beagle3 6y agoVSCode was likely open sourced at all (in a limited way) because they were legally required to, having decided to use LGPLd WebKit/Blink; and their use of V8/Electron probably promoted this as well, even though that wasn’t mandated by the Apache/MIT license. However, it is quite clear now that it is not because they want to “support the open source / free software world”. (And to some of us, this has been clear since day 1) “New Microsoft”... if you believe that, I have a bridge to sell.
- qpiox 6y agoI think it's normal to want to make money of software. I do and many others do. The problem point here is when some company is using misleading campaigns about openness and long-term bait and lock-in scenarios. You take-out openness and liberty piece by piece, giving the public simple and cheap but closed solutions as bait. Anyone who has invested significant resources to migrate to the new tool will not switch to another new tool so easily. So one by one they swallow the bait, piece by piece, and in the end are locked-in.
- deleted 6y ago[deleted]