Spíš mě zajímá co se bude dít s OpenSearch a co bude dělat AWS.
Zrovna Elastic nemám vůbec v oblibě, protože s každou verzí něco změní a rozbijou zpětnou kompatibilitu. Vrcholem je jejich Java client, který změnili za posledních pár let několikrát (binární, REST). To je taky důvod proč se do migrace na 8 vůbec nehrneme.
To záleží zda máte ElasticSearch/Kibanu nějak upravený. Což většinou nebývá, takže by měl stačit jenom odkaz na gitový repozitár ElasticSearch/Kibana. Každopádně ten rozdíl je obrovský, protože teď už může používat ElasticSearch a Kibanu kdokoliv a může to spravovat a nabízet jako službu za úplatu zákazníkům.
A jaký je problém? Pokud to chápu dobře tak s AGPL klidně můžu udělat klienta přes REST API a ten už není AGPL nakažený a může mít libovolnou licenci. Jediné co je, že když někdo bude toho klienta používat, tak má i nárok na zdrojové kódy ElasticSearch serveru. Takže pokud nemáte ElasticSearch upravený (což bych si tipnul, že nemáte), tak je vám to jedno, protože vám stačí dát odkaz na zdrojové kódy ElasticSearch a tím jste to splnil.
Takže klidně můžete nabízet ElasticSearch jako službu pokud ho nějak upravujete, tak máte dvě možnosti. Snažit se začlenit změny do upstreamu nebo ty změny poskytovat pod AGPL. Mě tohle přijde jako rozumné a férové řešení pro všechny.
Ale vzniklo to ne kvůli nakažení klienta, ale kvůli tomu že si různé firmy braly GPL software, modifikovaly ho a poskytovaly služby na něm postavené. AGPL neupravuje "rozsah nákazy*, ale co je považováno za šíření kopie software. U GPL je to jen šíření samotného softwaru, kdy k modifikacím musím dát zdroják. AGPL za šíření softwaru považuje i jeho poskytování jako služby.
AGPL zavazuje SaaS poskytovatele také zveřejnit zdrojáky (jím modifikované, které využívá ve svých službách). Protože SaaS poskytovatel neposkytuje SW v binární formě, ale pouze služby (nedistribuuje SW), tak může standardní GPLv3 obejít.
AGPL znamená, že pokud někdo (Amazon) vezme ES a Kibanu a tyto zmodifikuje, ale nabízí je svým zákaznímům jako SaaS službu, bude nucen zveřejnit zdrojáky toho, co těm klientům poskytuje (v duchu GPLv3).
Co se týká klienta, tak tam AGPL nedostahuje, tedy v situaci, kdy ten klient také neni (neobsahuje něco) pod GPL/AGPL.
Jak píšou ostatní, AGPL neřeší (ani nemůže) licenci pro volání přes síť. Řeší to, že (třeba) Amazon vezme ElasticSearch, udělá v něm úpravy, nasadí ho na svůj server a začne poskytovat ElasticSearch jako SaaS.
GPL nepočítala se SaaS – počítala s tím, že kdyby chtěl Amazon začít na ElasticSearch vydělávat, upraví zdrojáky a upravenou aplikaci bude distribuovat svým klientům. GPL zařídila, že v takové chvíli musí zdrojáky svých úprav zpřístupnit minimálně těm klientům, nebo všem. Když SaaS odboural tu část distribuce klientům, zůstala GPL bezzubá – protože ten, kdo spouštěl onu aplikaci, a komu tedy musel být zpřístupněn upravený zdroják, byl pořád jen ten Amazon. AGPL tedy říká, že nestačí zdrojáky zpřístupnit tomu, komu jste umožnili aplikaci spustit (jako GPL), ale navíc i každému, kdo k takové aplikaci přistupuje po síti. Týká se to ale toho serveru, ne klienta – na něj se nedá licenčně dosáhnout (pokud není odvozeným dílem).
2. 9. 2024, 16:20 editováno autorem komentáře
V předchozí formě jsme dodávali řešení pro nemocnice a dost se bránili čemukoliv co nebylo pod silně permisivní licencí, nebo naopak komerční licencí od nás. Argument že je ta AGPL service použitá přesně podle licence jima nehnul, z jejich pohledu to bylo něco co z hlediska práva nemají ujasněné a nechtěli to muset řešit.