diff options
author | Tim Zallmann <tzallmann@gitlab.com> | 2018-07-23 09:40:06 +0200 |
---|---|---|
committer | Tim Zallmann <tzallmann@gitlab.com> | 2018-07-23 09:40:06 +0200 |
commit | 8a918b9d9bc84d82eea94876268424375c99b45e (patch) | |
tree | 5b1e681a9fde401b210b560ff09bcb9fc201178b | |
parent | b53bab469d4affea045354969d4470bf39451059 (diff) | |
download | gitlab-ce-tz-mr-refactor-memory-reduction.tar.gz |
Changelog + FIxes Tests + Optimises Gettertz-mr-refactor-memory-reduction
3 files changed, 22 insertions, 13 deletions
diff --git a/app/assets/javascripts/diffs/components/parallel_diff_comment_row.vue b/app/assets/javascripts/diffs/components/parallel_diff_comment_row.vue index 0258ef5faa8..bb9a65c83fa 100644 --- a/app/assets/javascripts/diffs/components/parallel_diff_comment_row.vue +++ b/app/assets/javascripts/diffs/components/parallel_diff_comment_row.vue @@ -59,9 +59,11 @@ export default { shouldRenderDiscussionsOnRight() { return this.rightDiscussions && this.hasExpandedDiscussionOnRight && this.line.right.type; }, + showRightSideCommentForm() { + return this.line.right.type && this.diffLineCommentForms[this.rightLineCode]; + }, className() { - return (this.leftDiscussions && this.leftDiscussions.length > 0) || - (this.rightDiscussions && this.rightDiscussions.length > 0) + return this.leftDiscussions.length > 0 || this.rightDiscussions.length > 0 ? '' : 'js-temp-notes-holder'; }, @@ -105,7 +107,7 @@ export default { /> </div> <diff-line-note-form - v-if="diffLineCommentForms[rightLineCode] && line.right.type" + v-if="showRightSideCommentForm" :diff-file-hash="diffFileHash" :line="line.right" :note-target-line="line.right" diff --git a/app/assets/javascripts/diffs/store/getters.js b/app/assets/javascripts/diffs/store/getters.js index ff6c30d6a8e..07e5d6739a5 100644 --- a/app/assets/javascripts/diffs/store/getters.js +++ b/app/assets/javascripts/diffs/store/getters.js @@ -75,19 +75,21 @@ export const discussionsByLineCode = (state, getters, rootState, rootGetters) => const isDiffDiscussion = note.diff_discussion; const hasLineCode = note.line_code; const isResolvable = note.resolvable; - const diffRefs = diffRefsByLineCode[note.line_code]; - if (isDiffDiscussion && hasLineCode && isResolvable && diffRefs) { - const refs = convertObjectPropsToCamelCase(note.position.formatter); - const originalRefs = convertObjectPropsToCamelCase(note.original_position.formatter); + if (isDiffDiscussion && hasLineCode && isResolvable) { + const diffRefs = diffRefsByLineCode[note.line_code]; + if (diffRefs) { + const refs = convertObjectPropsToCamelCase(note.position.formatter); + const originalRefs = convertObjectPropsToCamelCase(note.original_position.formatter); - if (_.isEqual(refs, diffRefs) || _.isEqual(originalRefs, diffRefs)) { - const lineCode = note.line_code; + if (_.isEqual(refs, diffRefs) || _.isEqual(originalRefs, diffRefs)) { + const lineCode = note.line_code; - if (acc[lineCode]) { - acc[lineCode].push(note); - } else { - acc[lineCode] = [note]; + if (acc[lineCode]) { + acc[lineCode].push(note); + } else { + acc[lineCode] = [note]; + } } } } diff --git a/changelogs/unreleased/tz-mr-refactor-memory-reduction.yml b/changelogs/unreleased/tz-mr-refactor-memory-reduction.yml new file mode 100644 index 00000000000..20b72c98bc1 --- /dev/null +++ b/changelogs/unreleased/tz-mr-refactor-memory-reduction.yml @@ -0,0 +1,5 @@ +--- +title: Reduces the client side memory footprint on merge requests +merge_request: 20744 +author: +type: performance |