La versión 2.7.3 cambia la licencia de PearlPBX2 de PolyForm Shield License 1.0.0 a GNU Affero
General Public License v3.0-or-later (AGPL-3.0-or-later). Esto afecta a LICENSE, NOTICE,
README.md, CONTRIBUTING.md y las cabeceras SPDX-License-Identifier en core/conf.py,
core/models.py, manage.py y pbx/settings.py.
Qué cambió
PolyForm Shield 1.0.0 permitía usar, modificar y desplegar PearlPBX2 para cualquier propósito — incluyendo llevar tu propio negocio de telefonía comercial —, con una excepción: no se podía vender un producto o servicio que compitiera con PearlPBX2 sin un acuerdo escrito aparte con el titular de los derechos. Formalmente, eso es «source-available», no una licencia abierta según la OSI.
AGPL-3.0-or-later es una licencia de software libre y de código abierto reconocida por la OSI y la FSF. No tiene restricción de uso competitivo: PearlPBX2 se puede bifurcar (fork), mejorar y ofrecer como producto o servicio propio que compita directamente con el original, y ya no hace falta ningún acuerdo aparte para eso.
La diferencia clave de la AGPL: el copyleft de uso en red
En lugar de prohibir la competencia, la AGPL añade otra obligación — la misma que la distingue de la GPL normal: la sección 13, uso en red. Si modificas PearlPBX2 y das acceso a la versión modificada a través de una red — por ejemplo, ofreciéndola como servicio alojado a tus propios clientes —, debes dar a esos usuarios el código fuente completo correspondiente a la versión exacta que están usando. Esto aplica incluso si nunca entregaste ni un solo binario directamente: el simple acceso por red ya cuenta como distribución.
El copyleft estándar de la AGPL también se mantiene: al distribuir copias — modificadas o no — hay que conservar los avisos de copyright y el texto de la licencia, y proporcionar el código fuente. Las obras derivadas solo pueden distribuirse bajo la misma AGPL-3.0-or-later — no se puede volver a publicar un fork bajo una licencia cerrada o más restrictiva.
Así es como lo formula el README del proyecto:
You may use, modify, and distribute PearlPBX2 for any purpose. If you run a modified version to provide a service over a network, you must make the complete corresponding source code available to users of that service, under the same license.
Qué significa esto si solo despliegas PearlPBX2
Si instalas PearlPBX2 en tu propio servidor para tu propio call center y no das acceso externo a nadie, el cambio de licencia prácticamente no te afecta en la práctica: ya podías usar el producto para tu propio negocio de telefonía comercial sin un acuerdo aparte, y sigues pudiendo hacerlo. Lo que cambia es la base legal: ahora es una licencia abierta genuina, no una excepción dentro de unas condiciones source-available.
Qué significa esto si ofreces PearlPBX2 como servicio
Si tomas PearlPBX2, lo modificas y das acceso a él a través de una red a otras personas o empresas — tus propios clientes, por ejemplo —, ahora te aplica la obligación de la sección 13: dar a esos usuarios el código fuente de la versión modificada bajo AGPL-3.0. Antes, en este escenario regía la lógica contraria: ese tipo de actividad podía caer bajo la restricción de uso competitivo de PolyForm Shield y requerir un acuerdo aparte. Ahora no hay prohibición legal, sino una obligación de divulgar el código a los usuarios del servicio.
CLA para contribuciones al propio proyecto
Aparte de la licencia, la versión 2.7.3 añade el requisito de firmar un Contributor License
Agreement para las contribuciones externas al propio proyecto PearlPBX2, no a los forks. Una
GitHub Action basada en contributor-assistant/github-action publica una solicitud de firma en
el primer pull request de cada colaborador; las condiciones están descritas en CLA.md. Esto no
cambia los derechos que la AGPL-3.0 ya concede a cualquiera que use o bifurque el código — el CLA
solo afecta a quienes quieren que su código se incorpore al repositorio principal.
Dónde consultar el texto completo
El texto completo de la licencia está en LICENSE y NOTICE en el repositorio del producto, y
en gnu.org/licenses/agpl-3.0.html. Una explicación
en lenguaje sencillo y un enlace al original están en la página de Licencia de
este sitio.