Code contribution policy

Free / Open Source Software (F/OSS) is usually a joint effort by contributors from across many countries, collaborating via the Internet. The F/OSS software iText was originally written by Bruno Lowagie (in 1999, Belgium). Paulo Soares soon joined the project (in 2000, Portugal). Meanwhile many other developers have contributed code in many different forms.

Ownership of the code

The Intellectual Property of contributions that only take 20 lines of code or less, is implicitly transferred to 1T3XT BVBA. You agree with this rule by using a tracker on SourceForge, or by submitting the the code to the mailing list itext-questions@lists.sourceforge.net, or by sending the code to one of iText's core developers (Paulo Soares, Bruno Lowagie, Mark Storer, Kevin Day, or Xavier LeVourch). Note that it is not advised to contact developers directly unless you're explicitly invited to do so.

Contribution Policy

All code contributions that take more than 20 lines, be it patches or bug fixes for existing functionality, or source code for new functionality, should be submitted as follows:

  • Please register on the iText mailing list; this way we are sure that you have a valid e-mail address.
  • Send a mail to the list describing your contribution: what it does, why you wrote it, why you think it should be added to iText in the next release.
  • If the code contribution is substantial, you will be invited to download the iCLA.
  • Print and sign the iCLA (or sign it digitally). You can send a manually signed iCLA by postal mail to:
    1T3XT BVBA
    Bruno Lowagie
    Adolf Baeyensstraat 121
    9040 Sint-Amandsberg
    BELGIUM
    Or you can scan the signed document and mail it to bruno at 1t3xt.com.
  • Once the iCLA is received, you will be invited to (1) post the patch/source code/bug fix using one of the trackers at SourceForge, or (2) post the code on the mailing list, (3) send the code to one of the developers personally.
Note that (1) is preferred for users with an account on SourceForge, (2) is preferred in the case of minor code contributions; (3) should only be done when asked explicitly by a developer.
It is not required that you sign the iCLA for every contribution. Once you execute an iCLA, it is valid for all iText related code and projects (iText, iTextSharp, RUPS,...).
Important notice: if you are contributing on behalf of your company, an officer of your company (usually a VP or higher title) must sign the iCLA on behalf of the company, indicating his or her title. The company can choose to list the specific individuals authorized to make contributions on the "Full Name" line, or may cover all employees with a blanket iCLA by not limiting contributors to an authorized list. If necessary, the company may provide a list of authorized contributors in an attachment. The executive signing the iCLA must be the first name on such an attached list, and this executive must sign the attachment as well. It may well be the case that your company already has signed a company-wide iCLA with 1T3XT you should check first.
You can stop your participation in a project at any time, but you cannot rescind your assignments or grants with respect to prior contributions. This protects the whole community, allowing 1T3XT and downstream users of the code base to rely on it. 1T3XT cannot terminate its responsibilities under the iCLA either.