Hi all at Ning Dev !
I'm about to release a Drupal module for Ning integration. This module permits the delegation of authentication to Ning networks (from a Drupal point of view) and other things that I will detail in another post. It's using Ning API and of course, makes intensive uses of the Ning API PHP Library.
This module will be on the Drupal site, shared under GNU Public License (the license under which Drupal is distributed). For this module works, I have to distribute my module, packaged with the Ning API PHP Library. But the Ning API PHP Library is licensed under the Apache License 2.0...
My question is quite simple : am I allowed to distribute my module packaged with the Ning API PHP Library?
Thanks in advance for your answer.
I can't give you legal advice, but the text of the apache license 2.0 appears to indicate that you can include an apache-licensed work within another project so long as the apache licensing text remains in place.
Here is the exact text:
4. Redistribution. You may reproduce and distribute copies of the Work or Derivative Works thereof in any medium, with or without modifications, and in Source or Object form, provided that You meet the following conditions:
You must give any other recipients of the Work or Derivative Works a copy of this License; and
You must cause any modified files to carry prominent notices stating that You changed the files; and
You must retain, in the Source form of any Derivative Works that You distribute, all copyright, patent, trademark, and attribution notices from the Source form of the Work, excluding those notices that do not pertain to any part of the Derivative Works; and
If the Work includes a "NOTICE" text file as part of its distribution, then any Derivative Works that You distribute must include a readable copy of the attribution notices contained within such NOTICE file, excluding those notices that do not pertain to any part of the Derivative Works, in at least one of the following places: within a NOTICE text file distributed as part of the Derivative Works; within the Source form or documentation, if provided along with the Derivative Works; or, within a display generated by the Derivative Works, if and wherever such third-party notices normally appear. The contents of the NOTICE file are for informational purposes only and do not modify the License. You may add Your own attribution notices within Derivative Works that You distribute, alongside or as an addendum to the NOTICE text from the Work, provided that such additional attribution notices cannot be construed as modifying the License. You may add Your own copyright statement to Your modifications and may provide additional or different license terms and conditions for use, reproduction, or distribution of Your modifications, or for any such Derivative Works as a whole, provided Your use, reproduction, and distribution of the Work otherwise complies with the conditions stated in this License.
I also just sent an email to our legal team, so hopefully they have time to give you a more official answer.
Hope that helps.
Also: glad to see you're making good use of the ning-api-php project! There are some cool enhancements coming in the next week that should make using this library even easier.
Hi Ben !
Thank you for your answers. Unfortunately, for my part, I have some bad news: the Drupal license does not allow me to distribute modules with portions of code under another license than GPL :-(
It leaves me 2 options:
Are you ready to distribute this library under GPL too? (Oh, please, please!)
I did email our legal team and they said they were going to draft a response to these sorts of concerns. I can't imagine a scenario in which we would mind, but legal matters are always more complex than they seem.
I'll let you know as soon as he gets back to me.
Our legal department just said that the following is our stance on these matters:
As an active open source contributor, we want to facilitate development
like you've proposed. We open source our code under Apache 2.0 only.
Your modified code does not have to be licensed under Apache (you just
need to maintain the notices/attribution per Section 4 of the Apache
license). It's generally considered fine to bundle our Apache-licensed
code with GPL v3 code, and distribute the combined work under GPL v3.
Some debate whether this also applies to GPL v2, but from Ning's
perspective, we believe it does. For more info, see:
http://www.apache.org/licenses/GPL-compatibility.html. This is all just
a general statement about the Apache license. You'll of course need to
apply this your own situation and make your own independent decision.
Hope that helps. Thanks!
The key point is that it appears you can re-license Apache 2.0 code as needed, so long as it is properly attributed. This should mean that you can put the Ning API library inside of your drupal module and everything will be peachy. Let me know if this answers your questions!
This is great news and I think this is an important factor of adoption for the community. I'm going, in the coming hours, to resubmit my project (accordingly modified) to the Drupal CVS submission program ...
Thanks again for this answer.