Perchè le licenze FLOSS sono applicate ai file invece di diff / delta?

1

Nel caso dello sviluppo di software open source, in cui i contributi si basano su lavori precedenti, troverei più ragionevole per ogni detentore del copyright il possesso dei diritti d'autore sulle differenze / delta che ha apportato, invece dei diritti d'autore sui file. A meno che un contributore non abbia creato un file, il contributo è una modifica.

AFAIK, in progetti privi di CLA, come il kernel Linux, il copyright per i contributi da fonti diverse viene ancora gestito in base al file.

L'implementazione di questo concetto implica che le licenze dovrebbero essere integrate in Git / Mercurial / Bazar / Fossil / SVN e, all'inizio, sarebbe più complicato dell'aggiunta di un'intestazione commentata con la licenza per ciascun file.

Quali sono le ragioni (legali, tecniche, politiche, consuetudinarie o meno) che le licenze software vengono applicate ai file anziché a diffs / delta, specialmente ora che i sistemi di controllo delle versioni sono ampiamente utilizzati? O questa è una nuova idea?

Nota 1: ovviamente la domanda non si applica nei casi in cui siano presenti Accordi di licenza di contributori e non si applica al software non FLOS.

Nota 2: ho erroneamente chiesto questo su Stackoverflow e poiché invece di essere spostato qui era chiuso, sto facendo questa domanda qui.

Nota 3: Un diff può essere uno dei seguenti e più: una modifica a un singolo file, modifiche a più file, nuovi file, qualsiasi combinazione del precedente.

Nota 4: la proposta si rivolge principalmente a 2 situazioni:

  1. Scoraggiamento della creazione di forcelle copyleft di progetti copyfree per la sola ragione del copylefting, ottenuta mantenendo i contributi copyleft e copyfree nello stesso albero dei sorgenti e il filtraggio in base alla licenza.
  2. Abilita il cambio di licenza con l'approvazione di tutte le persone necessarie senza nessuno in più (ad esempio: cosa succederebbe se Linus cambiasse idea e volesse cambiare la licenza per Linux da GPLv2 a GPLv2 +. Chi avrebbe dovuto rintracciare e chiedere il permesso da. Deve chiedere il permesso a coloro i cui contributi sono stati scartati?)
posta alexvoda 30.01.2015 - 16:38
fonte

4 risposte

0

È principalmente per ragioni pratiche che la protezione del copyright viene applicata a livello di file e non sui set di modifiche.

Prima di tutto, la maggior parte della legge sul copyright e le idee racchiuse in esso derivano da un'epoca molto prima che esistessero le copie elettroniche. A quei tempi non esisteva un meccanismo efficace per apportare modifiche a un'opera protetta da copyright e distribuire solo tali modifiche. Ciò che era possibile è che la persona B ha preso il lavoro dalla persona A, apportato alcune modifiche e distribuito la versione modificata . Quindi, la legge sul copyright è stata scritta per regolare questi tipi di processi.

Inoltre, molte leggi sul copyright impongono una quantità minima di originalità alla modifica prima che la versione modificata diventi idonea al diritto d'autore.

Di conseguenza, ora abbiamo la seguente situazione:

  • Un singolo contributo potrebbe non essere sostanziale / originale quanto basta per qualificarsi per la protezione del copyright (la semplice rinomina di una variabile potrebbe non essere idonea)
  • Se il singolo contributo è sostanziale / originale per la protezione del copyright, il risultato dell'applicazione del contributo è considerato un'opera distinta per la protezione del copyright, separata dall'opera originale.
  • Se una singola persona fa diversi piccoli contributi, ognuno dei quali non ha diritto alla protezione del copyright da solo, è ancora possibile (e anche probabile) che il prodotto finale contenga abbastanza materiale da quella persona per dare a quella persona un rivendicare il copyright su tale materiale.

Tenendo questo a mente, la tua proposta presenta i seguenti problemi pratici:

  • Poiché il risultato dell'applicazione di tutti i contributi è considerato un lavoro protetto da copyright in base alla legge sul copyright, consentendo diverse licenze di copyright per i diversi contributi (presumendo che tali contributi siano sufficientemente significativi) significa che ciascun token in un file potrebbe essere soggetto a una diversa licenza di copyright. Sarà quasi impossibile dire cosa sarai autorizzato a fare.

  • Dal momento che molti contributi individuali possono essere troppo insignificanti per essere protetti da copyright a loro volta, a seconda della giurisdizione, è impossibile associare termini di licenza a tali contributi.

  • Presi insieme, diversi piccoli contributi di una persona danno a quella persona un diritto al copyright sul file risultante. I termini della licenza saranno quelli della licenza originale di copyright, perché i singoli contributi erano troppo piccoli per dettare altri termini.
risposta data 01.02.2015 - 14:48
fonte
5

È perché le modifiche sono considerate legalmente un lavoro derivativo , perché si basano e dipendono dal lavoro già svolto. Questo protegge gli autori originali da qualcuno che aggiunge una nuova caratteristica popolare che si basa sul loro lavoro, ma che rende tale funzionalità closed source. Se gli autori desiderano consentire estensioni closed-source al loro software, possono renderlo esplicito, come il modo in cui il kernel Linux consente i moduli closed source, ma richiede che vengano contrassegnati come "contaminati".

    
risposta data 30.01.2015 - 17:09
fonte
3

Probabilmente perché gli utenti finali utilizzano i tuoi file, non le tue differenze e le licenze dovrebbero essere distribuite insieme al tuo software (sia in origine che in formato binario o in qualche altro modo). Non distribuisci il tuo software come una serie di diff annotate, vero?

Potrebbe esserci anche un motivo legale, ma questa è una domanda per un sito Web diverso.

    
risposta data 30.01.2015 - 16:56
fonte
2

Penso che tu stia confondendo licenze e copyright. Ogni contributore a un progetto condiviso senza assegnazione di copyright possiede solo il copyright sui propri contributi, in altre parole il copyright su ogni diff che producono. Un contributore sarebbe proprietario solo del copyright su un intero file se nessun altro ha contribuito a quel file. Di conseguenza, molti file hanno diritti di autore condivisi tra più autori.

Ora perché abbiamo bisogno di licenze? Se un software è destinato ad essere utilizzato da altre persone, richiede una licenza: la licenza indica i termini in base ai quali altre persone possono utilizzare il software. Ad esempio, non è generalmente consentito modificare alcuni software e pubblicare le modifiche. Anche se hai accesso alla fonte di alcuni software, non puoi pubblicare alcun miglioramento che hai scritto. Se abbiamo un progetto in cui vogliamo che la gente contribuisca, l'intero progetto deve essere disponibile con una licenza che permetta questo. Inoltre, tutti i contributi devono essere forniti con questa licenza, in modo che anche altri possano basarsi su questi contributi.

Non è praticabile che un progetto o un file contengano codice in più licenze diverse. Per i principianti, molte licenze presuppongono che vengano applicate su base di file o per progetto. Inoltre, immagina un potenziale utente o contributore che cerchi di capire se è possibile utilizzare il software. Non è realistico esaminare tutti i contributi precedenti per verificare se possono utilizzare, modificare e distribuire un software. È molto più semplice dichiarare una licenza a livello di progetto e qualsiasi contributo deve essere fornito anche in base a tale licenza.

    
risposta data 30.01.2015 - 17:09
fonte

Leggi altre domande sui tag