Add Milestone.releases GraphQL field
What does this MR do and why?
Adds the ability to retrieve associated release data for milestones.
See: https://docs.gitlab.com/ee/user/project/releases/#associate-milestones-with-a-release
In the course of doing this, the following bugs were identified and addressed:
This new field is made N+1 safe by preloading the releases
association on Milestone
.
Example GraphQL query:
query($day: Time!, $version: String) {
group(fullPath: "gitlab-org") {
milestones(first: 1, sort: DUE_DATE_ASC, containingDate: $day, searchTitle: $version) {
nodes {
title
releases {
nodes { name description releasedAt tagName }
}
}
}
}
}
MR acceptance checklist
This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.
-
I have evaluated the MR acceptance checklist for this MR.
Edited by Alex Kalderimis