Skip to content

Include all changes made to issuable in hook data

What does this MR do and why?

Include all changes made to issuable in hook data

Prior reliance on previous_changes for attribute changes results in hook data omitting changes if the issuable is modified twice in a given request/service call.

Provide a ReportableChanges concern that can keep track of all attribute changes made to a given model instance over the course of a request, and have Issuable#to_hook_data use its reportable_changes method to include all attribute changes in the resulting hash.

Fixes issue #224610 (closed)

MR acceptance checklist

Please evaluate this MR against the MR acceptance checklist. It helps you analyze changes to reduce risks in quality, performance, reliability, security, and maintainability.

Screenshots or screen recordings

Screenshots are required for UI changes, and strongly recommended for all other merge requests.

Before After

How to set up and validate locally

Numbered steps to set up and validate the change are strongly suggested.

Edited by Daniel Duvall

Merge request reports