HashiCorp ने Business Source License अपनाया
(hashicorp.com)- HashiCorp ने भविष्य की product releases के source code license को MPL 2.0 से Business Source License v1.1 में बदलने का फैसला किया है, ताकि community और product investment को जारी रखा जा सके
- कंपनी का कहना है कि मौजूदा open source model ने बड़ा ecosystem बनाया, लेकिन कुछ vendors ने community के काम का commercial इस्तेमाल किया, जबकि वे वास्तविक योगदान नहीं कर रहे थे
- BSL 1.1 एक source-available license है, जो copy, modify, redistribute, non-commercial use और शर्तों के तहत commercial use की अनुमति देता है, जबकि API, SDK और अधिकांश libraries MPL 2.0 पर ही रहेंगी
- end users, partners, enterprise और cloud-managed product customers आम तौर पर अपने मौजूदा उपयोग को जारी रख सकेंगे, लेकिन HashiCorp से प्रतिस्पर्धा करने वाले products की पेशकश इसका अपवाद होगी
- HashiCorp community products के ऊपर प्रतिस्पर्धी services देने वाले vendors के लिए भविष्य की releases, bug fixes और security patches को शामिल करना अब कठिन हो जाएगा
लाइसेंस बदलाव का दायरा
- भविष्य की सभी HashiCorp product releases के source code license को Mozilla Public License v2.0(MPL 2.0) से Business Source License(BSL या BUSL) v1.1 में बदला जाएगा
- HashiCorp API, SDK और लगभग सभी अन्य libraries MPL 2.0 बनाए रखेंगी
- product source code और updates HashiCorp के GitHub repositories और distribution channels पर पहले की तरह सार्वजनिक रहेंगे
- HashiCorp का लक्ष्य community, partners और customers पर असर को कम रखते हुए source code को व्यापक रूप से साझा करना और free use को संभव बनाए रखना है
open source model और commercial burden
- HashiCorp ने startup के समय products को open source करने के तीन कारण बताए थे
- practitioners को source code को स्वतंत्र रूप से download और review करने तथा समस्याओं को सीधे हल करने में सक्षम होना चाहिए
- products के आसपास ecosystem और community बननी चाहिए ताकि व्यापक integrations संभव हों
- users के लिए transparency महत्वपूर्ण है
- कंपनी ने 10 साल से अधिक समय तक free open source license के तहत नए products और features उपलब्ध कराए, और users, contributors, partners और customers से बना एक बड़ा community ecosystem विकसित हुआ
- कंपनी हर साल open source product R&D में दसियों मिलियन डॉलर निवेश करती है, और mission-critical infrastructure में HashiCorp के साथ काम करने वाले commercial customers इस model को संभव बनाते हैं
- कंपनी ने cloud providers के साथ मिलकर साझा users और customers के लिए integrations दिए हैं, और सैकड़ों technology partners के साथ भी काम किया है
BSL 1.1 कैसे लागू होगा
- BSL 1.1 एक source-available license है, जो copy, modify, redistribute, non-commercial use और कुछ शर्तों के तहत commercial use की अनुमति देता है
- पिछले कुछ वर्षों में Couchbase, Cockroach Labs, Sentry और MariaDB ने भी इसी तरह का रास्ता अपनाया है, और MariaDB ने 2013 में इस license को विकसित किया था
- Confluent, MongoDB, Elastic और Redis Labs का भी उल्लेख ऐसे उदाहरणों के रूप में किया गया है जिन्होंने commercial use restrictions वाले alternative licenses अपनाए
- HashiCorp के BSL adoption में additional use grants शामिल हैं, ताकि source code का व्यापक permissive use संभव हो सके
- license तैयार करने की प्रक्रिया में कंपनी ने OSS license experts और industry stakeholders से सलाह ली, ताकि यह industry practices के अनुरूप रहे
users, partners और customers पर प्रभाव
- end users, HashiCorp से प्रतिस्पर्धा करने वाले products देने के मामलों को छोड़कर, code को सभी non-commercial और commercial उद्देश्यों के लिए copy, modify और redistribute करते रह सकेंगे
- partners साझा customers के लिए integrations बनाना जारी रख सकेंगे
- cloud service providers के साथ कंपनी करीबी सहयोग जारी रखेगी ताकि एक-दूसरे की technologies के लिए गहरा support बना रहे
- enterprise और cloud-managed HashiCorp product customers के लिए कोई बदलाव नहीं है
- community products के आधार पर HashiCorp से प्रतिस्पर्धी services देने वाले vendors भविष्य की releases, bug fixes और security patches को HashiCorp products में integrate नहीं कर पाएंगे
आगे की जानकारी
- HashiCorp ने कहा कि community, partners और customers के प्रति उसकी प्रतिबद्धता में कोई बदलाव नहीं है
- अतिरिक्त सवालों के लिए frequently asked questions उपलब्ध कराए गए हैं
1 टिप्पणियां
Hacker News की राय
यहां से निकलने वाला निष्कर्ष बस इतना है कि HashiCorp अब open source कंपनी नहीं रही
यह बात open source की भावना से 100% मेल खाती है कि “ऐसे vendors” हैं जो शुद्ध OSS मॉडल और community के काम को commercial लक्ष्यों के लिए इस्तेमाल करते हैं, लेकिन बदले में वास्तविक योगदान नहीं लौटाते
अगर यही समस्या है, तो AGPL जैसी open source license अपनानी चाहिए, जो developer को code सार्वजनिक करने के लिए मजबूर करती है
यह बस HashiCorp का तरीका है ताकि वे पुराने open source project को सिर्फ खुद commercialize कर सकें, और अपने-आप में यह ठीक है, लेकिन तब बस closed source में चले जाएं और उसे मानें; दोनों तरफ का फायदा लेने की कोशिश नहीं करनी चाहिए
Blog post ईमानदार नहीं है। Terraform providers में कई बार upstream fixes contribute करने की कोशिश की, लेकिन HashiCorp ने कभी accept नहीं किया, इसलिए fork maintain करना पड़ा
HashiCorp ने बहुत पहले अपना OSS DNA खो दिया था, और यह कदम ताबूत में आखिरी कील जैसा है
सौभाग्य से समय के साथ Terraform providers की अधिकांश जिम्मेदारी partners को सौंप दी गई है, इसलिए उम्मीद है कि provider ecosystem सक्रिय और खुला बना रह सकेगा
मैं open source में गहराई से विश्वास करता हूं। Microsoft में मेरा आखिरी project भी .NET को open source और cross-platform बनाना था, CTO TypeScript की शुरुआत से जुड़े थे, और Pulumi भी Apache open source project है। HashiCorp अब वैसा नहीं दिखता
बड़े स्तर पर दौर बदल गया है, और source खोलना “सब कुछ मुफ्त में न दो तो असली नहीं” नहीं, बल्कि बनाने वालों और इस्तेमाल करने वालों के बीच आपसी लाभ का रिश्ता होना चाहिए
Users चल रही चीज को source से समझ और extend कर सकें, और project manage, maintain और own करने वाले लोग यह काम जारी रख सकें
यह कोई ऐसा संतुलन बिंदु नहीं है जहां पहुंचना है, बल्कि tension के बीच बनाए रखा जाने वाला balance है
Wikipedia देखा तो पता चला कि HashiCorp ने 29 नवंबर 2021 को IPO terms तय किए थे
यह hypothesis धीरे-धीरे सही लगने लगी है। विरोधी उदाहरण हों या समर्थन वाले किस्से, anecdotal data स्वागतयोग्य है
Open source न होने का मतलब यह नहीं कि source दिखाना ही नहीं चाहिए, और OSI-approved license की सारी खूबियां हटानी भी जरूरी नहीं
बेशक free software होता तो बेहतर होता, लेकिन यह वैसा ही है जैसे कहना कि सभी software free software हों तो बेहतर होगा
समस्या तब होती है जब कोई ऐसी license को open source बताने का दिखावा करे जिसे OSI approval नहीं मिल सकता। HashiCorp अब भी इसे open source कहने का दावा नहीं कर रहा और अब इसे “source-available” कह रहा है
काफी निराशाजनक। निजी तौर पर Vault के अलावा ज्यादा इस्तेमाल नहीं किया, और Terraform आजमाया था लेकिन उसमें मजा नहीं आया या उस पर कुछ बनाया नहीं, लेकिन यह HashiCorp products में मुझे सबसे अच्छी लगने वाली बात के बिल्कुल उलट है
यहां तक कि Vault में मेरे सबसे ज्यादा इस्तेमाल होने वाले code के हिस्सों में से एक, certificate management, में भी contribute किया था; अब मुझे फिर से सोचना होगा कि आगे customers को वह service आजमाने के लिए कह सकता हूं या नहीं, और दोबारा contribute करूंगा या नहीं
ऐसा लग रहा है कि VC funding सूखने के दौर में GPL-जैसी नहीं होने वाली licenses का सबसे खराब भविष्य सामने आ रहा है
उन लोगों के लिए यह दुखद है जिन्होंने OSS और उसके संचालन को जानबूझकर इसलिए सीखा कि कभी उस ज्ञान से service बनाएं, अपने खुद के boss बनें, और जिस OSS ने यहां तक पहुंचाया उसे वापस देते रहें
Company infrastructure में applications के secrets management के लिए enterprise Vault implement और operate करने का काफी अनुभव है
Vault adopt करने और contract negotiate करने के कुछ सालों में देखा कि sales engineers use cases के लिए “जरूरी” features के बारे में गलत या misleading बातें करते थे, और लंबे समय के ऐसे feature promises करते थे जिन्हें निभा नहीं सकते थे
उन्होंने ऐसे integration तरीकों की भी सिफारिश की जिनसे Vault से बाहर migration लगभग असंभव या risky हो सकता था, और जिन features को हम हमेशा free मानते थे उन्हें लगातार छीनते गए। Okta/MFA login सबसे बड़ा उदाहरण था; serious compliance उसके बिना पास करना मुश्किल है, और लगता है HashiCorp ने समझ लिया कि जो teams Vault पर बहुत निर्भर हैं, वे अंततः इस feature के लिए पैसे देने पर मजबूर होंगी
कुल मिलाकर यह मजबूत vendor lock-in जैसा दिखा, और हर साल वही features या कम features के लिए ज्यादा cost देनी पड़ी। Pricing policy भी लगातार मनमाने ढंग से बदलती रही, जिसे engineers तक समझा नहीं पाते थे
Vault खुद मुझे बेहतरीन software लगता है, लेकिन HashiCorp पर भरोसा खो चुका हूं, इसलिए निजी तौर पर किसी महत्वपूर्ण काम में उस पर निर्भर नहीं रहूंगा
अगर शाब्दिक रूप से लें तो कुछ बदला नहीं है, और यह निराशाजनक नहीं बल्कि समझदारी भरा चुनाव है। यह खुद को उन cloud providers से बचाने का तरीका है जिन्होंने open source community की goodwill का बार-बार दुरुपयोग किया है
जो OSS projects contributors से copyright assignment मांगते हैं, उन पर भरोसा नहीं करना चाहिए, और शुरू से ही सद्भावना से किए गए contributions स्वीकार नहीं करने चाहिए
वरना आज Apache 2.0 हो तो भी कल बिना किसी से अनुमति लिए commercial में बदल सकता है। क्योंकि maintainer code का 100% owner होता है
किसी commercial entity द्वारा backed OSS project को external contributors से meaningful मात्रा में contribution मिलना आम तौर पर दुर्लभ होता है, फिर भी OSS में सोचने लायक यह एक महत्वपूर्ण detail है
“commercial open source मॉडल को evolve होना होगा ताकि ecosystem खुला और freely available software देना जारी रख सके” जैसा कहकर, BUSL जैसी non-open-source licenses को open source मॉडल के evolution का हिस्सा बताना गंभीर भ्रम है या जानबूझकर गुमराह करना है
क्या कभी किसी meaningful scale पर किसी ने HashiCorp products का इस्तेमाल करके HashiCorp से वास्तव में compete किया है?
[1]: https://www.pulumi.com/docs/concepts/vs/terraform/#:~:text=U...
Pulumi किसी भी Terraform Provider को Pulumi में इस्तेमाल करने लायक convert कर सकता है, इसलिए Terraform Providers ecosystem जिस भी infrastructure को support करता है, उसे Pulumi programs से manage किया जा सकता है
कंपनियां ऐसे कदम इसलिए उठाती हैं क्योंकि Amazon जैसी कंपनियां free और open source licenses का इस्तेमाल करके open source projects के self-hosted versions खड़े कर देती हैं
ctrl+fसे “open source” खोजें तो दिखता है कि वे यह expression कहां से इस्तेमाल करना बंद करते हैंHashiCorp इस बदलाव को “open source” बनाए रखने के लिए नहीं, बल्कि open और freely available products बनाए रखने के लिए बताता है
license बदलते हुए भी यह नहीं कहता कि वे “open source” बने रहेंगे—इस मामले में मुझे वे दूसरों से ज्यादा ईमानदार लगते हैं। साफ़ है कि उन्हें पता है ऐसा कहने पर कितना backlash मिलेगा
यह दिलचस्प है कि @mitchellh चर्चा में शामिल नहीं हैं। पहले वे HN पर सीधे संवाद करते थे, और लगता है इस फैसले पर भी उनका अंतिम प्रभाव रहा होगा
कुल मिलाकर यह loser वाली चाल लगती है। Elasticsearch के साथ क्या हुआ, देख लीजिए। मेरे और ज्यादातर लोगों के लिए ES अब exist नहीं करता। हम खुशी-खुशी OpenSearch पर चले गए, और बेचारे kimchi की तरफ मुड़कर नहीं देखा। अपने ही actions की वजह से Elasticsearch अब relevant नहीं रहा
क्या HashiCorp का यह कदम Terraform और दूसरे tools के आखिरी open source license versions को fork करने की वैसी ही कोशिश शुरू करेगा? जब बनाने वाले लोग petty और insecure होकर उसी open source community के खिलाफ hostile हो जाएं जिसने उन्हें बनाने में मदद की, तो और विकल्प क्या बचता है
HashiCorp leadership से बेहद निराश हूं। MitchellH और Armon Dadgar को community के साथ इससे बेहतर व्यवहार करना चाहिए था
2016 में मैंने HashiCorp में interview दिया था और आखिर में join करने से मना कर दिया था; उस फैसले पर कभी-कभी थोड़ा regret भी हुआ। अब असली रंग दिख गए हैं, इसलिए यकीन है कि मैंने सही choice की थी
trust को लेकर कहावत है न। trust बनाने में सालों लगते हैं, टूटने में seconds, और recover होने में हमेशा लग जाता है
हैरानी होती है कि जिन्हें मैं smart समझता था, वे इतने मूर्ख कैसे हो सकते हैं
जिसने बहुत कुछ किया है, उसे insult करने की जरूरत नहीं
उनका software open source था, और अच्छी चीजें fork हो जाएंगी, इसलिए HashiCorp से नफरत करने की जरूरत नहीं
“trust बनाने में सालों, टूटने में seconds, recover होने में हमेशा” वाली बात से भी सहमत नहीं हूं। यह बहुत aggressive है
HashiCorp ने शानदार चीजें बनाईं और open source-based business आजमाया। उन्होंने कोई contract नहीं तोड़ा या immoral काम नहीं किया; यह उनकी choice है
free money खत्म होने के बाद हर open source company का inevitable end जैसा दिखता है। चुभने वाली बात यह है कि wording काफी ambiguous है
HashiCorp competitive products को “ऐसे products या services जो organization के बाहर users या customers को provide किए जाते हैं और जिनकी functionality HashiCorp commercial products/services से काफी overlap करती है” मानता है
मान लीजिए cost estimation service नहीं थी, इसलिए आपने कुछ बनाया और वह famous हो गया: https://github.com/infracost/infracost
2 साल बाद Terraform Cloud वही करने लगे तो क्या होगा? क्या business बंद करना पड़ेगा?
लेकिन database जैसे बड़े business-critical products में self-hosting को मुश्किल बनाना या essential features पर restrictions लगाना जैसी कहीं ज्यादा अजीब उलझनें दिखती हैं
closed source से बेहतर है, लेकिन ideal नहीं। कुछ समय से मुझे लगता रहा है कि license शायद practical escape route हो सकता है, लेकिन उसे widely understood, fair और clear होना चाहिए
“organization के बाहर users या customers को provide किए जाने वाले और functionality में काफी overlap रखने वाले product या service” वाली wording दर्दनाक है। शब्दों के हिसाब से यह (1) unclear है और (2) उस ambiguity पर authority company की तरफ झुकी हुई है, जिससे selective enforcement का रास्ता खुलता है
legal document sign करने की स्थिति में “चिंता मत करो, हम किसी के पीछे नहीं पड़ेंगे” convincing नहीं है। contract में ऐसी powers जमा करना जो अभी नरम दिखती हों या future में exercise की जा सकें, मुझे बड़ा red flag लगता है
इस license itself के बारे में बाकी लोग क्या सोचते हैं, यह जानने की उत्सुकता है
“2 साल बाद Terraform Cloud वही लेकर आ जाता है” वाली बात वाकई अच्छी point है। company का scope बदलता रहता है
https://www.couchbase.com/blog/couchbase-adopts-bsl-license/ के अनुसार, BSL में आम तौर पर 1 से 4 साल के बीच की बदलाव तारीख होती है, और उस समय BSL लाइसेंस GPL, AGPL, Apache आदि जैसे open source बदलाव लाइसेंस में बदल जाता है
इसलिए सबसे अहम सवाल यह है कि बदलाव लाइसेंस क्या है और इसमें कितना समय लगेगा
अगर 1 साल बाद MPL 2.0 में जाता है तो ठीक है। लेकिन अगर यह बहुत ज्यादा लंबा और restrictive है, तो यह रुख में पूरी तरह बदलाव है, और open source version latest version से इतना दूर हो जाएगा कि असल में इस्तेमाल के लायक नहीं रहेगा
सुधार: 4 साल बाद MPL 2.0 है
https://www.hashicorp.com/license-faq#What's-the-difference-...
security के शामिल होने पर 4 साल असल में सिर्फ “ऐतिहासिक रुचि” भर है
4 साल, MPL 2.0 है
बाकी कंपनियों का पता नहीं, लेकिन मैं हमेशा खुद से पूछता हूं कि अगर इन कंपनियों का software शुरू से ही non-free license में होता तो वे आज कहां होतीं
यह सिर्फ code “चुराकर” उसे service के रूप में चलाने की कोशिश करने वाली बड़ी कंपनियों के खिलाफ ही नहीं, बल्कि end users, छोटे व्यक्तियों और कंपनियों के खिलाफ भी hostile है
अगर आप HashiCorp software को सफलतापूर्वक operate और use कर रहे हैं और आपको competitor माना जाता है, तो HashiCorp आपको रोक देने का फैसला कर सकती है
उदाहरण के लिए https://github.com/hashicorp/vault/blob/main/go.mod#L25
अगर उन्होंने शुरुआत से BSL के साथ शुरू किया होता, तो मुझे नहीं लगता कि इसे इतनी व्यापक adoption मिलती
दो महीने पहले HashiCorp का CLA पेज: https://web.archive.org/web/20230610041432/https://www.hashi...
उसमें लिखा था कि “HashiCorp को sustainable business बनाने में सक्षम रखते हुए भी projects को MPL2 जैसे free और open source licenses के तहत बनाए रखने के लिए, external contributors से Contributor License Agreement (CLA) पर sign करने को कहा जाता है”
यह भी लिखा था कि “HashiCorp non-commercial software पर सच्चा free और open source software (FOSS) license लागू करने का वादा करता है। CLA users को standard FOSS license द्वारा दिए गए सभी अधिकार—अपने project या business में use करने का अधिकार, modified source को फिर से publish करना, complete fork आदि—बनाए रखते हुए HashiCorp को products को सुरक्षित रूप से commercialize करने देता है”
निराशाजनक बात यह है कि पेज की non-legal भाषा बार-बार यह संकेत देती थी कि CLA पर sign करना HashiCorp projects को open source बनाए रखने में मदद करता है, लेकिन वास्तविक contract wording ऐसी कोई guarantee नहीं देती थी
CLA की premise, यानी contributions को non-FOSS के रूप में relicense किए जाने की स्थिति बदलने पर किसी को challenge करके देखना चाहिए
ज्यादातर CLA बहुत सूखे होते हैं, लेकिन HashiCorp ने अपने CLA में कई declarations डाल रखे हैं, इसलिए वे मुश्किल में पड़ सकते हैं
ऐसा मांगने की एकमात्र वजह relicensing है, और अगर यह पहले से FOSS है तो relicense करने की एकमात्र वजह proprietary software की ओर जाना है
Linux contributions के लिए CLA नहीं मांगता। यह तो बस open source होने का नाटक करने वाले ये जोकर मांगते हैं
हमारी OSS company Apache 2.0 पर है, और Nomad को core में रखकर बनाई गई है
उसके आसपास कुछ services जोड़कर हम game server orchestration देते हैं, जिसे HashiCorp “competitive offering” के रूप में गलत समझ सकती है
license जानबूझकर अस्पष्ट है, इसलिए Nomad version को आखिरी MPL version पर freeze करने का plan है
हम CockroachDB भी इस्तेमाल करते हैं और वह BSL है, लेकिन हम उनसे बिल्कुल भी compete करने वाला product नहीं देते
सलाह मांगने वालों को HashiCorp products—Nomad, Consul, Terraform, Packer—recommend करना जारी रखने की संभावना अधिक है, लेकिन यह बदलाव निराशाजनक लगता है
जिन्हें दिलचस्पी हो, उनके लिए हम एक simple SBOM maintain करते हैं: https://github.com/rivet-gg/rivet/blob/main/docs/infrastruct...
मैं Nomad engineering lead हूं। license मेरे control से बाहर है, लेकिन बहुत से users चिंतित हैं कि पता नहीं किसी दिन इसे competition के रूप में interpret कर लिया जाए
कोई वादा नहीं कर सकता, लेकिन मैं जितना संभव हो सके उतना करूंगा ताकि आपको यह भरोसा दिला सकूं कि Nomad अब भी आपके काम के लिए सही tool है
निजी तौर पर मुझे इसमें कोई समस्या नहीं लगती। अगर अंतिम लक्ष्य SaaS प्लेटफॉर्म बनना है, तो काश और ज़्यादा open source प्रोजेक्ट शुरुआत से ही Business Source License के साथ शुरू होते
मैंने बार-बार देखा है कि बड़ी कंपनियां अपने वित्तीय लाभ के लिए open source की भावना का दुरुपयोग करती हैं, कुछ भी वापस नहीं देतीं, और दुर्भावनापूर्ण तरीके से व्यवहार करती हैं
जो चीज़ सार्वजनिक और उपलब्ध कराई गई है, उसका इस्तेमाल करना मैं दुर्भावनापूर्ण नहीं मानता, और उसे मुफ्त में बांटने में भी खुशी होती है
अगर ऐसा नहीं है, तो वह open source नहीं है। बेशक हर software का open source होना ज़रूरी नहीं, तो वह भी ठीक है
open source की भावना का दुरुपयोग तो वह पक्ष करता है जो इस्तेमाल को लेकर मनमाने नियम बनाता है
फिर भी शुरुआत से ही स्पष्ट कर देना बेहतर है