Changelog

Il termine changelog (lett. "registro delle modifiche"; un prestito linguistico della lingua inglese, derivato dall'unione dei termini change=cambiamento e log=registro) è universalmente utilizzato nel campo della progettazione, soprattutto in informatica relativamente alla progettazione del software, per indicare il registro di tutte le modifiche notevoli apportate ad un progetto.[1]

Nell'ambito informatico il log delle modifiche di solito include record di modifiche come correzioni di bug, nuove funzionalità, ecc.

Un changelog ha storicamente incluso tutte le modifiche apportate a un progetto. Il sito "Keep a Changelog" sostiene invece che un changelog non debba includere tutte le modifiche, ma che dovrebbe invece contenere "un elenco curato e ordinato cronologicamente di modifiche importanti per ciascuna versione di un progetto" e non dovrebbe essere un "dump" di un git log "perché questo non aiuta nessuno".

Sebbene la convenzione di denominazione canonica per il file sia ChangeLog[2], a volte viene alternativamente chiamato CHANGES o HISTORY (NEWS è di solito un file diverso che riflette le modifiche tra i rilasci, non tra i commit). Un'altra convenzione è chiamarlo CHANGELOG[3]. Alcuni manutentori del progetto aggiungeranno un suffisso .txt al nome del file se il changelog è testo semplice, un suffisso .md se è in Markdown, o un suffisso .rst se è in reStructuredText.

Alcuni sistemi di controllo delle revisioni sono in grado di generare le informazioni rilevanti adatte come log delle modifiche se l'obiettivo è includere tutte le modifiche.

Un changelog golang è sinonimo di una serie di modifiche al codice e della revisione del codice associata.

Caratteristiche[modifica | modifica wikitesto]

Un changelog è generalmente memorizzato in un file di formato testo e raccoglie, in ordine cronologico, tutti i possibili riferimenti di rintracciabilità di ogni modifica effettuata da una versione precedente ad una successiva di un software, fino al rilascio corrente.[4]

Elementi[modifica | modifica wikitesto]

Per ogni modifica, esso deve riportarne almeno la release di intervento, l'autore, la data, la descrizione, le motivazioni ed eventualmente la versione.[4]

Formato[modifica | modifica wikitesto]

I file del registro delle modifiche sono organizzati in paragrafi, che definiscono una modifica univoca all'interno di una funzione o di un file. Gli standard di codifica GNU consigliano il seguente formato[5]:

AAAA-MM-GG John Doe <mail di John Doe>       * myfile.ext (myfunction): le mie modifiche hanno apportato      modifiche aggiuntive       * myfile.ext (unrelated_change): le mie modifiche apportate      a myfile.ext ma completamente non correlate al precedente       * anotherfile .ext (somefunction): più modifiche 

È comune racchiudere l'indirizzo e-mail tra <e>. L'editor di Emacs crea tali voci durante la creazione di voci aggiuntive del registro delle modifiche.

Changelog nei wiki[modifica | modifica wikitesto]

La maggior parte dei software wiki include i changelog come caratteristica fondamentale (spesso chiamata cronologia in questo contesto)[6]. Ad esempio, il link "Visualizza cronologia" nella parte superiore di una voce di Wikipedia collega al log delle modifiche di quella pagina.

Log delle modifiche del prodotto[modifica | modifica wikitesto]

Un registro delle modifiche del prodotto consente di tenere i clienti aggiornati sulle novità. Aiuta ad annunciare nuove funzionalità, ultime versioni e notizie pertinenti direttamente nell'app.

Note[modifica | modifica wikitesto]

  1. ^ Cos'è il Changelog?, su TechGalaxy, 15 gennaio 2018. URL consultato il 13 maggio 2020 (archiviato dall'url originale il 24 ottobre 2020).
  2. ^ Strictness (automake), su www.gnu.org. URL consultato il 22 dicembre 2023.
  3. ^ Keep a Changelog, su keepachangelog.com. URL consultato il 3 settembre 2019.
  4. ^ a b Keep a Changelog, su keepachangelog.com. URL consultato il 13 maggio 2020.
  5. ^ GNU Coding Standards: Style of Change Logs, su Gnu.org. URL consultato il 3 settembre 2019.
  6. ^ Help:Page_history.

Voci correlate[modifica | modifica wikitesto]

  Portale Informatica: accedi alle voci di Wikipedia che trattano di informatica