When updating the main docs based on the changelogs we can have these 2 extremes:
- Just change main docs, as soon as something gets deprecated, remove it, do not mention old way, do not link to changelog
- Explain the change, mention since when it was changed (e.g. since version 10.2) and (optionally) link to changelog. Remove the note and the link 1 versions later (e.g. if deprecated in 8 and removed in 9, note can be removed in 10).
The first way is the most maintainer-friendly and efficient. The change must be made only once. But it is the most user-unfriendly, because there is a sudden change with no explanation. Users are forced to read all changelogs, to stay up to date about what changed.
The second is the most maintainer-unfriendly: Changes must be made often more than once, e.g. (first= point out deprecation or new feature, add version hint, possibly link to changelog and then (later) remove this - e.g. 1 oder 2 versions later. But, the user gets more context, he / she gets a reminder that something changed, if lucky they even find a link to the changelog so they can read up about why it got changed.
The policy was changed at least once. Previously, we used 1. - without notes. For a while now, we have been adding the notes to explain the changes. The official docs explain the version hints and link to changelog (3 and 4): Documentation content style guide — Writing Documentation main documentation
But, we never really decided about this officially.
So, what should we do now?
Pro 1: no hints, links, explanation
- less work for people updating based on changelogs
- “cleaner” docs, the hints and notes makes docs look “cluttered”
- This is information only relevant if you are moving to a new version. This should not be in the main docs.
- if the version hints are used, it is sometimes unclear if this refers only to a section or to entire page.
Pro 2: version hints, explanation, links to changelog
- user gets more context
- user is reminded that something has changed
Examples:
- version hints and link to changelogs: Symfony commands - the version hints and links added in 8 and 9 at least should get removed for master
- comparison of old and new for TS conditions: Conditions — TypoScript Reference 10.4 documentation
- mail API: Mail API — TYPO3 Explained 10.4 documentation