Adicione uma LICENSE e um CODE_OF_CONDUCT ao seu pacote Python#

Na lição anterior você:

Criou um arquivo README.md básico para o seu pacote Python científico

Aprendeu sobre os componentes principais que são úteis ter em um arquivo README.

Objetivos de aprendizagem

Nesta lição você aprenderá:

  1. Como selecionar uma licença e adicionar um arquivo LICENSE ao repositório do seu pacote, com foco na interface do GitHub.

  2. Como adicionar um arquivo CODE_OF_CONDUCT ao repositório do seu pacote.

  3. Como você pode usar o site Contributors Covenant para adicionar uma linguagem genérica como ponto de partida para o seu CODE_OF_CONDUCT.

O que é uma licença?#

Uma licença contém linguagem jurídica sobre como os usuários podem usar e reutilizar seu software. Para definir o LICENSE do seu projeto, você:

  1. Cria um arquivo LICENSE no diretório do projeto que especifica a licença que você escolher para o seu pacote.

  2. Descreve sua escolha de licença nos dados do pyproject.toml, onde os metadata são definidos.

Ao adicionar esses metadata ao arquivo pyproject.toml, a escolha de licença será incluída nos metadata do seu pacote, que são usados para popular a página do PyPI do seu pacote. O arquivo LICENSE também é usado na interface da página inicial do repositório no GitHub e acaba sendo incluído nas suas distribuições.

Qual licença você deve usar?#

Sugerimos que você use uma licença permissiva que acomode as outras licenças mais comumente usadas no ecossistema Python científico (MIT[1] e BSD-3-Clause[2]). Se não tiver certeza, use MIT, pois é a licença geralmente recomendada em choosealicense.com.

Onde o arquivo LICENSE deve ficar#

Seu arquivo LICENSE deve ficar na raiz do repositório do seu pacote. Quando você adiciona o LICENSE na raiz, o GitHub o descobrirá automaticamente e fornecerá aos usuários um link direto parao seu arquivo LICENSE dentro do repositório no GitHub.

Imagem mostrando o repositório no GitHub do SunPy, um pacote pyOpenSciaceito.

Observe que na parte superior da seção README da página inicial do GitHub, há três abas com links diretos para o arquivo README, que está visível, o arquivo CODE_OF_CONDUCT e uma que especifica a licença usada pelo SunPy. Esses arquivos são descobertos pelo GitHub porque estão na raiz do diretório do projeto, seguindo convenções de nomenclatura padrão.#

Como adicionar um arquivo LICENSE ao diretório do seu pacote#

Há várias maneiras de adicionar um arquivo LICENSE:

  1. Quando você cria um novo repositório no GitHub, ele perguntará se deseja adicionar um arquivo LICENSE naquele momento. Se você selecionar sim, ele criará o arquivo para você.

  2. Você pode adicionar um LICENSE pela GUI do GitHub seguindo as instruções aqui.

  3. Você pode adicionar o arquivo manualmente, como estamos fazendo nesta lição.

Dica

Se você concluiu as lições anteriores, incluindo

  1. Tornar seu código instalável e

  2. publicar seu pacote no PyPI

então você já tem um arquivo LICENSE contendo o texto da licença MIT no seu pacote Python. Assim, você pode pular para a próxima seção deste tutorial, que orienta a adicionar um CODE_OF_CONDUCT.

Se você ainda não tem um arquivo LICENSE no seu diretório, continue lendo.

Como adicionar um LICENSE ao seu pacote — a maneira manual#

Se você ainda não tem um arquivo LICENSE e ainda não usa uma plataforma como GitHub ou GitLab, pode criar um arquivo LICENSE

  1. Crie um novo arquivo chamado LICENSE. Se estiver usando o shell, digite:

# Create a `LICENSE` file in your shell
> touch LICENSE
  1. Acesse choosealicense.com

  2. Selecione uma licença permissiva

  3. Irá sugerir que você use a licença MIT.

  4. Copie o texto da licença fornecido para o arquivo LICENSE que você criou acima.

  5. Salve o arquivo. Pronto!

Uma visão geral das licenças no ecossistema Python científico

No guia de empacotamento do pyOpenSci, fornecemos uma visão geral das licenças no ecossistema Python científico. Revisamos por que os arquivos de licença são importantes, quais são mais comumente usados para software científico e como selecionar a licença correta.

Se quiser uma visão geral ampla de por que as licenças são importantes para proteger software de código aberto, confira esta postagem de blog que apresenta o lado jurídico.

Instruções para adicionar um arquivo LICENSE na interface do GitHub

Quando você cria um novo repositório no GitHub, pode adicionar um arquivo LICENSE pela interface do GitHub.

Captura de tela da interface de criação de novo repositório do GitHub. Os elementos são o proprietário e o nome do repositório para o novo repo. Abaixo disso, você pode adicionar uma descrição do repositório. Mais abaixo, pode definir como público ou privado. Na parte inferior da interface há uma caixa de seleção Adicionar um README, que adicionaum arquivo readme em branco para você. Na parte debaixo há uma linha para adicionar um arquivo .gitignore e outra paraescolher uma licença.

Imagem mostrando a interface do GitHub que permite adicionar um arquivo LICENSE e um README ao criar um novo repositório.#

Se você já tem um repositório no GitHub para o seu pacote, pode adicionar um LICENSE pela interface do GitHub, criando um novo arquivo no repositório.

  • Siga as instruções para selecionar e adicionar uma licença ao seu repositório na página LICENSE do GitHub.

  • Depois de adicionar o arquivo LICENSE, sincronize o repositório git local com o repositório em GitHub.com. Isso significa executar git pull para atualizar seu branch local.

Imagem mostrando como o arquivo LICENSE aparece na interface do GitHub. No topo, você vê a licença em si — nesta imagem, BSD 3-clause New or revised license. Em seguida, há um texto descrevendo o que é a licença e as permissões associadas a ela. Na parte inferior da imagem,o texto completo da licença é exibido no arquivo LICENSE.

Você pode ver um resumo do LICENSE escolhido na página inicial do GitHub do seu projeto.#

Agora você sabe como adicionar um LICENSE ao seu projeto. Em seguida, aprenderá sobre o arquivo CODE_OF_CONDUCT.md e como adicioná-lo ao diretório do seu pacote.

O que é um arquivo de código de conduta?#

Um arquivo CODE_OF_CONDUCT é um Código de conduta usado para estabelecer diretrizes sobre como as pessoas da sua comunidade interagem.

Este arquivo é fundamental para apoiar sua comunidade conforme ela cresce. O CODE_OF_CONDUCT:

  1. Estabelece diretrizes sobre como usuários e contribuidores interagem entre si e com você no repositório do software.

  2. Identifica comportamentos negativos que você não quer nas interações.

Você pode usar seu código de conduta como ferramenta de referência ao moderar conversas difíceis.

O que incluir no seu arquivo CODE_OF_CONDUCT#

Se não souber que linguagem adicionar ao arquivo CODE_OF_CONDUCT, sugerimos adotar a linguagem do Contributors Covenantcomo ponto de partida.

Contributor Covenant

O CODE_OF_CONDUCT.md deve ficar na raiz do diretório do projeto, assim como o arquivo LICENSE.

Como adicionar um arquivo CODE_OF_CONDUCT ao diretório do seu pacote#

  • Adicione um arquivo CODE_OF_CONDUCT.md na raiz do seu repositório, se ele ainda não existir.

> touch CODE_OF_CONDUCT.md

É isso — você adicionou um código de conduta ao diretório do seu pacote.

Encerramento#

Nesta lição e na lição anterior, você adicionou um:

  • arquivo README;

  • arquivo LICENSE e um

  • arquivo CODE_OF_CONDUCT.

Esses são arquivos fundamentais para todo repositório de pacote Python científico. Eles ajudam os usuários a entender como usar seu pacote e interagir com os mantenedores(as) do pacote.

Nas próximas lições, você irá:


Notas de rodapé#