In che modo javascript lato client è coperto dalla GPL?


29

Se avessi usato una libreria Javascript con licenza GPL in un'applicazione Web, avrei dovuto offrire il codice sorgente dell'intero sito a chiunque avesse scaricato ed eseguito la libreria Javascript?


5
Questa è una domanda molto interessante In genere le applicazioni Web non sono coperte dalla GPL perché non si sta distribuendo il codice (motivo per cui esiste AGPL). Tuttavia, nel caso del codice che viene eseguito sul browser, si sta distribuendo il codice. Se questo è vero, la natura della GPL implica che l'intera applicazione Web deve essere rilasciata sotto la GPL.
Scott Whitlock,

5
@David - la domanda è se la GPL ti costringe a rilasciare anche il resto della tua applicazione web (come il lato server). Hai usato la libreria Javascript per creare un'opera derivata. La GPL si applicherà all'intero risultato.
Scott Whitlock,

1
@David se fosse chiaro, non avrei chiesto: p
Armand,

1
@Alison, ah OK, scusa, ho capito male l'intera domanda allora. No, il lato server non dovrebbe essere GPL. Finché le comunicazioni tra client e server sono in qualche formato a differenza di una chiamata funzionale a livello di macchina, come XML, non hai nulla di cui preoccuparti. Servire semplicemente il codice GPL, sia esso HTML o JS, non rende il codice lato server che lo consegna o che comunica con esso in un formato di chiamata non remoto, un lavoro derivato.
David,

1
Richard Stallman, autore di GPL, sulla questione: gnu.org/philosophy/javascript-trap.html
Honza Pokorny,

Risposte:


5

Dovresti offrire il JavaScript di quella libreria e il JavaScript dell'applicazione che accede all'API di quella libreria (e qualsiasi altra libreria a cui accede l'applicazione, che deve anche avere una licenza compatibile GPL).

Ricorda, devi fornire JavaScript leggibile dall'uomo, non una versione spogliata di spazi bianchi come generalmente va in produzione.

L'HTML che richiama JavaScript è già chiaramente disponibile, non conta in realtà come "collegamento" a quel JavaScript e la sua disponibilità significa che è improbabile che le persone si preoccupino di esso.


3
Non penso che il collegamento sia l'unico fattore scatenante. Ad esempio, se il tuo programma dipende da un'altra applicazione di supporto in modo tale che l'applicazione non possa funzionare senza l'altra libreria, ai fini della GPL, è tutta un'applicazione. Penso che in questo caso, consiglierei di consultare un avvocato.
Scott Whitlock,

deve essere leggibile dall'uomo? Interessante. Lo farò come una domanda separata.
Armand,

Deve essere inalterato, sia in GPL V2 che V3. OK, potrebbe non essere la stessa cosa, presumo che umano sia scrivibile == umano leggibile.
David,

1
Inserito qui come domanda separata: programmers.stackexchange.com/questions/62885/…
Armand

@ScottWhitlock Ai fini della legge, importa solo se uno è un derivato dell'altro dal punto di vista del copyright, non se uno può funzionare senza l'altro. Se la legge sul copyright non si applica, la GPL (che è una licenza, non un contratto, quindi può solo concedere autorizzazioni e non portarle via) non ha alcun effetto. Sarebbe molto difficile mostrare quale server e client in un'app Web tipica sia derivata dall'altra, se non del tutto. Direi che è più probabile che il client sia derivato dal server, dato che la maggior parte degli sviluppatori normalmente scrive server e client, ma questo è molto lontano dall'uniforme.
Jules,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.