From 2adf867ff635693e071705d7956e2e74beca5598 Mon Sep 17 00:00:00 2001 From: Ian Sparks Date: Fri, 31 Mar 2017 16:25:22 +0100 Subject: [PATCH 1/2] Added milestone.merge_requests() API --- docs/gl_objects/milestones.py | 9 +++++++-- docs/gl_objects/milestones.rst | 6 ++++++ gitlab/objects.py | 15 +++++++++++++++ 3 files changed, 28 insertions(+), 2 deletions(-) diff --git a/docs/gl_objects/milestones.py b/docs/gl_objects/milestones.py index 27be57310..83065fcec 100644 --- a/docs/gl_objects/milestones.py +++ b/docs/gl_objects/milestones.py @@ -30,13 +30,18 @@ # state # close a milestone milestone.state_event = 'close' -milestone.save +milestone.save() # activate a milestone milestone.state_event = 'activate' -m.save() +milestone.save() # end state # issues issues = milestone.issues() # end issues + +# merge_requests +merge_requests = milestone.merge_requests() +# end merge_requests + diff --git a/docs/gl_objects/milestones.rst b/docs/gl_objects/milestones.rst index db8327544..47e585ae3 100644 --- a/docs/gl_objects/milestones.rst +++ b/docs/gl_objects/milestones.rst @@ -53,3 +53,9 @@ List the issues related to a milestone: .. literalinclude:: milestones.py :start-after: # issues :end-before: # end issues + +List the merge requests related to a milestone: + +.. literalinclude:: milestones.py + :start-after: # merge_requests + :end-before: # end merge_requests \ No newline at end of file diff --git a/gitlab/objects.py b/gitlab/objects.py index 4a84a716d..1bc5b7c39 100644 --- a/gitlab/objects.py +++ b/gitlab/objects.py @@ -1858,6 +1858,21 @@ def issues(self, **kwargs): {'project_id': self.project_id}, **kwargs) + def merge_requests(self, **kwargs): + """List the merge requests related to this milestone + + Returns: + list (ProjectMergeRequest): List of merge requests + + Raises: + GitlabConnectionError: If the server cannot be reached. + GitlabListError: If the server fails to perform the request. + """ + url = ('/projects/%s/milestones/%s/merge_requests' % + (self.project_id, self.id)) + return self.gitlab._raw_list(url, ProjectMergeRequest, + {'project_id': self.project_id}, + **kwargs) class ProjectMilestoneManager(BaseManager): obj_cls = ProjectMilestone From 78b6bedd7e7da43f336946ecf67b6c19398e9673 Mon Sep 17 00:00:00 2001 From: Ian Sparks Date: Fri, 31 Mar 2017 19:24:48 +0100 Subject: [PATCH 2/2] pep8 spacing --- gitlab/objects.py | 1 + 1 file changed, 1 insertion(+) diff --git a/gitlab/objects.py b/gitlab/objects.py index 1bc5b7c39..9abb84eed 100644 --- a/gitlab/objects.py +++ b/gitlab/objects.py @@ -1874,6 +1874,7 @@ def merge_requests(self, **kwargs): {'project_id': self.project_id}, **kwargs) + class ProjectMilestoneManager(BaseManager): obj_cls = ProjectMilestone