2

I recently was nominated co-maintainer of this GPL library https://github.com/coq-community/corn

It does not use a copyright transfer agreement, historical authors are listed as copyright holders by their names at the beginning of each file, in the GPL license notice, as in this file https://github.com/coq-community/corn/blob/master/reals/Cesaro.v

My question is : must I ask permission to all these authors (there are 19) when I fix a bug, develop, or even delete parts of their code ?

This is a git repository so nothing is lost. Any user has access to all previous versions, knows exactly who wrote each line of code and when, so it looks in agreement with the modified works in the GPL :

For both users' and authors' sake, the GPL requires that modified versions be marked as changed, so that their problems will not be attributed erroneously to authors of previous versions.

It also looks compliant with section 5. Conveying Modified Source Versions.

It this interpretation of the GPL correct, or is this library frozen until the 19 of them give me written permission to modify their code ? This will never happen, some of them no longer respond about this project.

Edit: my modifications are not private. I plan to push them publicly in the github repo, so they will become the first version that people see when they open the repo.

2
  • GPL doesn't ask for such notification. What you do in private is your own business. It does ask that if you distribute further, recipients get the code (and notes stating there where changes to the original).
    – vonbrand
    Commented Feb 20, 2020 at 11:46
  • @vonbrand I will distribute further, by pushing in this repository that I now co-maintain.
    – V. Semeria
    Commented Feb 20, 2020 at 11:53

3 Answers 3

6

is this library frozen until the 19 of them give me written permission to modify their code ?

They have already given you written permission concretely by attaching the terms of the GPL to their work. As long as it is reasonably clear that these authors intended to publish their work under the GPL, you may use it under those terms, which include the freedom to make modifications and publish them under the GPL.

In fact, even the (non-GPL) requirement of needing to notify authors about modified versions (let alone get advance permission) is outside the "Desert Island" test of the Debian Free Software Guidelines.

2
  • Thanks. How about the GPL requirement that "modified versions be marked as changed" ? Is the git history of commits enough to mark such changes ?
    – V. Semeria
    Commented Feb 20, 2020 at 9:18
  • 3
    @V.Semeria: Generally, the "mark as changed" requirement is satisfied by adding a copyright line with the current year and your name. But the history in a version control system (like git) could also be used as an external record. Commented Feb 20, 2020 at 12:03
4

If you needed permission to do what the GPL says that you can do, then it would not say that you can do anything.

I recommend that you start by reading the Free Software definition (this is relevant to all Free Software licences). Extract next:

A program is free software if the program's users have the four essential freedoms: [1]

  • The freedom to run the program as you wish, for any purpose (freedom 0).
  • The freedom to study how the program works, and change it so it does your computing as you wish (freedom 1). Access to the source code is a precondition for this.
  • The freedom to redistribute copies so you can help others (freedom 2).
  • The freedom to distribute copies of your modified versions to others (freedom 3). By doing this you can give the whole community a chance to benefit from your changes. Access to the source code is a precondition for this.

A program is free software if it gives users adequately all of these freedoms. Otherwise, it is nonfree.

Then read the appropriate version of the GPL.

4

My question is : must I ask permission to all these authors (there are 19) when I fix a bug, develop, or even delete parts of their code ?

Legally certainly not, since the GPL allows you to do that.

Socially, as a courtesy, you might inform (once in a while) the authors that you modified it. There are likely to be happy of that and grateful.

Personally, I feel honored when someone just reads the GPL code that I wrote (professionally, e.g. GCC MELT or Bismon, or personally as a hobby e.g. RefPerSys or just manydl.c). By past experience, this does not happen often. I even feel very proud when someone compiles the GPL code that I wrote.

The Coq community is in practice mostly made of academics (I happen to attend several INRIA seminars mentioning Coq proofs). These people are likely to feel happy if you told them that you did read their papers or their code.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.