Dovresti sborsare un repo se lo stai trasferendo in un'altra lingua?

3

Sono nuovo di biforcazione e open source e sto trasferendo una libreria di Rust in Swift, ma non ero sicuro di dover biforcare il repository originale e quindi sostituirlo con i miei nuovi file o semplicemente caricare il mio repository e menziona nel README che si tratta di una porta Swift di una libreria esistente

    
posta swigganicks 24.01.2018 - 17:12
fonte

2 risposte

5

1. Punto di vista tecnico

Biforcare un repository su GitHub crea un collegamento bidirezionale tra il proprio repository biforcuto e il repository originale.

Oltre agli aspetti sociali (ad esempio, mostrando che si basa sul lavoro di qualcun altro e lasciando che l'autore originale conosca la tua forcella), l'intento principale è quello di facilitare la condivisione delle modifiche e dei miglioramenti apportati al repository, trascinandoli torna al progetto originale. La guida GitHub su biforcazione lo spiega con ricchezza di dettagli.

Nel tuo caso specifico, non hai intenzione di ritirare le modifiche, perché la tua versione di Swift non è rilevante per la comunità di Rust. Quindi la forcella è inutile. IMHO, penso addirittura che potrebbe essere fonte di confusione.

2. Punto di vista legale

Se crei una porta della libreria originale traducendola e adattandola in un'altra lingua, e anche se non contiene una singola riga del codice originale, il tuo lavoro sarà un'opera derivata, che è soggetta al copyright di l'autore originale.

Potresti essere tentato di dire: "ma ho riscritto tutto da solo, come può essere il copyright?". Ciò è dovuto al principio di copia non letterale .

Quindi è necessario verificare se la licenza della libreria originale consente il lavoro derivato ("modifica") e in quali condizioni. Se la licenza non dice nulla, o in caso di dubbio, la cosa migliore è contattare l'autore originale.

3. Aspetti morali e pratici

È sempre buono (anche nei rari casi in cui non saresti obbligato a), a restituire a Cesare ciò che appartiene a Cesare, cioè dire chiaramente che è una porta della biblioteca abc dell'autore xyz, e fornire un link indietro all'originale.

È anche una pratica raccomandata prendere contatto con l'autore originale, anche se la licenza ti darebbe già tutti i diritti: dopotutto, non ti interesserebbe che l'autore informi la sua comunità che c'è una Swift porto?

Ultimo ma non meno importante, hai pensato a una strategia di versioning? Che cosa succede se la libreria originale si evolve: seguirai o vedrai il suo futuro come più indipendente?

Dichiarazione di non responsabilità: questo è il punto di vista di un professionista del software. Non deve in alcun modo essere considerato come consulenza legale. Per la consulenza legale, consultare un avvocato o un consulente legale qualificato nella propria giurisdizione.

    
risposta data 25.01.2018 - 00:59
fonte
2

Oltre all'altra discussione riflessiva di @Christophe e @Robert,

Una forcella fornirebbe un riconoscimento formale dell'originale, anche se da un punto di vista pratico non si intende mai unirsi al progetto originale.

Puoi mantenere il copyright originale e anche le fonti originali. Suggerirei di aggiungere la traduzione come una struttura a specchio di qualche tipo (ad esempio un albero parallelo di livello superiore). In questo modo una richiesta di pull potrebbe essere teoricamente eseguita anche se poco pratica o non accadrà mai nella realtà.

Questo può anche aiutare con il versioning di quella strategia che @Christophe sta chiamando come necessario. Puoi aggiornare la tua base, controlla se hai bug particolari e correzioni di bug nella tua forcella.

Qualcosa di simile deve essere fatto altrove come prova del concetto, almeno, poiché le API e altre cose vengono trasferite a vari linguaggi di programmazione, a volte da terze parti come te in questo caso.

    
risposta data 25.01.2018 - 01:58
fonte

Leggi altre domande sui tag