1 pontos por GN⁺ 2024-03-23 | 1 comentários | Compartilhar no WhatsApp
  • O Redis Open Source passará, a partir do Redis 8, para um modelo de tripla licença para novas contribuições de código, aplicando uma entre RSALv2, SSPLv1 e AGPLv3
  • As contribuições após o Redis 8 ficam sujeitas ao Redis Software Grant and Contributor License Agreement atualizado, enquanto o Redis Open Source 7.2 e versões anteriores mantêm a licença BSD de 3 cláusulas referenciada em REDISCONTRIBUTIONS.txt
  • A RSALv2 concede direitos de uso, cópia, distribuição e criação de obras derivadas, mas restringe o fornecimento da funcionalidade do software ou de versões modificadas como serviço a terceiros
  • A SSPLv1 exige a divulgação do Service Source Code, incluindo software de administração, UI, API, automação, monitoramento, backup, armazenamento e hospedagem, quando a funcionalidade do programa ou de versões modificadas for oferecida como serviço
  • A AGPLv3 é uma licença copyleft que exige disponibilizar o código-fonte modificado aos usuários do servidor quando uma versão modificada for oferecida em um servidor de rede publicamente acessível

Estrutura de licenciamento que muda a partir do Redis 8

  • O Redis Open Source aplicará, a partir do Redis 8, um modelo de tripla licença a todas as novas contribuições de código ao Redis
  • As novas contribuições serão regidas pelo Redis Software Grant and Contributor License Agreement atualizado
  • Há 3 licenças possíveis para versões Redis 8.0 e posteriores
    • Redis Source Available License v2, RSALv2
    • Server Side Public License v1, SSPLv1
    • GNU Affero General Public License v3, AGPLv3
  • O Redis Open Source 7.2 e versões anteriores continua sujeito à licença BSD de 3 cláusulas referenciada no arquivo REDISCONTRIBUTIONS.txt

RSALv2: direitos de uso e restrição à oferta como serviço

  • A última atualização do acordo RSALv2 é de 30 de dezembro de 2023
  • Ao instalar, baixar, acessar, usar ou distribuir o software, considera-se que você concorda com todos os termos da RSALv2
  • Se você receber o software em nome de uma empresa ou organização, deverá declarar e garantir que tem autoridade para aceitar o acordo em nome dessa entidade
  • O licenciador se reserva o direito de atualizar este acordo periodicamente
  • Direitos concedidos

    • O licenciador concede uma licença não exclusiva, gratuita e mundial para usar, copiar, distribuir, disponibilizar publicamente e criar obras derivadas
    • Essa licença não pode ser sublicenciada nem transferida
    • Direitos não concedidos expressamente não surgem apenas pelos termos do acordo
  • Principais restrições

    • Não é permitido oferecer a funcionalidade do software ou de versões modificadas como serviço a terceiros
    • Não é permitido distribuir o software ou uma versão modificada de forma que sua funcionalidade seja fornecida a terceiros
    • O fornecimento de funcionalidade a terceiros inclui os seguintes casos
      • quando terceiros interagem remotamente com a funcionalidade por meio de uma forma distribuída ou de uma rede de computadores
      • quando o valor de um produto ou serviço deriva total ou principalmente do valor do software ou da versão modificada
      • quando se fornece um produto ou serviço cujo objetivo principal é executar para o usuário a finalidade do software ou da versão modificada
    • Não é permitido alterar, remover ou ocultar licenças, direitos autorais ou outros avisos do licenciador
    • O uso de marcas está sujeito à legislação aplicável
  • Patentes, avisos e término

    • O licenciador concede uma licença de patentes para criar, usar, vender e importar o software com base em reivindicações de patente que detenha ou possa licenciar
    • Se o usuário afirmar por escrito que o software infringe uma patente, a licença de patentes correspondente sob a RSALv2 será encerrada imediatamente
    • É necessário garantir que toda pessoa que receba uma cópia de qualquer parte do software também receba os termos da RSALv2
    • Se o software for modificado, a versão modificada deve incluir um aviso visível informando que houve modificação
    • O uso em violação do acordo não é uso licenciado, e a licença é encerrada automaticamente
    • Se todas as violações cessarem dentro de 30 dias após o recebimento de uma notificação, a licença será restabelecida retroativamente
    • Se houver nova violação após a restauração, a licença será encerrada automática e permanentemente por violação adicional
    • O software é fornecido no estado em que se encontra, na medida permitida por lei, e o licenciador não se responsabiliza por danos
  • Lei aplicável e jurisdição

    • Para usuários na Ásia, Pacífico, Américas e jurisdições não incluídas nas regiões separadas abaixo, aplica-se a lei do Estado da Califórnia, EUA, com jurisdição exclusiva dos tribunais do Condado de Santa Clara
    • Para usuários em Israel, aplica-se a lei de Israel, com jurisdição exclusiva dos tribunais do Distrito Central de Israel
    • Para usuários na Europa, Reino Unido, Oriente Médio e África, aplica-se a lei da Inglaterra e do País de Gales, com jurisdição exclusiva dos tribunais de Londres

SSPLv1: obrigação de divulgar o código ao oferecer serviço de servidor

  • A SSPLv1 é a versão 1 de 16 de outubro de 2018 e inclui aviso de copyright da MongoDB, Inc.
  • O texto da licença pode ser copiado e distribuído literalmente, mas não pode ser alterado
  • Em termos gerais, ela define direitos de execução, modificação, propagação e transmissão do programa, e não permite sublicenciamento
  • Código-fonte e condições de transmissão

    • Código-fonte é a forma de trabalho preferida para modificações, e código-objeto é qualquer forma que não seja código-fonte
    • Para transmitir uma covered work em forma de código-objeto, também é necessário fornecer o Corresponding Source
    • O Corresponding Source inclui o código-fonte e os scripts necessários para gerar, instalar, executar e modificar o código-objeto
    • Bibliotecas de sistema, ferramentas de uso geral e programas livres amplamente disponíveis usados sem modificação podem ser excluídos do Corresponding Source
    • Ao transmitir uma versão modificada do código-fonte, é preciso cumprir as seguintes condições
      • indicar de forma visível que houve modificação e as datas relevantes
      • licenciar a obra inteira sob a SSPLv1
      • se houver UI interativa, exibir os avisos legais apropriados
  • Cláusula de prestação de serviço

    • Se a funcionalidade do programa ou de uma versão modificada for oferecida como serviço a terceiros, o Service Source Code deverá ser disponibilizado gratuitamente para download em rede por qualquer pessoa
    • A prestação de serviço inclui oferecer interação por rede remota, oferecer um serviço cujo valor deriva principalmente do programa e oferecer um serviço que execute para o usuário a finalidade principal do programa
    • O Service Source Code inclui não apenas o Corresponding Source do programa ou da versão modificada, mas também o Corresponding Source de todos os programas usados para prestar o serviço
      • software de administração
      • interface do usuário
      • API
      • software de automação
      • software de monitoramento
      • software de backup
      • software de armazenamento
      • software de hospedagem
    • O Service Source Code deve ser suficiente para que um usuário possa executar uma instância do serviço a partir do código-fonte tornado público
  • Término e patentes

    • Qualquer tentativa de propagar ou modificar de maneira não expressamente permitida pela licença é nula, e os direitos são encerrados automaticamente
    • Se a violação cessar, a licença pode ser restaurada temporária ou permanentemente sob certas condições
    • Pode haver restauração permanente se o detentor dos direitos autorais não notificar até 60 dias após a cessação da violação
    • Se for a primeira notificação de violação e ela for corrigida dentro de 30 dias após o recebimento, a restauração será permanente
    • Cada contribuidor concede uma licença mundial e gratuita sobre reivindicações essenciais de patentes
    • Não é permitido impor restrições adicionais ao exercício dos direitos, como ajuizar ação alegando que o programa ou parte dele infringe patentes

AGPLv3: copyleft para software de servidor em rede

  • A AGPLv3 é a versão 3 da GNU Affero General Public License de 19 de novembro de 2007
  • Inclui aviso de copyright da Free Software Foundation, e o texto da licença pode ser copiado e distribuído literalmente, mas não pode ser alterado
  • A AGPLv3 é uma licença copyleft livre para software e outros tipos de obras, criada especialmente para garantir a colaboração com a comunidade no caso de software de servidor em rede
  • Objetivo do desenho da licença

    • As licenças da família GPL têm o objetivo de garantir o direito de distribuir cópias de software livre, acessar o código-fonte, modificá-lo e reutilizá-lo em novos programas livres
    • Na GNU GPL comum, é possível disponibilizar uma versão modificada em um servidor acessível publicamente sem divulgar seu código-fonte
    • A AGPLv3 exige que, também nesses casos, o código-fonte modificado seja fornecido à comunidade
    • Quando um operador de servidor em rede executa uma versão modificada e a oferece aos usuários, deve fornecer o código-fonte da versão modificada a esses usuários
    • Se uma versão modificada for usada publicamente em um servidor acessível ao público, esse uso público gera o direito de acesso ao código-fonte da modificação
  • Direitos básicos e condições de transmissão

    • Os direitos da AGPLv3 são concedidos durante todo o prazo de copyright do programa e não podem ser revogados desde que as condições sejam cumpridas
    • Ela reconhece explicitamente o direito irrestrito de executar o programa não modificado
    • Uma covered work que não seja modificada nem transmitida pode ser criada, executada e propagada sem condições enquanto a licença permanecer válida
    • Cópias literais do código-fonte original podem ser transmitidas com os avisos apropriados de copyright, de licença, de ausência de garantia e com uma cópia da licença
    • Para transmitir uma versão modificada do código-fonte, é necessário indicar a modificação e a data e licenciar a obra inteira sob a AGPLv3

Pontos a verificar na prática

  • Para novo código após o Redis 8, não se aplica mais uma estrutura única BSDv3, e sim uma entre RSALv2, SSPLv1 e AGPLv3
  • Há distinção entre as condições de licença para Redis 7.2 e versões anteriores e para Redis 8.0 e versões posteriores
  • Ao oferecer a funcionalidade do Redis ou de versões modificadas a terceiros como serviço, as restrições ou obrigações de divulgação de código variam conforme a licença escolhida
  • A RSALv2 restringe a própria oferta como serviço, a SSPLv1 exige ampla divulgação do Service Source Code nessa situação
  • A AGPLv3 exige fornecer o código-fonte de versões modificadas usadas publicamente em servidor de rede aos usuários desse servidor

1 comentários