Skip to content

Commit f92c771

Browse files
committed
Add support for reviewer changes in merge requests
The merge request event webhook is called for reviwers updates, however this is ignored by the GitlabChanges class. Therefore these updates are not forwarded to Matrix. By adding the reviewers section to both the GitlabChanges and to the issue_update template (which is used for merge request updates) the bot reports about changes in reviewers.
1 parent 1fd3942 commit f92c771

File tree

3 files changed

+13
-0
lines changed

3 files changed

+13
-0
lines changed

Diff for: gitlab_matrix/types.py

+7
Original file line numberDiff line numberDiff line change
@@ -251,6 +251,12 @@ class GitlabAssigneeChanges(GitlabChangeWrapper, SerializableAttrs):
251251
current: List[GitlabUser]
252252

253253

254+
@dataclass
255+
class GitlabReviewersChanges(GitlabChangeWrapper, SerializableAttrs):
256+
previous: List[GitlabUser]
257+
current: List[GitlabUser]
258+
259+
254260
@dataclass
255261
class GitlabLabelChanges(GitlabChangeWrapper, SerializableAttrs):
256262
previous: List[GitlabLabel]
@@ -289,6 +295,7 @@ class GitlabChanges(SerializableAttrs):
289295
title: Optional[GitlabStringChange] = None
290296
labels: Optional[GitlabLabelChanges] = None
291297
assignees: Optional[GitlabAssigneeChanges] = None
298+
reviewers: Optional[GitlabReviewersChanges] = None
292299
time_estimate: Optional[GitlabIntChange] = None
293300
total_time_spent: Optional[GitlabIntChange] = None
294301
weight: Optional[GitlabIntChange] = None

Diff for: templates/macros.html

+3
Original file line numberDiff line numberDiff line change
@@ -73,3 +73,6 @@
7373
{%- macro assignee_changes(added, removed) -%}
7474
{{ list_changes(added, removed, "assigned", "unassigned", user_link) }}
7575
{%- endmacro -%}
76+
{%- macro reviewers_changes(added, removed) -%}
77+
{{ list_changes(added, removed, "assigned", "unassigned", user_link) }}
78+
{%- endmacro -%}

Diff for: templates/messages/issue_update.html

+3
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,9 @@
1212
{% elif changes.assignees %}
1313
{{ assignee_changes(changes.assignees.added, changes.assignees.removed) }}
1414
{{ issue_or_merge_link(object_attributes) }}
15+
{% elif changes.reviewers %}
16+
{{ reviewers_changes(changes.reviewers.added, changes.reviewers.removed) }}
17+
{{ issue_or_merge_link(object_attributes) }}
1518
{% elif changes.time_estimate %}
1619
{% if not changes.time_estimate.current %}
1720
removed the time estimate of {{ issue_or_merge_link(object_attributes) }}

0 commit comments

Comments
 (0)