From 3ba6a5a16df690246d30bff1038cbed36a16a493 Mon Sep 17 00:00:00 2001 From: GitLab Bot Date: Thu, 11 Mar 2021 09:09:36 +0000 Subject: [PATCH] Add latest changes from gitlab-org/gitlab@master --- GITALY_SERVER_VERSION | 2 +- app/assets/javascripts/boards/boards_util.js | 18 +- .../boards/components/board_card.vue | 22 +-- .../boards/components/board_content.vue | 3 +- .../boards/components/board_list.vue | 43 +++-- .../javascripts/boards/stores/actions.js | 16 +- .../javascripts/boards/stores/mutations.js | 44 +++-- .../components/ci_variable_table.vue | 2 +- .../issuable/components/csv_export_modal.vue | 100 +++++++++++ .../components/csv_import_export_buttons.vue | 86 ++++++++++ .../issuable/components/csv_import_modal.vue | 86 ++++++++++ app/assets/javascripts/issuable/constants.js | 5 + .../init_csv_import_export_buttons.js | 43 +++++ .../components/custom_notifications_modal.vue | 11 ++ .../components/notifications_dropdown.vue | 73 ++------ .../pages/projects/issues/index/index.js | 2 + .../projects/merge_requests/index/index.js | 2 + app/models/packages/package.rb | 8 + .../composer/create_package_service.rb | 2 + app/views/projects/issues/_nav_btns.html.haml | 17 +- .../merge_requests/_nav_btns.html.haml | 8 +- app/workers/all_queues.yml | 8 + .../packages/composer/cache_update_worker.rb | 23 +++ ...pp-views-projects-issues-export_csv-_b.yml | 5 + .../290288-composer-cache-hooks.yml | 5 + .../add-pages-cache-settings-to-docs.yml | 5 + .../sh-add-path-lock-confirmation.yml | 5 + .../simplify-notifications-dropdown.yml | 5 + config/sidekiq_queues.yml | 2 + .../operations/fast_ssh_key_lookup.md | 5 - doc/administration/pages/index.md | 44 +++++ locale/gitlab.pot | 28 +++ qa/qa/page/merge_request/show.rb | 6 +- .../rebase_merge_request_spec.rb | 4 +- spec/features/groups/show_spec.rb | 4 +- spec/features/issues/csv_spec.rb | 4 +- .../user_exports_as_csv_spec.rb | 6 +- .../user_visits_notifications_tab_spec.rb | 6 +- spec/features/project_group_variables_spec.rb | 2 +- spec/features/project_variables_spec.rb | 2 +- .../show/user_manages_notifications_spec.rb | 8 +- spec/frontend/boards/board_list_spec.js | 10 +- .../boards/components/board_card_spec.js | 6 +- spec/frontend/boards/stores/actions_spec.js | 27 ++- .../components/csv_export_modal_spec.js | 91 ++++++++++ .../csv_import_export_buttons_spec.js | 161 ++++++++++++++++++ .../components/csv_import_modal_spec.js | 86 ++++++++++ .../components/notifications_dropdown_spec.js | 36 ++-- spec/models/packages/package_spec.rb | 18 ++ .../composer/create_package_service_spec.rb | 8 + .../features/variable_list_shared_examples.rb | 26 +-- .../composer/cache_update_worker_spec.rb | 48 ++++++ 52 files changed, 1066 insertions(+), 221 deletions(-) create mode 100644 app/assets/javascripts/issuable/components/csv_export_modal.vue create mode 100644 app/assets/javascripts/issuable/components/csv_import_export_buttons.vue create mode 100644 app/assets/javascripts/issuable/components/csv_import_modal.vue create mode 100644 app/assets/javascripts/issuable/init_csv_import_export_buttons.js create mode 100644 app/workers/packages/composer/cache_update_worker.rb create mode 100644 changelogs/unreleased/254267-replace-bootstrap-modal-in-app-views-projects-issues-export_csv-_b.yml create mode 100644 changelogs/unreleased/290288-composer-cache-hooks.yml create mode 100644 changelogs/unreleased/add-pages-cache-settings-to-docs.yml create mode 100644 changelogs/unreleased/sh-add-path-lock-confirmation.yml create mode 100644 changelogs/unreleased/simplify-notifications-dropdown.yml create mode 100644 spec/frontend/issuable/components/csv_export_modal_spec.js create mode 100644 spec/frontend/issuable/components/csv_import_export_buttons_spec.js create mode 100644 spec/frontend/issuable/components/csv_import_modal_spec.js create mode 100644 spec/workers/packages/composer/cache_update_worker_spec.rb diff --git a/GITALY_SERVER_VERSION b/GITALY_SERVER_VERSION index 0d61c12bd48..37333735f60 100644 --- a/GITALY_SERVER_VERSION +++ b/GITALY_SERVER_VERSION @@ -1 +1 @@ -3822772ed121b764fdcc5011d199c37ef76e06a9 +ac2235fe44c106e9f69b6614ecb72b67421fd402 diff --git a/app/assets/javascripts/boards/boards_util.js b/app/assets/javascripts/boards/boards_util.js index cf7e8cb94d1..2cd25f58770 100644 --- a/app/assets/javascripts/boards/boards_util.js +++ b/app/assets/javascripts/boards/boards_util.js @@ -113,31 +113,31 @@ export function formatIssueInput(issueInput, boardConfig) { }; } -export function moveIssueListHelper(issue, fromList, toList) { - const updatedIssue = issue; +export function moveItemListHelper(item, fromList, toList) { + const updatedItem = item; if ( toList.listType === ListType.label && - !updatedIssue.labels.find((label) => label.id === toList.label.id) + !updatedItem.labels.find((label) => label.id === toList.label.id) ) { - updatedIssue.labels.push(toList.label); + updatedItem.labels.push(toList.label); } if (fromList?.label && fromList.listType === ListType.label) { - updatedIssue.labels = updatedIssue.labels.filter((label) => fromList.label.id !== label.id); + updatedItem.labels = updatedItem.labels.filter((label) => fromList.label.id !== label.id); } if ( toList.listType === ListType.assignee && - !updatedIssue.assignees.find((assignee) => assignee.id === toList.assignee.id) + !updatedItem.assignees.find((assignee) => assignee.id === toList.assignee.id) ) { - updatedIssue.assignees.push(toList.assignee); + updatedItem.assignees.push(toList.assignee); } if (fromList?.assignee && fromList.listType === ListType.assignee) { - updatedIssue.assignees = updatedIssue.assignees.filter( + updatedItem.assignees = updatedItem.assignees.filter( (assignee) => assignee.id !== fromList.assignee.id, ); } - return updatedIssue; + return updatedItem; } export function isListDraggable(list) { diff --git a/app/assets/javascripts/boards/components/board_card.vue b/app/assets/javascripts/boards/components/board_card.vue index 408a414ea16..aacea0b970c 100644 --- a/app/assets/javascripts/boards/components/board_card.vue +++ b/app/assets/javascripts/boards/components/board_card.vue @@ -13,7 +13,7 @@ export default { default: () => ({}), required: false, }, - issue: { + item: { type: Object, default: () => ({}), required: false, @@ -33,12 +33,12 @@ export default { ...mapState(['selectedBoardItems', 'activeId']), ...mapGetters(['isSwimlanesOn']), isActive() { - return this.issue.id === this.activeId; + return this.item.id === this.activeId; }, multiSelectVisible() { return ( !this.activeId && - this.selectedBoardItems.findIndex((boardItem) => boardItem.id === this.issue.id) > -1 + this.selectedBoardItems.findIndex((boardItem) => boardItem.id === this.item.id) > -1 ); }, }, @@ -50,9 +50,9 @@ export default { const isMultiSelect = e.ctrlKey || e.metaKey; if (isMultiSelect) { - this.toggleBoardItemMultiSelection(this.issue); + this.toggleBoardItemMultiSelection(this.item); } else { - this.toggleBoardItem({ boardItem: this.issue }); + this.toggleBoardItem({ boardItem: this.item }); } }, }, @@ -64,18 +64,18 @@ export default { data-qa-selector="board_card" :class="{ 'multi-select': multiSelectVisible, - 'user-can-drag': !disabled && issue.id, - 'is-disabled': disabled || !issue.id, + 'user-can-drag': !disabled && item.id, + 'is-disabled': disabled || !item.id, 'is-active': isActive, }" :index="index" - :data-issue-id="issue.id" - :data-issue-iid="issue.iid" - :data-issue-path="issue.referencePath" + :data-item-id="item.id" + :data-item-iid="item.iid" + :data-item-path="item.referencePath" data-testid="board_card" class="board-card gl-p-5 gl-rounded-base" @mouseup="toggleIssue($event)" > - + diff --git a/app/assets/javascripts/boards/components/board_content.vue b/app/assets/javascripts/boards/components/board_content.vue index a851ddc80d0..e9c4237d759 100644 --- a/app/assets/javascripts/boards/components/board_content.vue +++ b/app/assets/javascripts/boards/components/board_content.vue @@ -49,7 +49,7 @@ export default { : this.lists; }, canDragColumns() { - return this.glFeatures.graphqlBoardLists && this.canAdminList; + return !this.isEpicBoard && this.glFeatures.graphqlBoardLists && this.canAdminList; }, boardColumnWrapper() { return this.canDragColumns ? Draggable : 'div'; @@ -80,6 +80,7 @@ export default { handleDragOnEnd(params) { sortableEnd(); + if (this.isEpicBoard) return; const { item, newIndex, oldIndex, to } = params; diff --git a/app/assets/javascripts/boards/components/board_list.vue b/app/assets/javascripts/boards/components/board_list.vue index 0cdf2900c6f..8945ef7002e 100644 --- a/app/assets/javascripts/boards/components/board_list.vue +++ b/app/assets/javascripts/boards/components/board_list.vue @@ -1,7 +1,7 @@