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.
Conventional Commits are a simple standard for commit messages in Git that propose a consistent format for all commits. This consistency facilitates automation tasks such as version control, changelog generation, and tracking changes.
The format of Conventional Commits follows a structured pattern, typically as:
<type>[optional scope]: <description>
[optional body]
[optional footer(s)]
Type (Required): Describes the type of change in the commit. Standard types include:
Scope (Optional): Describes the section of the code or application affected, such as a module or component.
fix(auth): corrected password hashing algorithm
Description (Required): A short, concise description of the change, written in the imperative form (e.g., “add feature” instead of “added feature”).
Body (Optional): A more detailed description of the change, providing additional context or technical details.
Footer (Optional): Used for notes about breaking changes or references to issues or tickets.
BREAKING CHANGE: remove deprecated authentication method
feat(parser): add ability to parse arrays
The parser now supports parsing arrays into lists.
This allows arrays to be passed as arguments to methods.
BREAKING CHANGE: Arrays are now parsed differently
Conventional Commits are especially helpful in projects using SemVer (Semantic Versioning) because they enable automatic versioning based on commit types.