Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Reconsider license for Microsoft.CommonLanguageServerProtocol.Framework and related projects #68463

Closed
bjorkstromm opened this issue Jun 7, 2023 · 11 comments · Fixed by #68942
Labels
Area-IDE Resolution-Fixed The bug has been fixed and/or the requested behavior has been implemented untriaged Issues and PRs which have not yet been triaged by a lead
Milestone

Comments

@bjorkstromm
Copy link

With the announcement of the new C# extension I'd suggest revisiting the license for Microsoft.CommonLanguageServerProtocol.Framework. I'd also suggest revisiting dependencies having similar licenses, such as Microsoft.VisualStudio.LanguageServer.Protocol.

The MICROSOFT VISUAL STUDIO ADD-ONs and EXTENSIONS license is problematic because it states that the software can be used solely within Visual Studio products. This leaves other editors such as VIM, emacs, VSCodium, etc. out in the cold, because these editors can't use the new improved language server.

@CyrusNajmabadi
Copy link
Member

@dibarbet ? I believe we discussed this before. There's no real need for this reference, except to make it easy to generate some serialization types. We can either see about getting that package to be licensed in a compatible fashion, or we can move off of it and just write json directly. Want to drive this in next LSP meeting?

@dibarbet
Copy link
Member

dibarbet commented Jun 7, 2023

There's a separate conversation about this going on. Nothing to share right now, but will update this issue when I do have something.

@bjorkstromm
Copy link
Author

@dibarbet ? I believe we discussed this before. There's no real need for this reference, except to make it easy to generate some serialization types. We can either see about getting that package to be licensed in a compatible fashion, or we can move off of it and just write json directly. Want to drive this in next LSP meeting?

Please not that it's not only Microsoft.VisualStudio.LanguageServer.Protocol that has this problematic license. CLaSP also uses similar license. That's probably easier to change, since it lives in this repository.

@omajid
Copy link
Member

omajid commented Jul 5, 2023

We discovered in dotnet/source-build#3530 that this issue is a blocker for the distro maintainers looking to use the .NET VMR.

As far as we can tell, roslyn needs Microsoft.CommonLanguageServerProtocol.Framework as part of its overall build - we can't just exclude/delete it as a local workaround. And since this package (along with rosyln) is a part of the .NET VMR, the proprietary license here becomes a part of the VMR. This proprietary license is unacceptable to various source-build partners.

@omajid
Copy link
Member

omajid commented Jul 19, 2023

Can we mark this as resolved by #68942 ?

@sharwell
Copy link
Member

sharwell commented Jul 19, 2023

@bjorkstromm I believe we already resolved the issue which is under control of this repository, so I'm marking this one as fixed by #68942.

@sharwell sharwell added the Resolution-Fixed The bug has been fixed and/or the requested behavior has been implemented label Jul 19, 2023
@sharwell sharwell added this to the Next milestone Jul 19, 2023
@bjorkstromm
Copy link
Author

@bjorkstromm I believe we already resolved the issue which is under control of this repository, so I'm marking this one as fixed by #68942.

No. There is still a dependency on Microsoft.VisualStudio.LanguageServer.Protocol in the LSP host itself:

<PackageReference Include="Microsoft.VisualStudio.LanguageServer.Protocol" Version="$(MicrosoftVisualStudioLanguageServerProtocolVersion)" />

And in one of the dependent projects:

<PackageReference Include="Microsoft.VisualStudio.LanguageServer.Protocol" Version="$(MicrosoftVisualStudioLanguageServerProtocolVersion)" />
<PackageReference Include="Microsoft.VisualStudio.LanguageServer.Protocol.Extensions" Version="$(MicrosoftVisualStudioLanguageServerProtocolExtensionsVersion)" />
<PackageReference Include="Microsoft.VisualStudio.LanguageServer.Protocol.Internal" Version="$(MicrosoftVisualStudioLanguageServerProtocolInternalVersion)" />

IANAL, but as long as there's a dependency on those packages, the LSP host itself is also licensed under the same license.

@CyrusNajmabadi
Copy link
Member

We're working on uncoupling that as we speak :)

@bjorkstromm
Copy link
Author

We're working on uncoupling that as we speak :)

Nice! Thank you @CyrusNajmabadi!! 🎉

@KennethHoff
Copy link

We're working on uncoupling that as we speak :)

Did this ever happen by the way? I see there is an issue that was created that still isn't closed

@333fred
Copy link
Member

333fred commented Sep 15, 2024

Yes, that was done in #68990. I closed the linked issue.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Area-IDE Resolution-Fixed The bug has been fixed and/or the requested behavior has been implemented untriaged Issues and PRs which have not yet been triaged by a lead
Projects
None yet
Development

Successfully merging a pull request may close this issue.

8 participants