Skip to content

Latest commit

 

History

History
29 lines (25 loc) · 1.85 KB

File metadata and controls

29 lines (25 loc) · 1.85 KB

Updating changelogs

Each package in this repo has a file named CHANGELOG.md which is used to record consumer-facing changes that have been published over time. All changelogs follow the "Keep a Changelog" specification (enforced by @metamask/auto-changelog).

If a PR introduces a consumer-facing change to one or more packages, their changelogs must be updated. This is enforced by CI. When updating changelogs, keep the following in mind:

  • A changelog is not a git history; it is a summary of consumer-facing changes introduced by a particular release.
    • Consider each PR from the perspective of a consumer of an individual package. Changelog entries may differ between packages.
    • For example, if you're introducing feature X to package A, and it contains an incidental change Y to package B, the package changelogs should reflect this.
    • Describe entries in natural language; do not simply reuse the commit message.
  • Unless you're cutting a new release, place new entries under the "Unreleased" section.
  • Place changes into categories. Consult the "Keep a Changelog" specification for the list.
  • Highlight breaking changes by prefixing them with **BREAKING:**.
  • Omit non-consumer facing changes from the changelog.
  • Use a list nested under a changelog entry to enumerate more details about a change if need be.
  • Include links (e.g. `#123) to the pull request(s) that introduced each change.
  • Combine like changes from multiple pull requests into a single changelog entry if necessary.
  • Split disparate changes from the same pull request into multiple entries if necessary.
  • Only included reverted changes if they were previously released.

If your PR does not contain any consumer-facing changes, add the label no-changelog, and the changelog validation CI job will be skipped.