Skip to content

Generate release notes from milestone

Everyone can contribute. Help move this issue forward while earning points, leveling up and collecting rewards.

  • Refer to epic for context.
  • When a milestone is intended to be used as a release object, we want to generate release notes for that release, as automatically as possible.
  • The group milestone is intended to be used as a release object. But for simplicity's sake, we won't make that restriction here. We'll just have it apply to both group milestones and project milestones.
  • Design and implementation details to be determined on how to generate these release notes from the milestone.
  • For GitLab, "release notes" means the sections of each feature in the monthly release blog post. So the solution should be able to radically improve that process.
  • One idea is to leverage the CSV export functionality or even integrate it somehow in the user experience. But the output would be a CSV export with all the issues and merge requests with that milestone, and some relevant meta data for each of those objects.

How GitLab would use this

  • Another idea is to expose this information via an API call, so that the external system can grab this data on demand and use it downstream (for example, generating/updating the monthly release blog post of GitLab).
  • The information should be extracted from each issue or merge request with that milestone. This should help with the release blog post of GitLab.
    • Get the title of the issue / merge request.
    • Extract a special section of the issue / merge request description that is designated release note.
    • Extract a special section of the issue / merge request description that is designated documentation link.
    • Maybe also somehow extract a relevant screenshot.
  • Need some way to handle updating values.
  • With this flow, the monthly release blog post experience of GitLab would be massively streamlined and save a lot of time.
  • Note that the integration should not be too tight. It should still be some type of job/script. Because likely after executing it, you'd want to make tweaks to language, wording, visuals, etc.
Edited by 🤖 GitLab Bot 🤖