The Wayback Machine - https://web.archive.org/web/20180324101107/https://github.com/Microsoft/vscode/issues/60
Skip to content
Learn more
Please note that GitHub no longer supports your web browser.

We recommend upgrading to the latest Google Chrome or Firefox.

Menu license links to non Open Source license #60

Closed
jsmanrique opened this Issue Nov 18, 2015 · 20 comments

Comments

Projects
None yet

I've just downloaded it:

Version 0.10.1
Commit df352367df2efcfa9d602d471e4e2f42140a0f05
Date 2015-11-17T15:21:23.766Z
Shell 0.34.1
Renderer 45.0.2454.85
Node 4.1.1

The license link points to non Open Source license:
https://code.visualstudio.com/license#vscode

For example:

[...] users cannot opt out of data collection [...]
You may not
* work around any technical limitations in the software;

This comment has been minimized.

Show comment Hide comment
@chrisdias

chrisdias Nov 21, 2015

Member

This is correct. VS Code the product has a different license than the code in the repository.

Member

chrisdias commented Nov 21, 2015

This is correct. VS Code the product has a different license than the code in the repository.

@chrisdias chrisdias closed this Nov 21, 2015

This comment has been minimized.

Show comment Hide comment
@hartwork

hartwork Nov 21, 2015

@chrisdias, could some clarification be added to that page?
Also, what's the difference between the product and the source code?
Please re-open this ticket.

@chrisdias, could some clarification be added to that page?
Also, what's the difference between the product and the source code?
Please re-open this ticket.

This comment has been minimized.

Show comment Hide comment
@jangelfdez

jangelfdez Nov 22, 2015

So, If we get the code from the repo is OSS but if we get the executables they aren't, isn't it? It makes no sense at all :S

So, If we get the code from the repo is OSS but if we get the executables they aren't, isn't it? It makes no sense at all :S

This comment has been minimized.

Show comment Hide comment
@alexandrev

alexandrev Nov 22, 2015

+1 to reopen and talk about this issue. I hope this is a 'bug' and not a decision because it makes no sense at all.

+1 to reopen and talk about this issue. I hope this is a 'bug' and not a decision because it makes no sense at all.

This comment has been minimized.

Show comment Hide comment
@lontivero

lontivero Nov 22, 2015

+1 to reopen it. This is not clear enough.

+1 to reopen it. This is not clear enough.

This comment has been minimized.

Show comment Hide comment
@chrisdias

chrisdias Dec 3, 2015

Member

Thanks for the interest in this topic and I apologize for not commenting sooner, I’ve been on vacation and just getting through my backlog. Let me try to provide more details behind our thinking here.

When we set out to open source our code base, we looked for common practices to emulate for our scenario. We wanted to deliver a Microsoft branded product, built on top of an open source code base that the community could explore and contribute to.

We observed a number of branded products being released under a custom product license, while making the underlying source code available to the community under an open source license. For example, Chrome is built on Chromium, the Oracle JDK is built from OpenJDK, Xamarin Studio is built on MonoDevelop, and JetBrains products are built on top of the IntelliJ platform. Those branded products come with their own custom license terms, but are built on top of a code base that’s been open sourced.

We then follow a similar model for Visual Studio Code. We build on top of the vscode code base we just open sourced and we release it under a standard, pre-release Microsoft license.

The cool thing about all of this is that you have the choice to use the Visual Studio Code branded product under our license or you can build a version of the tool straight from the vscode repository, under the MIT license.

Here's how it works. When you build from the vscode repository, you can configure the resulting tool by customizing the product.json file. This file controls things like the Gallery endpoints, “Send-a-Smile” endpoints, telemetry endpoints, logos, names, and more.

When we build Visual Studio Code, we do exactly this. We clone the vscode repository, we lay down a customized product.json that has Microsoft specific functionality (telemetry, gallery, logo, etc.), and then produce a build that we release under our license.

When you clone and build from the vscode repo, none of these endpoints are configured in the default product.json. Therefore, you generate a "clean" build, without the Microsoft customizations, which is by default licensed under the MIT license (note, i made this commit to help make this more clear).

I hope this helps explain why our Microsoft branded Visual Studio Code product has a custom product license while the vscode open source repository has an MIT license. Last, I apologize for the fact that the naming of “Visual Studio Code”, “VS Code” and the vscode repository are so similar, I think it contributed to the confusion.

Chris

Member

chrisdias commented Dec 3, 2015

Thanks for the interest in this topic and I apologize for not commenting sooner, I’ve been on vacation and just getting through my backlog. Let me try to provide more details behind our thinking here.

When we set out to open source our code base, we looked for common practices to emulate for our scenario. We wanted to deliver a Microsoft branded product, built on top of an open source code base that the community could explore and contribute to.

We observed a number of branded products being released under a custom product license, while making the underlying source code available to the community under an open source license. For example, Chrome is built on Chromium, the Oracle JDK is built from OpenJDK, Xamarin Studio is built on MonoDevelop, and JetBrains products are built on top of the IntelliJ platform. Those branded products come with their own custom license terms, but are built on top of a code base that’s been open sourced.

We then follow a similar model for Visual Studio Code. We build on top of the vscode code base we just open sourced and we release it under a standard, pre-release Microsoft license.

The cool thing about all of this is that you have the choice to use the Visual Studio Code branded product under our license or you can build a version of the tool straight from the vscode repository, under the MIT license.

Here's how it works. When you build from the vscode repository, you can configure the resulting tool by customizing the product.json file. This file controls things like the Gallery endpoints, “Send-a-Smile” endpoints, telemetry endpoints, logos, names, and more.

When we build Visual Studio Code, we do exactly this. We clone the vscode repository, we lay down a customized product.json that has Microsoft specific functionality (telemetry, gallery, logo, etc.), and then produce a build that we release under our license.

When you clone and build from the vscode repo, none of these endpoints are configured in the default product.json. Therefore, you generate a "clean" build, without the Microsoft customizations, which is by default licensed under the MIT license (note, i made this commit to help make this more clear).

I hope this helps explain why our Microsoft branded Visual Studio Code product has a custom product license while the vscode open source repository has an MIT license. Last, I apologize for the fact that the naming of “Visual Studio Code”, “VS Code” and the vscode repository are so similar, I think it contributed to the confusion.

Chris

This comment has been minimized.

Show comment Hide comment
@SteveALee

SteveALee Dec 5, 2015

@chrisdias Thanks for explaining.

It would be good to ensure any differences other than Branding / telemetry are clearly documented. At least we don't need to be concerned that this is a 'bait and switch' manoeuvre as the branded version is free :)

@chrisdias Thanks for explaining.

It would be good to ensure any differences other than Branding / telemetry are clearly documented. At least we don't need to be concerned that this is a 'bait and switch' manoeuvre as the branded version is free :)

This comment has been minimized.

Show comment Hide comment
@chrisdias

chrisdias Dec 7, 2015

Member

@SteveALee You can look at the product.json that is installed with the Visual Studio Code product to see what we configure.

Member

chrisdias commented Dec 7, 2015

@SteveALee You can look at the product.json that is installed with the Visual Studio Code product to see what we configure.

This comment has been minimized.

Show comment Hide comment
@SteveALee

SteveALee Dec 7, 2015

Hah, of course. Thanks.

Hah, of course. Thanks.

This comment has been minimized.

Show comment Hide comment
@chrisdias

chrisdias Apr 18, 2016

Member

@erkinalp i'm not sure i understand the comment. what is the showstopper?

Member

chrisdias commented Apr 18, 2016

@erkinalp i'm not sure i understand the comment. what is the showstopper?

This comment has been minimized.

Show comment Hide comment
@erkinalp

erkinalp Apr 18, 2016

@chrisdias: It would be, but it is not now, i.e. a wish.

@chrisdias: It would be, but it is not now, i.e. a wish.

This comment has been minimized.

Show comment Hide comment
@NickCraver

NickCraver Jul 25, 2016

@chrisdias This distinction shouldn't be buried in an issue somewhere. The branding isn't changing, and the names (and abbreviations) everyone interchanges will forever perpetuate this licensing confusion. This needs to be content readily available from https://code.visualstudio.com/License. A blurb at the top with a link to the repo license would fix this for an increasing number of people.

Right now, if I pull up the VS Code license, I'm going to read it and think:

Microsoft does not distribute, license or provide any warranties for any of the third party packages.

Well that seems wrong. There's a Marketplace explicitly for distributing those extensions. What is this trying to say?

You may not: work around any technical limitations in the software

...so I can't fix something and make a PR? Because it'd be illegal.

You may not: remove, minimize, block or modify any notices of Microsoft or its suppliers in the software.

Does this mean I can't click cancel on an update? That minimizes a Microsoft notice.

You may not: share, publish, or lend the software, or provide it as a hosted solution for others to use, or transfer the software or this agreement to any third party

So I can't put the installer on a share? Sections 1 and 5 are in conflict as to what a user can do.

...we're all developers here. We all know this is confusing. Look at the laundry list of issues relating to this one linked in history. Can we please fix this with a small blurb of text at the top of https://code.visualstudio.com/License?

NickCraver commented Jul 25, 2016

@chrisdias This distinction shouldn't be buried in an issue somewhere. The branding isn't changing, and the names (and abbreviations) everyone interchanges will forever perpetuate this licensing confusion. This needs to be content readily available from https://code.visualstudio.com/License. A blurb at the top with a link to the repo license would fix this for an increasing number of people.

Right now, if I pull up the VS Code license, I'm going to read it and think:

Microsoft does not distribute, license or provide any warranties for any of the third party packages.

Well that seems wrong. There's a Marketplace explicitly for distributing those extensions. What is this trying to say?

You may not: work around any technical limitations in the software

...so I can't fix something and make a PR? Because it'd be illegal.

You may not: remove, minimize, block or modify any notices of Microsoft or its suppliers in the software.

Does this mean I can't click cancel on an update? That minimizes a Microsoft notice.

You may not: share, publish, or lend the software, or provide it as a hosted solution for others to use, or transfer the software or this agreement to any third party

So I can't put the installer on a share? Sections 1 and 5 are in conflict as to what a user can do.

...we're all developers here. We all know this is confusing. Look at the laundry list of issues relating to this one linked in history. Can we please fix this with a small blurb of text at the top of https://code.visualstudio.com/License?

This comment has been minimized.

Show comment Hide comment
@chrisdias

chrisdias Aug 2, 2016

Member

Hi @NickCraver,

Thanks for posting this suggestion. I can see how the product license can generate questions for developers wishing to contribute to the product.

As a result, I've updated the stable and insider pages to clarify that the license is for VS Code the product and that the source is licensed under the MIT license. The localized license pages will be updated as soon as I get the translations back.

Chris

Member

chrisdias commented Aug 2, 2016

Hi @NickCraver,

Thanks for posting this suggestion. I can see how the product license can generate questions for developers wishing to contribute to the product.

As a result, I've updated the stable and insider pages to clarify that the license is for VS Code the product and that the source is licensed under the MIT license. The localized license pages will be updated as soon as I get the translations back.

Chris

This comment has been minimized.

Show comment Hide comment
@NickCraver

NickCraver Aug 2, 2016

Thanks Chris, that little blurb is a fantastic addition. I really appreciate you improving this!

Thanks Chris, that little blurb is a fantastic addition. I really appreciate you improving this!

This comment has been minimized.

Show comment Hide comment
@SamB

SamB Sep 19, 2016

Um, wouldn't this get less dupes if it was left open until such time as MS realizes that they can maintain their brand in a less confusing and contradictory manner?

SamB commented Sep 19, 2016

Um, wouldn't this get less dupes if it was left open until such time as MS realizes that they can maintain their brand in a less confusing and contradictory manner?

This comment has been minimized.

Show comment Hide comment
@IronGopher

IronGopher Oct 12, 2016

Anyone who accepts that proprietary license is legally prohibited from contributing to this project. The license states: "You may not...reverse engineer, decompile or disassemble the software, or otherwise attempt to derive the source code for the software". Accessing this GitHub repository is an attempt to derive the source code for the software.

Anyone who accepts that proprietary license is legally prohibited from contributing to this project. The license states: "You may not...reverse engineer, decompile or disassemble the software, or otherwise attempt to derive the source code for the software". Accessing this GitHub repository is an attempt to derive the source code for the software.

This comment has been minimized.

Show comment Hide comment
@IronGopher

IronGopher Oct 13, 2016

@chrisdias "You can look at the product.json that is installed with the Visual Studio Code product to see what we configure." Indeed we can, but are we permitted to? The Berne convention or your proprietary license would seem to apply and make anything in your product.json file copyrighted and forbidden to use, so we aren't allowed to just copy and paste it into ours. I searched through the source code with grep but couldn't find an example in this repository.

@chrisdias "You can look at the product.json that is installed with the Visual Studio Code product to see what we configure." Indeed we can, but are we permitted to? The Berne convention or your proprietary license would seem to apply and make anything in your product.json file copyrighted and forbidden to use, so we aren't allowed to just copy and paste it into ours. I searched through the source code with grep but couldn't find an example in this repository.

This comment has been minimized.

Show comment Hide comment
@jsolisu

jsolisu Oct 22, 2016

¿Can we modify the product.json file on "Code OSS" without restriction acording to MIT License?

jsolisu commented Oct 22, 2016

¿Can we modify the product.json file on "Code OSS" without restriction acording to MIT License?

This comment has been minimized.

Show comment Hide comment
@IronGopher

IronGopher Oct 23, 2016

@jsolisu We can, but my point is that the product.json included in Microsoft's pre-built deb is governed by their proprietary license, meaning we are not allowed to copy its text into the MIT-licensed version and thus cannot use the extensions gallery while retaining our freedoms.

@jsolisu We can, but my point is that the product.json included in Microsoft's pre-built deb is governed by their proprietary license, meaning we are not allowed to copy its text into the MIT-licensed version and thus cannot use the extensions gallery while retaining our freedoms.

This comment has been minimized.

Show comment Hide comment
@aidan-fitz

aidan-fitz Apr 20, 2017

@chrisdias With all due respect, this sounds like an argumentum ad populum: since other companies are re-licensing their open-source apps under proprietary EULA's (case in point: Oracle, Google, and JetBrains), we should do it too. You distribute this software free of charge, and adding a custom look and feel and extension gallery doesn't seem to justify re-licensing it in this way. As a counterexample, both the source and binary distributions of Atom come with the package manager and are released under the MIT License. What gives?

aidan-fitz commented Apr 20, 2017

@chrisdias With all due respect, this sounds like an argumentum ad populum: since other companies are re-licensing their open-source apps under proprietary EULA's (case in point: Oracle, Google, and JetBrains), we should do it too. You distribute this software free of charge, and adding a custom look and feel and extension gallery doesn't seem to justify re-licensing it in this way. As a counterexample, both the source and binary distributions of Atom come with the package manager and are released under the MIT License. What gives?

slodki added a commit to slodki/vscode that referenced this issue Jun 14, 2017

Clarifying README
Clarifying product name and its licensing.
Related to #60, #1230, #2982, #3029, #5342, #17996.
Based on @chrisdias [comment](Microsoft#2983 (comment)) and [comment](Microsoft#60 (comment))

@vscodebot vscodebot bot locked and limited conversation to collaborators Nov 17, 2017

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
You can't perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.
Press h to open a hovercard with more details.
Morty Proxy This is a proxified and sanitized view of the page, visit original site.