何故、TerraformのBUSL-1.1へのライセンス変更は反発を受けたのか?

2023年8月10日、長らくオープンソース業界の優等生として一般的に扱われてきたHashiCorp社がTerraformを含む全ての製品と幾つかのライブラリの将来のリリースについて、Mozilla Public License v2.0 (MPL-2.0) からBusiness Source License v1.1 (BUSL-1.1) への移行を発表した。

このプロプライエタリ化に対してオープンソースコミュニティから強い反発の声が上がり、Terraformをフォークする動きが表面化した後、9月20日にはそのフォークがOpenTofuプロジェクトとしてLinux Foundation傘下にて運営されるほどの動きにつながった。本稿では、このメカニズムを明らかにするために、特にライセンス観点から解説していく。

(注:元々、この文書はOpenTofu発足直後に書かれたものであり、当時とは状況が若干異なる可能性がある。)

  1. Business Source Licenseとは?
    1. ライセンスとしてのデメリット、メリット
    2. Terraformにおける適用
  2. コミュニティの反発の理由
    1. 排除される人々
    2. CLAの罠による貢献者の疎外
  3. プロジェクトフォークの行方
  4. それでも何故 BUSL化を企業は望むのか?
  5. 最後に
  6. 参考
  7. 許諾
  8. 付録:Business Source License 1.1 日本語訳

Business Source Licenseとは?

Business Source License v1.1 (BUSL-1.1)は、MariaDB ABが提唱したライセンスであり、この数年で幾らか採用が散見されるようになった。基本的には、下記のような条件のライセンスとなっている。

  • 複製、改変、二次的著作物の作成、再頒布、および「非本番的な使用」(non-production use)が許諾される
    • パラメータと呼ばれる条項を修正することで、「本番使用」(production use)であっても例外的な使用が許諾される範囲を拡張できる
    • 上記要件の利用に適合しない場合、商用ライセンスの購入か、もしくは使用を停止しなければならない
  • 対象著作物のリリースから4年後に予め指定されたライセンスへ変更される
    • パラメータを修正することで、指定されたライセンスへの変更日を指定できる
  • 対象著作物を複製、改変した二次的著作物には同一のライセンスが伝播する

非常に雑な説明をすると、個人的および社内等での利用であれば複製、改変、頒布を認めるが、リリースから4年経過するまでは商業的なサービスで使用する場合において別途ライセンスを購入しなければならないということである。ただし、この商業的な利用の判定は「本番使用」(production use)という用語で定義されており、この用語の定義が明確でないために正確な基準がどこにあるかはライセンサー側しか判断できない構造になっている。また、著作権の観点では支分権の領域ではない単純な使用用途に制限をかけており、ライセンスというよりも商用ソフトウェアパッケージの世界の使用許諾契約のような性質を帯びている。

パラメータの指定・修正では特に「本番使用」(production use)においても例外的な許諾の範囲を指定できる仕組みが目を引くが、これは例えば使用するインスタンス数が幾つ未満であれば許諾されるとか、特定の領域や利用法以外は許諾される等、任意で使用の態様を指定することが想定されている。

また、このBUSL-1.1は全ての二次的著作物に対しても同一のライセンスが適用されるために「本番使用」の制限は逃れることはできない。この条件によってどこまでもライセンサーによる商用ライセンス強要が伝播するために事実上フォークも制限されているとも言える。

詳細は、ページ末尾の付録にあるBusiness Source License 1.1 (BUSL-1.1)の和訳を参照。

ライセンスとしてのデメリット、メリット

このBUSL-1.1は、MariaDB側の主張ではオープンソースとプロプライエタリの中間的なライセンスであるとのことであるが、単純な使用に制限があり、使用者の差別を行うライセンスであるため、当然ながらオープンソースのライセンスではなくプロプライエタリなライセンスに分類される。また、「本番使用」(production use)という用語に代表される曖昧性は、ライセンサー側に極めて有利な判断を行う余地を残し、汎用的なライセンスとしての使用には適さないと考えられる。

個人および限られた領域での使用であれば余計な追加制限がない限りは比較的自由な利用が可能であるが、それなりの規模の企業内での利用ではソフトウェアのサブライチェーンに厄介な例外を持ち込むことになり、最初から商用製品として扱うほうが無難、つまりおとなしく商用ライセンスを購入するほうが無難であるという結論が導かれる状況が発生する。これはライセンシー側からは大きなデメリットであるが、ライセンサー側からは商用ライセンス販売へ誘導するメリットとも考えられる。

Terraformにおける適用

Terraform 1.7.0では、BUSL-1.1のパラメータとして下記のように指定されている。

追加使用許諾: 許諾対象著作物の使用には、HashiCorpの製品と競合するホスト型または組み込み型の許諾著作物を第三者に提供することは含まれません。
変更日:許諾著作物が公表された日から4年間
変更後ライセンス:MPL 2.0

ライセンスの変更までに要する年数は4年とデフォルトのままであり、また、BSL-1.1の以前のライセンスはMPL 2.0であるので、今回のTerraformのBUSL-1.1ライセンスは4年後にこれまでと同様のMPL-2.0ライセンスに戻るという内容になっている。

追加使用許諾のフォームでは「HashiCorpの製品と競合するホスト型または組み込み型の許諾著作物を第三者に提供すること」が追加されており、これを素直に読めば、「本番的な使用」においてもHashiCorp社の商用製品と競合する製品への使用でなければライセンスに反しないことになる。ただし、ここでも「競合する」という曖昧な用語が使用されており、この部分においてもHashicorp社が恣意的に判断できる余地が残されている。

コミュニティの反発の理由

TerraformのBUSL-1.1化に関して、日本国内では反発する声はさほど多く聞かれない。端的に言えば今回のライセンス変更で影響を被るのはTerraformを直接的に使用して商用サービスを展開している業者に限られ、一般のコミュニティユーザーや顧客、開発者には大きな影響はない。このことを持って、日本ではこれまでのHashiCorp社のビジネスへ敬意と今後の立て直しへの期待を込め、むしろ積極的に理解を示す声すら一部から聞かれるのだろう。

一方、グローバルコミュニティにおいては、当然のことではあるが非常に強い拒否反応が見られる。BUSLを最初に発案したMariaDBをはじめとして幾つかの企業での採用事例をみれば、オープンソースのライセンスで提供されていたソフトウェアがコミュニティ側にとっては突然にプロプライエタリライセンスに変更され、利用者側の自由を失うという漠然とした提供企業側への失望感が大きいと考えられる。オープンソースであるという利点を生かしてユーザーと開発者のコミュニティの拡大を加速させてきたにも関わらずクローズドにされるというのは、一種の裏切り行為にも映るだろう。基本的にプロプライエタリなツールがオープンソース化することはよくあることだが、その反対の動きというものはさほど多いわけではなく、往々にして一方通行的であることもそのような感情に拍車をかけることになる。

排除される人々

これらの情感的な理由だけでなく、オープンソースのBUSL化においては直接的に排除される人々が発生するという問題が大きい。

排除を受ける人々として先ず浮かぶのは、BUSLの条文上で直接排除されている「本番的使用」をする者、すなわち商業的な利用をするユーザーである。今回のTerraformの件に関して言えばHashiCorpの製品と直接的に競合する利用に限定されているわけであるが、数が少ないので問題はないという論理にはならない。ライセンサー側が恣意的に判断可能という有利性もあるし、それによって将来はどこまで制限が拡大するか分からないという不確実性が生じることになる。

また、特に大規模な企業ではソフトウェアサプライチェーン上、このようなライセンスのソフトウェアには特段の注意が必要となり、結果的に当該ソフトウェアのエコシステムの縮小が生じる可能性が出てくる。このような事態はビジネスユーザーが望まないだけでなく、一般的なユーザーも望まない。

CLAの罠による貢献者の疎外

もう一点、BUSLの条文上では出てこないが、当該プロジェクトに貢献してきた外部の貢献者が無視されるという問題も発生する。

プロジェクトの開発ポリシーに依存し、大なり小なりと差はあるものの企業系のオープンソースプロジェクトであっても開発面からオープンに運営し、外部の第三者によるコードの貢献を受け入れているケースが多い。この外部からの貢献コードは貢献した第三者が著作権を保持しているが、将来的なトラブルを防ぐために多くのプロジェクトではCLA (Contributor License Agreement:貢献者ライセンス同意書)を貢献者にサインさせ、プロジェクト側で自由に貢献コードを扱えるようにするのが常套手段となっている。 CLAは著作権を譲渡するものでなく、あくまで永久的で取り消しできない著作権利用許諾を与えるものであるが、基本的に貢献者は当該プロジェクトの成果物がオープンソースのままで発展していくことを暗黙のうちに期待している。これはオープンソースのままであればいつまでも自由に利用できるわけであるのである意味当然のことである。

しかしながら、ある種のCLAにサインすることで、貢献者はプロジェクト側へプロプライエタリライセンスへの変更の権利も同時に与えることになる。ある種とは、プロジェクト側に再ライセンスを行う権利を認めるタイプのCLAのことである。この権利によって、Terraformで発生したようなMPL-2.0からBUSL-1.1への変更が一方的に宣言されても、貢献者側にはそれに対して異議を唱える権利もない。オープンソースとして貢献したはずの自分のコードが望まぬままにプロプライエタリコードになるのは気分の良いことではないだろう。これが貢献者による善意の貢献が無視されるということであり、「CLAの罠」とも「コピーレフト免罪符」とも呼ばれるものだ。

まとめると、貢献者による労力と意思が無視され、一部のビジネスユーザーは直接的に排除される。このような場合、オープンソースコミュニティは基本的に排除された者たちに寄り添うことになる。オープンソースは人の差別をしない概念であり、それによって様々な立場の人々による協働作業を実現してきた。よって、それを崩そうとする者には断固として拒否反応を示すのである。

プロジェクトフォークの行方

Terraformの場合、コミュニティの反発が高まり、特に直接排除された者の不満が要因となってOpenTFというフォークプロジェクトが発生することになった。そのOpenTFは、9月20日にはOpenTofuと改名し、Linux Foundation傘下のプロジェクトして開発、運営されることが決定し、現在は活発な活動が行われているようである。

一般的にオープンソースプロジェクトのフォークは成功することが少なく、場合によってはその行動が批判されることもあるが、Terraformの件に関しては直接排除された者が存在し、排除された者たちが取り得る対抗手段はプロジェクトのフォークしか残っていないという状況であったので、この行動を不当だと考えるコミュニティ側の人間はほぼいない。ライセンス変更を実施したHashiCorp社側も高い確率でフォークが起こり得ることだと認識していたことだろう。

通常、プロジェクトのフォークが一定の成功を収めるためには、

(1) メンバーの熱意とリーダーシップ
(2) プロジェクトの明確なビジョンと組織の透明性
(3) 開発および財務リソース

等といった要素が少なくともフォーク元のプロジェクトと同等のレベルで必要になる。しかしながら、BUSL化に伴うフォークのような場合には、最初から排除された者による熱量と継続的に関与し続ける動機というものが存在し、通常時よりもフォークが成功する可能性が高くなると考えられる。また、今回のOpenTofuの場合には、最初からオープンな開発体制を志向し、Linux Foundationの庇護の下に入ったということで、(2)や(3)のような要素においても成功条件をクリアする可能性が高い。特に問題となりやすい資金と人的リソースを数年に渡って確保しているのは大きいだろう。

このような成功条件を備えていてもフォークが成長するかは分からない。結局のところはフォーク元であるTerraformとの支持の取り合いにある程度の勝利をすることが必要になる。それでも、OpenTofuはオープンソースであり、貴重な存在となる可能性は今の所高いと考えられるだろう。

それでも何故 BUSL化を企業は望むのか?

手塩に掛けて育ててきたコミュニティには反発され、高い確率で元のオープンソースコードからフォークを発生させる。このようなデメリットがあるにも関わらずBUSL化を望む企業は何故現れるのだろうか?

詳細には分析しないが、結局の所 BUSL化のような手法を選択する企業に共通するのは、計画していた営業もしくは利益目標に到達しなかったのだろうという一点である。特にベンチャー投資を受けている企業、あるいは既に上場している企業が、株主からのプレッシャーを受けて目先の商用ライセンス販売を増加させる目的で実施しているケースが多いとは思う。

HashiCorp社はオープンソースの優等生と一部では看做されていたようだが、最近の損益の推移は惨憺たる数字となっている。BUSLを生み出したMariaDBは既に破綻に近い状況であるし、上場前のBUSL採用企業に関しても似たような傾向の数字だろう。オープンソースでユーザーベースの急速な拡大を得つつ、それを堅実に収益に結びつけるのではなく、投資から得た100の資金をそのまま営業マーケティング費に当てて50の売上を作り出して次の投資を引き出すという近年よく見られる拡大手法からの転換に失敗しているだけと言える。BUSL化によって、ひょっとすれば短期的には収益が改善するかもしれないが、中長期的にはコミュニティを排除したツケを支払うことになる。

BUSL-1.1のようなライセンスが嫌われるのは、ライセンスそのものというよりもそれを採用する企業が本業のビジネスに失敗しているにも関わらず、その失敗をユーザーから自由を奪うことで穴埋めしようとする姿勢に起因するところもあるだろう。

最後に

オープンソースは自由の精神に溢れるボランティアから企業戦略に則ったビジネスユーザーまで世界中の様々な立場の者が自由に参加できるエコシステムを作り上げてきた。このエコシステムの恩恵を受けるか否かは参加者の自由であり、当然ながらコミュニティから抜ける自由が全ての者にある。しかし、このエコシステムによって寄せられた他の善意の参加者による貢献をコミュニティの外へ許諾無しで持ち出すというのは好ましいことではない。

特に日本では他者の貢献を自分のモノとして捉える傾向、また差別を容認する傾向も見られ、オープンソースコミュニティへの親和性が低く感じることが多々あるが、これからの世代の方々には様々の立場の者が協働する価値というものをオープンソースの世界から感じ取って頂ければと思う。

参考

HashiCorp adopts Business Source License
https://www.hashicorp.com/blog/hashicorp-adopts-business-source-license

Linux Foundation Launches OpenTofu: A New Open Source Alternative to Terraform
https://www.linuxfoundation.org/press/announcing-opentofu

Business Source License
https://www.hashicorp.com/bsl

許諾

Copyright 2023 Shuji Sado
本文書はクリエイティブ・コモンズ 表示-継承ライセンスのもとで利用できる。挿絵は単純プロンプトのAI生成物であり、パブリックドメインである。


付録:Business Source License 1.1 日本語訳

Terraform 1.7.0-devで付与されているBUSL-1.1ライセンスを佐渡が和訳したもの
https://gist.github.com/shujisado/e76ded2795f755e169a08e0241b8bb69

— ここから —

ライセンス書面の著作権 (c) 2020 MariaDB Corporation Ab, All Rights Reserved.
Business Source Licenseは、MariaDB Corporation Abの商標です。

パラメータ

許諾者:HashiCorp, Inc.
許諾対象著作物:Terraform 1.7.0-dev. 許諾著作物は、(c) 2023 HashiCorp, Inc.
追加使用許諾: 許諾対象著作物の使用には、HashiCorpの製品と競合するホスト型または組み込み型の許諾著作物を第三者に提供することは含まれません。
変更日:許諾著作物が公表された日から4年間
変更後ライセンス:MPL 2.0

許諾対象著作物の代替ライセンスに関する情報については、licensing@hashicorp.com までお問い合わせください。

告示

Business Source License 1.1

許諾条件

許諾者は、あなたに対し、許諾対象著作物を複製、改変、二次的著作物の作成、再頒布、および非本番的に使用する権利を許諾します。許諾者は、上記の追加使用許諾を行い、限定的な本番使用を許可することができます。

変更日、または本許諾に基づき許諾対象著作物の特定のバージョンが最初に公に頒布されてから4年目のいずれか早い日に、許諾者は本許諾により、変更後ライセンスの条項に基づく権利をあなたへ付与し、上記で付与された権利は終了します。

あなたが許諾対象著作物を使用する際に、本使用許諾に記載されている現在有効な要件に適合しない場合、あなたは、許諾者、その関連団体、または正規の再販業者から商用ライセンスを購入するか、または許諾対象著作物の使用を差し控えなければなりません。

オリジナルおよび改変された許諾対象著作物、および許諾対象著作物の二次的著作物の全ての複製物は、本使用許諾に従うものとします。本使用許諾は、許諾対象著作物の各版に個別に適用され、変更日は、許諾者がリリースした許諾対象著作物の各版毎に異なる場合があります。

あなたは、本許諾を、許諾対象著作物の各オリジナルの複製または改変版の複製に目立つように表示しなければなりません。あなたが第三者から許諾対象著作物のオリジナルまたは改変版を受領した場合、当該著作物の使用には本使用許諾に定める条件が適用されます。

本許諾に違反して許諾対象著作物を使用した場合、許諾対象著作物の現行版およびその他の全ての版について、本許諾に基づくあなたの権利は自動的に消滅します。

本使用許諾は、許諾者またはその関連会社の商標またはロゴに関するいかなる権利もあなたへ付与するものではありません(ただし、あなたは、本使用許諾で明示的に要求される場合には許諾者の商標またはロゴを使用することができます)。

適用される法律で許可される範囲において、許諾対象著作物は「現状有姿」で提供されます。許諾者はここに、明示または黙示を問わず、商品適格性、特定目的への適合性、非侵害、および権原の保証を含む(ただし必ずしもこれらに限定されない)すべての保証および条件を否認します。


DALL-E生成物、パブリックドメイン
DALL-EによるTerraformライセンス変更のイメージ