Quem tem direito sobre o código que vem de contribuições em um projeto de código aberto?

15

Se alguém iniciar um projeto de código aberto (por exemplo, com uma licença GPL) em que as pessoas farão contribuições, quem será o proprietário dessas contribuições no nível de todo o projeto? O novo código se tornará propriedade do autor original ou os contribuidores também serão autores?

Quem tem o direito sobre o projeto em andamento? Por exemplo, quem tem o poder de liberar o código em uma segunda licença? Apenas o autor original? Os colaboradores também podem fazer isso separadamente ou precisam tomar uma decisão conjunta com o autor original e todos os colaboradores?

totymedli
fonte
4
Parece uma boa pergunta ... Para o seu advogado.
Edalorzo 29/03
1
Confira o que o Open Street Map teve que fazer para alterar a licença. Eles precisavam receber permissão de todos os colaboradores pela alteração ou, se não pudessem, soltar os dados de mapeamento dos colaboradores. Literalmente levou anos.
James

Respostas:

18

Cada autor mantém os direitos autorais de seu código. Se o projeto estiver sob a GPL, contribuir com o código exige que o código seja licenciado sob a GPL. Se você quiser fazer outra coisa com o código, como liberá-lo em uma licença diferente, precisará da permissão do autor original.

Para muitos projetos, o proprietário do projeto exige que os colaboradores atribuam direitos autorais ao código contribuído ao proprietário do projeto. Isso possibilita, por exemplo, liberar projetos GPL sob novas versões da licença GPL à medida que são lançados, pois rapidamente se torna impraticável perseguir centenas de colaboradores individuais nesses casos.

Justin Cave
fonte
9
... ou suas propriedades e herdeiros em algumas situações.
12

O detentor dos direitos autorais. Por padrão, esse é o autor do código em questão (cada autor individual, se houver muitos). Os direitos autorais podem ser atribuídos a outra pessoa, e alguns projetos de código aberto exigem a atribuição de direitos autorais como condição para contribuir.

Michael Shaw
fonte
+1: este é o ponto principal. O autor original possui todos os direitos, a menos ou até que eles atribuam direitos (ou os próprios direitos autorais) a terceiros. Ninguém pode tirar seus direitos, você precisa entregá-los.
David.pfx
Observe que o conceito de "direitos autorais" e especificamente o de "atribuição" ou transferência de direitos autorais são específicos para algumas jurisdições (acredito que estejam relacionados ao "direito comum"). Por exemplo, na Alemanha, você não pode transferir completamente seus direitos como autor, pois eles são considerados direitos pessoais e inalienáveis. Obviamente, você pode transferir a maioria dos direitos, portanto o resultado é basicamente o mesmo, mas os conceitos (e detalhes) ainda são diferentes.
sleske
Especificamente, sob a lei alemã, o "Urheberrecht" ("direito de autoria") não é transferível (§29 UrhG). No entanto, você pode conceder direitos exclusivos para usar o trabalho que você criou, que é quase o mesmo. Uma diferença crítica é que, sob certas condições, o autor original pode retirar a concessão de direitos - enquanto a atribuição de direitos autorais é permanente.
sleske
8

Todo mundo detém os direitos autorais do código que escreve. O que significa que, por padrão, o autor original é a única pessoa que pode conceder uma licença para esse código.

Como o projeto de código aberto geralmente possui muitos autores, não é possível rastrear todos os autores e fazê-los concordar sempre que uma alteração de licenciamento precisar ser feita. Para evitar esse problema, alguns projetos de código aberto são licenciados sob uma licença que permite o uso do código em qualquer versão posterior dessa licença. Dessa forma, você faz com que os autores concordem com versões futuras da licença que ainda não estão disponíveis. Geralmente, os autores da licença prometem tornar essas versões posteriores similares em espírito à licença original, por exemplo, na Licença Pública Geral GNU :

A Free Software Foundation pode publicar versões revisadas e / ou novas da Licença Pública Geral GNU de tempos em tempos. Essas novas versões serão similares em espírito à versão atual, mas podem diferir em detalhes para resolver novos problemas ou preocupações.

A outra maneira de resolver esse problema é fazer com que os autores concordem em transferir seus direitos autorais para outra pessoa, por exemplo, o proprietário do projeto. Essa pessoa tem o direito de decidir se deve licenciar o projeto e uma nova licença. A desvantagem dessa abordagem é que os proprietários do projeto são pessoas e podem não agir no espírito do autor original. Isso também dificulta a mudança dos garfos para uma licença mais nova, pois o proprietário do projeto original provavelmente não faz parte do garfo e o proprietário do garfo não terá os direitos autorais dos autores do código original.

Por fim, quando você é uma entidade realmente grande, pode solicitar aos autores da licença que façam alterações na licença. Foi assim que a Wikimedia conseguiu mudar de um licenciamento exclusivo da GFDL para um licenciamento duplo com o CC-by-sa: Eles solicitaram à FSF a publicação de uma versão mais recente do GFDL, que incluía uma seção para permitir que os projetos alternassem seu conteúdo para o CC-by -sa por um tempo limitado.

Como você pode ver, o licenciamento é sempre um aborrecimento e não está claro qual é o melhor curso de ação. Normalmente, você deve investir um pouco de tempo para encontrar a licença certa para o projeto antes de ter outras pessoas contribuindo, pois a alteração da licença mais tarde geralmente é bastante difícil.

Chris
fonte
0

Observe que a resposta depende em grande parte dos termos sob os quais o projeto de código aberto aceita seu código.

A maioria terá, no mínimo, uma declaração dizendo que, contribuindo com você, você concedeu direitos ao projeto de usar, distribuir etc. sua contribuição e concedeu a todos os usuários do projeto direitos de examinar e executar seu código. Isso não nega seus direitos autorais, mas significa que você concordou irrevogavelmente em licenciá-lo para uso nesse projeto.

Dependendo dos termos sob os quais o projeto é distribuído e dos detalhes da licença com a qual você concordou, isso pode ou não conceder a todos os outros acesso aos direitos do projeto para usar seu código em outros contextos.

É sua responsabilidade ler e entender esses detalhes antes de contribuir com o código. Em caso de dúvida, você pode pedir às pessoas que estão executando o projeto que expliquem o que eles pretendem dizer com suas licenças, mas lembre-se de que o aconselhamento jurídico gratuito - incluindo tudo o que você vê em resposta à sua pergunta - vale exatamente o que você pagou isto.

Se isso realmente importa para você, obtenha o idioma exato e contrate seu próprio advogado para examiná-lo quanto a armadilhas. Ou não contribua com o código que você não está disposto a ver escapar para uso geral. Ou peça a alguém para fazer essa pesquisa por você - meu empregador tem regras bastante específicas sobre quais tipos de código aberto eu sou e não tenho permissão para me envolver.

keshlam
fonte
Na maioria dos projetos de código aberto, os "termos sob os quais o projeto de código aberto aceita seu código" são simplesmente a licença do projeto (GPL, BSD etc.). Alguns projetos têm requisitos adicionais (como atribuição de direitos autorais), mas essa não é a norma.
sleske