RFC: ØMQ Contributions, Copyrights and Control

We started ØMQ almost three years ago with the goal of building an open source low-latency fabric. At the time we chose a policy of centralized copyrights. We asked contributors to sign over their copyrights via a CLA. Later we switched to accepting contributions under the MIT/X11 license, which allows sublicensing.

Today, I want to change that policy. ØMQ is a great product for several reasons but to me, the work of volunteers is key. And today's policy is unfair to those contributing to ØMQ. Which means that over time, it's bad for ØMQ. We want ØMQ to become a standard part of every programmer's toolbox, a standard component on every connected box. That won't happen so long as the source code insists on being the property of one business.

We as a community are building an open ecosystem for scalable distributed services. We share the belief that such an ecosystem is worth orders of magnitude more than the sum of what any of us can make alone. We therefore work together, as peers, profiting from the new solutions that the ecosystem makes possible, rather than exploiting and ultimately draining the ecosystem itself.

So here's my plan. We like the LGPL and will stick to that. All source code will use the standard text:

ØMQ is free software; you can redistribute it and/or modify it under the terms of the Lesser GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version.

Which lets us upgrade to future versions of the LGPL when they emerge in 10 or 20 years' time. And the copyright statement on existing and derived source files will say:

Copyright (c) 2007-2010 iMatix Corporation and contributors

Which seems accurate and fair, while new source files may use whatever copyright statement is suitable. For contributors, things now become really simple: publish your new work under the LGPL, publish derived works under LGPL, publish patches under LGPL. It allows free remixability in directions under a single mutual contract, the LGPL.

By creating shared ownership of the full work, we also safeguard against any future relicense switch that could hurt our users. It's appropriate that a distributed decentralized technology with no single point of failure have a distributed, decentralized ownership with no single point of failure.

Finally, write access to the git repository. Unclear copyright provenance has been the main reason to keep this limited and to not expand the git repository to include satellite projects. But if all contributors own their work, anyone with credentials can become a committer and the git repository can grow.

We do need strict quality control on commits to the git repository. So I'd like to expand the current set of committers. You might be looking after some specific parts of the git, or helping with overall organization. The set of committers would be self-selected from known and trusted ØMQ contributors.

The committers will also have authority on releases, API changes, and the other contracts that bind us together as a community. There is no reason for iMatix to have a point of view on this except as one voice within a group of peers.

With these changes, which we'll introduce carefully once we've all discussed this, I hope that ØMQ will continue to grow healthily, and fairly to all of us who love this product and want to see it in widespread use.