LGPL na Polyform
Od LGPL do Polyform Niekomercyjne
Od wersji 5 zmieniliśmy licencję z LGPL na Polyform Noncommercial 1.0.0 - licencję, która zezwala tylko na niekomercyjne użycie. W połączeniu z licencją Polyform Noncommercial sprzedajemy licencje dla klientów, którzy korzystają z EPPlus w działalności komercyjnej. Ponieważ EPPlus istnieje już od jakiegoś czasu, możesz się zastanawiać, dlaczego zdecydowaliśmy się na tę zmianę.
Historia EPPlus
Jesteśmy dwoma braćmi - Jan Källman i Mats Alm - mieszkającymi w Sztokholmie w Szwecji. Jan założył EPPlus na Codeplex w 2009 roku z prostego powodu, że potrzebował biblioteki arkuszy kalkulacyjnych w projekcie, nad którym pracował, a w tamtym czasie nie było tak naprawdę nic dostępnego o wystarczającej wydajności i funkcjonalności. Po jakimś czasie dołączyła Mats i zaczęliśmy ją razem budować, głównie dla zabawy.
Nigdy nie sprzedawaliśmy EPPlus, ale i tak zaczął się rozprzestrzeniać w społeczności .NET. Gdzieś około 2014 roku był to najczęściej pobierany pakiet arkuszy kalkulacyjnych w Nuget. W 2019 roku miał ponad 6,5 miliona pobrań i znalazł się wśród 100 najczęściej pobieranych pakietów, nieźle jak na projekt hobbystyczny!
Wyzwania
Cała nasza praca w bibliotece musiała być wykonywana w czasie wolnym (weekendy, święta, wieczory/noce) i z różnych powodów w ostatnich latach mieliśmy na nią mniej czasu. W tym samym czasie gwałtownie wzrosło wykorzystanie EPPlus, a po przejściu na github gwałtownie wzrosła również liczba zgłoszeń i pull requestów. Pull requesty są świetne, jednak mogą być nieco trudne w obsłudze, ponieważ części biblioteki mają słabe pokrycie testami i komuś, kto nie jest w pełni zaznajomiony z kodem, nie jest łatwo zrozumieć wszystkie skutki uboczne, które może powodować. Problemy/pytania od użytkowników zaczęły się nawarstwiać i trudno było nawet wiedzieć, od czego zacząć, mając tylko kilka godzin od czasu do czasu.
Część kodu w EPPlus miała w tym momencie 10 lat i wymagała refaktoryzacji/przeprojektowania oraz lepszego pokrycia testami. W tym samym czasie wprowadzono nowe wersje Excela, .NET Framework/Standard/Core i trzeba było włożyć więcej pracy, aby za tym nadążyć.
Nie była to dobra sytuacja ani dla nas, ani dla użytkowników EPPlus.
Pod koniec 2018 roku doszliśmy do punktu, w którym musieliśmy zdecydować, co zrobić z projektem.
Oprogramowanie EPPlus
Założyliśmy EPPlus Software, aby móc pracować z EPPlus w pełnym wymiarze godzin, co doprowadziło do powstania znacznie lepszego produktu, który z czasem będzie coraz lepszy.
Na początku 2020 roku wydaliśmy EPPlus 5, pierwszą dużą wersję w ramach nowego modelu licencyjnego – następnie EPPlus 6 w kwietniu 2022 i EPPlus 7 w październiku 2023. Nowe wersje są wynikiem procesu, w którym współpracowaliśmy z prawnikami, aby zapewnić legalną możliwość zmiany licencji. Wdrożyliśmy też wiele nowych funkcji, naprawiliśmy wiele problemów z EPPlus 4 i ulepszyliśmy kod względem poprzednich wersji.
Co się dzieje z EPPlus 4?
EPPlus 4 nadal (i zawsze będzie) licencjonowany przez LGPL. Oczywiście możesz nadal korzystać z EPPlus 4 i wcześniejszych wersji, a także instalować je przez Nuget (te wersje są oznaczone jako przestarzałe i nie są już przez nas utrzymywane).
PM> Install-Package EPPlus -Version 4.5.3.3
Kod dla EPPlus 4 pozostanie w repozytorium Jan Källmans github i może być rozwidlony/używany zgodnie z licencją LGPL.
Naszym priorytetem będzie jednak wersja 5 i nowsza.
Nowy model licencji
EPPlus 5 i wyższe są licencjonowane na licencji Polyform Noncommercial 1.0.0. Więcej o tym przeczytaj tutaj.
Przyszły sposób pracy
Chcemy zachować sposób pracy oparty na społeczności. W przeciwieństwie do innych komercyjnych alternatyw, nasz kod będzie w pełni dostępny i otwarty. Kod EPPlus 5/6/7, nowe przykładowe projekty i wiki zostały przeniesione na konto EPPlus Software na githubie.
Biuletyn EPPlus
Zapisz się do naszego newslettera , aby otrzymywać najnowsze aktualizacje od EPPlus Software