Kod źródłowy systemu YetiForce

Aktualnie wszystkie produkty rozpowszechniane przez YetiForce są na licencjach otwartych, czyli dają dostęp do kodu źródłowego, który można przeglądać, kopiować, modyfikować i rozpowszechniać.

Kod źródłowy systemu YetiForce

Oprogramowanie YetiForce, które jest rozpowszechniane na licencji "YetiForce Public License v4" pozwala na dowolne przeglądanie, kopiowanie, modyfikowanie i rozpowszechnianie kodu źródłowego [ograniczenie stanowi modyfikacja stopki, co zostało opisane w licencji i w artykule "Open source według YetiForce"].

W praktyce możesz zmieniać i dopasowywać system YetiForce, łączyć z innymi systemami, usuwać z niego niepotrzebne funkcjonalności czy też dopisywać dowolne nowe funkcjonalności i nie potrzebujesz na to zgody. Licencja YetiForce jest bardzo liberalna i można ją porównać do innych liberalnych licencji tj. MIT, BSD, MPL 1.1. 

Kod źródłowy bibliotek zależnych

Należy pamiętać, że oprogramowanie YetiForce tak samo jak każde inne oprogramowanie na świecie wykorzystuje biblioteki zależne. Bardzo starannie uporządkowaliśmy i wybraliśmy biblioteki, które pozwalają na dostęp do kodu źródłowego oraz umożliwiają zbliżoną swobodę w przeglądaniu, kopiowaniu, modyfikowaniu i rozpowszechnianiu kodu źródłowego. Należy jednak pamiętać, że każda biblioteka ma własną licencję i zawsze należy się z nią zapoznać. Poniżej zebraliśmy licencje bibliotek zewnętrznych, które użyliśmy w systemie YetiForce.

  • Apache-2.0 - 5 bibliotek
  • BSD 2 i 3 - 13 bibliotek
  • CC-BY-4.0 - zestaw dźwięków
  • ISC - 5 bibliotek
  • MIT - 118 bibliotek
  • MPL 1.1 - 1 biblioteka
  • SPL 1.1.2 - kilkanascie plików - biblioteka tożsama z MPL 1.1.
  • VPL 1.1 - kilkaset plików - biblioteka tożsama z MPL 1.1.

Wszystkie powyższe biblioteki są bardzo liberalne i pozwalają na nieograniczone możliwości w przeglądaniu, kopiowaniu, modyfikacji i rozpowszechnianiu kodu. Oprócz bibliotek powyżej, system YetiForce wykorzystuje 5 bibliotek na licencjach LGPL 2.1 oraz LGPL 3 i są to odpowiednio:

  • phpmailer/phpmailer
  • ezyang/htmlpurifier
  • milon/barcode
  • phenx/php-font-lib
  • smarty/smarty

i chociaż w/w biblioteki są na licencji LGPL, które w pewnych sytuacjach mogą narzucać copyleft, to zostały tak użyte, aby nie było żadnych wątpliwości co do konieczności zastosowania copyleft w projekcie a więc nie wpływają one negatywnie [czyli nie ma zastosowania copyleft] na cały projekt.

Zmiana biblioteki zależnej na inną

Jeżeli z jakiegoś powodu organizacja nie chce korzystać z konkretnej biblioteki, wówczas można tą bibliotekę zastąpić dowolną inną biblioteką lub zespół programistyczny może napisać własne rozwiązanie na dowolnej licencji, które zastąpi usuniętą bibliotekę. W naszej opinii wszystkie biblioteki zostały dopasowane bardzo optymalnie pod kątem biznesowym, aby nie narzucać żadnych dodatkowych restrykcji na organizację, które chce dowolnie rozwijać system YetiForce.

Lista bibliotek zależnych

Aktualnie w systemie YetiForce jest ponad 100 różnych bibliotek zależnych. Aby lepiej kontrolować biblioteki używane w aplikacji, w panelu konfiguracyjnym zostało przygotowane zestawienie wszystkich użytych bibliotek z informacją o:

  • nazwa biblioteki
  • wersja biblioteki
  • nazwa licencji
  • treść licencji

Licencje można sprawdzić również na wersji publicznej dostępnej tutaj: https://gitdeveloper.yetiforce.com/ [jest to wersja developerskie i co jakiś czas może nie być dostępna] w zakładce: Konfiguracja systemu > O aplikacji > Licencje jak również bezpośrednio pod linkiem [https://gitdeveloper.yetiforce.com/index.php?module=Vtiger&view=Credits&parent=Settings.] dostępnym po zalogowaniu [aby się zalogować, nie trzeba znać danych do logowania, są uzupełniane automatycznie].