Community & Support

3rd party libraries on Drupal.org

Last updated October 7, 2011.

This is the policy for 3rd party code libraries in Drupal's contribution repositories.

  1. In general 3rd party libraries are forbidden, so do not commit any. Document for your users how to find and install it.
  2. Exceptions can be made if the 3rd party library:
    1. had to be modified to work with Drupal and the modifications were not accepted by the original author.
    2. is generally difficult to find in the needed version.
    3. is no longer maintained by the original author.

    Any of the above exceptions needs approval by drupal.org administrators. Upfront: 90% of all exception requests are moot. Only ask for an exception if it is really required.

  3. For any exception to be made, the 3rd party library MUST be licensed under GPL or GPL v2+ or they have a broader license and can be re-licensed under the GPL.
    GPL "compatible" code is not allowed.

Maintainers who violate this policy or refuse to correct violations brought to their attention may have their project unpublished or Git access revoked. For more discussion see: http://drupal.org/node/418844.

This policy does not apply to original code written by a project maintainer. For example, if you write an integration library to connect a Drupal module to another API, you may include it in a repository (licensed under the GPL), since this will be the original version of the library.

Comments

Might be confusing.

Because the "exceptions" rule follows the other rules it *might* confuse some users that the exception reasons can trump all the above rules so I am writing this to share my understanding (the D.A.'s Legal team will correct me if I am in error) ...

Rule #3 above "absolutely and always" does **NOT** cancel or override Rule #2, ever!

None of the listed reasons for exceptions change copyright status. Just because a work has to be modified, is hard to find, and/or is no longer maintained does NOT "automagically" make the author's copyrights go away.

Do not upload non-GPLv2+ code. Period.

I suggest adding something to this effect at the end of Rule 3 to make it less confusing.

Generated Parsing Code

If I use a third-party library to generate code, then what is the status of that code?

How to get approval?

Any of the above exceptions needs approval by drupal.org administrators

This is understood, but how do we gain approval from the administrators?
[EDIT] - there is now a link to ask for approval - thank you.

Design is my game http://tomkaneko.com

nobody click here