T3Wire / ProcessWire-Weblate

0 stars 0 forks source link

Notice of commercially "distributed" GNU/GPL v.2 Code in your GitHub repository #2

Open rc-d opened 8 years ago

rc-d commented 8 years ago

You've got a few commercial modules hosted in this GitHub repository. These modules are not meant for public distribution. Would you please remove them at your earliest convenience? These commercial modules are in your /site/modules/ directory of this repository:

ProcessPageListerPro FormBuilder ProFields

lisandi commented 8 years ago

Hello RC-D - I guess it is you Ryan or?

The Title of that Thread is irritating and wrong! We changed it!

The Header of that Thread needs to be changed, as the mentioned code can''t be commercially licensed is simply not possible in Processwire which is GNU/GPL v.2! Better would be to name it "Notice of commercially "distributed" GNU/GPL v.2 Code in your GitHub repository"

Processwire is licensed under GPL/GNU.v2

This repository is meant to translate the GNU/GPL.v2 Parts of a Software (in that case Processwire) and its modules we are using, which we have purchased regular!) or which we found in other repositories and which also depend on Processwire. This repository is for those parts which depend on Processwire and therefore need to be GNU/GPL v.2 too.

As we see you are a very new user here on GIT (just opened up the account)! Could you please tell us next time your real name and first verify the following as Processwire is licensed under GPL/GNU.v2

"These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it."

Could you please specify identifiable sections of those modules which are not derived from the Program - the parts which can stand alone without Processwire and are not depending on the Processwire code. We checked it and could not find any part which is not depending on the Processwire Core which is licensed under GNU/GPL v.2. Therefore also the code you want to get removed has to be GNU/GPL v.2 and therefore can be listed also here on Github!

For now we have removed the mentioned modules but we think about putting them back if you can't mention any verifiable section of that work which are not derived from Processwire and it can be reasonably considered independent and separate works in themselves.

We understand your business model but somehow it is blocking collaboration on certain parts! Wouldn't it be much better to open up those modules for public access instead? And than finance the further development of those GNU/GPL v.2 Modules by projects you are doing. Or even build up an Association where companies and people could be members in (similar to TYPO3).

Actually your issues you have posted now here on several GitHub Repositories might have just the reverse effect of what you would like to accomplish. Now people can very easily check where those GNU/GPL v.2 Modules you are charging a fee for (which is OK) are available without fee in a Git Repository. One click to rc-d and they get actually all of them, even they are sometimes older.

When I met first time Richard Stallman here in Bangkok and heard what he was saying about why he has created the GNU/GPL v.2 it was very clear that this is a great stuff but on the other hand it would break easily if people tend to not making their code available publicly.

We really love Processwire and you did a great job (if "you" = rc-d = Ryan Cramer)

Thanks for understanding

Andi

rc-d commented 8 years ago

Browser issues and not sure if these are posting, so trying again with this account.

Andi, thank you for removing the modules. And yes this is Ryan Cramer. I am the copyright owner of the ProcessWire core and the mentioned modules. As copyright holder of all the code in question, I control the license of the core and any modules I develop. So lets instead apply your question to the case of a 3rd party module developed by someone else that only owns the code of a given module. I think that's actually the question you are asking and it's a good one. The primary purpose of the ProcessWire core is a system for executing PHP modules and templates. Not unlike how an OS such as Linux is a system for executing software. These modules and templates that the system is designed to run may choose their own license, all the way from MIT to whatever commercial license the author chooses for modules and/or templates. This is my intention and it is also the purpose of the system. However, if someone wants to copy/paste code from PW's core or use the code outside of a module/template context, then they may not choose their own license at present. Though I actually do want to enable people to do that too, so looking at changing many parts of the core to use an MIT license for PW 3.x.

lisandi commented 8 years ago

Ryan, we had a similar Problem at TYPO3 which is also GNU/GPL v.2 like wordpress liek Drupal etc

Unfortunately I would like to say, you have choosen the GNU GPL v.2 at first place. Better would have been to use GNU GPL v.3

We had a long discussion already at TYPO3 to move from GNU/GPL v.2 to GNU GPL v.3 but have you ever read the license of GNU GPL v.2 carefully and have got it checked with someone who is knowledgable in law of those licenses? I guess not.

Well to make a change in License you would need to ask EVERYBODY who has EVER contributed to that ecosystem if they are OK with that license change and if ONLY ONE says NO you are already done! It is nearly impossible to get such a consent with even all those who contributed to Processwire until now.

Furthermore if you use any part of Processwire 2.* in Processwire 3.* and you would apply the GNU/GPL v.3 to Processwire 3.* you are breaching law! It is simply not working! You can't even change to MIT License without that consent and for sure there will be one who will block or who you can't reach but who had contributed before.

It has actually not sop much to do with the copyright holder than much more with the GNU/GPL v.2 and how it is working. As a copyright holder you will always be the copyright holder of the code but if you have released it under GNU/GPL v.2 what is the case you have to follow GNU/GPL v.2 rules and regulations the same way like all others who are always the owner of the code but they HAVE t make that code available under GNU/GPL v.2

In other words it is OK when you sell your modules, but as soon as someone renames the module, adjusts some even minor settings or simply put it in his own repository he can make it available for everybody. Even every customer you are doing a website for could contribute all the modules developed for him back to the global community (which would actually be very good!). To make this possible the GNU/GPL v.2 had been created and we all simply have to follow it now if we want or not!.

As the GNU/GPL v.2 is NOT compatible with any commercial and some other open source licenses all the code released under that code would not be able to be integrated into Processwire or sold together with it! In TYPO3 they created for that type of software a separate uploader where those parts later than could be integrated, which means the system would never be sold with those parts which are not compatible to GNU/GPL v.2

As you see the purpose of the software you have created is not important but the License under which the Code you have been created has been released is important - and in your case it is very important as GNU/GPL v.2 had been chosen at first place ;-)

I still think keeping the License like it is and opening up sold open source code for public development for all could benefit you and others who promote Processwire much more, than keeping that code as "pseudo"commercial code in a safe (shop).

You won't be able to change the License even for Processwire 3 if you derive parts of Processwire 3 from Processwire 2 - which will be likely the case. So don't waste time and nerves in that way and thinking in beingable to change the licence of Processwire to something else than GNU/GPL v.2.

http://www.gnu.org/licenses/old-licenses/gpl-2.0-faq.en.html http://typo3.org/typo3-cms/overview/licenses/ The same would apply to Processwire and its modules! https://forge.typo3.org/issues/50133 here only one example of discussions if even Twitter Bootstrap could be included in a Software licensed under GNU/GPL v.2!

rc-d commented 8 years ago

Thank you for your concern. Rest assured all core contributors (of which there are very few) are already accounted for and in agreement. I'm well aware of the considerations so planned for it from the beginning. There's been a lot of care in how code has been added to the core–every detail and its source is accounted for, to ensure the options are open for change to MIT when/if we want to. I understand and appreciate your concern, but no need to worry. In any case, I'm here to kindly ask you to remove the Pro modules (which are not open source licensed) from this repository. You'd mentioned you cleared them out, but I'm still seeing them. Maybe the change was committed but not pushed? (I do this all time). Please double check on this as soon as you are able.