A Changelog is a file or document that lists the changes and updates made to software or a project. It provides a chronological record of new features, bug fixes, improvements, and breaking changes (changes that break backward compatibility). A changelog helps users and developers track the development progress of a software project and understand what changes have been made in a particular version.
1.2.0
), often following SemVer (Semantic Versioning) principles.# Changelog
## [1.2.0] - 2023-09-19
### Added
- New user authentication system.
- Ability to reset passwords via email.
### Fixed
- Resolved bug with session timeout after 30 minutes of inactivity.
### Changed
- Updated the UI for the login screen.
## [1.1.0] - 2023-08-10
### Added
- New dark mode theme for the dashboard.
### Security
- Patched vulnerability in file upload functionality.
Changelogs are particularly common in open-source projects, as they provide the community with a transparent and clear overview of the project's development.
Semantic Versioning (often abbreviated as SemVer) is a versioning scheme designed to clearly and understandably communicate changes in software. It uses a three-part numbering system in the format MAJOR.MINOR.PATCH to indicate different types of changes. Here’s an explanation of how these numbers are used:
An example of a SemVer version might look like this: 1.4.2
. This means:
1
(MAJOR): First major version, potentially with significant changes since the previous version.4
(MINOR): Fourth version of this major version, with new features but backward-compatible.2
(PATCH): Second bug fix version of this minor version.Additional Conventions:
1.0.0-alpha
, 1.0.0-beta
, 1.0.0-rc.1
(Release Candidate).1.0.0+20130313144700
, indicated after a +
sign.Why is SemVer important?
SemVer significantly simplifies the management of software versions by providing a consistent and understandable scheme for version numbers.