Element informed the Foundation that it will be forking Synapse and Dendrite: https://matrix.org/blog/2023/11/06/future-of-synapse-dendrite/
We'll do our best to answer your questions, address concerns, and find a path forward together.
Element informed the Foundation that it will be forking Synapse and Dendrite: https://matrix.org/blog/2023/11/06/future-of-synapse-dendrite/ We'll do our best to answer your questions, address concerns, and find a path forward together. 104 comments
@skyfaller @matrix keep in mind that CLAs vary from project to project. Some CLAs (like Fedora's) explicitly tell you that you own your copyright. But yes, I certainly agree that they shouldn't be using a CLA. @TheEvilSkeleton @skyfaller @matrix So does Qt. If your intention is to commercialise, perhaps consult with them. @TheEvilSkeleton @skyfaller @matrix for clarity: Fedora doesn't have a CLA. The Fedora Project Contributor Agreement essentially just sets default licenses for contributions: https://docs.fedoraproject.org/en-US/legal/fpca/ @skyfaller @matrix I agree in general, but they could have relicensed right now to a proprietary license too, so the CLA doesn't really give them any new rights that they didn't have before. That said, the Element team being the primary contributors to the project is itself concerning. I do think that the structure of the Matrix protocol itself limits their ability to do harm thankfully. @jfred @skyfaller We think this is a great opportunity for the ecosystem to shine, and highlight that the spec remains open source *and* under open governance – though we will also be the first to note that our governance needs improvement. Broadly speaking, we find it concerning when any major open source project is dominated by a single contributor. We look forward to channeling our resources to help improve the size and diversity of the contributor ecosystem in the months and years ahead! @skyfaller Indeed, we'd prefer that these projects remain under our auspices, open source, and unencumbered by a CLA. For the avoidance of doubt, the Foundation's mission and rules forbid us from acting for the private benefit of any party, and as such we cannot contribute anything that requires us to sign a CLA wherein the assignment is made to a privately-held entity. We are committed to building up the open source commons around Matrix. @catraxx@tech.lgbt @matrix@mastodon.matrix.org > while encouraging proprietary forks to contribute to the development costs of the underlying project I...don't see the problem? The Apache license means they don't have to share sources, but the AGPL does.@matrix a very bad sign for the whole ecosystem I fear :/ I hope this benefits independent implementations more in the end, mature homeservers made by the community @matrix to be fair, the fork in itself reflects reality and is very fair - element has (always) been the main force behind development. Still taking ownership of the project entirely is pretty bad. It changes synapse (lefts face it, dendrite has been degraded to a playground) from being the forefront of a free, open source messaging ecosystem to an asset of the company, in the hope to get people to pay for developing it further I assume. @networkexception @matrix good I had the plans to implement a direct messaging feature into iceshrimp and thus activitypub, making us able to just send end to end encrypted chats over here. might be the more mature ecosystem actually than matrix @matrix this ecosystem as a whole is way too dependent on element. This might be the wake up call? I really dont want it to die, at least some version meant for interoperability of huge companies will probably survive given the IETFs MIMI efforts but we would loose the tiny bit of free, partly (mostly?) self hosting community driven instant messaging infrastructure @networkexception @matrix Seirdy ( @Seirdy ) touched on this same concern in one of their blog posts a while back, and I share this concern as well. When Matrix was first announced I thought it was a bright spot in the darkness of walled-off IM services; with this move now I'm even less sure about that. https://seirdy.one/posts/2021/02/23/keeping-platforms-open/#how-open-platforms-become-closed @networkexception Yes, there's broad agreement internally and externally that we want to see an ecosystem that has a more diverse contributor base and fundamentally doesn't hinge so much on a single vendor. @networkexception @matrix Yes, I think that if there's one takeaway from this, its that the sole focus on Element/Synapse around the ecosystem is quite terrible. The fact that I need to feel worried reading this announcement concerning the continued development of a set of homeserver implementations means that the "protocol" aspect of Matrix clearly isn't embraced sufficiently. @networkexception While we hope that Element's decision has the intended impacts for them and the broader ecosystem, we do also hope this shines a spotlight on the rest of the ecosystem. We want to see a world in which the Matrix ecosystem includes multiple stable, popular open source implementations of servers and clients. @lambda This is definitely a good time for the rest of the ecosystem to shine! I think it's what Matrix Foundation would want: pick up all that Shnapse baggage and yeet it out! ...Because we're already getting Rust and other server implementations. @matrix Any reason Element couldn't sponsor development while still keeping it under Matrix.org umbrella? Sounds a whole lot better than forking and fragmenting the server ecosystem... Also Element should really drop the CLA requirement. A restrictive CLA is everything the culture around (F)OSS stands for. @bbhtt That's a question best directed at Element. The Foundation's position is that we'd prefer for the projects to remain under our auspices and unencumbered by a CLA. @bbhtt @matrix The reason for the shift is so that Element can dual-license the project to commercial forks who currently don't contribute back. This is also the reason for the CLA, to give Element the right to dual-license. The Foundation could have done the same thing, but is not remotely set up for selling licenses, and it'd put the Foundation in competition with Element, which would be nightmarish. Hopefully this is the least worst outcome. @matrix guys you can't implement a reliable server for your unreliable protocol.
How about not forking anything and finish what you already got @matrix “Future contributions to Element’s forks will use the reciprocal AGPLv3 license, —” 😀 “—with a Contributor License Agreement (CLA).” ☹️ @baltakatei Indeed, the Foundation's position is that we'd prefer for the projects to remain under our auspices and unencumbered by a CLA. Thank you all for your questions! It's still early on the West Coast of the US where our Managing Director is located, so we're just getting started here. We'll begin responding to folks shortly. @herzenschein To your questions: 1) The Foundation itself never did maintenance or development of either project. @larsmb The Foundation's position is that we'd prefer the projects remain under our auspices and unencumbered by a CLA. As Element is the one implementing a CLA on their forks of the projects, this is a question that only they can answer. @err931 Absolutely, unequivocally yes. The spec remains open source and under open governance – noting that Synapse and Dendrite only ever checked one of those boxes. And indeed, the soon-to-be-formed Governing Board will be a significant improvement to current open governance of the spec and the Foundation. That said, the Governing Board is just the next big step. We intend to continue taking steps to actualize community governance and further enhance the open source commons around Matrix. @matrix I think the Matrix team has done a lot of things right over the years, and think this change should be met with that in mind. I do have a few questions: 1. My reading of the CLA is it's necessary for Element to offer proprietary versions of the software or integration with proprietary changes that would normally violate AGPLv3. Is that correct? @mirdaki Yes, thank you. We also believe the historical perspective is important in understanding what is happening and what may follow. With regards to the reasoning for the CLA, our position is that we'd prefer the projects to remain under our auspices and unencumbered by a CLA – and that Element is the only one who can answer the question as to why they're implementing one. @matrix @mirdaki There are several dimensions to this that are difficult to boil down into a thread. Expect more comms from us soon. Our view is that the Foundation's role in developing open source software is to fill gaps that others are not addressing. We would both need to (1) see a gap and (2) have the resources to fund development. Today, we don't have the funds to even meet current obligations. Fixing that and actualizing open governance are the first big projects of our Managing Director. @mirdaki @matrix from the Element side: if the Foundation had sufficient funding to pay Element to maintain the projects, then there would be no reason to move them. But instead, this is an attempt to generate enough funding in general (i.e. from dual-licensing to commercial forks) to pay for their development. @matrix This seems like a reasonable way for Element to continue to sustainably fund development. The CLA gives Element unique power to sell exemptions from the AGPL copyleft requirements for these projects. If Element uses this privilege to grow Matrix as a whole, it will be a win overall. If Element abuses this privilege, others in the community can fork, and then no-one gets special commercial privileges. In the wildest dreams future when Matrix is a dominant protocol, future clients and servers will emerge anyway, and they could have vastly different approaches to licensing and monetization. It's more important that in the long run open protocols like Matrix flourish, which strongly benefits from at least one well funded development company. @yuvipanda We're not happy with the changes and our stance is that we'd prefer the projects to remain under our auspices, unencumbered by a CLA. Given the nature of open source, there's nothing we can do to stop any individual or entity from forking our projects, and that's true of projects at other open source foundations too. We will be doubling down on our efforts to implement open governance and cultivate a contributor base with a diversity of employers and lived experiences. @yuvipanda @matrix frankly, it's an effort to keep the show on the road. it's not remotely intended to be a breach of trust, any more than (say) Apache forking the CERN httpd was. @matrix@mastodon.matrix.org Should we expect to see the upcoming fork of Synapse remaining compatible with the unforked Synapse servers, or will they potentially break away from the Matrix protocol? If so, would your version of Synapse add compatibility to said protocol forks into the Matrix standard as extensions? @allpurposemat We don't have existing resources we can offer on migration, but we do think this is a moment for the rest of the ecosystem to shine! @abbe98 This question is best directed at Element or a legal expert, but we believe the relevant clause will answer your question. Sourced from the ICLA linked from https://www.apache.org/licenses/contributor-agreements.html Today is a tough day, and we'd like to thank everyone for the outpouring of support and insightful questions. We're keeping a log of questions and concerns, will be sharing more answers as we have them. Keep in mind: The Matrix spec is the beating heart of the ecosystem. It is under an open source license, and subject to open governance that's slated to become more open when we elect our first Governing Board next year. #Matrix is bigger than any one or two projects. @n0toose This isn't a breakup with Element, but nonetheless you can expect the Foundation to put in a serious effort to gather feedback so that our efforts are appropriately targeted. On top of being the right thing to do, our resources are too scarce to spend time on solutions that aren't responsive to known issues. @chocolatefossty We definitely like that the new license they chose is still open source! AGPLv3 seems very appropriate, though we'd prefer for the projects to remain with the Foundation and without a CLA. The net of all this may end up being a boon for Element and/or the ecosystem, that remains to be seen. In the meantime, it definitely adds to the workload for the Foundation – in navigating the changes, and in building trust in our work. @matrix Is there a reason for choosing CLA instead of a DCO, if you don't have the intention to relicense? Isn't AGPL restictiv enough? Seems to me like the Element investors want there money back - faire enough - but why try to stab future contributors in the back 🤷♂️ @hamburghammer The Foundation's stance is that we'd prefer these projects to remain under our auspices and unencumbered by a CLA. Only Element can answer why they've decided to implement a CLA with their forks. @hamburghammer @matrix we’re not trying to stab any contributors; the reason for the CLA is that need to be able to provide alternative licenses to commercial forks (as per https://www.fsf.org/blogs/rms/selling-exceptions); this is the whole reason for the license shift. @matrix Dear, @element, please be honest: Technically correct, but in practice it means you either make your modifications available to your users or you contribute financially. (basically supporting the development) @schmittlauch @matrix Have edited the blog post to try to clarify: "giving Element the right to license the contribution commercially to third party proprietary forks so we can use it to help fund Matrix core development in future". @element @schmittlauch @matrix In other words, allow Element to make money by selling code that I have contributed (without receiving any reimbursement for it) to third parties, who may then use it in a closed-source product. Did I get that right? @scy @schmittlauch @matrix yup, precisely. so if that isn't an option for you, don't sign the CLA and maintain your code in a separate tree. The impact to contributors sucks, but the alternative sucks even more. @element @schmittlauch @matrix You do realize that most open source contributors only contribute because they have a strong belief in open source & want their code to _stay_ FLOSS? I mean, I get it, Element is struggling to make ends meet, so you're taking a gamble that being the biggest player in the Matrix ecosystem will make people contribute anyway, and that the community doesn't have the resources to maintain Synapse & Dendrite on their own. You could just ask for donations, you know? @element @schmittlauch @matrix What the fuck? Really? So the codebase being AGPL is just a marketing stunt to hide the CLA that lets you give others' contributions away as proprietary software? @serebit @schmittlauch @matrix the whole blog post is explaining that if we don't find a way to get proprietary forks to contribute back to the core project, either by releasing their code as AGPL, or buying a dual license, then core dev from Element is existentially at risk. It's far from ideal, but it's the least worst solution we can find. @element @schmittlauch @matrix In plain terms, you're forking Synapse to profit off of it with the vague assertion that you'll give money back to the Foundation. Eat shit. @serebit @element @matrix To be fair, the maintenance burden of having to refactor downstream changes – even when based on a proprietary relicensed codebase – can be a good motivation to upstream your changes as FLOSS already. Companies use AGPL differently in that regard. Oracle is more on the "better by a proprietary license, or else…" side, others do encourage the FLOSS route more. -> @element Thank you. While I am still wary about the incentives this brings for encouraging FLOSS back-contributions vs. selling proprietary licenses (see the OwnCloud-NextCloud story), I guess the biggest concern of most CLA critics is the ability of element pulling a HashiCorp and going proprietary again. @schmittlauch honestly, we only found about the slint/signal trick via the discussion here today. it looks really interesting, as there is zero desire to pull a hashicorp - we're literally trying to do the opposite. @serebit Indeed, the Foundation's stance is that we'd prefer the projects remain actively maintained under our auspices and unencumbered by a CLA. We're glad they chose an open source license, and we also think this is a moment for the rest of the ecosystem to shine. Ultimately, this is a point in favor of protocols, as the spec is the beating heart of Matrix and remains open source *and* under open governance that will only get more open as we seat the first elected Governing Board next year. This is going in the wrong direction, and if it continues, I will lose all optimism. @matrix I'd like to continue to remind people that IRC still exists. Come join us on @liberachat or OFTC |
@matrix Haven't we learned anything from repeated CLA debacles? I welcome the license change to AGPLv3, but making future contributors sign a CLA means Element could change the license again to be no longer open source. Then the community would have to fork it again, like with Terraform and OpenTofu.
I'm with Drew on this: https://drewdevault.com/2023/07/04/Dont-sign-a-CLA-2.html