LGPL 2.1 vs LGPL 3.0 Zalety i wady

32

Z tego, co przeczytałem, LGPL 3.0 pozwala na korzystanie z licencji razem z innymi licencjami, co jest bardziej liberalne (nawet nie jestem tego pewien).
Z https://www.gnu.org/licenses/gpl-faq.html#AllCompatibility napisano, że nie jest on kompatybilny z GPLv2, podczas gdy LGPL 2.1 jest z nim kompatybilny. To trochę sprzeczne z tym, co przeczytałem ...

Czy wiesz, jakie są prawdziwe zalety i wady LGPL 3.0 w porównaniu z LGPL 2.1?
Wadą byłoby to, że nie jest kompatybilny z GPLv2.

Lilian A. Moraru
źródło

Odpowiedzi:

22

Myślę, że musisz zacząć od intencji LGPL 2.1 i LGPL 3. LGPL 2.1 został zaprojektowany jako licencja napisana głównie w prostym języku angielskim, który dałby programistom wskazówki, co mogą zrobić z oprogramowaniem. Jest ogólnie bardziej przejrzysty niż GPL 2, ponieważ łączy bezpieczny port. Jedną z głównych wątpliwości dotyczących GPL jest to, czy właściciel praw autorskich ma nawet interes w kontrolowaniu, jakie programy mogą łączyć się z biblioteką chronioną prawem autorskim. LGPL eliminuje tę niepewność, zapewniając bezpieczną przystań w zakresie łączenia.

Główną wadą tego podejścia jest jednak to, że zależy ono od amerykańskich pojęć prawnych i tym podobnych oraz definicji jurysdykcyjnych. To, co może być dziełem pochodnym w jednej jurysdykcji, może nie być w innej jurysdykcji, co stanowi znaczącą różnicę, gdy oprogramowanie jest pakowane i dystrybuowane, a zezwolenie na agregację, ale nie na pochodną. LGPL ma tutaj mniej problemów niż GPL, ale jest to znaczna niepewność, szczególnie w przypadku GPL, która jest licencją towarzyszącą.

Aby rozwiązać niektóre z tych problemów, a także zapewnić lepszą kontrolę nad dokładnymi prawami, opracowano serię licencji GPL v3 (część LGPL 3). Mają one na celu wyeliminowanie jurysdykcyjnych definicji pochodnych i agregacji oraz przepisanie języka, tak aby zawierał wskazówki dla prawników, a nie dla programistów. Licencje są znacznie bardziej złożone, wykorzystując struktury bardziej dostępne dla prawników niż programistów i niekoniecznie mniej niejasne. [1] Jednak w pewnym stopniu udaje im się obejść definicje jurysdykcyjne.

Tak więc pierwszym kompromisem jest to, czy chcesz pisać licencję, że publiczność jest programistą, a publiczność prawnikiem, a drugim - jak obawiasz się międzynarodowych definicji w różnych jurysdykcjach.

Ostatnią jest jednak to, że seria licencji GPL v3 wymusiła zgodność z AGPL v3, co oznacza, że ​​kod można pobrać z programów GPL i dodać dodatkowe ograniczenia AGPL w taki sposób, że nie można tego przyczynić ponownie ta sama licencja. Jest to problem z kopiowaniem LGPL -> GPL na obu licencjach, więc prawdopodobnie jest to stosunkowo niewielki problem.

Ja osobiście wolę licencje GPL v2 i LGPL 2.1, ponieważ są one prostsze i dlatego uważam, że jest mniejsza szansa na poważne nieporozumienie (drobne nieporozumienia mogą być jednak bardziej powszechne), ale to moja własna preferencja i twoje mogą się różnić.

[1] Na przykład, jeśli czytasz zarówno 2-klauzulową licencję BSD, jak i GPL v3 (i przez rozszerzenie LGPL b3), licencje te są niezgodne, ponieważ licencje BSD nie wspominają wyraźnie o udzielaniu sublicencji w przeciwieństwie do licencji MIT, a zatem na przynajmniej niektórzy prawnicy, tacy jak Larry Rosen, nie wierzą, że taka licencja została przyznana. Dlatego nie można po prostu wziąć kodu BSD i poddać go ponownej licencji jako GPL v3 bez faktycznego dodawania zmian godnych praw autorskich. Jednak wszyscy zgadzają się, że licencje BSD i GPL v3 są kompatybilne. Stwarza to jednak poważne problemy przy interpretacji licencji i rysowaniu linii.

Chris Travers
źródło
Więc problem GPLv3 przeciwko DRM występuje również w LGPLv3? @MartinBeckett Przeczytałem to pytanie przed opublikowaniem mojego pytania i nie wygląda na to, że ktoś tam naprawdę odpowiedział na to pytanie.
Lilian A. Moraru,
@ LilianA.Maruaru Tak mi to wygląda. Większy problem polega na tym, że jeśli udzielisz dodatkowych uprawnień, aby zignorować tę sekcję na podstawie tych dwóch licencji, mogą oni uzyskać sublicencję od pośredników, ponieważ taka jest natura dodatkowych uprawnień w tych licencjach.
Chris Travers
(Oczywiście, jeśli licencja BSD jest zgodna i nie zezwala na podlicencjonowanie, to nie widzę powodu, dla którego oryginalni autorzy nie mogliby dodać do oprogramowania dodatkowych uprawnień jako takich.)
Chris Travers
@ LilianA.Moraru - dlatego nie zgłosiłem się jako dupe, ale dodało się do dyskusji i będzie przydatne dla osób szukających
Martin Beckett
1
Podsumowując, z twoich słów: „Ja sam wolę licencje GPL v2 i LGPL 2.1, ponieważ są one prostsze i dlatego sądzę, że jest mniejsza szansa na poważne nieporozumienie…” . Myślę, że to moje główne na wynos.
Gabriel Staples