Sto lavorando a un progetto Python che estende le funzionalità di alcuni altri moduli python. Alcuni fanno parte della libreria Python standard e utilizzano principalmente il contratto di licenza PSF mentre alcuni sono forniti da terze parti e utilizzano principalmente licenze BSD. Tutti consentono la ridistribuzione del codice modificato con attribuzione.
Capisco che nella maggior parte dei casi ho bisogno di includere la licenza nel codice sorgente o in qualche posto dove sia facilmente referenziata. La mia domanda riguarda il modo migliore per separare il codice modificato dal resto del progetto poiché il resto del progetto non è correlato e porterà una licenza e un copyright diversi.
Per quanto posso dire, ci sono due modi per farlo, in linea o separando il codice derivato nei propri moduli. In-line può essere fatto attraverso i commenti al codice o all'interno delle stringhe doc della classe o della funzione. L'altra opzione crea un numero di moduli piccoli, ma tecnicamente non necessari, ma renderebbe più semplice distinguere il codice derivato dal resto del progetto e deprecarli se i moduli in seguito incorporassero le funzionalità mancanti.
Queste sono entrambe opzioni valide e c'è un modo preferito o più Pythonic?