Top Qs
Timeline
Chat
Perspective

Changelog

List of changes From Wikipedia, the free encyclopedia

Remove ads

A changelog[1] is a list of changes made to software that has been revised over time such as a codebase or a product.[2]

A changelog can be a curated record. The author of the changelog can present the information to make it easy to understand and consume. For a software project and a software release, a changelog often is organized as bug fixes and new features.

A changelog can also be a generated report that includes all changes without regard to the ease of consuming or understanding. Typically, a version control system such as git can generate a dump of every change, but some view this as unhelpful and prefer a curated list of notable changes.[3][4] Another example of generated changelog is that of the typical wiki that lists changes made to each article. In particular, Wikipedia provides this feature via the "View history" link on each article page.[5]

The name of a changelog file varies. Commonly-used names include "CHANGELOG", "CHANGES" and "HISTORY".[4] The GNU Automake naming convention is "ChangeLog".[6] Sometimes that file name includes a file name extension to indicate file format, such as ".txt" for text, ".md" for Markdown, or ".rst" for reStructuredText. Often a codebase, especially a open-source software project, includes a changelog file in the top level of a distribution directory tree.

Sometimes, information limited to recent changes is included in a product release. This might be exposed as a feature or a file named something like "news", "recent changes" or "release notes".

Remove ads

Format

In general, the format of a changelog varies dramatically, but the GNU coding standards specify that a changelog is organized as blocks that each identify when a change was made and by whom (name and email address) and describes each change within a function or file. Between the date and the name, and between the name and the email address, there are two spaces. It is common to enclose the email address in < and >. The Emacs editor creates such entries when creating additional changelog entries.[7]

For example:

[[ISO 8601|YYYY-MM-DD]]␣␣[[John Doe]]␣␣<johndoe@[[example.com]]>

    * myfile.ext (myfunction): my changes made
    additional changes.

    * myfile.ext (unrelated_change): my changes made
    to myfile.ext but completely unrelated to the above.

    * anotherfile.ext (somefunction): more changes made by me.
Remove ads

See also

  • Change control – Process ensuring that changes to a product or system are controlled
  • Diff – Shell command for comparing file content
  • Log file – Chronological record of computer data processing operations
  • README – Software information file
  • Technology roadmap – Planning technique
  • Web feed – Data format

Notes

Loading related searches...

Wikiwand - on

Seamless Wikipedia browsing. On steroids.

Remove ads