@@ -138,12 +138,36 @@ you have the rights to submit this work under the same open source license.
138138Updating the Changelog
139139----------------------
140140
141- In Dune, the Changelog is in ` CHANGES.md ` . As they are many contributions at
142- the same time and to prevent an infinite cycle of rebase , the ` CHANGES.md ` file
143- is only updated when releasing Dune. To keep track of the changes, they must be
144- recorded inside ` doc/changes/ ` . The name of the file is ` <PR number>.md ` .
145- Depending on the nature of the change, it can live inside three categories:
146- ` added ` , ` changed ` , ` fixed ` , where:
147- - ` added ` records every new feature or behaviour inside of Dune
141+ In Dune, the Changelog is in ` CHANGES.md ` . As there are many contributions at
142+ the same time and to prevent an infinite cycle of rebases , the ` CHANGES.md `
143+ file is only updated when releasing Dune. Unreleased changes are recorded
144+ inside ` doc/changes/ ` . The name of the file is ` <PR number>.md ` . Depending on
145+ the nature of the change, it can live inside three categories: ` added ` ,
146+ ` changed ` , ` fixed ` , where:
147+ - ` added ` records every new feature or behaviour visible to users
148148- ` changed ` records a difference of behaviour with the previous version
149149- ` fixed ` records any change that restores the behaviour as expected
150+
151+ An entry follows this format where ` fixes ` is optional if it is not linked to
152+ any issue:
153+
154+ ``` markdown
155+ - A small description about what this entry is doing and what this changes
156+ brings to the users. Try to imagine what people will understand when reading
157+ the changelog. (#<PR number>, fixes #<issue number>, @author1, @author2)
158+ ```
159+
160+ The entry must fit in 80 columns of text. Most of the editors allows formatting
161+ the size of the text using a column size.
162+
163+ In Dune, we try to avoid breaking changes by versioning our features with a
164+ ` (lang dune <version>) ` system. However, if the change you introduce is a
165+ breaking change, the entry must start with ** BREAKING CHANGE:** . The entry
166+ would be:
167+
168+ ``` markdown
169+ - BREAKING CHANGE: A small description about what this entry is doing and what
170+ this changes brings to the users. Try to imagine what people will understand
171+ when reading the changelog. (#<PR number>, fixes #<issue number>, @author1,
172+ @author2)
173+ ```
0 commit comments