Licenças #

Matplotlib usa apenas código compatível com BSD. Se você trouxer o código de outro projeto, verifique se ele possui uma licença PSF, BSD, MIT ou compatível (consulte a página de licenças da Open Source Initiative para obter detalhes sobre licenças individuais). Caso contrário, você pode entrar em contato com o autor e pedir que ele o licencie novamente. Os códigos GPL e LGPL não são aceitáveis ​​na base de código principal, embora estejamos considerando uma forma alternativa de distribuir o código L/GPL por meio de um canal separado, possivelmente um kit de ferramentas. Se você incluir um código, certifique-se de incluir uma cópia da licença desse código no diretório de licenças se a licença do código exigir que você distribua a licença com ele. Licenças não compatíveis com BSD são aceitáveis ​​em kits de ferramentas Matplotlib (por exemplo, mapa base), mas certifique-se de declarar claramente as licenças que está usando.

Por que compatível com BSD? #

As duas variantes de licença dominantes são o estilo GPL e o estilo BSD. Existem inúmeras outras licenças que impõem restrições específicas à reutilização de código, mas há uma diferença importante a ser considerada nas variantes GPL e BSD. A licença mais conhecida e talvez a mais usada é a GPL, que além de conceder a você todos os direitos sobre o código-fonte, incluindo redistribuição, traz consigo uma obrigação extra. Se você usar o código GPL em seu próprio código ou vincular-se a ele, seu produto deverá ser lançado sob uma licença compatível com GPL. ou seja, você é obrigado a fornecer o código-fonte a outras pessoas e dar a elas o direito de redistribuí-lo também. Muitos dos projetos de código aberto mais famosos e amplamente utilizados são lançados sob a GPL, incluindo linux, gcc, emacs e sage.

A segunda classe principal são as licenças de estilo BSD (que incluem MIT e a licença python PSF). Eles basicamente permitem que você faça o que quiser com o código: ignorá-lo, incluí-lo em seu próprio projeto de código aberto, incluí-lo em seu produto proprietário, vendê-lo, o que for. O próprio python é lançado sob uma licença compatível com BSD, no sentido de que, citando a página de licença PSF:

There is no GPL-like "copyleft" restriction. Distributing
binary-only versions of Python, modified or not, is allowed. There
is no requirement to release any of your source code. You can also
write extension modules for Python and provide them only in binary
form.

Projetos famosos lançados sob uma licença estilo BSD no sentido permissivo do último parágrafo são o sistema operacional BSD, python e TeX.

Existem várias razões pelas quais os primeiros desenvolvedores do Matplotlib selecionaram uma licença compatível com BSD. Matplotlib é uma extensão python e escolhemos uma licença baseada na licença python (compatível com BSD). Além disso, queríamos atrair o maior número possível de usuários e desenvolvedores, e muitas empresas de software não usarão o código GPL no software que planejam distribuir, mesmo aquelas altamente comprometidas com o desenvolvimento de código aberto, como a ethought, por preocupação legítima de que o uso da GPL "infectará" sua base de código por sua natureza viral. Na verdade, eles querem manter o direito de liberar algum código proprietário. As empresas e instituições que usam o Matplotlib costumam fazer contribuições significativas, porque têm recursos para realizar um trabalho, mesmo que chato. Dois dos backends do Matplotlib (FLTK e WX) foram fornecidos por empresas privadas. A razão final por trás da escolha do licenciamento é a compatibilidade com as outras extensões python para computação científica: ipython, numpy, scipy, a suíte de ferramentas pensadas e o próprio python são todos distribuídos sob licenças compatíveis com BSD.