Page MenuHomePhabricator

Determine license for RESTBase code
Closed, ResolvedPublic


RESTBase is currently licensed as AGPL-3, which may or may not be what we want.

  • Enumerate the advantages of AGPL-3
  • Enumerate alternative licenses we could use
  • Choose one, and document the reasons for it

Event Timeline

Jdouglas raised the priority of this task from to Medium.
Jdouglas updated the task description. (Show Details)
Jdouglas added a project: RESTBase.
Jdouglas changed Security from none to None.
Jdouglas subscribed.

I think AGPLv3 is a good choice for enforcing sharing of patches in the web service environment. It is compatible with the GPL, but actually means something in an environment where software is not normally distributed in the GPL sense. My understanding is that a web service communicating with other services over the network has no license implications on those other services.

Alternatively, we could use one of the weak licenses like MIT, BSD or public domain. The disadvantage for this would be a potential lack of publication of patches. The advantage might be a slightly wider adoption of restbase in closed environments.

I am very not a lawyer, but AGPL sounds like a good license for a Web service:

From tl;dr legal:

The AGPL license differs from the other GNU licenses in that it was built for network software. You can distribute modified versions if you keep track of the changes and the date you made them. As per usual with GNU licenses, you must license derivatives under AGPL. It provides the same restrictions and freedoms as the GPLv3 but with an additional clause which makes it so that source code must be distributed along with web publication. Since web sites and services are never distributed in the traditional sense, the AGPL is the GPL of the web.

Q: to what extent will RESTbase be optional for future versions of Mediawiki? i.e., is Mediawiki going to have a hard dependency on it?

@LuisV_WMF: That's still tbd, but I personally think that it'll become more and more desirable to have it.

In any case, we just had a brief internal discussion in which the consensus was to go for low-friction collaboration (Apache or MIT). I would thus propose to re-license RESTBase as Apache2, which is already the license used for the bulk of its modular code.

@Jdouglas, @mobrovac, @Hardikj, @cscott, @ssastry: Any objections?

The only other contributors are

Apache2 sounds better to me too, as we should here primarily be focused on encouraging the usage of our services. At the same time, it allows us to remain compatible to GPL, which is used for MW.

Yes, Apache2 sounds like a good option to me too.

GWicke claimed this task.

Now merged. Closing.