[LG-SW] Allegato B: Guida alla pubblicazione di software Open Source

Da parte del Centro Hermes per la Trasparenza e Diritti Umani Digitali:

Facendo seguito al nostro contributo per l’Allegato-E sulla modifica di software opensource di terzi siamo a specificare e dettagliare nostro contributo.

Punto 6:

Si propone di aggiungere la seguente regola:

Il repository pubblicato dovrebbe (MAY) contenere tutta la storia delle modifiche dei “code commit” che il fornitore ha effettuato durante il processo di sviluppo, preservando lo storico dell’operato dell’attività di sviluppo, necessario e utile a tutti gli sviluppatori che vorranno contribuire per ridurre la curva di apprendimento. Nel caso il software in riuso sia basato su un software opensource di terzi, la raccomandazione di cui sopra diviene obbligatoria (MUST).

Punto 7:

Nel caso in cui il software sia basato su un opensource di terzi, è necessario aggiungere nel file README.md le seguenti informazioni:

SE il “software in riuso” è stato allineato al “software opensource di terzi” indicare:

(MUST) Tutte le modifiche necessarie alla amministrazione in riuso sono state integrate nel software opensource d’origine

SE il “software in riuso” non è stato allineato al “software opensource di terzi” indicare:
(MUST) Descrizione estesa di tutte le interazioni con il maintainer documentando i singoli sforzi di integrazione delle modifiche nel software originario:

  • Ticket/Issues aperti (con indicazione se sono ancora da integrare o integrati)
  • Discussioni da archivi di mailing list
  • Log di Chat (ove presenti archiviazioni di chat nel progetto originale)
  • Draft/design document di integrazione con il progetto per la sua estensione
  1. Tempi di rilascio

Nel caso in cui il software sia basato su un opensource di terzi, In relazione ai tempi di rilascio, il Fornitore deve prima assicurarsi di avere inviato tutte le richieste di integrazione al Maintainer del software opensource di terzi, e solo in seguito provvedere alla pubblicazione.

Scopo della regola di cui sopra è evitare il tipo “Code dump alla bersagliera” fatto dal Fornitore considerando il contributo al “software opensource di terzi” su cui si è basato marginale.