-
Improvement
-
Resolution: Fixed
-
Critical
-
4.5
-
MOODLE_405_STABLE
-
MOODLE_405_STABLE
-
MDL-81125-main-alt -
At the moment, Moodle has distributed upgrade notes in the form of loosely formatted upgrade.txt files in each subsystem, or component.
The intent of these notes is to make it easier for a developer writing a plugin for one of these components to find out about API changes in that component that may impact them. Unfortunately most plugins work with a large number of subsystems and there is no centralised location for these, or easy way to quickly search through all of them. This makes discoverability of their content poor. At the time of writing Moodle has 127 distributed upgrade.txt files located.
In addition, each file differs slightly and they look a bit like markdown (but are not markdown) – for example, there is no hard-and-fast rule about including an MDL issue number, or formatting/indentation/list type.
Each file is hand-crafted and some files (lib/upgrade.txt) are a pain for integrators and developers alike due to the frequency of merge conflicts – especially when making changes to the core subsystem.
This issue seeks to improve this situation by:
- introducing a CLI tool to create upgrade notes
- requiring an issue number
- requiring a valid component name
- requiring a note type (improvement, change, fix, removal, deprecation)
- saving each upgrade note in their own file to avoid merge conflicts
- providing tooling to generate an UPGRADING.md file containing all upgrade notes, rather than spreading them around the file system
- allowing parts of the UPGRADING.md to be updated (replace the unreleased notes)
- providing tooling to generate a version-specific set of upgrade notes that could be pumped into the moodle developer docs
See https://youtu.be/X075kRhQ-4M for an example of this in action.
- has been marked as being related by
-
MDL-82151 Consistent component/heading ordering in built upgrade notes
-
- Closed
-
-
MDL-82231 Public path checker should check for new UPGRADING.md files
-
- Closed
-
-
MDL-81903 Add new exception API
-
- Closed
-
- has to be done before
-
MDL-84278 Remove all upgrade.txt files
-
- Waiting for peer review
-
- links to