With the Couchbase Mobile 3 release, we are announcing that Couchbase is changing our source code license from Apache 2.0 to the Business Source License version 1.1 (BSL 1.1) for Sync Gateway and Couchbase Lite products. Last year, we announced a change to the source code license of our server products to BSL 1.1. This license allows software providers like Couchbase to control how their source code is commercialized while still publishing the source code to the community. The details of the license and the motivation for the change are discussed in this blog post. Key takeaways are that the BSL 1.1 still allows the use of Couchbase source code in non-commercial deployments, while also maintaining the conversion path to a more permissive open source license (Apache 2.0) after four years.
We expect this to create minimal disruption to the use and adoption of available source code from Couchbase. This post is a compilation of frequently asked questions in addition to the ones discussed in the related post.
Q: Does this affect the packaged editions of your software such as Couchbase Lite or Sync Gateway Enterprise Edition, Community Edition?
A: No, this only affects Couchbase Lite and Sync Gateway source code. All of our pre-packaged editions are licensed under Couchbase’s commercial licenses.
Q: How many customers or open source users of Couchbase Mobile does this effect?
A: We believe that this has no effect on paying customers, as they already license Couchbase Lite and Sync Gateway under a commercial license. We also believe that this has no effect on existing open source users, who may continue to use that code base under its existing license. It may affect open source users who were planning to use the source code of Sync Gateway 3.0 and Couchbase Lite 3.0 versions within commercial products.
Q: What does it mean to create a derivative work for a commercial purpose or offering a derivative work for a fee?
A: It basically means that you cannot use the Couchbase source code to create an embedded database offering or a sync solution that you monetize and sell to third parties (i.e. people other than your employees or contractors). It also implies that you cannot use Couchbase Lite built from source embedded within any commercial application.
Q: Will a developer be able to create a commercial “bridging” plugin such as an Ionic, Cordova, Flutter or React Native plugin on top of Couchbase Lite?
A: A developer can build a commercial plugin on top of our pre-packaged versions of Couchbase Lite APIs. We believe that this would suffice for a significant majority of cases. However, if for some reason you need to build Couchbase Lite from source, in order to change or extend the APIs for instance, then you cannot build a commercial plugin. We encourage that you submit feature requests on our Github source repo for any API enhancements so it can be evaluated for inclusion in our official product offerings.
Q: Will a developer be able to create an open source version of a “bridging” plugin such as an Ionic, Cordova, Flutter or React Native plugin on top of Couchbase Lite that’s built from source?
A: A developer can build an open source version of a plugin on top of Couchbase Lite built from source and make it available to the developer community. However, as a derivative product, it must be licensed as BSL 1.1. This implies that any commercial applications built using the plugin will not be possible.
Q: Why change now?
A: Couchbase Mobile 3.0 is a breakthrough release that introduces support for the Couchbase Lite C API for mobile, desktop and customer embedded hardware as well as key architectural enhancements to our data sync technology. These highly appealing enhancements motivate third parties to fork Couchbase source code in order to create their own commercial derivative works without giving back to the developer community. We feel it is in the best interest of the community and our customers to avoid that outcome.
Q: In four years, after the Change Date, can I make my own commercial product or application that uses Couchbase Lite or Sync Gateway 3 source code under Apache 2.0?
A: Yes, if you desire (provided you comply with that license).
To learn more about Couchbase Mobile 3 take a look at the press release, here.