Live data from Hacker News

A new home and license (AGPL) for Synapse and friends

element.io

31–40 of 304 posts

Re: A new home and license (AGPL) for Synapse and friends

#31

This really sucks. I have always had great hope for the Matrix protocol. The AGPL isn't my favorite open source license, but it has its place... but a CLA? That is a complete nonstarter. No one should ever sign a CLA that gives a company more rights to your contributions than you get from theirs.

Speaking as CEO at Element - I don't particularly like CLAs either from an ideological perspective. However, the only way that Element can retain the right to provide alternative licenses to proprietary forks is if it has the right to do so, which means requiring a CLA. Otherwise the license change would not solve the problem that it's trying to solve, i.e. to provide a way for proprietary forks to contribute back to Matrix development costs, without having to AGPL their forks.

[edit: clarify that CLA != assigning code ownership]

Re: A new home and license (AGPL) for Synapse and friends

#33

This really sucks. I have always had great hope for the Matrix protocol. The AGPL isn't my favorite open source license, but it has its place... but a CLA? That is a complete nonstarter. No one should ever sign a CLA that gives a company more rights to your contributions than you get from theirs.

Speaking as CEO at Element - I don't particularly like CLAs either from an ideological perspective. However, the only way that Element can retain the right to provide alternative licenses to proprietary forks is if it has the right to do so, which means requiring a CLA. Otherwise the license change would not solve the problem that it's trying to solve, i.e. to provide a way for proprietary forks to contribute back to…

> the only way that Element can retain the right to provide alternative licenses to proprietary forks

I have a very straightforward and reasonable solution for you: don't do that.

Re: A new home and license (AGPL) for Synapse and friends

#34

This really sucks. I have always had great hope for the Matrix protocol. The AGPL isn't my favorite open source license, but it has its place... but a CLA? That is a complete nonstarter. No one should ever sign a CLA that gives a company more rights to your contributions than you get from theirs.

Speaking as CEO at Element - I don't particularly like CLAs either from an ideological perspective. However, the only way that Element can retain the right to provide alternative licenses to proprietary forks is if it has the right to do so, which means requiring a CLA. Otherwise the license change would not solve the problem that it's trying to solve, i.e. to provide a way for proprietary forks to contribute back to…

So you're trying to monetize other's contributions without giving them the right in return.

Re: A new home and license (AGPL) for Synapse and friends

#35
There are two related but separate issues here that need to be considered:

1. Relicense to AGPLv3

2. New CLA in place for contributions.

For a project like Matrix, the move to AGPLv3 seems clearly a good one. This is not just a library that you add to your app, it's a product in and of itself, and it's been getting abused by proprietary companies who are robbing the ecosystem. From the blog post from Element[1][2]:

> Today we have arrived at a crossroads. We have succeeded in making Matrix wildly successful, but Element is losing its ability to compete in the very ecosystem it has created. It is hard for Element to innovate and adapt as quickly as companies whose business model is developing proprietary Matrix-based products and services without the responsibility and costs of maintaining the bulk of Matrix. In order to be fair to our customers, we need to be able to put more focus on them and their specific requirements.

This is a major and legitimate problem that could undermine the future of the project, and lead to a world where proprietary versions are king and open source lags behind. The AGPL is a good solution to this problem IMHO. When a project gets to a certain scale, GPL-style protections become important to ensure contributions are being returned instead of hoarded. The Linux kernel being a class case study.

The CLA however, I'm not a fan of generally speaking. It appears to exist so that Element can sell proprietary licenses/versions of Matrix, which I'm less sympathetic too. However, without Element, Matrix would not exist and generally they have been good stewards and provide 95% of the contributions (per their claim in the blog post). To me, they deserve benefit of the doubt here.

[1]: https://element.io/blog/element-to-adopt-agplv3/

[2]: HN thread: https://news.ycombinator.com/item?id=38162275

Re: A new home and license (AGPL) for Synapse and friends

#36

Earlier quoted context omitted.

What’s the deal with CLAs? I’m not familiar with them.

When you try to contribute code back upstream, the company will require you to grant them broad rights to do whatever they want with it, including to relicense the code you are contributing under a proprietary license. You do not get the same rights in return to the upstream code. So the company can yake your contributions and go proprietary and you have no recourse.

I'm surprised it's not more of a thing to have a CLA that allows relicensing only to another OSI-approved license. I don't see many examples along those lines[0]. And the "OSI-approved" wording would allow a project to freely switch between MIT/BSD/GPL/etc or even create their own license (as long as they get it OSI-approved) without having to hunt down past contributors for permission.

I would never sign an open-ended CLA, though. For all I know, the project (with my code in it) could end up being bought by Oracle, proprietized, and used by Larry Ellison to construct the Torment Nexus.

[0] https://en.wikipedia.org/wiki/Contributor_License_Agreement#...

Re: A new home and license (AGPL) for Synapse and friends

#37

Earlier quoted context omitted.

The old repos "belong" to the matrix foundation, but the work on them was mostly done by the element team. This is them officializing that synapse and dendrite are element branded projects, not matrix (so yes, it is indeed a handoff), except they are branding this as a fork because the license is changing. They also are changing licences to require downstream forkers to also open-source their changes, ensuring corpor…

It requires all users, whether corporate or not, to release all changes under AGPLv3... the whole point of the Matrix protocol is to talk to other users... so basically everyone triggers the AGPLv3s "network" clause. However, releaseing your code under the AGPLv3 is not the same as upstreaming it. In order to do that, you additionaly have to sign a CLA granting the Element corporation broad and expansive rights to do…

I agree with your assessment of the AGPL-CLA combination. But the initial part seems to be about the Matrix protocol. The projects that were forked and re-licensed are the servers - Synapse, Dendrite, Sygnal, Sydent and MAS. The protocol itself is still under Apache 2.0 (https://spec.matrix.org/latest/), though they seem to have added CLA to it. If so, the protocol doesn't have the problem you pointed out. You could use another server - like Conduit.

Re: A new home and license (AGPL) for Synapse and friends

#38
post #22

Earlier quoted context omitted.

One example is Linux. You don't need to sign CLA to contribute to Linux. It has contributions from thousands of developers all over the world. It means that to switch Linux license to, say GPLv3, you would need to get permission from all of those developers or rewrite their contributions which is not possible in practice. To avoid this situation, some projects require their contributors to sign contributor license ag…

> tomorrow they can go proprietary and you're OK with that That depends on the CLA's wording. A CLA could allow the right to sell commercial licenses to the code while always keeping the same code under the AGPLv3. I haven't read Element's CLA though.

I haven't read it either, but a comment nearby (allegedly from the Element CEO) claims that their intent is to use this CLA to sell commercial licenses.

Re: A new home and license (AGPL) for Synapse and friends

#39
post #34

Earlier quoted context omitted.

Speaking as CEO at Element - I don't particularly like CLAs either from an ideological perspective. However, the only way that Element can retain the right to provide alternative licenses to proprietary forks is if it has the right to do so, which means requiring a CLA. Otherwise the license change would not solve the problem that it's trying to solve, i.e. to provide a way for proprietary forks to contribute back to…

So you're trying to monetize other's contributions without giving them the right in return.

If folks want to keep their contributions on their own fork and not sign a CLA that's fine too. Yes, we're trying to monetise our code in order to pay folks to keep working on it.

Re: A new home and license (AGPL) for Synapse and friends

#40

This really sucks. I have always had great hope for the Matrix protocol. The AGPL isn't my favorite open source license, but it has its place... but a CLA? That is a complete nonstarter. No one should ever sign a CLA that gives a company more rights to your contributions than you get from theirs.

I don't have a broad opinion on CLAs, but the Element announcement [0] says it's just the Apache Software Foundation's CLA, which I think most people are fine with [1]. It's more or less just a copyright/patent grant.

[0]: https://element.io/blog/element-to-adopt-agplv3/

[1]: https://www.apache.org/licenses/contributor-agreements.html#...

Post reply on HN