@@ -29,11 +29,9 @@ Reference
2929Examples
3030--------
3131
32- List MRs for a project:
32+ List MRs for a project::
3333
34- ..literalinclude ::mrs.py
35- :start-after: # list
36- :end-before: # end list
34+ mrs = project.mergerequests.list()
3735
3836You can filter and sort the returned list with the following parameters:
3937
@@ -43,80 +41,64 @@ You can filter and sort the returned list with the following parameters:
4341* ``order_by ``: sort by ``created_at `` or ``updated_at ``
4442* ``sort ``: sort order (``asc `` or ``desc ``)
4543
46- For example:
44+ For example::
4745
48- ..literalinclude ::mrs.py
49- :start-after: # list
50- :end-before: # end list
46+ mrs = project.mergerequests.list(state='merged', order_by='updated_at')
5147
52- Get a single MR:
48+ Get a single MR::
5349
54- ..literalinclude ::mrs.py
55- :start-after: # get
56- :end-before: # end get
50+ mr = project.mergerequests.get(mr_id)
5751
58- Create a MR:
52+ Create a MR::
5953
60- ..literalinclude ::mrs.py
61- :start-after: # create
62- :end-before: # end create
54+ mr = project.mergerequests.create({'source_branch': 'cool_feature',
55+ 'target_branch': 'master',
56+ 'title': 'merge cool feature',
57+ 'labels': ['label1', 'label2']})
6358
64- Update a MR:
59+ Update a MR::
6560
66- .. literalinclude :: mrs.py
67- :start-after: # update
68- :end-before: # end update
61+ mr.description = 'New description'
62+ mr.labels = ['foo', 'bar']
63+ mr.save()
6964
70- Change the state of a MR (close or reopen):
65+ Change the state of a MR (close or reopen)::
7166
72- ..literalinclude ::mrs.py
73- :start-after: # state
74- :end-before: # end state
67+ mr.state_event = 'close' # or 'reopen'
68+ mr.save()
7569
76- Delete a MR:
70+ Delete a MR::
7771
78- .. literalinclude :: mrs.py
79- :start-after: #delete
80- :end-before: # end delete
72+ project.mergerequests.delete(mr_id)
73+ #or
74+ mr. delete()
8175
82- Accept a MR:
76+ Accept a MR::
8377
84- ..literalinclude ::mrs.py
85- :start-after: # merge
86- :end-before: # end merge
78+ mr.merge()
8779
88- Cancel a MR when the build succeeds:
80+ Cancel a MR when the build succeeds::
8981
90- ..literalinclude ::mrs.py
91- :start-after: # cancel
92- :end-before: # end cancel
82+ mr.cancel_merge_when_build_succeeds() # v3
83+ mr.cancel_merge_when_pipeline_succeeds() # v4
9384
94- List issues that will close on merge:
85+ List issues that will close on merge::
9586
96- ..literalinclude ::mrs.py
97- :start-after: # issues
98- :end-before: # end issues
87+ mr.closes_issues()
9988
100- Subscribe/ unsubscribe a MR:
89+ Subscribe to / unsubscribefrom a MR: :
10190
102- ..literalinclude ::mrs.py
103- :start-after: # subscribe
104- :end-before: # end subscribe
91+ mr.subscribe()
92+ mr.unsubscribe()
10593
106- Mark a MR as todo:
94+ Mark a MR as todo::
10795
108- ..literalinclude ::mrs.py
109- :start-after: # todo
110- :end-before: # end todo
96+ mr.todo()
11197
112- List the diffs for a merge request:
98+ List the diffs for a merge request::
11399
114- ..literalinclude ::mrs.py
115- :start-after: # diff list
116- :end-before: # end diff list
100+ diffs = mr.diffs.list()
117101
118- Get a diff for a merge request:
102+ Get a diff for a merge request::
119103
120- ..literalinclude ::mrs.py
121- :start-after: # diff get
122- :end-before: # end diff get
104+ diff = mr.diffs.get(diff_id)