Skip to content

Componentize diff lines and diff comments

Fatih Acet requested to merge _diff-lines-refactor into master

This MR refactors Vue MR diff lines to introduce diff-table-row and diff-table-cell components.

Also refactors the diff comments by introducing inline-diff-comment-row and parallel-diff-comment-row.

This approach has several benefits,

  • More componentized architecture hence easy to maintain and more testable.
  • With componentized diff table we now can have computed properties instead of methods which will perform better on complex diff views.
  • Componentized diff comments will work more performant then previous approach.
  • Smaller and simple templates in parallel and inline diff views.

This MR also fixes #48297 (closed). The reason why it's included in this MR is, it was easier to fix #48297 (closed) in componentized version.

Fixes #48297 (closed)

Technical debt issue for the specs needs to be added. https://gitlab.com/gitlab-org/gitlab-ce/issues/48546

Edited by Fatih Acet

Merge request reports