Sto sviluppando una libreria BSD a 3 clause. Nella root del repository, ho il testo completo della licenza e nella parte superiore di ogni file qualcosa come
/* This file is part of <project name>, developed my <me>.
*
* All rights reserved. Use of this source code is governed
* by a BSD-style license that can be found in the LICENSE.txt file:
*
* <url to LICENSE.txt>
*/
Sono soddisfatto di questo per i file che sono veramente di mia origine. Tuttavia , consente di considerare il file foo.cpp
, che ha il codice adattato da due librerie separate.
- Libreria Point Cloud {BSD v3 pure}.
- OpenCV {BSD v3 pure}.
Così ho iniziato a fare
/****************************************
*
* full PCL license
*
****************************************
*
* full OpenCV license
*
****************************************
*
* my blurb
*
***************************************/
Sono incluse tutte le licenze nella parte superiore più appropriate?
C'è un modo più chiaro di citare la fonte corretta? Ho fatto del mio meglio per assicurarmi che sia nel codice che nella documentazione sia chiaro da dove proviene la fonte originale, ma "licenza" dumping "nella parte superiore del file lo rende meno chiaro. Ad esempio, uno dei file include anche una licenza Apache v2 (anche compatibile), che rende la licenza del file significativamente più lunga rispetto al codice effettivo nel file. Questo non è un problema, è solo arrivare al punto in cui mi sembra di sbagliarmi.
L'ultima domanda: è accettabile aggiornare gli anni di licenza a quanto mostrato nel LICENSE
principale del repository ? Ad esempio, un file di cui ho trascritto il codice aveva una licenza 2012
elencata in alto. Il repository principale ha una licenza identica, ma include fino a 2018
(motivo per cui preferisco l'approccio "blurb" per i miei file). Questa parte della domanda potrebbe non essere on-topic, tuttavia, in tal caso, eliminerò questa parte.