LGPL para Polyform

De LGPL para Polyform Noncommercial

Da versão 5, mudamos a licença de LGPL para Polyform Noncommercial 1.0.0 - uma licença que permite apenas o uso não comercial. Em combinação com a licença Polyform Noncommercial vendemos licenças para clientes que usam EPPlus em um negócio comercial. Como o EPPlus já existe há algum tempo, você pode se perguntar por que decidimos fazer essa mudança.

A história por trás do EPPlus

Somos dois irmãos - Jan Källman e Mats Alm - com sede em Estocolmo, Suécia. Jan começou o EPPlus no Codeplex em 2009 pela simples razão de que ele precisava de uma biblioteca de planilhas em um projeto em que estava trabalhando e não havia realmente nada disponível na época com desempenho e funcionalidade suficientes. Depois de algum tempo Mats se juntou e começamos a construí-lo juntos, principalmente por diversão.

Nunca comercializamos o EPPlus, mas ele começou a se espalhar pela comunidade .NET de qualquer maneira. Por volta de 2014, foi o pacote de planilhas mais baixado no Nuget. Durante 2019 teve mais de 6,5 milhões de downloads e esteve entre os 100 pacotes mais baixados, nada mal para um projeto de hobby!

Desafios

Todo o nosso trabalho com a biblioteca tinha que ser feito no nosso tempo livre (fins de semana, feriados, noites/noites) e por várias razões tivemos menos tempo para gastar nela nos últimos anos. Ao mesmo tempo, o uso do EPPlus aumentou rapidamente e, depois que mudamos para o github, o número de problemas e pedidos de tração aumentou rapidamente também. Os pedidos de tração são ótimos, no entanto, podem ser um pouco complicados de lidar, já que partes da biblioteca têm baixa cobertura de teste e não é fácil para alguém que não está totalmente familiarizado com o código entender todos os efeitos colaterais que ele pode causar. Problemas/perguntas dos usuários começaram a se acumular e era difícil saber até mesmo por onde começar a ter apenas algumas horas de vez em quando.

Parte do código no EPPlus tem 10 anos e precisa de refatoração/redesenho e melhor cobertura de teste. Ao mesmo tempo, novas versões do Excel, .NET Framework/Standard/Core foram introduzidas e mais trabalho necessário apenas para acompanhar isso.

Esta não foi uma boa situação nem para nós nem para os usuários do EPPlus.

No final de 2018, chegamos a um ponto em que tínhamos que decidir o que fazer com o projeto.

EPPlus Software

Nós fundamos a EPPlus Software para poder trabalhar em tempo integral com a EPPlus e estamos convencidos de que isso levará a um produto muito melhor a longo prazo.

Estamos lançando agora o EPPlus 5, a primeira versão principal sob o novo modelo de licença. O EPPlus 5 é o resultado de um processo em que trabalhamos com advogados para garantir que legalmente possamos mudar a licença. Mas também implementamos uma série de novos recursos, corrigimos muitos problemas do EPPlus 4 e melhoramos o código das versões anteriores.

O que acontece com o EPPlus 4?

O EPPlus 4 ainda é (e sempre será) licenciado sob LGPL. Você pode, naturalmente, continuar a usar o EPPlus 4 e versões anteriores e ainda pode instalá-los via Nuget.

                    
 PM> Install-Package EPPlus -Version 4.5.3.3 
                    
                

O código para EPPlus 4 permanecerá em Jan Källmans repo github e pode ser bifurcado/usado de acordo com a licença LGPL.

Nosso foco, no entanto, será na versão 5 daqui para frente.

Pending pull requests

If you have submitted a pull request to EPPlus 4 and think that the pull request should be applied to EPPlus 5, you need to resubmit it to our new github repo. Legally (under LGPL) the pull request is your intellectual property, not ours, and it needs to be resubmitted under our new CAA (Contributor's Assigment Agreement). For more info see CONTRIBUTING.md

O novo modelo de licença

O EPPlus 5 é licenciado sob a licença Polyform Noncommercial 1.0.0. Leia mais sobre isso aqui.

Modo futuro de trabalho

Queremos manter a forma de trabalho da comunidade. Ao contrário de outras alternativas comerciais, nosso código ainda estará totalmente disponível e aberto. Não haverá chaves de licença específicas do usuário para definir no código, apenas uma propriedade LicenseContext que precisa ser definida no modo de depuração para conscientizar os usuários sobre a nova licença. O código para EPPlus 5, os novos projetos de amostra e wiki mudou-se para a conta github da EPPlus Software.

Bem-vindo ao Software EPPlus!