Curiosità nel posizionamento delle licenze

3

Le gemme di Ruby hanno il file LICENSE con il testo della licenza in ogni gemma. Cocoa [Touch] framework open source (ad esempio ShareKit, StackKit, ecc.) Hanno la licenza all'inizio di ogni file (.h e .m). Non sono sicuro di .NET o di altri linguaggi interpretati (ad eccezione di Ruby), ma sono abbastanza sicuro che ci siano le proprie scelte a portata di mano. Mi chiedo quali sono le ragioni alla base del posizionamento della licenza in pacchetti sorgente di software open source come questo. Perché non LICENSE file ovunque o all'inizio di ogni file sorgente?

    
posta Eimantas 26.09.2011 - 17:14
fonte

3 risposte

1

Le scelte sembrano molto diverse, ma in realtà non lo sono. La pratica comune è quella di mettere un avviso (standard) che indichi la licenza e il suo breve modulo all'inizio di ogni file sorgente per (a) chiarire esplicitamente i termini della licenza e (b) assicurarsi che la licenza non sia tralasciata accidentalmente in la copia. La notifica della licenza che si trova all'inizio di un file solitamente non è la licenza completa, perché la licenza GNU completa copre molte pagine e genera un numero eccessivo di file di origine.

La licenza completa è inclusa nel file LICENZA per soddisfare i requisiti di GPL che la licenza è distribuita con il progetto. È sufficiente avere un file per progetto qui. Il file LICENSE riempie anche il ruolo di una licenza fallback: se si omette il boilerplate all'inizio di alcuni file, il codice è ancora coperto dalla licenza a livello di progetto.

    
risposta data 28.09.2011 - 16:25
fonte
1

La legge sul copyright è estremamente complicata. Avere software su Internet sviluppato e utilizzato da persone in tutto il mondo lo rende ancora peggiore in quanto devi rispettare tutte le leggi sul copyright in tutto il mondo. Potrebbe non essere necessario inserire la licenza nelle intestazioni e / o in un file LICENZA. In alcune legislazioni questo potrebbe anche essere irrilevante, ma più chiaramente lo si rende più probabile diventa che verrà rispettato (da un modo legale rispettato, non da ogni utente ;-)).

A parte questo: il software spesso non contiene solo il codice auto-scritto, ma raggruppa le librerie di terze parti. Avere l'intestazione nel file rende chiaro quando si utilizza il copyright straniero e quando il codice viene utilizzato da altri.

    
risposta data 28.09.2011 - 19:08
fonte
0

Ogni file sorgente contiene un estratto di licenza per assicurarsi che tutto il codice all'interno di detto file sia in quella licenza. Il file LICENSE dovrebbe contenere il testo completo della licenza per l'intero progetto. Quei due potrebbero essere simili e non potrebbero essere.

    
risposta data 26.09.2011 - 17:43
fonte

Leggi altre domande sui tag