PEP licensing and the PSF CLA

The PEP 12 template for new PEPs clearly (and strongly) encourages PEP authors to dedicate the PEP contents to the public domain (for various reasons this expresses the intent well but is not legally sufficient, and probably PEPs should use CC-0, but that’s another topic). Alternatively, PEP authors can choose the Open Publication License.

However, sending a PR to the PEP repo on GitHub requires that the contributor sign the PSF Contributor Agreement, which has multiple effects. One is to indicate the license under which the contributions will be made (defaulting to Apache License Version 2), but that is not the case for PEP submissions as they would not be accepted under that license. It also grants the PSF permission to relicense the contributions under ‘any other open source license’ as decided by the PSF Board, but that is not relevant for PEP submissions that have been dedicated to the public domain.

I’m not a lawyer, although I do have quite a lot of knowledge in this area, and I handle these activities for my employer, but it seems to me that the repository for PEPs should be excluded from the PSF Contributor Agreement requirement, because the PEPs have their own licensing structure and requirements (and don’t use ‘software’ licenses anyway, since they are not software).

Hi Kevin. I hadn’t focused on the interaction between the PEPs (especially with the template) and the PSF CLA. In general you are correct, but I might want to just clarify that PEP contents are subject to either CC-0 or OPL, and that any code that is included in the PEP is accepted under the Apache license and is then automatically relicensed to something appropriate.

Is this a blocker for something @Bloomberg such that it needs urgent attention?

1 Like

No, it’s not, I’m happy to sign CLAs for our employees who want to work on PEPs. I didn’t see any references to CC-0 in the PEP documents, though, so there may be an additional gap to be addressed there.

Also, the PEPs repo contains some code and other non-PEP stuff to deal with building and linting the actual PEP html pages, index, RSS and so on. I expect the CLA covers that stuff.

That would be logical, except that the code (at least the code used to generate the PEP index) doesn’t have any license notices at all :slight_smile: