Voglio pubblicare un piccolo progetto open source su GitHub. Mi piacerebbe rilasciarlo con licenza MIT o Apache.
Il progetto ha test unitari che utilizzano la libreria JUnit. JUnit è rilasciato con la licenza pubblica Eclipse v1.0. JUnit non è distribuito nel progetto: viene scaricato e utilizzato in fase di compilazione da Maven, lo strumento di creazione.
Sono vincolato dalla licenza di una libreria che viene utilizzata nel progetto ma non è distribuita con essa? Se lo sono, posso utilizzare una libreria rilasciata con la licenza pubblica Eclipse nei progetti con licenza MIT o Apache?
I miei pensieri (lo scenario più pessimistico)
Mentre i test unitari usano JUnit, il progetto è un lavoro derivato di JUnit, anche se JUnit non è distribuito con esso. Distribuire il progetto automaticamente significa distribuire JUnit.
La licenza pubblica Eclipse (la licenza di JUnit) dice:
A Contributor may choose to distribute the Program in object code form under its own license agreement, provided that … its license agreement:
Qui c'è una lista di quattro requisiti che sembrano banali ma che, forse, non sono completamente presi in considerazione nelle licenze MIT e Apache (declinazione di tutte le garanzie, esclusa qualsiasi responsabilità, una dichiarazione sulle disposizioni aggiuntive, una dichiarazione sulla disponibilità del codice sorgente).
Quindi, la licenza pubblica Eclipse potrebbe non essere compatibile con le licenze MIT e Apache e potrei non essere in grado di usare JUnit.