Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Change license from BSD-3 to dual RSALv2+SSPLv1 #13157

Merged
merged 2 commits into from Mar 20, 2024

Conversation

K-Jo
Copy link
Collaborator

@K-Jo K-Jo commented Mar 20, 2024

Read more about the license change here: Redis Adopts Dual Source-Available Licensing
Live long and prosper 🖖

@K-Jo K-Jo merged commit 0b34396 into redis:unstable Mar 20, 2024
13 checks passed
@duncan-bayne
Copy link

dark-side

@CharlesChen888
Copy link
Contributor

image

enjoy-binbin added a commit that referenced this pull request Mar 21, 2024
@JesFEREM
Copy link

booooo

@adulau
Copy link

adulau commented Mar 21, 2024

It would be nice to list the new forks in this pull-request along with the ones without CLA and shared copyrights with Developer Certificate of Origin. This would avoid this exact situation.

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You shall NOT remove the BSD license header, since there are third-party contributions to those files (without signing a CLA), which were licensed under BSD-3-Clause. The same also applies to other files in src/*.

Copy link

@mochaaP mochaaP left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The BSD license header should be reserved if not all contributors signed on the license change.

@zuiderkwast
Copy link
Contributor

My contributions are made open source under the BSD license. You are not allowed to redistribute nor use them in source or binary forms without the original copyright notice and the BSD license. You must remove my contributions.

@jirutka
Copy link

jirutka commented Mar 21, 2024

Are you aware that you have just removed Redis from the vast majority of Linux distributions? 😒

This is a very bad decision that will not end well for you in the end. Look at ElasticSearch vs OpenSearch, MySQL vs MariaDB, Oracle JDK vs OpenJDK, OpenOffice vs LibreOffice etc.

There are some precedents with Terraform, Elasticsearch, Red Hat, and a few other big players now dealing with a lot of their target users and potential customers depending on open source forks. As a business strategy alienating future users like that seems misguided. (source)

If you want an example of how to do it better, check out TimescaleDB.

@VictorWesterlund
Copy link

Time for a Libredis fork!

algitbot pushed a commit to alpinelinux/aports that referenced this pull request Mar 21, 2024
@fisx
Copy link

fisx commented Mar 21, 2024

Time for a Libredis fork!

that'd be a way out, yes, but it would be so much less wasteful if we could convince you to take this change back.

sure, making money producing open source software is tricky, but given the fact that this is carried out with such obvious mistakes as the unlawful removal of BSD headers, are you sure you have done your research and established this won't backfire? i am working for a commercial reddis user, and i am certainly going to look out for forks now.

btw good reputation comes from reconsidering and fixing mistakes, not doubling down on them! :)

kazet added a commit to CERT-Polska/Artemis that referenced this pull request Mar 21, 2024
kazet added a commit to CERT-Polska/Artemis that referenced this pull request Mar 21, 2024
@mochaaP
Copy link

mochaaP commented Mar 21, 2024

Time for a Libredis fork!

Edit: please use sircwncmp's redict: https://codeberg.org/redict/redict

Really hope someone could take care of either https://github.com/librekvdb/librekv or https://github.com/Snapchat/KeyDB.

However, since a new Redis fork isn't backed by any experienced players in the database field (at least for now), I'm not sure will it last long.

That being said, if anyone is interested in taking over LibreKV please contact me :)

@tebowy
Copy link

tebowy commented Mar 21, 2024

My contributions are made open source under the BSD license. You are not allowed to redistribute nor use them in source or binary forms without the original copyright notice and the BSD license. You must remove my contributions.

@zuiderkwast
As a copyright holder you might consider pursuing a DMCA process towards the files with mangled license headers.

@joshmanders
Copy link

Redis will remain BSD licensed (2,038 days ago)

5.5 years it took for that to become untrue.

@jwbowen
Copy link

jwbowen commented Mar 21, 2024

Fork by Drew DeVault: https://codeberg.org/redict/redict

@XtremeOwnageDotCom
Copy link

freedis, here we come.

@impredicative
Copy link

impredicative commented Mar 21, 2024

This change is probably uncalled for since it has been claimed that AWS has funded one or more Redis developers for years.

The relevant forks of Redis I see are:

Alternatively, the legacy of Redis may be the RESP protocol rather than Redis itself. Here is a list of projects that claim to support the Redis protocol:

@Cyberes
Copy link

Cyberes commented Mar 21, 2024

wow this is dumb

@alexwennerberg
Copy link

no

@natoscott
Copy link
Contributor

My contributions are made open source under the BSD license. You are not allowed to redistribute nor use them in source or binary forms without the original copyright notice and the BSD license. You must remove my contributions.

My commit 11cd983 to allow Redis modules to function with modern compilers was also made under the BSD license and permission is not granted for it to be used under any other license. Copyright for changes in this commit is held by my employer, Red Hat.

@JosTheDude
Copy link

no.

@dieperdev
Copy link

👎

@nyabinary
Copy link

go woke, go broke -- bye redis, hello valkey

How does this have anything to do with “wokeness” LMAO. It is corporate greed not wokeness you dork.

@XtremeOwnageDotCom
Copy link

Also- the linux foundation is backing valkey. I am going to guess, it will win the redis forking wars.

not sure, I am very skeptical for a such organization, also Valkey it's mostly big companies fork, and Redict it mostly community and small contributes fork. As small user of Redis I prefer Redict, but I understand why big companies try to push Valkey.

One thing for you to consider- The developers such as myself, who work for big companies... We get paid to produce quality code. Given, there is generally a large financial impact to said companies, based on the performance and reliability of said open source projects- I can assure you my development team will push a lot more high quality code, as opposed to random joe chilling at his house.

That being said, I'd elect to stick with the fork, that has quality developers... the ones who understands unit tests, etc.

@ddevault
Copy link

ddevault commented Apr 3, 2024

Redict 7.3.0 is now available:

https://redict.io/posts/2024-04-03-redict-7.3.0-released/


One thing for you to consider- The developers such as myself, who work for big companies... We get paid to produce quality code. Given, there is generally a large financial impact to said companies, based on the performance and reliability of said open source projects- I can assure you my development team will push a lot more high quality code, as opposed to random joe chilling at his house.

As for who writes better code, grassroots communities or commercial developers... I'll encourage anyone with doubts to browse our code, or our documentation in particular, and let you be the judge.

Aside: here's the diffstat comparing Valkey (top) and Redict (bottom) in terms of divergence from Redis:

That's just the core codebase -- Redict also has comprehensive documentation and official containers ready to use. If you want to focus on where the development action is, Valkey has a long ways to go.

Don't forget where Redis started, either.

@XtremeOwnageDotCom
Copy link

@ddevault Very fair.

That being said though, instead of comparing the two- we should just celebrate that we are away from redis's proprietary license.

@ddevault
Copy link

ddevault commented Apr 3, 2024

That being said though, instead of comparing the two- we should just celebrate that we are away from redis's proprietary license.

Fair enough. Hooray for forks! 🎉

@PenguRin
Copy link

PenguRin commented Apr 3, 2024

@ddevault
Showing changed files is not a good comparison as Valkey was initially focused on discussions about how to move forward and it also depends how significant the changes were. Most of the changes that happened with your fork were mostly refactoring rather than features coming from 3 devs by the looks of it, so the comparison is rather misleading. The main support will be on Valkey and it will show with time, this is indisputable.

Even the first line from the release notes made me stop reading any further.

"Why Redict? #

You may be wondering why Redict would be of interest to you, particularly when compared with [Valkey](https:// www.linuxfoundation.org/press/linux-foundation-launches-open-source-valkey-community), another Redis® fork that was announced on Thursday.

In technical terms, we are focusing on stability and long-term maintenance, and on achieving excellence within our current scope."

You make it sound like as if that wasn't the goal of Valkey, which is again misleading. I'm sure there is more if I continued reading but it is getting rather weird how you're trying people to focus on your fork and the words you are using.

@ddevault
Copy link

ddevault commented Apr 4, 2024

In technical terms, we are focusing on stability and long-term maintenance, and on achieving excellence within our current scope.

You make it sound like as if that wasn't the goal of Valkey, which is again misleading. I'm sure there is more if I continued reading but it is getting rather weird how you're trying people to focus on your fork and the words you are using.

This is not a slight against Valkey, it's a factual difference between our projects. Everyone wants to converge towards stability but it is a matter of fact, not opinion, that adding a bunch of new features and undertaking a lot of major refactoring creates churn and reduces stability, or at least makes it more difficult to achieve. This is a trade-off we make when fostering innovation -- and trade-offs are factual but value neutral.

@jvinkovic
Copy link

NO

@rudyorre
Copy link

rudyorre commented Apr 5, 2024

RIP redis, is Valkey the future?

@victor95pc
Copy link

RIP redis, is Valkey the future?

Sure its, lock Redis on the last BSD version in your package manager and wait for a stable Valkey release

@NikOverflow
Copy link

NikOverflow commented Apr 8, 2024

Redis made the worst decision. There's not much more to say except that https://github.com/valkey-io/valkey is the future.

@choutianxius
Copy link

Reddit made the worst decision. There's not much more to say except that https://github.com/valkey-io/valkey is the future.

Reddit seems innocent😂

@rdesgroppes
Copy link

rdesgroppes commented Apr 8, 2024

Reddit made the worst decision. There's not much more to say except that https://github.com/valkey-io/valkey is the future.

Better read it twice...

@nyabinary
Copy link

Reddit made the worst decision. There's not much more to say except that https://github.com/valkey-io/valkey is the future.

Reddit seems innocent😂

I meannnnn
https://www.reddit.com/r/changelog/comments/6xfyfg/an_update_on_the_state_of_the_redditreddit_and/

@acharalampous
Copy link

I was not Redis for this.

@NikOverflow
Copy link

Reddit made the worst decision. There's not much more to say except that https://github.com/valkey-io/valkey is the future.

Reddit seems innocent😂

yeah i did a misstake i obviously mean Redis.

@richardARPANET
Copy link

lol

@mfocko mfocko mentioned this pull request Apr 15, 2024
7 tasks
@pete
Copy link

pete commented Apr 18, 2024

I'll encourage anyone with doubts to browse our code, or our documentation in particular, and let you be the judge.
Aside: here's the diffstat comparing Valkey (top) and Redict (bottom) in terms of divergence from Redis:

This bothered me. Churn is a bad statistic for gauging productivity, and since I am certain @ddevault knows that, I thought I'd have a look at what was actually different.

If one actually reads the diff between HEAD and e64d91c, the overwhelming majority of changes are @ddevault adding SPDX-FileCopyrightText: comment blocks to the top of every file (to the tune of six lines added per file), juggling metadata files (e.g., removing everything under .github/, .codespell, etc.), and doing s/redis/redict/g;s/Redis/Redict/g;s/REDIS/REDICT/g. That is, the churn is almost entirely fluff.

Since the changes were made by @ddevault, meaning that he knows that the amount of churn is mostly fluff, and since he knows that churn is a bad metric to begin with, I can't come up with a characterization of this other than to say it is intentionally misleading and relies on a lack of scrutiny (which, as a hacker, almost feels like a personal insult to me).

That made his claim about the number of contributors suspect, so I thought I'd have a look. 85.4% of the commits in Redict are from @ddevault, who has made 88 of the 103 commits as of d2e5e9655, while in Valkey, the curve is much flatter, with the top contributor (@0del) producing 16.2% of the commits as of cc94c98a9. (Number of commits is about as misleading as churn; the numbers are cited only to demonstrate that the claim of open-source contributors stampeding towards Redict is also false. You can check this with git log e64d91c37105bc2e23816b6f81b9ffc5e5d99801..HEAD | awk '$1=="Author:"{a[$0]++;t++}END{for(i in a)printf "%6.02f%% (%d) %s\n",(100*a[i])/t, a[i], i; print t, "total"}' in either repository.) The majority of committers to both projects have a single commit, but only @ddevault has more than a few commits in Redict.

To head off any suggestion of a hidden agenda, I don't have a dog in this fight: I'm not pushing either fork, just waiting for the dust to settle, and I have no corporate overlords. I just do not like FUD and misinformation, and I think the mudslinging in this thread is shameful. (I do think, long-term, a project probably has a better shot promising community governance rather than being run by someone that launches ad hominems against the other project, to say nothing of the misleading statistics, but looking at the commits, I see a trustworthy friend of mine involved in Redict.)

@ddevault
Copy link

I don't think that changed lines is the same thing is churn, and I also don't think changed lines is a measure of quality. What I'm measuring here has more to do with the tangible work that both Redict and Valkey have had to do in order to create a fork, which is the substantial effort of renaming everything and which necessitates a lot of lines changed. Valkey will have to complete a similar level of work in order to complete the forking process, and Redict is far ahead of them in this respect. That's all I'm pointing out with this comparison.

If one actually reads the diff between HEAD and e64d91c, the overwhelming majority of changes are @ddevault adding SPDX-FileCopyrightText: comment blocks to the top of every file (to the tune of six lines added per file), juggling metadata files (e.g., removing everything under .github/, .codespell, etc.), and doing s/redis/redict/g;s/Redis/Redict/g;s/REDIS/REDICT/g. That is, the churn is almost entirely fluff.

This "s/Redis/Redict/g" work is the bulk of the "churn", and it is not actually as simple as running "sed" over the codebase. It is a largely manual process which requires attention given to each case; in some respects it can be automated but in order to be done properly it requires a lot of manual attention and labor.

That made his claim about the number of contributors suspect, so I thought I'd have a look. 85.4% of the commits in Redict are from @ddevault, who has made 88 of the 103 commits as of d2e5e9655, while in Valkey, the curve is much flatter, with the top contributor (@0del) producing 16.2% of the commits as of cc94c98a9.

It is true that I have written most of the commits per-se as well as most of the lines changed, but as you said these are not a good measure of much. But, importantly, I have done most of the work for redict, i.e. the C language implementation of the Redict server and client, while other contributors have done most of the work in other respects; equally valuable and necessary work which, as it happens, has also mostly been completed on Redict whereas Valkey hasn't really started. This includes forking and cleaning up hiredict, which was led by Anna, most of the work on the Redict containers, which was done by Hugo and Micke, as well as writing and rewriting Redict's comprehensive documentation, which includes both content derived from the CC-BY-SA portions of the Redis documentation as well as original content written for Redict, most of which was led by Lucas.

To head off any suggestion of a hidden agenda, I don't have a dog in this fight: I'm not pushing either fork, just waiting for the dust to settle, and I have no corporate overlords. I just do not like FUD and misinformation, and I think the mudslinging in this thread is shameful. (I do think, long-term, a project probably has a better shot promising community governance rather than being run by someone that launches ad hominems against the other project, to say nothing of the misleading statistics, but looking at the commits, I see a trustworthy friend of mine involved in Redict.)

Redict does have an agenda, though it's not hidden, which is to create a grassroots, community-governed fork of Redis with a copyleft license to protect our community from future exploitation. Valkey is only "community" led insofar as the main commercial interests in Redis constitute a community, as they are the sole decision makers and leaders of the Valkey community. This is not some kind of slander or ad-hominem, but a value-neutral statement of fact; in fact I acknowledge that some users of Redis would prefer the project to be led by commercial interests.

@zuiderkwast
Copy link
Contributor

@ddevault https://www.gnu.org/philosophy/open-source-misses-the-point.html

Valkey ❤️ Redict

@pete
Copy link

pete commented Apr 19, 2024

Quoting @ddevault:

Valkey will have to complete a similar level of work in order to complete the forking process

As Valkey is not changing licenses (yet) and not moving away from Github (yet?), no, none of those things need to be done. Licensing headers don't need to be added to example scripts at all, and are not a hard requirement to have a viable fork. You know this.

it is not actually as simple as running "sed" over the codebase

I'm aware. It is still not a meaningful change and is not an indicator that Valkey is somehow "behind", and it doesn't do anyone any good to suggest that. MariaDB kept the exported symbols and executable/library names for the sake of compatibility; I imagine Redis Labs is far less litigious than Oracle. There's plenty of value in doing things that way: merges from upstream are easier, people have less to rewrite, and eventually merging forks is easier.

Redict does have an agenda, though it's not hidden

What I meant to head off was the repeated insinuations Redict's self-appointed BD has been making about Valkey; they wouldn't apply in my case.

Valkey is only "community" led insofar as the main commercial interests in Redis constitute a community

This is disingenuous. They have professed an aim to produce a community-led effort; that's as much as you have said. There's not been time for a community to coalesce. Digging trenches and encouraging a rush to judgment is a very bad move, the opposite of trying to get a community to coalesce. The sensible thing to do, if a project actually were community-led, would be to keep alterations minimal until there's some kind of consensus, and there is no consensus until there are enough people for a consensus to be meaningful. It seems like even if they moved to the LGPL, you'd not be interested in merging the forks: is this accurate? (I would like for it to not be accurate, but I suspect that if it were not true, then you'd have said as much already.)

This is not some kind of slander or ad-hominem, but a value-neutral statement of fact

It is completely impossible to construe this as fact with a straight face. Making various and sundry claims about their motivations is FUD, and claiming that this is an objective, verifiable fact is impossible for me to perceive as good faith. It is a fact that some companies that do not like Redis's new license have started backing Valkey: that is a fact, that's verifiable. You could say it's probable that they prefer a license that lets them continue business as usual, or that they are making a conservative move to the fork that has not changed licenses yet. If you said that, I'd agree that it was probable, though not a fact. Several steps past this, declaring that it's because Valkey (who seem to have expressed some openness about changing licenses to something more free in this thread) wants all of us crushed under the corporate boot is neither a fact nor probable, but FUD.

Speculating about their motivations is absolutely an ad hominem, and antagonizing them instead of asking is indicative of of nothing good. I could drop the qualifiers on this kind of speculation and start insisting things I say about your motivations are value-neutral statements of fact, but it seems extremely unhelpful to do so. It seems like a better idea to figure out common ground: there might not need to be so many forks. That'd be a much better outcome for everyone, but it's impossible to get to that outcome while you're antagonizing them and producing these "facts". (If I'm composing a wish list, I'd prefer whichever fork drops the line-editor and builds cleanly on Plan 9, but I'm fairly certain I'm in a small enough minority that I'd have to do the latter myself. On the other hand, I suspect that more people would agree that one fork would be more manageable than N forks that all hate each other--some of which have introduced intentional breaks in compatibility--and probably that LGPL would be a preferable license.)

@Lucienest
Copy link

Quoting @ddevault:

Valkey will have to complete a similar level of work in order to complete the forking process

As Valkey is not changing licenses (yet) and not moving away from Github (yet?), no, none of those things need to be done. Licensing headers don't need to be added to example scripts at all, and are not a hard requirement to have a viable fork. You know this.

it is not actually as simple as running "sed" over the codebase

I'm aware. It is still not a meaningful change and is not an indicator that Valkey is somehow "behind", and it doesn't do anyone any good to suggest that. MariaDB kept the exported symbols and executable/library names for the sake of compatibility; I imagine Redis Labs is far less litigious than Oracle. There's plenty of value in doing things that way: merges from upstream are easier, people have less to rewrite, and eventually merging forks is easier.

Redict does have an agenda, though it's not hidden

What I meant to head off was the repeated insinuations Redict's self-appointed BD has been making about Valkey; they wouldn't apply in my case.

Valkey is only "community" led insofar as the main commercial interests in Redis constitute a community

This is disingenuous. They have professed an aim to produce a community-led effort; that's as much as you have said. There's not been time for a community to coalesce. Digging trenches and encouraging a rush to judgment is a very bad move, the opposite of trying to get a community to coalesce. The sensible thing to do, if a project actually were community-led, would be to keep alterations minimal until there's some kind of consensus, and there is no consensus until there are enough people for a consensus to be meaningful. It seems like even if they moved to the LGPL, you'd not be interested in merging the forks: is this accurate? (I would like for it to not be accurate, but I suspect that if it were not true, then you'd have said as much already.)

This is not some kind of slander or ad-hominem, but a value-neutral statement of fact

It is completely impossible to construe this as fact with a straight face. Making various and sundry claims about their motivations is FUD, and claiming that this is an objective, verifiable fact is impossible for me to perceive as good faith. It is a fact that some companies that do not like Redis's new license have started backing Valkey: that is a fact, that's verifiable. You could say it's probable that they prefer a license that lets them continue business as usual, or that they are making a conservative move to the fork that has not changed licenses yet. If you said that, I'd agree that it was probable, though not a fact. Several steps past this, declaring that it's because Valkey (who seem to have expressed some openness about changing licenses to something more free in this thread) wants all of us crushed under the corporate boot is neither a fact nor probable, but FUD.

Speculating about their motivations is absolutely an ad hominem, and antagonizing them instead of asking is indicative of of nothing good. I could drop the qualifiers on this kind of speculation and start insisting things I say about your motivations are value-neutral statements of fact, but it seems extremely unhelpful to do so. It seems like a better idea to figure out common ground: there might not need to be so many forks. That'd be a much better outcome for everyone, but it's impossible to get to that outcome while you're antagonizing them and producing these "facts". (If I'm composing a wish list, I'd prefer whichever fork drops the line-editor and builds cleanly on Plan 9, but I'm fairly certain I'm in a small enough minority that I'd have to do the latter myself. On the other hand, I suspect that more people would agree that one fork would be more manageable than N forks that all hate each other--some of which have introduced intentional breaks in compatibility--and probably that LGPL would be a preferable license.)

I could summarize this in a single word sabotage

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet