Welcome to mirror list, hosted at ThFree Co, Russian Federation.

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGitLab Bot <gitlab-bot@gitlab.com>2020-09-08 18:08:41 +0300
committerGitLab Bot <gitlab-bot@gitlab.com>2020-09-08 18:08:41 +0300
commitdc47d7f5c0f1a402463e9c1adaffecf3f465bc7f (patch)
tree5fbe362a06ef1841c73d6b377dbccc5dfc7fcece /app/assets/javascripts/repository
parenta0158b1a9c21f648fdbf79765bbc1e19e776b5d9 (diff)
Add latest changes from gitlab-org/gitlab@master
Diffstat (limited to 'app/assets/javascripts/repository')
-rw-r--r--app/assets/javascripts/repository/graphql.js1
-rw-r--r--app/assets/javascripts/repository/log_tree.js13
2 files changed, 9 insertions, 5 deletions
diff --git a/app/assets/javascripts/repository/graphql.js b/app/assets/javascripts/repository/graphql.js
index 450a1571165..8dd18027945 100644
--- a/app/assets/javascripts/repository/graphql.js
+++ b/app/assets/javascripts/repository/graphql.js
@@ -58,6 +58,7 @@ const defaultClient = createDefaultClient(
/* eslint-enable @gitlab/require-i18n-strings */
},
},
+ assumeImmutableResults: true,
},
);
diff --git a/app/assets/javascripts/repository/log_tree.js b/app/assets/javascripts/repository/log_tree.js
index 704dd88aabe..361e0b62bb7 100644
--- a/app/assets/javascripts/repository/log_tree.js
+++ b/app/assets/javascripts/repository/log_tree.js
@@ -1,3 +1,4 @@
+import produce from 'immer';
import { normalizeData } from 'ee_else_ce/repository/utils/commit';
import axios from '~/lib/utils/axios_utils';
import commitsQuery from './queries/commits.query.graphql';
@@ -34,16 +35,18 @@ export function fetchLogsTree(client, path, offset, resolver = null) {
params: { format: 'json', offset },
},
)
- .then(({ data, headers }) => {
+ .then(({ data: newData, headers }) => {
const headerLogsOffset = headers['more-logs-offset'];
- const { commits } = client.readQuery({ query: commitsQuery });
- const newCommitData = [...commits, ...normalizeData(data, path)];
+ const sourceData = client.readQuery({ query: commitsQuery });
+ const data = produce(sourceData, draftState => {
+ draftState.commits.push(...normalizeData(newData, path));
+ });
client.writeQuery({
query: commitsQuery,
- data: { commits: newCommitData },
+ data,
});
- resolvers.forEach(r => resolveCommit(newCommitData, path, r));
+ resolvers.forEach(r => resolveCommit(data.commits, path, r));
fetchpromise = null;