Changelog
A changelog page is where we aggregate all the changes for the given release. All releases reside on the same page in reverse chronological order (newer at the top).
The core structure is based on Keep a Changelog.
Index File
The index file recaps major releases, which we were focusing on, such as DAL in the 2022.9
release.
The index file is located in the folder, which denotes the version such as 202209/index.adoc
.
include::ROOT:partial$variables.adoc[]
[#yyyy-mm-x]
= `yyyy.mm`
// Release recap and introduction (sales pitch sort of a thing).
:leveloffset: +1
// Include patch releases ordered by patch number descending (05 -> 04 -> ... -> 00)
:leveloffset: -1
Patch Versions
Patch versions outline the changes that were presented in the given version patch, such as additions, deprecations, and changes.
We now use a tool for the changelog to handle the heavy lifting.
Patch releases are described in JSON
files inside the src/modules/ROOT/pages/changelog
directory (inside the version folder).
To exemplify, the 02
patch for the 2022.9
version would be located in the src/modules/ROOT/pages/changelog/202209/02.json
file.
{
"meta": {
"releasedOn": "YYYY.MM.DD"
},
"added": [],
"changed": [],
"deprecated": [],
"removed": [],
"fixed": [],
"security": [],
"development": []
}
{
"meta": {
"releasedOn": "2022.10.20"
},
"added": [{
"what": ["..."],
"why": ["..."],
"refs": ["..."]
}],
"changed": []
}
You can freely omit unneeded bits from the JSON. |
Changelog Entries
added
added
outlines additions to Corteza such as new features or added UI elements.
Describe what the new addition is.
To exemplify: The |
|
Describe the reasoning behind the new addition.
To exemplify: The |
{
"what": ["..."],
"why": ["..."],
"refs": []
}
changed
changed
outlines changes to existing Corteza features.
Describe what was changed.
To exemplify: The |
|
Describe the reasoning behind the change.
To exemplify: The |
|
Describe how the thing changed.
To exemplify: The |
{
"what": ["..."],
"why": ["..."],
"how": ["..."],
"refs": []
}
deprecated
deprecated
outlines things that are pending removal.
Deprecated bits can still be used but should no longer be relied on, as we can remove them in future releases.
Describe what was deprecated.
To exemplify: The |
|
Describe the reasoning behind the deprecation.
To exemplify: The |
{
"what": ["..."],
"why": ["..."],
"refs": []
}
removed
removed
outlines things that are no longer available in Corteza.
Describe what was removed.
To exemplify: The |
|
Describe the reasoning behind the removal.
To exemplify: The |
{
"what": ["..."],
"why": ["..."],
"refs": []
}
fixed
fixed
outlines changes to existing Corteza features.
If the bug fix changes the original flow of the feature, mention it under |
Describe what was fixed.
To exemplify: The |
|
Describe how the thing was fixed.
To exemplify: The |
{
"what": ["..."],
"how": ["..."],
"refs": []
}
security
security
outlines security-related fixes.
If the bug fix changes the original flow of the feature, mention it under |
Describe what the security hole was.
To exemplify: The |
|
Describe how the thing was fixed.
To exemplify: The |
{
"what": ["..."],
"how": ["..."],
"refs": []
}
development
development
outlines the development-related quality of life additions.
Describe what the development quality of life addition was.
To exemplify: The |
{
"what": ["..."],
"refs": []
}
Tips for Better Changelogs
-
avoid ambiguous text, such as
Fixed Low Code chart rendering
— what was the issue? How was it fixed? Is this the one I was affected by? -
Try to phrase the changelog entries in a way that describes what the user was facing or what a user could do with it. To exemplify,
"Fixed chart legend overflowing onto the chart when a lot of options are presented"
instead ofFixed chart legend positioning"
.