From 3cc97c75e67b710124cf5749476bef92f7004de8 Mon Sep 17 00:00:00 2001 From: Will Hickey Date: Fri, 28 Jul 2023 17:09:35 -0500 Subject: [PATCH] Add changelog (#26894) * Add changelog * Lint: remove trailing whitespace * Update based on review feedback * Remove branch tracking from inside the changelog. * Factor out duplication * Add instruction about using the same wording when backporting * Formatting - 80 character wrap * Clarify ambiguous language * Remove instruction that is only relelvant to backports * Revert "Remove instruction that is only relelvant to backports" This reverts commit 31fe048a5ec5493cf1c8524db10769cd14d2be0d. * Update wording baased on review feedback * Add core contributors to audience Co-authored-by: Trent Nelson * Updated based on review feedback. * Add noteworthy criteria. * Move instructions to bottom (below changelog). * Add detail to instructions. * Update core contributors to contributors Co-authored-by: mvines * Remove superfluous "ABI" Co-authored-by: mvines * Add anchor link at the top to the instructions at the bottom Co-authored-by: Trent Nelson * Add instructions for maintaining the changelog * wording. add entry for edge channel. * switch language from "branches" to "channels" * adds entry for edge channel Co-authored-by: Trent Nelson * Remove whitespace in link --------- Co-authored-by: Trent Nelson Co-authored-by: mvines --- CHANGELOG.md | 61 ++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 61 insertions(+) create mode 100644 CHANGELOG.md diff --git a/CHANGELOG.md b/CHANGELOG.md new file mode 100644 index 00000000000000..df54c187651d98 --- /dev/null +++ b/CHANGELOG.md @@ -0,0 +1,61 @@ +# Changelog +All notable changes to this project will be documented in this file. + +Please follow the [guidance](#adding-to-this-changelog) at the bottom of this file when making changes +The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/). +This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html) +and follows a [Backwards Compatability Policy](https://docs.solana.com/developing/backwards-compatibility) + +Release channels have their own copy of this changelog: +* [edge - v1.17](#edge-channel) +* [beta - v1.16](https://github.com/solana-labs/solana/blob/v1.16/CHANGELOG.md) +* [stable - v1.14](https://github.com/solana-labs/solana/blob/v1.14/CHANGELOG.md) + + +## [1.17.0] - Unreleased +* Changes + * Added a changelog. +* Upgrade Notes + +## Adding to this Changelog +### Audience +* Entries in this log are intended to be easily understood by contributors, +consensus validator operators, rpc operators, and dapp developers. + +### Noteworthy +* A change is noteworthy if it: + * Adds a feature gate, or + * Implements a SIMD, or + * Modifies a public API, or + * Changes normal validator / rpc run configurations, or + * Changes command line arguments, or + * Fixes a bug that has received public attention, or + * Significantly improves performance, or + * Is authored by an external contributor. + +### Instructions +* Update this log in the same pull request that implements the change. If the +change is spread over several pull requests update this log in the one that +makes the feature code complete. +* Add notes to the [Unreleased] section in each branch that you merge to. + * Add a description of your change to the Changes section. + * Add Upgrade Notes if the change is likely to require: + * validator or rpc operators to update their configs, or + * dapp or client developers to make changes. +* Link to any relevant feature gate issues or SIMDs. +* If you add entries on multiple branches use the same wording if possible. +This simplifies the process of diffing between versions of the log. + +## Maintaining This Changelog +### When creating a new release branch: +* Commit to master updating the changelog: + * Remove `Unreleased` annotation from vx.y.0 section. + * Create new section: `vx.y+1.0 - Unreleased` +* Create vx.y branch starting at that commit +* Tag that commit as vx.y.0 + +### When creating a new patch release: +* Commit to the release branch updating the changelog: + * Remove `Unreleased` annotation from `vx.y.z` section + * Add a new section at the top for `vx.y.z+1 - Unreleased` +* Tag that new commit as the new release