Changelog

Registro di tutte le notevoli modifiche apportate a un progetto

Il termine changelog (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. Esso sta a significare il "registro delle modifiche".[1]

Un changelog è un registro di tutte le modifiche notevoli apportate a un progetto. Il progetto è spesso un sito Web o un progetto software e il log delle modifiche di solito include record di modifiche come correzioni di bug, nuove funzionalità, ecc. Alcuni progetti open source includono un changelog come uno dei file di primo livello nella loro distribuzione.

Un changelog ha storicamente incluso tutte le modifiche apportate a un progetto. Il sito "Keep a Changelog" sostiene invece che un changelog non includa 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.

CaratteristicheModifica

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]

ElementiModifica

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

FormatoModifica

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 wikiModifica

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 prodottoModifica

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.

NoteModifica

  1. ^ Cos'è il Changelog?, su TechGalaxy, 15 gennaio 2018. URL consultato il 13 maggio 2020.
  2. ^ The GNU automake manual.
  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 correlateModifica

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