Open Path

by Chad Whitacre

Relicensing and Rug Pulls

By Chad Whitacre ❧ Published on March 21, 2024
tl;dr If a viable fork materializes, relicensing was a rug pull. If not, it wasn't ... and that's kinda sad.
Disclosure / advertisement: I work for Sentry.

Another day, another major Open Source project relicenses to avoid getting Jeff’d. This time it’s Redis … again. Was it a rug pull? It’s too soon to tell. It’s only a rug pull if someone was standing on the rug.

A Brief History of Redis Licensing

Criteria for a Rug Pull

In cases like this, the cry “Foul!” goes up:

[C]ompanies dominate their space by having an open ecosystem and a large community of volunteers and then unilaterally switch the license terms from under everyone so that the founding team and VCs can make billions.

It’s a smooth narrative, but it’s a little too smooth. Not every relicensing is a rug pull, because not every project has “a large community of volunteers.” Moving a rug with no-one standing on it is not a rug pull, it’s just moving a rug. For a relicensing to be a rug pull, there has to have been a true developer community around the project—not just users, developers.

Clearly HashiCorp pulled the rug, because in the wake of their relicensing, people outside HashiCorp did a lot of work to get the OpenTofu fork off the ground. It seems to be viable. On the other hand, since Sentry relicensed in 2019, no viable fork has emerged. There was no community of people not employed by Functional Software, Inc. dba Sentry who were developing the product. There was no-one standing on the rug.

Sentry has always been built by Sentry.

Was Redis’ relicensing a rug pull? I don’t know. They mention “efforts to support a community-led governance model, and our desire to maintain the BSD license.” I eagerly clicked the link regarding their desire. More eagerly would I have clicked to learn about their efforts. Maybe they did make an effort, maybe they didn’t. Ultimately, the proof of the pudding is in the eating. Are there enough people who care enough to launch a viable Open Source fork of Redis? Was anyone standing on the rug? In the court of public opinion action, the jury is out.

But Also, Empty Rugs are Kinda Sad

I do have to admit that there’s something poignant about yesterday’s announcement. I felt a pang of loss when digging up the history shared above. Fifteen years ago, Salvatore put something beautiful out into the world, with a sparkle in his eye and a spring in his step. Redis has always topped my personal list of really elegant pieces of software—alongside Postgres and Python, Vim, maybe Git—and Salvatore has always seemed like he’s got really good energy. When he stepped back four years ago, he wrote (emphasis mine):

I believe I’m not just leaving Redis in the hands of a community of expert programmers, but also in the hands of people who care about the legacy of the community spirit of Redis.

If no fork emerges, it seems a death knell for Salvatore’s dreams for Redis-the-community, even while it vindicates the decision of Redis-the-company. I felt a similar pang of loss when I watched David say, in reference to Sentry’s own relicensing (emphasis mine):

There’s no billion-dollar revenue companies that are exclusively [permissive] Open Source[.] I want to believe somebody will do it, at some point. They’ll take that leap, and it will work. We were not going to be the ones to quite do it[.]

Community is at the heart of Open Source. Companies are at the heart of our economy. Somehow it would sure be great if we could figure out how to have the best of both.