I have always been to afraid to ask this ask this question for fear of appearing stupid. But gotta live and learn. So here goes nothing.
I have always been to afraid to ask this ask this question for fear of appearing stupid. But gotta live and learn. So here goes nothing.
When I learn redis, I spend time and want to amortize that over a long period. When I integrate elastic search into my application, I expect to be able to use it in the same way far into the future.
Relicensing, as you point out, doesn't affect past versions, but it sure does future ones.
Now I have a surprise chore on my plate, to figure out if and how I need to replace the existing component or learn about an alternative.
More than that, my confidence is shaken. Will they make changes in the future requiring more work on my part?
Changing a license is very similar to an increase in price, but even more fundamental in terms of uncertainty. And people hate change.
(I'm explicitly not addressing the impact of a license change on software freedom because I think it is very important to some. But IMO most folks are more interested in free as in beer than free as in speech. I don't know enough to speak to the free as in speech aspect, so won't.)
I think you asked a great question, hope my answer sheds some light.
Software is a shark - if it stops moving, it dies.
(I heard that saying somewhere, and I think it is untrue of actual sharks but it is definitely true of software)
[1] https://www.infoworld.com/article/3714688/the-bizarre-defens...
It's undoubtedly bait and switch.
You have a company that portrays itself as the host of a project that relies on community contributions for maintenance, and all of a sudden that host unilaterally forces a licensing change where all users, including those who have been directly and indirectly contributing to maintain the project, are faced with an invoice-or-lawyer threat.
Yes, the source code is still available. Yes, anyone can pick up the last release and run with it. But it isn't business as usual anymore.
It disrupted day-to-day operations of all companies that have been using the software. Managers of all levels had to hold meetings, internal and across organizations. They had to ask lawyers questions and decide what to do and how to act based on their answers. People scrambled to react to this change.
To make matters worse, this change was overtly designed to extort money from it's users. There is no two ways around it. The first step is a sudden change in licensing terms, and expectedly the second step of sending in the lawyers to collect payments under threat of legal action.
A ton of projects have stopped working which forced to fork or replace completely due maintainers not caring anymore, getting sick or just switching priorities. Why is this different. For all the licenses change cases, contributors who disagreed forked and stablished a new route. This is 100% the spirit of the license.
You're spreading misinformation. See other comments about RSAL/SSPL.
I think you are commenting on things you know nothing about.
Take the time you need to read through the license you are quoting.
Here's a link to the Redis Source Available License 2.0 (RSALv2):
https://redis.com/legal/rsalv2-agreement/
With RSALv2 you do not need to reach very far in the licensing terms to read the part where it explicitly prohibits users from providing Redis as a service, or even a modified version of it.
With Server Side Public License (SSPL) it's an even bigger shit show, as it forces any business that uses the software to release under the very same license all software and systems and even user interfaces (?!) that directly or indirectly interact with their project. As it is very easy to understand, this prohibits any company from adopting any software released under that license.
And of course it's so very convenient and an incredible coincidence that the same company that tries to force-feed these licenses to the world just so happens to sell proprietary "enterprise" versions of the same project.
Not "any business", only a business that offers a hosted version of the software. AWS has a problem offering a hosted Redis service, but no one who self-hosts (including running it on a cloud) is affected.
Does "hosted version of the software" mean that the hosted service has to exactly match the API semantics to count? Or does it mean any service that's semantically similar (and powered by) the software (e.g. simply storing and retrieving data on a user's behalf)?
Or does it mean something else?
Where is this actually defined?
I'm definitely not a lawyer; but as a layman I would interpret that as meaning you can't just change a few cosmetic things in the API to get around these terms, since that clearly still "entirely or primarily derives from the value of the Program or modified version" as well as "accomplishes for users the primary purpose of the Program or modified version".
There's certainly edge cases here which I assume will remain a gray area unless they're eventually worked out in court as part of some lawsuit. But given the intent of the license terms and motivation for adopting it (preventing cloud providers from reselling infrastructure software as a managed service), I would really not expect to see lawsuits against non-cloud providers. I mean there's no logical motivation whatsoever for vendors of SSPL-licensed software to start suing random users who aren't competitors. If they wanted payments from all self-host users, they would have used a very different license.
So my guess is the only way this goes to court is if a cloud provider blatantly violates those SSPL terms, which seems unlikely to happen.
Alternatively, I could just use Valkey and not worry about being sued.
If you start a project, invite people to come along and donate their free time to making it better, building (and benefitting from) a community of people working towards a common goal, suddenly switching that project to proprietary is a bit of a dick move.
Sure, it's legal, but for the people who thought they were collaborating together on something it feels a bit crappy.