Keeping a changelong
I never use to keep a changelog for my projects, until I started to get more involved in making more complex projects for my own use. I will now not create a project without one, as it allows me to keep track of the project and its changes. So why should you create a changelog?
What is a changelog?
A changelog is a file which contains a curated, chronologically ordered list of notable changes for each version of a project.
Why keep a changelog?
To make it easier for users and contributors to see precisely what notable changes have been made between each release (or version) of the project.
How do I make a good changelog?
Guiding Principles
-
Changelogs are for humans, not machines.
-
There should be an entry for every single version.
-
The same types of changes should be grouped.
-
Versions and sections should be linkable.
-
The latest version comes first.
-
The release date of each version is displayed.
-
Mention whether you follow Semantic Versioning.
-
Types of changes
-
Use ISO Standard for dates.
-
Added
for new features. -
Changed
for changes in existing functionality. -
Deprecated
for soon-to-be removed features. -
Removed
for now removed features. -
Fixed
for any bug fixes. -
Security
in case of vulnerabilities.
You can read more about keeping a changelog at keepachangelog.com which is run by Olivier Lacan