Merge request webhook includes incorrect changes
Summary
After creating a merge request with an assignee on creation will show assignees in the changes section on every change that has happened. As shown below.
"assignees": {
"previous": [],
"current": [
{
"name": "Administrator",
"username": "root",
"avatar_url": "https://www.gravatar.com/avatar/e64c7d89f26bd1972efa854d13d7dd61?s=80&d=identicon",
"email": "admin@example.com"
}
]
}
Steps to reproduce
- In an existing project, add a Webhook that triggers on Merge Request event. The URL can point to something that statically returns HTTP 200 OK, this is not important.
- Create a merge request in the project. During creation, assign it to someone and/or add labels.
- In Settings > Webhooks, find the webhook for the MR and click "view details"
- Notice how the Changes part of the Response Body shows the changes made at step 2.
- Push some code to the branch, which will update the MR
- In Settings > Webhooks, find the webhook for the MR and click "view details"
- Notice how the changes done at step 2 appear again.
What is the current bug behavior?
In every webhook call, the changes include the assignee even if nothing changed
What is the expected correct behavior?
Changes shouldn't include the assignee if they haven't changed.
Results of GitLab environment info
Running GitLab Version 12.9.2